Dan Hirsch
|
b0f567c090
|
Added new build system
|
2013-07-10 21:32:05 +02:00 |
|
Dan Hirsch
|
aed1de5ce5
|
Applied a bugfix from my local branch
|
2013-06-24 21:46:23 +02:00 |
|
Dan Hirsch
|
e9a7c0b83d
|
Added new SConscript-based build system; not yet done porting
|
2013-06-24 21:26:07 +02:00 |
|
Dan Hirsch
|
ce74cf7939
|
Refactored regex backend to use a sparse thread list
|
2013-06-24 21:25:22 +02:00 |
|
Meredith L. Patterson
|
0d7e69767d
|
update README: all the backends are done
|
2013-06-22 11:00:49 -07:00 |
|
Meredith L. Patterson
|
623ca6e4e8
|
Merge pull request #14 from pesco/GLR
GLR
|
2013-06-22 10:35:44 -07:00 |
|
Sven M. Hallberg
|
66809ceeda
|
go back to storing engines in lists
|
2013-06-22 18:16:41 +02:00 |
|
Sven M. Hallberg
|
67681a119a
|
finish engine merging
|
2013-06-22 17:40:47 +02:00 |
|
Sven M. Hallberg
|
23afea4b4e
|
add demerge code path (untested)
|
2013-06-22 14:21:19 +02:00 |
|
Sven M. Hallberg
|
bf9c9b5f7a
|
refactoring in preparation for engine merging
|
2013-06-22 12:51:25 +02:00 |
|
Sven M. Hallberg
|
8bc3b93e95
|
correctly use augmented grammar for test_glr() output
|
2013-06-21 23:53:47 +02:00 |
|
Sven M. Hallberg
|
34c6d868b9
|
commentation
|
2013-06-21 23:47:22 +02:00 |
|
Sven M. Hallberg
|
9585a5946e
|
use lookahead stream directly for LR (terminal) lookup
|
2013-06-21 23:22:07 +02:00 |
|
Sven M. Hallberg
|
853e1fba46
|
split LR table representation by key type (terminals/nonterminals)
|
2013-06-21 22:55:04 +02:00 |
|
Sven M. Hallberg
|
d67e12a825
|
better factor out lr table writes
|
2013-06-21 20:52:27 +02:00 |
|
Sven M. Hallberg
|
534a29b7ba
|
split h_lr_lookup into two (yet identical) functions
|
2013-06-21 20:21:40 +02:00 |
|
Sven M. Hallberg
|
c32cf709b2
|
eliminate the right stack; work with the HInputStream directly
|
2013-06-21 20:11:19 +02:00 |
|
Sven M. Hallberg
|
1e59e461fa
|
make ambiguous test ignore order of precedence
|
2013-06-21 19:58:58 +02:00 |
|
Sven M. Hallberg
|
ec88580b22
|
make h_lrengine_step a void function again
|
2013-06-21 18:46:16 +02:00 |
|
Sven M. Hallberg
|
bf3e3c162e
|
don't even touch the right stack on piggy-back shifts
|
2013-06-21 15:31:37 +02:00 |
|
Sven M. Hallberg
|
7cd143c0c4
|
piggy-back the next shift directly onto the reduce
|
2013-06-21 15:06:31 +02:00 |
|
Sven M. Hallberg
|
bbbaf1634c
|
add an assertion checking that HLR_REDUCE is always followed by HLR_SHIFT
|
2013-06-21 15:00:04 +02:00 |
|
Sven M. Hallberg
|
f5d4ea90da
|
add ambiguous test case for GLR
|
2013-06-20 11:30:30 +02:00 |
|
Sven M. Hallberg
|
b1e8e29774
|
add engine forking
|
2013-06-20 11:05:57 +02:00 |
|
Sven M. Hallberg
|
4f36fcd2c1
|
avoid duplicate conflict branches
|
2013-06-19 18:51:16 +02:00 |
|
Sven M. Hallberg
|
572f1c8f9e
|
expand stub GLR backend
|
2013-06-19 18:22:19 +02:00 |
|
Sven M. Hallberg
|
ecfc0a8e62
|
fix conflict pretty-printing
|
2013-06-19 18:21:53 +02:00 |
|
Sven M. Hallberg
|
55c9a3d9c5
|
add stub GLR backend with h_glr_parse() a copy of h_lr_parse()
|
2013-06-19 17:20:53 +02:00 |
|
Sven M. Hallberg
|
54ba62bfb7
|
record conflicts in a special HLRAction type
|
2013-06-19 17:01:13 +02:00 |
|
Sven M. Hallberg
|
168760b10a
|
return running state from h_lrengine_step
|
2013-06-19 14:16:34 +02:00 |
|
Sven M. Hallberg
|
409d33c916
|
split out h_lrengine_action()
|
2013-06-19 14:09:39 +02:00 |
|
Sven M. Hallberg
|
129d50c0ef
|
split LR code into lr.c, lr0.c, and lalr.c
|
2013-06-17 20:08:25 +02:00 |
|
Sven M. Hallberg
|
7eff4b8d94
|
factor out a struct HLREngine
|
2013-06-17 19:11:18 +02:00 |
|
Meredith L. Patterson
|
3e85648844
|
Merge pull request #13 from pesco/LALR
LALR backend
|
2013-06-16 13:34:17 -07:00 |
|
Meredith L. Patterson
|
fdafb64762
|
Merge pull request #12 from pesco/recursive_indirect
Pre-allocate the result of h_desugar so recursive h_indirect works
|
2013-06-16 13:33:52 -07:00 |
|
Sven M. Hallberg
|
67b6e9666c
|
fix a potentially uninitialized variable
|
2013-06-16 22:29:53 +02:00 |
|
Sven M. Hallberg
|
24c15f34cc
|
augment grammar to ensure start symbol never occurs on rhs
|
2013-06-16 22:23:35 +02:00 |
|
Sven M. Hallberg
|
8d21c782e7
|
fix eq/hash_lalr_item to compare symbols by value
|
2013-06-15 21:24:27 +02:00 |
|
Sven M. Hallberg
|
f0cd2de55c
|
fix match_production for the empty-sequence case
|
2013-06-15 20:54:53 +02:00 |
|
Sven M. Hallberg
|
5a57adabab
|
some refactoring trying to get h_many to work
|
2013-06-15 20:30:57 +02:00 |
|
Sven M. Hallberg
|
9a96314931
|
refactor hashtable iterations to use H_FOREACH
|
2013-06-15 19:06:10 +02:00 |
|
Sven M. Hallberg
|
e56f052255
|
remove the extra +1 from h_arena_malloc
|
2013-06-15 16:04:29 +02:00 |
|
Sven M. Hallberg
|
a7fe3824cd
|
minor bugfixies
|
2013-06-14 19:07:26 +02:00 |
|
Sven M. Hallberg
|
d51e13173a
|
add LALR test suite
|
2013-06-14 17:36:46 +02:00 |
|
Sven M. Hallberg
|
1918c97e1c
|
fix a premature arena delete
|
2013-06-14 17:36:30 +02:00 |
|
Sven M. Hallberg
|
06acbe2fb5
|
LALR example parses!
|
2013-06-14 17:17:23 +02:00 |
|
Sven M. Hallberg
|
bfc2433320
|
don't call compare function on NULL hashtable keys
|
2013-06-14 17:07:56 +02:00 |
|
Sven M. Hallberg
|
6f44ab1196
|
Merge branch 'recursive_indirect' into LALR
|
2013-06-14 12:51:48 +02:00 |
|
Sven M. Hallberg
|
f65b0ae82a
|
commentation
|
2013-06-14 12:50:39 +02:00 |
|
Sven M. Hallberg
|
dfe4c3ad47
|
add right-recursion test for packrat and llk
|
2013-06-14 12:42:55 +02:00 |
|