Hi,

I'm looking to parse a Fortran dialect using Parsec, and was hoping to use the 
ParsecToken module. Fortran though is unlike the Parsec examples, and prohibits 
default line continuation (requiring instead an explicit ampersand token &). 
The lexical parsers of the ParsecToken module skip whitespace after each symbol 
parsed (lexeme parsers); including the newline.

I was thinking of making a minor change to Parsec: In Token.hs, lexeme, 
whiteSpace, and simpleSpace are defined. lexeme uses whiteSpace which uses 
simpleSpace. simpleSpace is defined:

simpleSpace = skipMany1 (satisfy isSpace)

I could replace this locally with:

simpleSpace = skipMany1 (satisfy isSpacePlusAmpersandMinusNewline)

This approach may have other problems though. Has anyone experience of using 
Parsec to parse such a language? For example assembly or a preprocessor?

Thanks in advance,
Paul
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to