ghc.git
11 years agoRemove some of the old compat stuff now that we assume GHC 6.4
Simon Marlow [Fri, 8 Feb 2008 12:41:32 +0000 (12:41 +0000)] 
Remove some of the old compat stuff now that we assume GHC 6.4

11 years agoAllow runghc to take input from stdin, just like Ruby & Python
Simon Marlow [Thu, 7 Feb 2008 14:58:30 +0000 (14:58 +0000)] 
Allow runghc to take input from stdin, just like Ruby & Python

11 years agoremove a bogus assertion
Simon Marlow [Thu, 7 Feb 2008 14:38:05 +0000 (14:38 +0000)] 
remove a bogus assertion

11 years agoConvert more UniqFM's back to LazyUniqFM's
Ian Lynagh [Thu, 7 Feb 2008 14:47:36 +0000 (14:47 +0000)] 
Convert more UniqFM's back to LazyUniqFM's
These fix these failures:
   break008(ghci)
   break009(ghci)
   break026(ghci)
   ghci.prog009(ghci)
   ghci025(ghci)
   print007(ghci)
   prog001(ghci)
   prog002(ghci)
   prog003(ghci)
at least some of which have this symptom:
    Exception: expectJust prune

11 years agoBe a bit more consistent about what's a set and what's a map
Ian Lynagh [Tue, 5 Feb 2008 21:19:09 +0000 (21:19 +0000)] 
Be a bit more consistent about what's a set and what's a map

11 years agoMake some more modules use LazyUniqFM instead of UniqFM
Ian Lynagh [Thu, 7 Feb 2008 01:57:14 +0000 (01:57 +0000)] 
Make some more modules use LazyUniqFM instead of UniqFM
If these modules use UniqFM then we get a stack overflow when compiling
modules that use fundeps. I haven't tracked down the actual cause.

11 years agoRemove unused import
Ian Lynagh [Thu, 7 Feb 2008 00:25:44 +0000 (00:25 +0000)] 
Remove unused import

11 years agoMake UniqFM strict in its elements
Ian Lynagh [Wed, 6 Feb 2008 14:16:20 +0000 (14:16 +0000)] 
Make UniqFM strict in its elements

11 years agoUse uniqSetToList rather than eltsUFM
Ian Lynagh [Wed, 6 Feb 2008 00:00:43 +0000 (00:00 +0000)] 
Use uniqSetToList rather than eltsUFM

11 years agoUse isEmptyUniqSet rather than isNullUFM
Ian Lynagh [Tue, 5 Feb 2008 20:53:36 +0000 (20:53 +0000)] 
Use isEmptyUniqSet rather than isNullUFM

11 years agoAdded Uninstaller
Manuel M T Chakravarty [Wed, 6 Feb 2008 07:30:54 +0000 (07:30 +0000)] 
Added Uninstaller

11 years agoFIX BUILD on x86_64
Simon Marlow [Wed, 6 Feb 2008 11:39:36 +0000 (11:39 +0000)] 
FIX BUILD on x86_64

11 years agomatchesPkg: match against the pkg Id (foo-1.0) not just the package name (foo)
Simon Marlow [Tue, 5 Feb 2008 09:04:29 +0000 (09:04 +0000)] 
matchesPkg: match against the pkg Id (foo-1.0) not just the package name (foo)
Fixes the ghcpkg01 test.

11 years agoTeach cheapEqExpr about casts
Roman Leshchinskiy [Wed, 6 Feb 2008 03:50:07 +0000 (03:50 +0000)] 
Teach cheapEqExpr about casts

Previously, cheapEqExpr would always return False if it encountered a cast.
This was bad for two reasons. Firstly, CSE (which uses cheapEqExpr to compare
expressions) never eliminated expressions which contained casts and secondly,
it was inconsistent with exprIsBig. This patch fixes this.

11 years agoInject implicit bindings before the simplifier (Trac #2070)
simonpj@microsoft.com [Tue, 5 Feb 2008 16:55:07 +0000 (16:55 +0000)] 
Inject implicit bindings before the simplifier (Trac #2070)

With constructor unpacking, it's possible for constructors and record
selectors to have non-trivial code, which should be optimised before
being fed to the code generator.  Example:

  data Foo = Foo { get :: {-# UNPACK #-} !Int }

Then we do not want to get this:
  T2070.get =
    \ (tpl_B1 :: T2070.Foo) ->
    case tpl_B1 of tpl1_B2 { T2070.Foo rb_B4 ->
        let {
          ipv_B3 [Just S] :: GHC.Base.Int
          [Str: DmdType m]
          ipv_B3 = GHC.Base.I# rb_B4
        } in  ipv_B3 }

If this goes through to codegen, we'll generate bad code.  Admittedly,
this only matters when the selector is used in a curried way (e.g
map get xs), but nevertheless it's silly.

This patch injects the implicit bindings in SimplCore, before the
simplifier runs.  That slows the simplifier a little, because it has
to look at some extra bindings; but it's probably a slight effect.
If it turns out to matter I suppose we can always inject them later,
e.g. just before the final simplification.

An unexpected (to me) consequence is that we get some specialisation rules
for class-method selectors.  E.g. we get a rule
RULE  (==) Int dInt = eqInt
There's no harm in this, but not much benefit either, because the
same result will happen when we inline (==) and dInt, but it's perhaps
more direct.

11 years agoMake do-notation a bit more flexible (Trac #1537)
simonpj@microsoft.com [Tue, 5 Feb 2008 16:48:16 +0000 (16:48 +0000)] 
Make do-notation a bit more flexible (Trac #1537)

This is a second attempt to fix #1537: to make the static typechecking
of do-notation behave just like the desugared version of the same thing.
This should allow parameterised monads to work properly (see Oleg's comment
in the above ticket).

We can probably merge to 6.8.3 if it goes smoothly.

Incidentally, the resulting setup suffers from greater type ambiguity
if (>>=) has a very general type.  So test rebindable6 no longer works
(at least not without more type signatures), and rebindable5 requires
extra functional dependencies.  But they are weird tests.

11 years agoWhite space only
simonpj@microsoft.com [Tue, 5 Feb 2008 16:37:02 +0000 (16:37 +0000)] 
White space only

11 years agoFIX #2047: Windows (and older Unixes): align info tables to 4 bytes, not 2
Simon Marlow [Tue, 5 Feb 2008 10:14:25 +0000 (10:14 +0000)] 
FIX #2047: Windows (and older Unixes): align info tables to 4 bytes, not 2
Perhaps in the past '.align 2' meant align to 4 bytes, but nowadays it
means align to 2 bytes.  The compacting collector requires info tables
to be aligned to 4 bytes, because it stores tag bits in the low 2
bits.

This only affects -fvia-C - the native code generator was already
emitting the correct alignment.  The incorrect alignment might well
have been adversely affecting performance with -fvia-C on Windows.

11 years agoMost of installer for framework on system volume
Manuel M T Chakravarty [Tue, 5 Feb 2008 07:37:38 +0000 (07:37 +0000)] 
Most of installer for framework on system volume

11 years agoSplit into two types of Mac installer specs
Manuel M T Chakravarty [Tue, 5 Feb 2008 05:25:04 +0000 (05:25 +0000)] 
Split into two types of Mac installer specs

11 years agoLambda logo for packages
Manuel M T Chakravarty [Tue, 5 Feb 2008 05:20:17 +0000 (05:20 +0000)] 
Lambda logo for packages
- This image is in the public domain, cf
  http://en.wikipedia.org/wiki/Image:Greek_lc_lamda_thin.svg

11 years agoxcode build target for fixed /Library/Frameworks inst
Manuel M T Chakravarty [Tue, 5 Feb 2008 03:00:47 +0000 (03:00 +0000)] 
xcode build target for fixed /Library/Frameworks inst
- Also moving all MacOS-specific Makefile components into
  distrib/MacOS/Makefile

11 years agoFirst stab at an installer package for the Mac
Manuel M T Chakravarty [Sat, 2 Feb 2008 13:48:53 +0000 (13:48 +0000)] 
First stab at an installer package for the Mac
- GHC as a Mac framework
- I tried to make a package where the user could choose whether to install
  in /Library/Frameworks or ~/Library/Frameworks (to allow installation for
  non-admins).  However, that doesn't work well without including the whole
  distribution twice as the decision as to whether the admin password needs
  to be entered is made at packaging time (not at install time).

11 years agoSupport for using libffi to implement FFI calls in GHCi (#631)
Simon Marlow [Mon, 4 Feb 2008 16:10:53 +0000 (16:10 +0000)] 
Support for using libffi to implement FFI calls in GHCi (#631)
This means that an unregisterised build on a platform not directly
supported by GHC can now have full FFI support using libffi.

Also in this commit:

 - use PrimRep rather than CgRep to describe FFI args in the byte
   code generator.  No functional changes, but PrimRep is more correct.

 - change TyCon.sizeofPrimRep to primRepSizeW, which is more useful

11 years agoUse the correct libffi type for pointers
Simon Marlow [Fri, 4 Jan 2008 13:19:36 +0000 (13:19 +0000)] 
Use the correct libffi type for pointers

11 years agoFix DEBUG build
simonpj@microsoft.com [Mon, 4 Feb 2008 16:05:14 +0000 (16:05 +0000)] 
Fix DEBUG build

11 years agoMake seqAlts actually seq everything
Ian Lynagh [Sun, 3 Feb 2008 13:43:21 +0000 (13:43 +0000)] 
Make seqAlts actually seq everything

11 years agoStrictness tweaks
Ian Lynagh [Sun, 3 Feb 2008 02:48:36 +0000 (02:48 +0000)] 
Strictness tweaks

11 years agoWhitespace
Ian Lynagh [Sun, 3 Feb 2008 00:39:29 +0000 (00:39 +0000)] 
Whitespace

11 years agoWhitespace only
Ian Lynagh [Sat, 2 Feb 2008 21:39:36 +0000 (21:39 +0000)] 
Whitespace only

11 years agoTweak strictness
Ian Lynagh [Sat, 2 Feb 2008 21:35:42 +0000 (21:35 +0000)] 
Tweak strictness

11 years agoFix warnings in deSugar/DsBinds
Ian Lynagh [Wed, 30 Jan 2008 14:40:14 +0000 (14:40 +0000)] 
Fix warnings in deSugar/DsBinds

11 years agoUNDO: Be a little keener to inline
Simon Marlow [Fri, 1 Feb 2008 14:48:10 +0000 (14:48 +0000)] 
UNDO: Be a little keener to inline

This patch caused at least the following test failures:
   1744(normal)
   ghci028(ghci)
   unicode001(normal)
and additionally made the stage3 build fail.

A little more validation please!

I didn't find the exact cause of the failure yet, but it appears that
the Lexer is miscompiled in some strange way.  If any of {Encoding,
StringBuffer, or Lexer} are compiled without -O, the problem goes
away.

11 years agoFIX BUILD with GHC 6.4.x
Simon Marlow [Fri, 1 Feb 2008 12:27:53 +0000 (12:27 +0000)] 
FIX BUILD with GHC 6.4.x

11 years agoFIX BUILD with ghc-6.4.x
Simon Marlow [Fri, 1 Feb 2008 11:43:02 +0000 (11:43 +0000)] 
FIX BUILD with ghc-6.4.x

11 years agoSome tweaks to the building from source section
Simon Marlow [Tue, 29 Jan 2008 09:11:32 +0000 (09:11 +0000)] 
Some tweaks to the building from source section

11 years agoWarning clean up
Manuel M T Chakravarty [Thu, 31 Jan 2008 02:48:45 +0000 (02:48 +0000)] 
Warning clean up

11 years agoMove spiltDmdTy within module (no change in code)
simonpj@microsoft.com [Tue, 29 Jan 2008 01:14:38 +0000 (01:14 +0000)] 
Move spiltDmdTy within module (no change in code)

11 years agoFix typo where I forgot the new substitution
simonpj@microsoft.com [Mon, 28 Jan 2008 21:38:56 +0000 (21:38 +0000)] 
Fix typo where I forgot the new substitution

11 years agoAdd missing (error) case in isIrrefutablePat
simonpj@microsoft.com [Mon, 28 Jan 2008 21:34:29 +0000 (21:34 +0000)] 
Add missing (error) case in isIrrefutablePat

11 years agoAdd missing (error) case in pprConDecl
simonpj@microsoft.com [Mon, 28 Jan 2008 21:34:09 +0000 (21:34 +0000)] 
Add missing (error) case in pprConDecl

11 years agoFix warnings on non-Windows
Ian Lynagh [Wed, 30 Jan 2008 11:46:40 +0000 (11:46 +0000)] 
Fix warnings on non-Windows

11 years agoFixed warnings in main/ErrUtils
Twan van Laarhoven [Sun, 27 Jan 2008 01:54:19 +0000 (01:54 +0000)] 
Fixed warnings in main/ErrUtils

11 years agoFixed warnings in main/HeaderInfo, except for incomplete pattern matches
Twan van Laarhoven [Sun, 27 Jan 2008 01:41:18 +0000 (01:41 +0000)] 
Fixed warnings in main/HeaderInfo, except for incomplete pattern matches

11 years agoFixed warnings in main/DynFlags
Twan van Laarhoven [Sun, 27 Jan 2008 01:24:43 +0000 (01:24 +0000)] 
Fixed warnings in main/DynFlags

11 years agoFixed warnings in hsSyn/HsSyn
Twan van Laarhoven [Sun, 27 Jan 2008 00:46:26 +0000 (00:46 +0000)] 
Fixed warnings in hsSyn/HsSyn

11 years agoFixed warnings in hsSyn/HsUtils
Twan van Laarhoven [Sun, 27 Jan 2008 00:45:06 +0000 (00:45 +0000)] 
Fixed warnings in hsSyn/HsUtils

11 years agoFixed warnings in hsSyn/HsTypes
Twan van Laarhoven [Sun, 27 Jan 2008 00:44:19 +0000 (00:44 +0000)] 
Fixed warnings in hsSyn/HsTypes

11 years agoFixed warnings in hsSyn/HsDoc
Twan van Laarhoven [Sun, 27 Jan 2008 00:43:59 +0000 (00:43 +0000)] 
Fixed warnings in hsSyn/HsDoc

11 years agoFixed warnings in hsSyn/HsLit
Twan van Laarhoven [Sun, 27 Jan 2008 00:43:30 +0000 (00:43 +0000)] 
Fixed warnings in hsSyn/HsLit

11 years agoFixed warnings in hsSyn/HsImpExp, except for incomplete pattern matches
Twan van Laarhoven [Sun, 27 Jan 2008 00:42:54 +0000 (00:42 +0000)] 
Fixed warnings in hsSyn/HsImpExp, except for incomplete pattern matches

11 years agoFixed warnings in hsSyn/HsPat, except for incomplete pattern matches
Twan van Laarhoven [Sun, 27 Jan 2008 00:42:09 +0000 (00:42 +0000)] 
Fixed warnings in hsSyn/HsPat, except for incomplete pattern matches

11 years agoFixed warnings in hsSyn/HsBinds, except for incomplete pattern matches
Twan van Laarhoven [Sun, 27 Jan 2008 00:41:19 +0000 (00:41 +0000)] 
Fixed warnings in hsSyn/HsBinds, except for incomplete pattern matches

11 years agoFixed warnings in hsSyn/HsDecls, except for incomplete pattern matches
Twan van Laarhoven [Sun, 27 Jan 2008 00:40:46 +0000 (00:40 +0000)] 
Fixed warnings in hsSyn/HsDecls, except for incomplete pattern matches

11 years agoFixed warnings in simplCore/CSE
Twan van Laarhoven [Sat, 26 Jan 2008 23:39:18 +0000 (23:39 +0000)] 
Fixed warnings in simplCore/CSE

11 years agoFixed warnings in profiling/CostCentre, except for incomplete pattern matches
Twan van Laarhoven [Sat, 26 Jan 2008 23:28:41 +0000 (23:28 +0000)] 
Fixed warnings in profiling/CostCentre, except for incomplete pattern matches

11 years agoFixed warnings in types/InstEnv
Twan van Laarhoven [Sat, 26 Jan 2008 23:17:32 +0000 (23:17 +0000)] 
Fixed warnings in types/InstEnv

11 years agoFixed warnings in types/FamInstEnv
Twan van Laarhoven [Sat, 26 Jan 2008 23:14:26 +0000 (23:14 +0000)] 
Fixed warnings in types/FamInstEnv

11 years agoFixed warnings in simplStg/SRT, except for incomplete pattern matches
Twan van Laarhoven [Sat, 26 Jan 2008 23:09:00 +0000 (23:09 +0000)] 
Fixed warnings in simplStg/SRT, except for incomplete pattern matches

11 years agoFixed warnings in simplStg/StgStats, except for incomplete pattern matches
Twan van Laarhoven [Sat, 26 Jan 2008 23:08:30 +0000 (23:08 +0000)] 
Fixed warnings in simplStg/StgStats, except for incomplete pattern matches

11 years agoFixed warnings in simplStg/SimplStg
Twan van Laarhoven [Sat, 26 Jan 2008 23:08:05 +0000 (23:08 +0000)] 
Fixed warnings in simplStg/SimplStg

11 years agoFixed warnings in vectorise/VectUtils
Twan van Laarhoven [Sat, 26 Jan 2008 22:30:33 +0000 (22:30 +0000)] 
Fixed warnings in vectorise/VectUtils

11 years agoFixed warnings in types/Generics
Twan van Laarhoven [Sat, 26 Jan 2008 22:28:17 +0000 (22:28 +0000)] 
Fixed warnings in types/Generics

11 years agoFixed warnings in stgSyn/StgSyn
Twan van Laarhoven [Sat, 26 Jan 2008 22:10:10 +0000 (22:10 +0000)] 
Fixed warnings in stgSyn/StgSyn

11 years agoFixed warnings in types/TyCon
Twan van Laarhoven [Sat, 26 Jan 2008 21:58:00 +0000 (21:58 +0000)] 
Fixed warnings in types/TyCon

11 years agoFixed warnings in types/Type, except for incomplete pattern matches
Twan van Laarhoven [Sat, 26 Jan 2008 21:41:26 +0000 (21:41 +0000)] 
Fixed warnings in types/Type, except for incomplete pattern matches

11 years agoFixed warnings in types/TypeRep
Twan van Laarhoven [Sat, 26 Jan 2008 21:17:22 +0000 (21:17 +0000)] 
Fixed warnings in types/TypeRep

11 years agoFixed warnings in types/FunDeps
Twan van Laarhoven [Sat, 26 Jan 2008 20:30:50 +0000 (20:30 +0000)] 
Fixed warnings in types/FunDeps

11 years agoFixed warnings in basicTypes/OccName
Twan van Laarhoven [Sat, 26 Jan 2008 20:27:37 +0000 (20:27 +0000)] 
Fixed warnings in basicTypes/OccName

11 years agoFixed warnings in basicTypes/RdrName
Twan van Laarhoven [Sat, 26 Jan 2008 20:21:04 +0000 (20:21 +0000)] 
Fixed warnings in basicTypes/RdrName

11 years agoFixed warnings in utils/Encoding
Twan van Laarhoven [Sat, 26 Jan 2008 20:12:35 +0000 (20:12 +0000)] 
Fixed warnings in utils/Encoding

11 years agoFixed warnings in utils/Digraph
Twan van Laarhoven [Sat, 26 Jan 2008 20:07:54 +0000 (20:07 +0000)] 
Fixed warnings in utils/Digraph

11 years agoFixed warnings in basicTypes/Demand
Twan van Laarhoven [Sat, 26 Jan 2008 19:59:29 +0000 (19:59 +0000)] 
Fixed warnings in basicTypes/Demand

11 years agoFixed warnings in basicTypes/Unique
Twan van Laarhoven [Sat, 26 Jan 2008 19:54:59 +0000 (19:54 +0000)] 
Fixed warnings in basicTypes/Unique

11 years agoFixed warnings in coreSyn/ExternalCore
Twan van Laarhoven [Sat, 26 Jan 2008 19:47:59 +0000 (19:47 +0000)] 
Fixed warnings in coreSyn/ExternalCore

11 years agoFixed warnings in simplCore/OccurAnal
Twan van Laarhoven [Sat, 26 Jan 2008 19:44:26 +0000 (19:44 +0000)] 
Fixed warnings in simplCore/OccurAnal

11 years agoFixed warnings in basicTypes/BasicTypes
Twan van Laarhoven [Sat, 26 Jan 2008 19:42:55 +0000 (19:42 +0000)] 
Fixed warnings in basicTypes/BasicTypes

11 years agoFixed warnings in basicTypes/Literal, except for incomplete pattern matches
Twan van Laarhoven [Sat, 26 Jan 2008 19:32:09 +0000 (19:32 +0000)] 
Fixed warnings in basicTypes/Literal, except for incomplete pattern matches

11 years agoFixed warnings in basicTypes/Id
Twan van Laarhoven [Sat, 26 Jan 2008 19:28:17 +0000 (19:28 +0000)] 
Fixed warnings in basicTypes/Id

11 years agoFixed warnings in basicTypes/Var
Twan van Laarhoven [Sat, 26 Jan 2008 19:19:39 +0000 (19:19 +0000)] 
Fixed warnings in basicTypes/Var

11 years agoFixed warnings in basicTypes/Name
Twan van Laarhoven [Sat, 26 Jan 2008 19:15:01 +0000 (19:15 +0000)] 
Fixed warnings in basicTypes/Name

11 years agoFixed warnings in types/Coercion, except for incomplete pattern matches
Twan van Laarhoven [Sat, 26 Jan 2008 19:07:35 +0000 (19:07 +0000)] 
Fixed warnings in types/Coercion, except for incomplete pattern matches

11 years agoFixed warnings in coreSyn/MkExternalCore, except for incomplete pattern matches
Twan van Laarhoven [Sat, 26 Jan 2008 01:28:07 +0000 (01:28 +0000)] 
Fixed warnings in coreSyn/MkExternalCore, except for incomplete pattern matches

11 years agoFixed warnings in coreSyn/PprExternalCore
Twan van Laarhoven [Fri, 25 Jan 2008 16:24:18 +0000 (16:24 +0000)] 
Fixed warnings in coreSyn/PprExternalCore

11 years agoFixed warnings in coreSyn/CoreUtils, except for incomplete pattern matches
Twan van Laarhoven [Fri, 25 Jan 2008 16:18:00 +0000 (16:18 +0000)] 
Fixed warnings in coreSyn/CoreUtils, except for incomplete pattern matches

11 years agoFixed warnings in coreSyn/CoreUnfold
Twan van Laarhoven [Fri, 25 Jan 2008 16:13:08 +0000 (16:13 +0000)] 
Fixed warnings in coreSyn/CoreUnfold

11 years agoFixed warnings in coreSyn/CorePrep
Twan van Laarhoven [Fri, 25 Jan 2008 16:10:51 +0000 (16:10 +0000)] 
Fixed warnings in coreSyn/CorePrep

11 years agoFixed warnings in coreSyn/CoreSubst
Twan van Laarhoven [Fri, 25 Jan 2008 16:10:02 +0000 (16:10 +0000)] 
Fixed warnings in coreSyn/CoreSubst

11 years agoFixed warnings in coreSyn/CoreLint
Twan van Laarhoven [Fri, 25 Jan 2008 16:08:09 +0000 (16:08 +0000)] 
Fixed warnings in coreSyn/CoreLint

11 years agoFixed warnings in coreSyn/CoreFVs, except for incomplete pattern matches
Twan van Laarhoven [Fri, 25 Jan 2008 16:07:16 +0000 (16:07 +0000)] 
Fixed warnings in coreSyn/CoreFVs, except for incomplete pattern matches

11 years agoFixed warnings in types/Class
Twan van Laarhoven [Fri, 25 Jan 2008 16:04:38 +0000 (16:04 +0000)] 
Fixed warnings in types/Class

11 years agoFix warnings in coreSyn/CoreTidy
Twan van Laarhoven [Fri, 18 Jan 2008 16:55:59 +0000 (16:55 +0000)] 
Fix warnings in coreSyn/CoreTidy

11 years agoFix warnings in coreSyn/CoreSyn
Twan van Laarhoven [Fri, 18 Jan 2008 16:55:06 +0000 (16:55 +0000)] 
Fix warnings in coreSyn/CoreSyn

11 years agoStrictness tweaks
Ian Lynagh [Fri, 25 Jan 2008 17:43:47 +0000 (17:43 +0000)] 
Strictness tweaks

11 years agoParser tweak
Ian Lynagh [Fri, 25 Jan 2008 14:58:47 +0000 (14:58 +0000)] 
Parser tweak

11 years agoA couple more parser tweaks
Ian Lynagh [Fri, 25 Jan 2008 14:34:21 +0000 (14:34 +0000)] 
A couple more parser tweaks

11 years agoMake comb[234] strict
Ian Lynagh [Thu, 24 Jan 2008 18:31:49 +0000 (18:31 +0000)] 
Make comb[234] strict

11 years agoStrictness tweaks
Ian Lynagh [Thu, 24 Jan 2008 18:31:42 +0000 (18:31 +0000)] 
Strictness tweaks

11 years agoTell happy to be strict
Ian Lynagh [Thu, 24 Jan 2008 16:52:14 +0000 (16:52 +0000)] 
Tell happy to be strict

11 years agoMake the Parser Monad's return strict
Ian Lynagh [Thu, 24 Jan 2008 15:58:27 +0000 (15:58 +0000)] 
Make the Parser Monad's return strict