1. 17 Aug, 2004 1 commit
  2. 16 Aug, 2004 13 commits
    • panne's avatar
      [project @ 2004-08-16 19:59:28 by panne] · f8ae3f39
      panne authored
      XMLification
      f8ae3f39
    • simonpj's avatar
      [project @ 2004-08-16 16:26:51 by simonpj] · 2199f17d
      simonpj authored
      -------------------------------
      	Add instance information to :i
       	Get rid of the DeclPool
      	-------------------------------
      
      
      1.  Add instance information to :info command.  GHCi now prints out
          which instances a type or class belongs to, when you use :i
      
      2.  Tidy up printing of unqualified names in user output.
          Previously Outputable.PrintUnqualified was
      	type PrintUnqualified = Name -> Bool
          but it's now
      	type PrintUnqualified = ModuleName -> OccName -> Bool
          This turns out to be tidier even for Names, and it's now also usable
          when printing IfaceSyn stuff in GHCi, eliminating a grevious hack.
      
      3.  On the way to doing this, Simon M had the great idea that we could
          get rid of the DeclPool holding pen, which held declarations read from
          interface files but not yet type-checked.   We do this by eagerly
          populating the TypeEnv with thunks what, when poked, do the type
          checking.   This is just a logical continuation of lazy import
          mechanism we've now had for some while.
      
      The InstPool and RulePool still exist, but I plan to get rid of them in
      the same way.  The new scheme does mean that more rules get sucked in than
      before, because previously the TypeEnv was used to mean "this thing was needed"
      and hence to control which rules were sucked in.  But now the TypeEnv is
      populated more eagerly => more rules get sucked in.  However this problem
      will go away when I get rid of the Inst and Rule pools.
      
      I should have kept these changes separate, but I didn't.  Change (1)
      affects mainly
      	TcRnDriver, HscMain, CompMan, InteractiveUI
      whereas change (3) is more wide ranging.
      2199f17d
    • simonpj's avatar
      [project @ 2004-08-16 16:14:59 by simonpj] · 5938a5f3
      simonpj authored
      stg_interp_constr_entry and friends don't have info tables, so declare
      them using RTS_FUN() rather than RTS_ENTRY().
      5938a5f3
    • simonmar's avatar
      [project @ 2004-08-16 11:57:19 by simonmar] · 36fc368e
      simonmar authored
      Avoid casting lvalues; gcc 3.4 issues warnings for it.
      36fc368e
    • simonmar's avatar
      [project @ 2004-08-16 11:19:24 by simonmar] · e3d95da8
      simonmar authored
      Define <arch>_TARGET_ARCH and <os>_TARGET_OS by default when CPP'ing.
      This avoids the main reason for needing to #include config.h into
      Haskell source, so most files that previously just #include "config.h" can now
      
        #if __GLASGOW_HASKELL__ < 603
        #include "config.h"
        #endif
      e3d95da8
    • simonmar's avatar
      [project @ 2004-08-16 11:17:20 by simonmar] · d6174f50
      simonmar authored
      Add a config.h to ease the transition.  Now if you include config.h
      you get a warning instead of a failure:
      
      In file included from System/Posix/Internals.hs:24:
      /playpen/ghc/nightly/HEAD-cam-02-unx/i386-unknown-linux/ghc/includes/config.h:4: warning: #warning config.h is deprecated; please use ghcconfig.h instead
      d6174f50
    • simonmar's avatar
      [project @ 2004-08-16 10:59:37 by simonmar] · 5a19aad0
      simonmar authored
      config.h ==> ghcconfig.h
      5a19aad0
    • simonpj's avatar
      [project @ 2004-08-16 09:53:47 by simonpj] · 4e325538
      simonpj authored
      -------------------------------
      	Add instance information to :i
       	Get rid of the DeclPool
      	-------------------------------
      
      
      1.  Add instance information to :info command.  GHCi now prints out
          which instances a type or class belongs to, when you use :i
      
      2.  Tidy up printing of unqualified names in user output.
          Previously Outputable.PrintUnqualified was
      	type PrintUnqualified = Name -> Bool
          but it's now
      	type PrintUnqualified = ModuleName -> OccName -> Bool
          This turns out to be tidier even for Names, and it's now also usable
          when printing IfaceSyn stuff in GHCi, eliminating a grevious hack.
      
      3.  On the way to doing this, Simon M had the great idea that we could
          get rid of the DeclPool holding pen, which held declarations read from
          interface files but not yet type-checked.   We do this by eagerly
          populating the TypeEnv with thunks what, when poked, do the type
          checking.   This is just a logical continuation of lazy import
          mechanism we've now had for some while.
      
      The InstPool and RulePool still exist, but I plan to get rid of them in
      the same way.  The new scheme does mean that more rules get sucked in than
      before, because previously the TypeEnv was used to mean "this thing was needed"
      and hence to control which rules were sucked in.  But now the TypeEnv is
      populated more eagerly => more rules get sucked in.  However this problem
      will go away when I get rid of the Inst and Rule pools.
      
      I should have kept these changes separate, but I didn't.  Change (1)
      affects mainly
      	TcRnDriver, HscMain, CompMan, InteractiveUI
      whereas change (3) is more wide ranging.
      4e325538
    • simonpj's avatar
      [project @ 2004-08-16 09:51:20 by simonpj] · d32c5227
      simonpj authored
      Commments only
      d32c5227
    • simonpj's avatar
      [project @ 2004-08-16 09:41:19 by simonpj] · 228c4743
      simonpj authored
      Fix problem with :i for (:)
      228c4743
    • simonmar's avatar
      [project @ 2004-08-16 09:31:50 by simonmar] · 428d3450
      simonmar authored
      #ifdefery to work around change in name of config.h.
      428d3450
    • panne's avatar
      [project @ 2004-08-16 07:24:25 by panne] · 092d7917
      panne authored
      Correct DocBook XML now
      092d7917
    • panne's avatar
      [project @ 2004-08-16 06:44:47 by panne] · 4a0cbd60
      panne authored
      Fixed default font-family, color, and background. It contained a typo
      and didn't work for chunked documentation.
      4a0cbd60
  3. 15 Aug, 2004 3 commits
    • panne's avatar
      [project @ 2004-08-15 20:37:22 by panne] · b9de29ac
      panne authored
      Started to convert the users guide to DocBook XML. Not yet finished, there are
      still *tons* of misplaced indexterms, but some sensible documentation can
      already be generated.
      b9de29ac
    • panne's avatar
      [project @ 2004-08-15 20:32:47 by panne] · 69907617
      panne authored
      Converted the building guide to DocBook XML
      69907617
    • panne's avatar
      [project @ 2004-08-15 20:28:02 by panne] · 53386c35
      panne authored
      <fanfare>Finally: Support for DocBook XML!</fanfare>
      
      After endless frustrating hours, I came to the conclusion that using (Open)Jade
      for DocBook XML is virtually impossible, there are *tons* of problems with it:
      Wildly differing paths, incorrect stylesheets, broken catalogs at funny places,
      broken wrapper scripts, missing support on Cygwin etc.  >:-P * * *
      
      So we follow the ubiquitous XSL hype and use xsltproc + DocBook XSL stylesheets
      to transform DocBook XML to HTML and FO. From FO there are two routes to PDF and
      PostScript: Either via FOP (preferred) or via PassiveTeX. Validation can be done
      via xmllint using the new make target "validate". When PassiveTeX is available,
      DVI can be generated, too.  A new make target "no-chunks-html" is available for
      generating an all-in-one HTML document. Currently there is no way to generate
      plain text or RTF, but at least the former could easily be added.
      
      Generating HTML works out-of-the-box on Cygwin now, but you will have to install
      FOP for other formats, because there seems to be no standard package for it.
      
      The HTML appearance can be controlled via CSS, but the current location of the
      master stylesheet below fptools/mk is a bit debatable. Better suggestions are
      welcome.
      
      Currently there is still support for SGML documents, but it will be dropped when
      all documents are converted to DocBook XML. The build system is complex enough
      already with the support for a *single* kind of DocBook...
      53386c35
  4. 13 Aug, 2004 10 commits
  5. 12 Aug, 2004 7 commits
  6. 10 Aug, 2004 3 commits
    • simonmar's avatar
      [project @ 2004-08-10 14:36:25 by simonmar] · 85511088
      simonmar authored
      Windows fixes.  There were some strange things going on with Windows
      installation directories - I'm sure I've mucked up whatever was
      happening with 'make install' for GHC on Windows, but there were
      defintitely some bugs in here.  eg. we shouldn't have been setting
      datadir to $(prefix)/imports unconditionally on Windows.
      
      Make install now works for Happy, Alex and Haddock.  GHC probably
      needs a bit of tweaking to get it working again.
      85511088
    • simonmar's avatar
      [project @ 2004-08-10 13:51:25 by simonmar] · cc33dd28
      simonmar authored
      Add $(Windows), which is "YES" if the host platform is a Windows
      platform (mingw32 or cygwin32), and "NO" otherwise.
      cc33dd28
    • simonmar's avatar
      [project @ 2004-08-10 09:02:36 by simonmar] · c9a32c38
      simonmar authored
      Fix problem with inline foreign-call changes yesterday.  Foreign call
      args sometimes have to be modified using shimFCallArg - nowadays this
      is done at code generation time, whereas it used to be done at
      pretty-printing time.
      c9a32c38
  7. 09 Aug, 2004 3 commits
    • simonmar's avatar
      [project @ 2004-08-09 14:27:53 by simonmar] · 05881eca
      simonmar authored
      Two changes:
      
        - newly created or unblocked threads go to the back of the run
          queue.  This is fairer because it avoids possible starvation.
          Fixes problem with conc004 test going much slower with optimisation.
      
        - The context switch flag is only reset after a yield.  Previously,
          it was being reset before we ran a thread, which meant that a tick
          that arrived during GC would be lost, and a thread doing lots of
          GC could hog the CPU.  Now, GC is effectively counted as part of
          the last running thread's timeslice.
      
      MERGE TO STABLE.
      05881eca
    • simonmar's avatar
      [project @ 2004-08-09 13:19:29 by simonmar] · 46d88d87
      simonmar authored
      Allow case-of-unsafe-ccall to compile to straight-line code, like it
      used to.  This has already been fixed on the backend-hacking-branch,
      but I'm doing it here so that it can be merged into the STABLE branch,
      where it will help to work around a bug.
      
      The bug is in CgExpr.lhs:primRetUnboxedTuple, which picks temporaries
      to assign the result of a ccall to.  The Cg monad doesn't have a uniq
      supply (in the HEAD), so we always pick the same temporaries.  This
      leads to clashes in complex function with multiple ccalls.  Again,
      this is already fixed in the backend-hacking-branch.  I don't see an
      easy fix for this bug.
      
      The compilation of case-of-unsafe-ccall doesn't suffer from this
      problem, and it will help work around some cases of the bug, so I'm
      going to merge this onto the STABLE branch after some testing.
      46d88d87
    • simonmar's avatar
      [project @ 2004-08-09 12:35:02 by simonmar] · a8601d0e
      simonmar authored
      Fix scoped type variable example.
      a8601d0e