lout-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[resend] Haskell update to prg2lout


From: Gabor Greif
Subject: [resend] Haskell update to prg2lout
Date: Thu, 13 Mar 2008 12:37:02 +0100
User-agent: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.8.1.12) Gecko/20080208 SeaMonkey/1.1.8

[this time with attachment]

Hi all,

when setting Haskell source code I got

1412,14: prg2lout 92,13: skipping unexpected @ character

when the code contained "at"-patterns. These characters
got ignored.

The attached patch corrects the problem. Also, it
removes the unused HaskellBacktickToken definition
and adds the "mdo" reserved word.


Cheers,

        Gabor

--- /home/ggreif/lout-3.36/prg2lout.c.keep      2008-03-13 12:03:04.853246000 
+0100
+++ /home/ggreif/lout-3.36/prg2lout.c   2008-03-13 12:22:46.671962000 +0100
@@ -1318,6 +1318,7 @@
 TOKEN ImpliesToken             = FixedToken("=>","@A sym {arrowdblright} @PO");
 TOKEN LeftArrowToken           = FixedToken("<-", "@A sym {arrowleft} @PO");
 TOKEN HaskellLambdaToken       = FixedToken("\\", "@PLAMBDA");
+TOKEN HaskellAtPatternToken    = FixedToken("@", "@PO");
 TOKEN DoubleColonToken         = FixedToken("::",  "@PDOUBLECOLON");
 TOKEN FunctionCompositionToken = FixedToken(" . ",  "@PCIRC");
 TOKEN HaskellEquivalenceToken  = FixedToken("==",  "@A sym {equivalence} @PO");
@@ -1325,7 +1326,6 @@
 TOKEN EqvToken                 = FixedToken("<=>","@A sym {arrowdblboth} @PO");
 TOKEN HaskellOrToken           = FixedToken("||", "@PO");
 TOKEN HaskellAndToken          = FixedToken("&&", "@PO");
-TOKEN HaskellBacktickToken     = FixedToken("`", "@PO");
 TOKEN PythonPowerToken          = FixedToken( "**",  "@PO" );
 TOKEN PythonBitLeftShiftToken   = FixedToken( "<<",  "@PO" );
 TOKEN PythonBitRightShiftToken  = FixedToken( ">>",  "@PO" );
@@ -3148,10 +3148,11 @@
     &LeftParenToken, &RightParenToken, &LeftBracketToken, &RightBracketToken,
     &LeftBraceToken, &RightBraceToken, &EiffelNotEqualToken, &LessEqualToken,
     &ImpliesToken, &GreaterEqualToken, &HaskellConcatenationToken,
-    &HaskellOperatorToken, &HaskellOrToken, &HaskellAndToken 
+    &HaskellOperatorToken, &HaskellOrToken, &HaskellAndToken,
+    &HaskellAtPatternToken 
   },
   {
-    "case", "class", "data", "default", "deriving", "do",
+    "case", "class", "data", "default", "deriving", "do", "mdo",
     "else", "if", "import", "in", "infix", "infixl", "infixr", "instance",
     "let", "module", "newtype", "of", "then", "type", "where",
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]