Commit Graph

103 Commits (7f903365edfa6e2cb40a327e55f28f9c904e920b)

Author SHA1 Message Date
Slava Pestov 9d6f21d83c Fix bug exposed by new/boa change 2008-06-27 03:03:31 -05:00
Slava Pestov d65a76d10f Fixing builder failures 2008-06-25 15:35:14 -05:00
Slava Pestov 590ccc49e1 Fix conflict 2008-06-25 04:07:37 -05:00
Eduardo Cavazos bf238283da Update code for combinators.short-circuit 2008-06-24 13:47:54 -05:00
Chris Double 6b83ab9d90 Fix terminal parser with non-default tokenizers 2008-06-21 01:49:07 +12:00
Chris Double 5433553571 Remove EBNF: and [EBNF EBNF] +tokenizer syntax
replaced with tokenizer support in ebnf grammar itself.
2008-06-21 01:00:27 +12:00
Chris Double eca8260799 peg.ebnf syntax for tokenizers 2008-06-21 00:28:13 +12:00
Chris Double b6b5f12732 Provide ability to plug in tokenizers to ebnf parsers 2008-06-20 22:45:19 +12:00
Chris Double 7239c4d79f Make replace-escapes infer and fix remaining unit test breakage in ebnf 2008-06-20 15:14:30 +12:00
Chris Double d22a24a90e Fix some failing ebnf unit tests 2008-06-20 14:13:50 +12:00
Chris Double 6bd761e460 Another breaking unit test for ebnf 2008-06-20 12:35:33 +12:00
Chris Double 91768f171c Rule 'x' defined more than once unit test 2008-06-20 11:53:07 +12:00
Chris Double 001e866b13 Add yet another failing ebnf unit test 2008-06-20 11:49:08 +12:00
Chris Double 9b7e2bacc9 Throw an error if there are duplicate rules in ebnf 2008-06-19 14:44:13 +12:00
Chris Double c92224f5b9 Put '..' around parser error messages 2008-06-19 14:34:09 +12:00
Chris Double 3dc3a6f899 Remove obsolete ebnf stuff 2008-06-19 14:31:14 +12:00
Chris Double 04453b2421 Fix (foo):n usage 2008-06-19 14:23:18 +12:00
Chris Double 179ea21c11 Add a couple of failing peg.ebnf tests 2008-06-19 01:10:44 +12:00
Chris Double fea65df1df Fix ebnf foreign call breakage and add tests 2008-06-18 23:07:26 +12:00
Chris Double 4050ebcbde Javascript parser now works on token sequence 2008-06-18 20:35:32 +12:00
Chris Double f4f4ea7eb6 Fix peg.ebnf unit test failures 2008-06-18 20:35:32 +12:00
Chris Double 0841dbb4ad Fix ebnf unit test 2008-06-18 20:35:32 +12:00
Chris Double 479fa6a5b5 Add support for calling foreign peg.ebnf rules 2008-06-18 20:35:32 +12:00
Chris Double dfa4926a84 Print ebnf quotation on error. Fix generated local quotation 2008-06-18 20:35:32 +12:00
Chris Double f1219c906a Check stack effect of actions in ebnf. Do implicit drop if needed 2008-06-18 20:35:31 +12:00
Chris Double 1b8943a8e0 Add failing peg.ebnf tests 2008-06-18 20:35:31 +12:00
Eduardo Cavazos c5cc533182 peg.ebnf: minor update 2008-06-10 20:31:32 -05:00
Doug Coleman f706b50ac7 remove dipd, it's 2dip 2008-05-23 22:48:58 -05:00
Slava Pestov 26aa656123 with-locals no longer necessary 2008-05-07 08:48:51 -05:00
Chris Double e1f82caf83 Use accessors in places for peg 2008-04-29 14:19:14 +12:00
Chris Double c671ccce99 { ... } whitespace grouping 2008-04-29 14:15:05 +12:00
Chris Double 7319dd5165 Add ~ grouping operator to ignore whitespace between elements in group 2008-04-29 12:37:26 +12:00
Doug Coleman b7c1f9dbe8 extra changes:
index* -> index-from
last-index* -> last-index-from
1 tail -> rest
1 tail-slice -> rest-slice
subset -> filter
prepose
find* -> find-from
find-last* -> find-last-from
before, after generic, < for integers
make between? work for timestamps
2008-04-25 23:17:08 -05:00
Chris Double 9f0f2d0bbc peg delay parsers now infer 2008-04-14 22:42:45 +12:00
Chris Double a641c6d332 Add \r to ebnf escape rules 2008-04-07 14:39:18 +12:00
Chris Double 719376e412 Remove w-c-u from ebnf transform 2008-04-07 13:17:09 +12:00
Chris Double 970f0055c2 Fix failing ebnf unit test 2008-04-03 17:33:37 +13:00
Chris Double cc7d945a80 Change ebnf variables to not use namespaces 2008-04-03 17:28:09 +13:00
Chris Double 27f2992dc5 Add failing ebnf test 2008-04-03 16:09:03 +13:00
Chris Double eac450bdcf Add ebnf rule word 2008-04-02 15:55:18 +13:00
Chris Double bbcc84862f Tweak ast from sequences in ebnf 2008-04-02 15:47:21 +13:00
Chris Double 6b454eed36 Various peg/ebnf fixes
- Box parsers were broken when involved in left recursion detection
- ebnf no longer implicitly ignores white space between terminates/non-terminals
- ebnf now handles \t and \n in grammars so productions to detect white space work
- reset-delegates is now reset-pegs
2008-04-02 12:59:12 +13:00
Chris Double 122fd50d4a Throw error when ebnf uses a non-existant non-terminal 2008-04-01 14:49:20 +13:00
Chris Double 72bfd57f30 Make ebnf forgiving of whitespace at end of expression 2008-04-01 11:28:14 +13:00
Chris Double f66774e875 Add tests for semantic and add syntax for it to ebnf
Syntax is ?[ ...]?
For example:
[EBNF num=. ?[ number? ]? list=list:x num:y => [[ drop x y + ]] | num EBNF] { 1 2 3 4 5 6 } swap call .
2008-03-31 16:50:05 +13:00
Chris Double 729ac1d6dc Some ebnf tweaks and tests to do with variables 2008-03-31 14:59:22 +13:00
Chris Double ee2194d1dc Allow variable names on elements 2008-03-31 14:03:16 +13:00
Chris Double 55a69392fa First cut at variables in ebnf 2008-03-31 13:52:42 +13:00
Chris Double bb8198d3d0 Declare stack effects for compiled parsers 2008-03-30 23:24:02 +13:00
Chris Double 78633e03a0 Allow var names in ebnf but ignore them for now 2008-03-30 19:01:47 +13:00