summaryrefslogtreecommitdiff
path: root/ghc/compiler/parser/UgenAll.lhs
Commit message (Collapse)AuthorAgeFilesLines
* [project @ 1999-06-01 16:40:41 by simonmar]simonmar1999-06-011-46/+0
| | | | | | | | | | | | | | | | | | | | | | | | | This commit replaces the old yacc parser with a Happy-generated one. Notes: - The generated .hs file is *big*. Best to use a recent version of Happy, and even better to add the -c flag to use unsafeCoerce# with ghc (versions 4.02+ please). - The lexer has grown all sorts of unsightly growths and should be put down as soon as possible. - Parse errors may result in strange diagnostics. I'm looking into this. - HsSyn now contains a few extra constructors due to the way patterns are parsed as expressions in the parser. - The layout rule is implemented according to the Haskell report. I found a couple of places in the libraries where we previously weren't adhering to this - in particular the rule about "nested contexts must be more indented than outer contexts". The rule is necessary to disambiguate in the presence of empty declaration lists.
* [project @ 1999-05-18 15:03:54 by simonpj]simonpj1999-05-181-0/+2
| | | | RULES-NOTES
* [project @ 1998-12-18 17:40:31 by simonpj]simonpj1998-12-181-2/+6
| | | | | | | | | | | | | | | | | | | | | Another big commit from Simon. Actually, the last one didn't all go into the main trunk; because of a CVS glitch it ended up in the wrong branch. So this commit includes: * Scoped type variables * Warnings for unused variables should work now (they didn't before) * Simplifier improvements: - Much better treatment of strict arguments - Better treatment of bottoming Ids - No need for w/w split for fns that are merely strict - Fewer iterations needed, I hope * Less gratuitous renaming in interface files and abs C * OccName is a separate module, and is an abstract data type I think the whole Prelude and Exts libraries compile correctly. Something isn't quite right about typechecking existentials though.
* [project @ 1998-01-08 18:03:08 by simonm]simonm1998-01-081-23/+14
| | | | | | | | | | | | | | | | | | | The Great Multi-Parameter Type Classes Merge. Notes from Simon (abridged): * Multi-parameter type classes are fully implemented. * Error messages from the type checker should be noticeably improved * Warnings for unused bindings (-fwarn-unused-names) * many other minor bug fixes. Internally there are the following changes * Removal of Haskell 1.2 compatibility. * Dramatic clean-up of the PprStyle stuff. * The type Type has been substantially changed. * The dictionary for each class is represented by a new data type for that purpose, rather than by a tuple.
* [project @ 1997-05-19 00:12:10 by sof]sof1997-05-191-0/+4
| | | | 2.04 changes
* [project @ 1996-07-15 11:32:34 by partain]partain1996-07-151-45/+0
| | | | partain changes to 960714
* [project @ 1996-06-26 10:26:00 by partain]partain1996-06-261-13/+57
| | | | SLPJ 1.3 changes through 96/06/25
* [project @ 1996-06-05 06:44:31 by partain]partain1996-06-051-1/+3
| | | | SLPJ changes through 960604
* [project @ 1996-04-07 15:41:24 by partain]partain1996-04-071-4/+0
| | | | Sansom 1.3 changes through 960407
* [project @ 1996-04-05 08:26:04 by partain]partain1996-04-051-2/+0
| | | | Add SLPJ/WDP 1.3 changes through 960404
* [project @ 1996-03-19 08:58:34 by partain]partain1996-03-191-0/+50
simonpj/sansom/partain/dnt 1.3 compiler stuff through 96/03/18