colm icon indicating copy to clipboard operation
colm copied to clipboard

[colm] the * and + operators should use left-recursion

Open adrian-thurston opened this issue 5 years ago • 2 comments

Original motivation for right recursion was convenient lisp-like list deconstruction into head and tail. There is a place for right recursion, however, it makes more sense now to be consistent with the parsing algorithm and use left-recursion.

adrian-thurston avatar Nov 04 '19 13:11 adrian-thurston

The generated iterator code will need to change to allow forward walk of left-recursive structures. The repeat iterator is used heavily in the colm loader.

Really want this to be a reducer, but that's a bigger port.

adrian-thurston avatar Nov 29 '19 21:11 adrian-thurston

We also have some iterators depending on right recursion. These will need to change.

adrian-thurston avatar Nov 29 '19 22:11 adrian-thurston