Skip to content

Commit 51667a9

Browse files
author
jared
committed
Readded warning about the non LL(1) part of the grammar
1 parent ed6abb2 commit 51667a9

File tree

1 file changed

+6
-0
lines changed
  • lambda-buffers-frontend/src/LambdaBuffers/Frontend

1 file changed

+6
-0
lines changed

lambda-buffers-frontend/src/LambdaBuffers/Frontend/Parsec.hs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,12 @@ type Parser s m a = ParsecT s () m a
3434
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3535
-- See docs/syntax.md
3636
--
37+
-- Warning: In the production
38+
-- classdef -> 'class' [ constraintexps '<=' ] classname { varname }
39+
-- this is not LL(1)! Either we live with what we currently have which has a
40+
-- large 'try' around parsing @[ constraintexps '<=' ]@, or we move to an
41+
-- LALR(1) parser generator which should has no issues with parsing this.
42+
--
3743
-- Note: Parser Implementation.
3844
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3945
--

0 commit comments

Comments
 (0)