1. 29 Aug, 2001 1 commit
  2. 25 Jun, 2001 1 commit
  3. 18 Aug, 2000 1 commit
  4. 30 Jun, 2000 1 commit
  5. 25 Jun, 2000 1 commit
  6. 19 Jun, 2000 2 commits
    • simonmar's avatar
      [project @ 2000-06-19 15:13:43 by simonmar] · 7c342f5e
      simonmar authored
      oops, backout accidental commit
      7c342f5e
    • simonmar's avatar
      [project @ 2000-06-19 13:28:35 by simonmar] · 43956364
      simonmar authored
      Time fixes from Michael Weber <michael.weber@post.rwth-aachen.de>:
      
        * `toClockTime' previously didn't honor the `tz' field of a
          `CalendarTime', which led to time warping when applying
      
            => (toUTCTime (toClockTime ... (toUTCTime (toClockTime someTime) ... )))
      
          continuously.
      
          Now it accepts at least <local>- and UTC-encoded `CalendarTime's
          (TODO: test, whether all timezones work) and converts them
          correctly to <secs from epoch>-format (which is always UTC, as one
          might have guessed).
      
        * `addToClockTime' now works.
      
          Previously, `tz' seconds were added(!) when used like:
      
            => addToClockTime noTimeDiff someTime
      
          which is clearly wrong.
          Now, the following (hopefully) always holds
      
            => someTime == (addToClockTime noTimeDiff someTime)
      
        * `diffClockTimes' works correctly, and is the dual to
          `addToClockTime', i.e.
      
            => diff == ((addToClockTime diff someTime) `diffClockTimes` someTime)
      
          should now hold for all diff, someTime
      
          Previously, it reports ugly diffs at {min,hour,day,...}-breaks,
          for example:
      
            => "2000/06/18 01:00 UTC"
                  `diffClockTimes` "2000/06/17 23:00 UTC" == 1 day, -22 hours
      
          whereas now it emits "7200 secs". This number can be converted
          with `normalizeTimeDiff' to "2 hours".
      
        * added `normalizeTimeDiff', which calculates year, month, days,
          etc. out of an unnormalized `TimeDiff' (generated by
          `diffClockTimes', for example)
      
        * `formatTimeDiff': added the missing "%c" case. The
          format is proprietary, though... Is there a nicer one?
      43956364
  7. 10 Apr, 2000 1 commit
    • andy's avatar
      [project @ 2000-04-10 02:28:08 by andy] · d033cb52
      andy authored
      Removing the -DUSE_REPORT_PRELUDE for Hugs, so Hugs can use quicksort for
      its sorting function.
      
      Related wibbles in the libraries.
      d033cb52
  8. 29 Oct, 1999 1 commit
    • andy's avatar
      [project @ 1999-10-29 01:16:48 by andy] · f608faec
      andy authored
      Adding in the modified versions of the Standard Haskell 98 libraries.
      These should compile under both Hugs and GHC.
      
      use the flags  -D__HUGS__ -DUSE_REPORT_PRELUDE to extract the Hugs src.
      f608faec
  9. 06 Jul, 1999 1 commit
    • simonpj's avatar
      [project @ 1999-07-06 16:45:31 by simonpj] · 9d38678e
      simonpj authored
      All Simon's recent tuning changes.  Rough summary follows:
      
      * Fix Kevin Atkinson's cant-find-instance bug.  Turns out that Rename.slurpSourceRefs
        needs to repeatedly call getImportedInstDecls, and then go back to slurping
        source-refs.  Comments with Rename.slurpSourceRefs.
      
      * Add a case to Simplify.mkDupableAlt for the quite-common case where there's
        a very simple alternative, in which case there's no point in creating a
        join-point binding.
      
      * Fix CoreUtils.exprOkForSpeculation so that it returns True of (==# a# b#).
        This lack meant that
      	case ==# a# b# of { True -> x; False -> x }
        was not simplifying
      
      * Make float-out dump bindings at the top of a function argument, as
        at the top of a let(rec) rhs.  See notes with FloatOut.floatRhs
      
      * Make the ArgOf case of mkDupableAlt generate a OneShot lambda.
        This gave a noticeable boost to spectral/boyer2
      
      
      * Reduce the number of coerces, using worker/wrapper stuff.
        The main idea is in WwLib.mkWWcoerce.  The gloss is that we must do
        the w/w split even for small non-recursive things.  See notes with
        WorkWrap.tryWw.
      
      * This further complicated getWorkerId, so I finally bit the bullet and
        make the workerInfo field of the IdInfo work properly, including
        under substitutions.  Death to getWorkerId.  Kevin Glynn will be happy.
      
      * Make all lambdas over realWorldStatePrimTy
        into one-shot lambdas.  This is a GROSS HACK.
      
      * Also make the occurrence analyser aware of one-shot lambdas.
      
      * Make various Prelude things into INLINE, so that foldr doesn't
        get inlined in their body, so that the caller gets the benefit
        of fusion.  Notably in PrelArr.lhs.
      9d38678e
  10. 18 May, 1999 1 commit
  11. 14 Jan, 1999 1 commit
    • sof's avatar
      [project @ 1999-01-14 18:12:47 by sof] · 0d65c162
      sof authored
      Changes to make the Prelude comply with Haskell 98.
      
      I claim that this completes GHC's implementation of Haskell 98 (at
      least feature-wise, but there's bound to be some bugs lurking..)
      0d65c162
  12. 02 Feb, 1998 1 commit
    • simonm's avatar
      [project @ 1998-02-02 17:27:26 by simonm] · 28139aea
      simonm authored
      Library re-organisation:
      
      All libraries now live under ghc/lib, which has the following structure:
      
      	ghc/lib/std    		--  all prelude files 		(libHS.a)
      	ghc/lib/std/cbits
      
      	ghc/lib/exts		-- standard Hugs/GHC extensions (libHSexts.a)
      				-- available with '-fglasgow-exts'
      
      	ghc/lib/posix		-- POSIX library                (libHSposix.a)
      	ghc/lib/posix/cbits     -- available with '-syslib posix'
      
      	ghc/lib/misc		-- used to be hslibs/ghc	(libHSmisc.a)
      	ghc/lib/misc/cbits	-- available with '-syslib misc'
      
      	ghc/lib/concurrent	-- Concurrent libraries		(libHSconc.a)
      				-- available with '-concurrent'
      
      Also, several non-standard prelude modules had their names changed to begin
      with 'Prel' to reduce namespace pollution.
      
      	Addr      ==> PrelAddr     (Addr interface available in 'exts')
      	ArrBase   ==> PrelArr
      	CCall     ==> PrelCCall    (CCall interface available in 'exts')
      	ConcBase  ==> PrelConc
      	GHCerr    ==> PrelErr
      	Foreign   ==> PrelForeign  (Foreign interface available in 'exts')
      	GHC       ==> PrelGHC
      	IOHandle  ==> PrelHandle
      	IOBase    ==> PrelIOBase
      	GHCmain   ==> PrelMain
      	STBase    ==> PrelST
      	Unsafe    ==> PrelUnsafe
      	UnsafeST  ==> PrelUnsafeST
      28139aea
  13. 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
  14. 21 Oct, 1997 1 commit
    • sof's avatar
      [project @ 1997-10-21 20:31:47 by sof] · 4299243f
      sof authored
      unionBy: remove duplicates in second argument (required for the following invariant to hold: if the first list argument contain no duplicates, then the result of applying unionBy doesn't either)
      4299243f
  15. 25 Aug, 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. 25 Jul, 1996 1 commit
  22. 27 Jun, 1996 1 commit