We are pleased to announce a new major release of Hugs, including an installer for Windows and a new WinHugs interface (both contributed by Neil Mitchell). It is available from the Hugs page: http://www.haskell.org/hugs/ At present two sizes of the Windows distribution and two sizes of source distribution are available for download. Distributions for other platforms will be linked to when they are provided by third parties. Packagers can choose between an omnibus package and a more modular arrangement. ------------------------------------------------------------------------------ The Hugs 98 system is Copyright (c) Mark P Jones, Alastair Reid, the Yale Haskell Group, and the OGI School of Science & Engineering at OHSU, 1994-2005, All rights reserved. It is distributed as free software under the license in the file "License", which is included in the distribution. ------------------------------------------------------------------------------
Ross Paterson wrote:
We are pleased to announce a new major release of Hugs,
How do I use the preprocessor option -F of hugs? Without this option hugs correctly reports: unexpected symbol "#" But adding "-Fcpphs" results in "Unable to load Prelude" Christian maeder@denebola:/local/home/maeder/haskell/HetCATS> /local/home/maeder/hugs/bin/hugs Common/Lib/Map.hs __ __ __ __ ____ ___ _________________________________________ || || || || || || ||__ Hugs 98: Based on the Haskell 98 standard ||___|| ||__|| ||__|| __|| Copyright (c) 1994-2005 ||---|| ___|| World Wide Web: http://haskell.org/hugs || || Report bugs to: hugs-bugs@haskell.org || || Version: May 2006 _________________________________________ Haskell 98 mode: Restart with command line option -98 to enable extensions ERROR "Common/Lib/Map.hs":153 - Syntax error in declaration (unexpected symbol "#") Hugs> maeder@denebola:/local/home/maeder/haskell/HetCATS> /local/home/maeder/hugs/bin/hugs -F/local/home/maeder/hugs/bin/cpphs-hugs Common/Lib/Map.hs __ __ __ __ ____ ___ _________________________________________ || || || || || || ||__ Hugs 98: Based on the Haskell 98 standard ||___|| ||__|| ||__|| __|| Copyright (c) 1994-2005 ||---|| ___|| World Wide Web: http://haskell.org/hugs || || Report bugs to: hugs-bugs@haskell.org || || Version: May 2006 _________________________________________ Haskell 98 mode: Restart with command line option -98 to enable extensions ERROR "/local/home/maeder/hugs/lib/hugs/packages/hugsbase/Hugs/Prelude.hs":1 - Syntax error in input (unexpected symbol "#") FATAL ERROR: Unable to load Prelude
On Tue, May 16, 2006 at 11:18:16AM +0200, Christian Maeder wrote:
How do I use the preprocessor option -F of hugs?
Without this option hugs correctly reports: unexpected symbol "#"
But adding "-Fcpphs" results in "Unable to load Prelude"
The problem is that cpphs (like other C preprocessors) puts #line directives in its output, and they're not Haskell. But you can tell it not to with "hugs -F'cpphs --noline'".
Ross Paterson wrote:
On Tue, May 16, 2006 at 11:18:16AM +0200, Christian Maeder wrote:
How do I use the preprocessor option -F of hugs?
The problem is that cpphs (like other C preprocessors) puts #line directives in its output, and they're not Haskell. But you can tell it not to with "hugs -F'cpphs --noline'".
Thanks, this works. My next problem is: "Maximum token length (4000) exceeded" Which spot in the sources do I have to change in order to increase this limit? (I've unsuccessfully searched the hugs mailing lists for an answer) Cheers Christian
Thanks, this works. My next problem is:
"Maximum token length (4000) exceeded"
Which spot in the sources do I have to change in order to increase this limit? (I've unsuccessfully searched the hugs mailing lists for an answer)
iirc, this comes up with long string constants, such as the equivalent of HERE-documents in shell scripts and program generators. if that is the case, try splitting up the string. instead of here = "poor man's \n\ \here document\n\ \in haskell\n" use here = unlines ["poor man's" ,"here document" ,"in haskell" ] that way, you don't have to make your own incompatible version of hugs, and haskell's string gaps don't buy you anything in readability anyway. Ross: perhaps Hugs could use (++) internally to encode string gaps, instead of trying and often failing to parse a monolithic string token? (the max token length was extended in the past, but a fixed limit will never do for all applications) cheers, claus
participants (3)
-
Christian Maeder -
Claus Reinke -
Ross Paterson