44< title > Code Prettifier</ title >
55< script src ="../src/prettify.js " type ="text/javascript "
66 onerror ="alert('Error: failed to load ' + this.src) "> </ script >
7+ < script src ="../src/lang-hs.js " type ="text/javascript "
8+ onerror ="alert('Error: failed to load ' + this.src) "> </ script >
79< script src ="../src/lang-lisp.js " type ="text/javascript "
810 onerror ="alert('Error: failed to load ' + this.src) "> </ script >
911< script src ="../src/lang-lua.js " type ="text/javascript "
@@ -888,6 +890,36 @@ <h1>Bug 27 - VBScript w/ language specified</h1>
888890i = (0, 123, 45L, &HA0I, &O177S)
889891</ pre >
890892
893+ < h1 > Bug 30 - Haskell w/ language specified</ h1 >
894+ < pre class ="prettyprint lang-hs " id ="issue30 ">
895+ -- A comment
896+ Not(--"a comment")
897+ Also.not(--(A.comment))
898+
899+ module Foo(bar) where
900+ import Blah
901+ import BlahBlah(blah)
902+ import Monads(Exception(..), FIO(..),unFIO,handle,runFIO,fixFIO,fio,
903+ write,writeln,HasNext(..),HasOutput(..))
904+
905+ {- nested comments
906+ - don't work {-yet-} -}
907+ instance Thingy Foo where
908+ a = b
909+
910+ data Foo :: (* -> * -> *) -> * > * -> * where
911+ Nil :: Foo a b c
912+ Cons :: a b c -> Foo abc -> Foo a b c
913+
914+ str = "Foo\\Bar"
915+ char = 'x'
916+ Not.A.Char = 'too long' -- Don't barf. Show that 't is a lexical error.
917+
918+ (ident, ident', Fo''o.b'ar)
919+
920+ (0, 12, 0x45, 0xA7, 0o177, 0O377, 0.1, 1.0, 1e3, 0.5E-3, 1.0E+45)
921+ </ pre >
922+
891923< h1 > Bug 33 - OCaml and F#</ h1 >
892924< pre class ="prettyprint lang-ml " id ="issue33 ">
893925(*
@@ -1982,30 +2014,45 @@ <h1>Protocol Buffers</h1>
19822014 '`KWDImports`END`PLN System<br>' +
19832015 '<br>' +
19842016 '`END`KWDClass`END`PLN [class]<br>' +
1985- ' `END`KWDShared`END`PLN `END`KWDSub`END`PLN [shared]`END`PUN(`END`KWDByVal`END`PLN [boolean] `END`KWDAs`END`PLN `END`KWDBoolean`END`PUN)`END`PLN<br>' +
1986- ' `END`KWDIf`END`PLN [boolean] `END`KWDThen`END`PLN<br>' +
1987- ' Console`END`PUN.`END`PLNWriteLine`END`PUN(`END`STR"true"`END`PUN)`END`PLN<br>' +
2017+ ' `END`KWDShared`END`PLN `END`KWDSub`END`PLN [shared]`END' +
2018+ '`PUN(`END`KWDByVal`END`PLN [boolean] `END`KWDAs`END`PLN `END' +
2019+ '`KWDBoolean`END`PUN)`END`PLN<br>' +
2020+ ' `END`KWDIf`END`PLN [boolean] `END' +
2021+ '`KWDThen`END`PLN<br>' +
2022+ ' Console`END`PUN.`END' +
2023+ '`PLNWriteLine`END`PUN(`END`STR"true"`END`PUN)`END`PLN<br>' +
19882024 ' `END`KWDElse`END`PLN<br>' +
1989- ' Console`END`PUN.`END`PLNWriteLine`END`PUN(`END`STR"false"`END`PUN)`END`PLN<br>' +
1990- ' `END`KWDEnd`END`PLN `END`KWDIf`END`PLN<br>' +
2025+ ' Console`END`PUN.`END' +
2026+ '`PLNWriteLine`END`PUN(`END`STR"false"`END`PUN)`END`PLN<br>' +
2027+ ' `END`KWDEnd`END`PLN `END`KWDIf`END' +
2028+ '`PLN<br>' +
19912029 ' `END`KWDEnd`END`PLN `END`KWDSub`END`PLN<br>' +
19922030 '`END`KWDEnd`END`PLN `END`KWDClass`END`PLN<br>' +
19932031 '<br>' +
19942032 '`END`KWDModule`END`PLN [module]<br>' +
19952033 ' `END`KWDSub`END`PLN Main`END`PUN()`END`PLN<br>' +
1996- ' [class]`END`PUN.`END`PLN[shared]`END`PUN(`END`LITTrue`END`PUN)`END`PLN<br>' +
2034+ ' [class]`END`PUN.`END`PLN[shared]`END' +
2035+ '`PUN(`END`LITTrue`END`PUN)`END`PLN<br>' +
19972036 '<br>' +
1998- ' `END`COM\' This prints out: \".`END`PLN<br>' +
1999- ' Console`END`PUN.`END`PLNWriteLine`END`PUN(`END`STR""""`END`PUN)`END`PLN<br>' +
2037+ ' `END`COM\' This prints out: \".`END' +
2038+ '`PLN<br>' +
2039+ ' Console`END`PUN.`END`PLNWriteLine`END' +
2040+ '`PUN(`END`STR""""`END`PUN)`END`PLN<br>' +
20002041 '<br>' +
2001- ' `END`COM\' This prints out: a"b.`END`PLN<br>' +
2002- ' Console`END`PUN.`END`PLNWriteLine`END`PUN(`END`STR"a""b"`END`PUN)`END`PLN<br>' +
2042+ ' `END`COM\' This prints out: a"b.`END' +
2043+ '`PLN<br>' +
2044+ ' Console`END`PUN.`END`PLNWriteLine`END' +
2045+ '`PUN(`END`STR"a""b"`END`PUN)`END`PLN<br>' +
20032046 '<br>' +
2004- ' `END`COM\' This prints out: a.`END`PLN<br>' +
2005- ' Console`END`PUN.`END`PLNWriteLine`END`PUN(`END`STR"a"c`END`PUN)`END`PLN<br>' +
2047+ ' `END`COM\' This prints out: a.`END' +
2048+ '`PLN<br>' +
2049+ ' Console`END`PUN.`END`PLNWriteLine`END' +
2050+ '`PUN(`END`STR"a"c`END`PUN)`END`PLN<br>' +
20062051 '<br>' +
2007- ' `END`COM\' This prints out: ".`END`PLN<br>' +
2008- ' Console`END`PUN.`END`PLNWriteLine`END`PUN(`END`STR""""c`END`PUN)`END`PLN<br>' +
2052+ ' `END`COM\' This prints out: ".`END' +
2053+ '`PLN<br>' +
2054+ ' Console`END`PUN.`END`PLNWriteLine`END' +
2055+ '`PUN(`END`STR""""c`END`PUN)`END`PLN<br>' +
20092056 ' `END`KWDEnd`END`PLN `END`KWDSub`END`PLN<br>' +
20102057 '`END`KWDEnd`END`PLN `END`KWDModule`END`PLN<br>' +
20112058 '<br>' +
@@ -2018,10 +2065,63 @@ <h1>Protocol Buffers</h1>
20182065 'd `END`PUN=`END`PLN `END`LIT# 13:45:39PM #`END`PLN<br>' +
20192066 '<br>' +
20202067 '`END`KWDDim`END`PLN n `END`KWDAs`END`PLN Float<br>' +
2021- 'n `END`PUN=`END`PLN `END`PUN(`END`LIT0.0`END`PUN,`END`PLN `END`LIT.99F`END`PUN,`END`PLN `END`LIT1.0E-2D`END`PUN,`END`PLN `END`LIT1.0E+3D`END`PUN,`END`PLN `END`LIT.5E4`END`PUN,`END`PLN `END`LIT1E3R`END`PUN,`END`PLN `END`LIT4D`END`PUN)`END`PLN<br>' +
2068+ 'n `END`PUN=`END`PLN `END`PUN(`END`LIT0.0`END`PUN,`END`PLN `END' +
2069+ '`LIT.99F`END`PUN,`END`PLN `END`LIT1.0E-2D`END`PUN,`END`PLN `END' +
2070+ '`LIT1.0E+3D`END`PUN,`END`PLN `END`LIT.5E4`END`PUN,`END`PLN `END' +
2071+ '`LIT1E3R`END`PUN,`END`PLN `END`LIT4D`END`PUN)`END`PLN<br>' +
20222072 '<br>' +
20232073 '`END`KWDDim`END`PLN i `END`KWDAs`END`PLN `END`KWDInteger`END`PLN<br>' +
2024- 'i `END`PUN=`END`PLN `END`PUN(`END`LIT0`END`PUN,`END`PLN `END`LIT123`END`PUN,`END`PLN `END`LIT45L`END`PUN,`END`PLN `END`LIT&HA0I`END`PUN,`END`PLN `END`LIT&O177S`END`PUN)`END' ) ,
2074+ 'i `END`PUN=`END`PLN `END`PUN(`END`LIT0`END`PUN,`END`PLN `END' +
2075+ '`LIT123`END`PUN,`END`PLN `END`LIT45L`END`PUN,`END`PLN `END' +
2076+ '`LIT&HA0I`END`PUN,`END`PLN `END`LIT&O177S`END`PUN)`END' ) ,
2077+ issue30 : (
2078+ '`COM-- A comment`END`PLN<br>' +
2079+ 'Not`END`PUN(--`END`STR"a comment"`END`PUN)`END`PLN<br>' +
2080+ 'Also.not`END`PUN(--(`END`PLNA.comment`END`PUN))`END`PLN<br>' +
2081+ '<br>' +
2082+ '`END`KWDmodule`END`PLN Foo`END`PUN(`END`PLNbar`END`PUN)`END`PLN `END' +
2083+ '`KWDwhere`END`PLN<br>' +
2084+ '`END`KWDimport`END`PLN Blah<br>' +
2085+ '`END`KWDimport`END`PLN BlahBlah`END`PUN(`END`PLNblah`END`PUN)`END' +
2086+ '`PLN<br>' +
2087+ '`END`KWDimport`END`PLN Monads`END`PUN(`END`PLNException`END' +
2088+ '`PUN(..),`END`PLN FIO`END`PUN(..),`END`PLNunFIO`END`PUN,`END' +
2089+ '`PLNhandle`END`PUN,`END`PLNrunFIO`END`PUN,`END`PLNfixFIO`END' +
2090+ '`PUN,`END`PLNfio`END`PUN,`END`PLN<br>' +
2091+ ' write`END`PUN,`END' +
2092+ '`PLNwriteln`END`PUN,`END`PLNHasNext`END`PUN(..),`END' +
2093+ '`PLNHasOutput`END`PUN(..))`END`PLN<br>' +
2094+ '<br>' +
2095+ '`END`COM{- nested comments<br>' +
2096+ ' - don\'t work {-yet-}`END`PLN `END`PUN-}`END`PLN<br>' +
2097+ '`END`KWDinstance`END`PLN Thingy Foo `END`KWDwhere`END`PLN<br>' +
2098+ ' a `END`PUN=`END`PLN b<br>' +
2099+ '<br>' +
2100+ '`END`KWDdata`END`PLN Foo `END`PUN::`END`PLN `END`PUN(*`END`PLN `END' +
2101+ '`PUN->`END`PLN `END`PUN*`END`PLN `END`PUN->`END`PLN `END' +
2102+ '`PUN*)`END`PLN `END`PUN->`END`PLN `END`PUN*`END`PLN `END' +
2103+ '`PUN>`END`PLN `END`PUN*`END`PLN `END`PUN->`END`PLN `END' +
2104+ '`PUN*`END`PLN `END`KWDwhere`END`PLN<br>' +
2105+ ' Nil `END`PUN::`END`PLN Foo a b c<br>' +
2106+ ' Cons `END`PUN::`END`PLN a b c `END`PUN->`END' +
2107+ '`PLN Foo abc `END`PUN->`END`PLN Foo a b c<br>' +
2108+ '<br>' +
2109+ 'str `END`PUN=`END`PLN `END`STR"Foo\\\\Bar"`END`PLN<br>' +
2110+ 'char `END`PUN=`END`PLN `END`STR\'x\'`END`PLN<br>' +
2111+ 'Not.A.Char `END`PUN=`END`PLN `END`STR\'t`END`PLNoo long\' `END' +
2112+ '`COM-- Don\'t barf. Show that \'t is a lexical error.`END' +
2113+ '`PLN<br>' +
2114+ '<br>' +
2115+ '`END`PUN(`END`PLNident`END`PUN,`END`PLN ident\'`END`PUN,`END' +
2116+ '`PLN Fo\'\'o.b\'ar`END`PUN)`END`PLN<br>' +
2117+ '<br>' +
2118+ '`END`PUN(`END`LIT0`END`PUN,`END`PLN `END`LIT12`END`PUN,`END`PLN `END' +
2119+ '`LIT0x45`END`PUN,`END`PLN `END`LIT0xA7`END`PUN,`END`PLN `END' +
2120+ '`LIT0o177`END`PUN,`END`PLN `END`LIT0O377`END`PUN,`END`PLN `END' +
2121+ '`LIT0.1`END`PUN,`END`PLN `END`LIT1.0`END`PUN,`END`PLN `END' +
2122+ '`LIT1e3`END`PUN,`END`PLN `END`LIT0.5E-3`END`PUN,`END`PLN `END' +
2123+ '`LIT1.0E+45`END`PUN)`END'
2124+ ) ,
20252125 issue33 : (
20262126 '`COM(*<br>' +
20272127 ' * Print the 10th fibonacci number<br>' +
0 commit comments