You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This was the contents of the old TODO file. We should triage these at some point and put in their own issues.
* happyError should take the current token as an argument in %lexer mode;
it's silly not to, because it means the monad has to keep track of the
previous token in order to report it in the error message.
* BUG in error handling without %lexer: see tests/ParGF.y
* allow polymorphic type signatures for productions.
* allow omitted semnatic values, defaulting to $1?
* unlit properly
* maintain indentation in code between { } so that layout works.
-OLD-------------------------------------------------------------------------
1. Add in a simple lexical analyser
2. Add in choice for lexical analyis
%lexerstyle original -- the default
%lexerstyle auto
%lexerstyle monadic
---[1] :: [Token] -> a ---------------------------------------------------------
As things are now :-(
---[2] :: String -> a ----------------------------------------------------------
Using the special lexer, as defined using
%macro letter ( [A-Z][a-z] )
%autotoken
id ( {letter}({digit}|{letter}) )
---[3] :: ParseM Token -> ParseM a ---------------------------------------------
This presumes the exsitance of the defintions:
type ParseM a b c = a -> ParseR a b
data ParseR a b c = ParseSucc a b | ParseFail c
thenPM :: a -> ParseM a b c
returnPM :: ParseM a b c -> (a -> ParseM d b c) -> ParseM d b c ->
and is intended for *serious* parsers, like our Haskell parser.
You need to give a %eof
-----------------------------------------------------------------------------
******************************************************************************
ToAdd:
--magic-name Sad
allows other names to be used as the *Magic* name, currently
only Happy.
The text was updated successfully, but these errors were encountered:
This was the contents of the old TODO file. We should triage these at some point and put in their own issues.
The text was updated successfully, but these errors were encountered: