1. 26 May, 1999 2 commits
  2. 18 May, 1999 1 commit
  3. 11 May, 1999 1 commit
    • keithw's avatar
      [project @ 1999-05-11 16:31:33 by keithw] · 39b581ba
      keithw authored
      (this is number 1 of 9 commits to be applied together)
      
        Dictionaries now appear in interface files explicitly, rather than
        as contexts: __forall [a] => {Show a} -> ... rather than __forall
        [a] {Show a} => ... .
      39b581ba
  4. 24 Mar, 1999 2 commits
  5. 17 Feb, 1999 1 commit
    • simonm's avatar
      [project @ 1999-02-17 15:57:20 by simonm] · 449deb80
      simonm authored
      Fast Integers.  The rep. of Integers is now
      
      	data Integer = S# Int#
      		     | J# Int# ByteArray#
      
      - several new primops added for overflow-detecting arithmetic
      - negateInteger# removed; it can be done directly
      - integer_0, integer_1 etc. removed.
      - the compiler now uses S# where it previously used int2Integer.
      - the compiler generates small integers for -2^32 .. 2^32-1, instead
        of -2^29 .. -2^29-1.
      
      - PrelST.State datatype moved to LazyST (its only use).
      - some library code (in Time.lhs) still needs cleaning up, it depends
        on the Integer rep.
      449deb80
  6. 27 Jan, 1999 1 commit
    • simonpj's avatar
      [project @ 1999-01-27 14:51:14 by simonpj] · 18976e61
      simonpj authored
      Finally!  This commits the ongoing saga of Simon's hygiene sweep
      
      FUNCTIONALITY
      ~~~~~~~~~~~~~
      a) The 'unused variable' warnings from the renamer work.  
      b) Better error messages here and there, esp type checker
      c) Fixities for Haskell 98 (maybe I'd done that before)
      d) Lazy reporting of name clashes for Haskell 98 (ditto)
      
      HYGIENE
      ~~~~~~~
      a) type OccName has its own module.  OccNames are represented
         by a single FastString, not three as in the last round.  This
         string is held in Z-encoded form; a decoding function decodes
         for printing in user error messages.  There's a nice tight
         encoding for (,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)
      
      b) type Module is a proper ADT, in module OccName
      
      c) type RdrName is a proper ADT, in its own module
      
      d) type Name has a new, somwhat tidier, representation
      
      e) much grunting in the renamer to get Provenances right.
         This makes error messages look better (no spurious qualifiers)
      18976e61
  7. 18 Dec, 1998 1 commit
    • simonpj's avatar
      [project @ 1998-12-18 17:40:31 by simonpj] · 7e602b0a
      simonpj authored
      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.
      7e602b0a
  8. 02 Dec, 1998 1 commit
  9. 19 Mar, 1998 1 commit
  10. 08 Jan, 1998 1 commit
    • simonm's avatar
      [project @ 1998-01-08 18:03:08 by simonm] · 9dd6e1c2
      simonm authored
      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.
      9dd6e1c2
  11. 05 Sep, 1997 1 commit
  12. 05 Jul, 1997 1 commit
  13. 20 Jun, 1997 1 commit
  14. 05 Jun, 1997 1 commit
  15. 26 May, 1997 1 commit
  16. 18 May, 1997 1 commit
  17. 14 Mar, 1997 1 commit
  18. 18 Jan, 1997 1 commit
  19. 06 Jan, 1997 1 commit
  20. 19 Dec, 1996 1 commit
  21. 26 Jul, 1996 1 commit
  22. 25 Jul, 1996 1 commit
  23. 19 Jul, 1996 1 commit
  24. 15 Jul, 1996 1 commit
  25. 26 Jun, 1996 1 commit
  26. 11 Jun, 1996 1 commit
  27. 05 Jun, 1996 1 commit
  28. 16 May, 1996 1 commit
  29. 30 Apr, 1996 1 commit
  30. 20 Apr, 1996 1 commit
  31. 09 Apr, 1996 1 commit
  32. 08 Apr, 1996 1 commit
  33. 07 Apr, 1996 1 commit
  34. 05 Apr, 1996 1 commit
  35. 19 Mar, 1996 1 commit