1. 02 Aug, 2001 1 commit
  2. 01 Aug, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-08-01 12:07:50 by simonmar] · f7828a36
      simonmar authored
      Signification cleanup & rewrite of CmLink.
      Fixes at least one bug: the PersistentLinkerState could sometimes get
      out of step with the RTS's idea of which modules were loaded, leading
      to an unloadObj failure when we try to unload the same module twice.
      This could happen if a ^C exception is received in the middle of a
      Fixed by keeping the part of the linker's state that must match up
      with the RTS's internal state entirely private to CmLink, stored in a
      global variable.  The operations in CmLink which manipulate this state
      are now wrapped by Exception.block, and so are safe from ^C
  3. 15 Jun, 2001 1 commit
    • simonpj's avatar
      [project @ 2001-06-15 08:29:57 by simonpj] · 972d6442
      simonpj authored
      Some tidying up
      * Remove CmStaticInfo
         - GhciMode moves to HscTypes
         - The package stuff moves to new module main/Packages.lhs
      [put any package-related stuff in the new module]
      * Add Outputable.docToSDoc
  4. 14 Jun, 2001 1 commit
    • simonpj's avatar
      [project @ 2001-06-14 12:50:05 by simonpj] · 16d5d1c7
      simonpj authored
      	Installation packaging
      GHC runs various system programs like
      	cp, touch
      	gcc, as, ld etc
      On Windows we plan to deliver these programs along with GHC,
      so we have to be careful about where to find them.
      This commit isolates all these dependencies in a single module
      Most of the #ifdefery for mingw has moved into this module.
      There's some documentation in SysTools.lhs
      Along the way I did lots of other cleanups.  In particular
        * There is no more 'globbing' needed when calling runSomething
        * All file removal goes via the standard Directory.removeFile
        * TmpFiles.hs has gone; absorbed into SysTools
        * Some DynFlag stuff has moved from DriverFlags to CmdLineOpts
      Still to do:
        **	I'm a bit concerned that calling removeFile one at a time
      	when deleting masses of split-object files is going to be
      	rather slow
        **	GHC now expects to find split,mangle,unlit in
      	instead of just
      	So something needs to change in the Unix installation scripts
        **    The "ineffective C preprocessor" is a perversion and should die
  5. 28 Mar, 2001 2 commits
    • qrczak's avatar
      [project @ 2001-03-28 18:53:39 by qrczak] · b113e320
      qrczak authored
    • simonmar's avatar
      [project @ 2001-03-28 11:01:19 by simonmar] · f4eba96b
      simonmar authored
      Clean up GHC's error reporting.
        - the GhcException type has some more constructors: CmdLineError,
          UserError, and InstallationError.  OtherError has gone.
        - most error messages should begin with "<location>:".  When the
          error is on the command-line or in GHC itself, <location> is
          "ghc", for consistency with std Unix semantics.
        - GHCi no longer prints a superfluous "ghc: " before certain error
  6. 19 Mar, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-03-19 16:22:00 by simonmar] · dd4bc7ed
      simonmar authored
      Fix a problem with the 'it' variable in GHCi.  New bindings for 'it'
      were getting confused with old bindings, because we always used the
      same 'it' name.
      Now, we generate a new unique for 'it' each time around.
      Also, make sure that any existing variables shadowed by new
      command-line bindings are correctly removed from the environments to
      avoid space leaks.
  7. 01 Mar, 2001 2 commits
    • simonpj's avatar
      [project @ 2001-03-01 16:56:44 by simonpj] · 86db5bf5
      simonpj authored
      Move import
    • simonmar's avatar
      [project @ 2001-03-01 14:26:00 by simonmar] · 18b24e64
      simonmar authored
      GHCi fixes:
        - expressions are now compiled in a pseudo-module "$Interactive",
          which avoids some problems with storage of demand-loaded declarations.
        - compilation manager now detects when it needs to read the interace
          for a module, even if it is already compiled.  GHCi never demand-loads
          interfaces now.
        - (from Simon PJ) fix a problem with the recompilation checker, which
          meant that modules were sometimes not recompiled when they should
          have been.
        - ByteCodeGen/Link: move linker related stuff into ByteCodeLink.
  8. 26 Feb, 2001 4 commits
  9. 07 Feb, 2001 3 commits
  10. 06 Feb, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-02-06 12:03:10 by simonmar] · 0ed9d260
      simonmar authored
      Try to get the stable modules story right.  Things now work much
      better: objects aren't unloaded and reloaded unnecessarily, and
      compiling modules from with GHCi works:
      	> :! ghc -c A.hs
      	> :r
      	Compiling A ... compilation IS NOT required (using ./A.o)
      	Compiling B ... compilation IS NOT required
      	Compiling C ... compilation IS NOT required
      	Compiling Main ... compilation IS NOT required
      Compiled module must not depend on interpreted modules, but we
      currently don't enforce this restriction properly.
  11. 05 Feb, 2001 1 commit
  12. 18 Dec, 2000 1 commit
  13. 13 Dec, 2000 1 commit
  14. 27 Nov, 2000 1 commit
  15. 24 Nov, 2000 1 commit
    • simonmar's avatar
      [project @ 2000-11-24 17:09:52 by simonmar] · 8fe9b1af
      simonmar authored
      - Bug fixes to the interpreter.  Now much more stable - it hasn't crashed
        all day.
      - Many improvements to the user interface (eg. :set +t and :set +s
        work just like Hugs).
      - Several wibbles & message improvements: the interpreter now informs you
        when it's loading the object code for a given module.
  16. 21 Nov, 2000 2 commits
    • sewardj's avatar
      [project @ 2000-11-21 16:19:15 by sewardj] · e4ab5e87
      sewardj authored
      Message wibbles.
    • simonmar's avatar
      [project @ 2000-11-21 14:31:58 by simonmar] · e663f7b8
      simonmar authored
      Mostly verbosity changes.
      GONE AWAY:  -dshow-passes, -ddump-all, -ddump-most.
          -v<n>, where <n> is
          0	|   print errors & warnings only
          1   |   minimal verbosity: print "compiling M ... done." for each module.
          2   |   equivalent to -dshow-passes
          3   |   equivalent to existing "ghc -v"
          4   |   "ghc -v -ddump-most"
          5   |   "ghc -v -ddump-all"
      4 & 5 are the same at the moment.  -dshow-passes also prints out the
      passes in the driver, and some in the compilation manager.
  17. 20 Nov, 2000 3 commits
    • simonpj's avatar
      [project @ 2000-11-20 14:48:52 by simonpj] · c271b647
      simonpj authored
      When renaming, typechecking an expression from the user
      interface, we may suck in declarations from interface
      files (e.g. the Prelude).  This commit takes account of that.
      To do so, I did some significant restructuring in TcModule,
      with consequential changes and tidy ups elsewhere in the type
      checker.  I think there should be fewer lines in total than before.
    • sewardj's avatar
      [project @ 2000-11-20 13:39:26 by sewardj] · dd3c088a
      sewardj authored
      Redo the source-up-to-date logic (in CompManager.upsweep_mod).
    • sewardj's avatar
      [project @ 2000-11-20 11:39:57 by sewardj] · c7955cf7
      sewardj authored
      * (CompManager) recompile if in interactive mode and no old linkable exists
      * (HscMain) don't write interface files in interactive mode
      * (everywhere) switch arg order to unJust for PAP purposes
  18. 17 Nov, 2000 2 commits
    • simonmar's avatar
      [project @ 2000-11-17 16:53:27 by simonmar] · 459e7bd4
      simonmar authored
      Results of today's hacking:
        - We can now execute expressions from the GHCi prompt.  However,
          a problem with the typechecker environment means that identifiers
          from outside the current module aren't resolved :-(
        - loading up a multi-module program in the interpreter seems to
          work.  Interpreting is kinda slow (ok, very slow), but I'm hoping
          it'll get better when I compile the interpreter w/ optimisation.
        - :set sort of works - you can do ":set -dshow-passes", for example
        - lots of bugfixes, etc.
    • sewardj's avatar
      [project @ 2000-11-17 10:13:21 by sewardj] · f5f3b9d9
      sewardj authored
      Make file up-to-dateness checking work in batch mode.
  19. 16 Nov, 2000 4 commits
    • simonmar's avatar
      [project @ 2000-11-16 16:54:36 by simonmar] · 2bf08ae1
      simonmar authored
      WOOHOO!  GHCi interprets "Hello World":
       _____  __   __  ____         _________________________________________________
      (|      ||   || (|  |)        GHC Interactive, version 5.00
      ||  __  ||___|| ||     ()     For Haskell 98.
      ||   |) ||---|| ||     ||     http://www.haskell.org/ghc
      ||   || ||   || ||     (|     Bug reports to: glasgow-haskell-bugs@haskell.org
      (|___|| ||   || (|__|) \\______________________________________________________
      Loading package std ... resolving ... done.
      Prelude> :l Main
      cmLoadModule: downsweep begins
      getSummary: Main
      after tsort:
         ModSummary { ms_mod = Main, ms_imps = [] ms_srcimps = [] }
      CHECKING OLD IFACE for hs = Just "./Main.hs", hspp = Just "/tmp/ghc25011.hspp"
      CmLink.link: linkables are ...
      LinkableM Main [Trees [Main.main = letP stg_cIM = (@PP Native PrelShow.$fShow[] Native PrelShow.$fShowChar)
                                         letP stg_cIL = (@IP Native PrelBase.unpackCString# 141613256#)
                                         (@PP (@PP Native PrelIO.print stg_cIM) stg_cIL)]]
      CmLink.link: done
      Prelude> Main.main
      Run expression: Main.main
      "Hello, world!"
    • sewardj's avatar
      [project @ 2000-11-16 16:23:03 by sewardj] · 2829e3a6
      sewardj authored
      * Move along the source-changed checkery.
      * Make the driver put object files in the right place when using CM.
      * Don't do hscNoRecomp in one-shot mode.
    • simonmar's avatar
      [project @ 2000-11-16 15:57:05 by simonmar] · f212eb91
      simonmar authored
      Moving things around a bit to avoid cycles.
      Further progress on interactive linker.
    • simonmar's avatar
      [project @ 2000-11-16 11:39:36 by simonmar] · 292c077d
      simonmar authored
      Current state of the interactive system; can load packages (in theory).
  20. 15 Nov, 2000 2 commits
  21. 14 Nov, 2000 1 commit
  22. 13 Nov, 2000 1 commit
    • sewardj's avatar
      [project @ 2000-11-13 17:08:36 by sewardj] · 52dbfc65
      sewardj authored
      First shot at batch linking.  Does not attempt linking if upsweep
      was not completely successful.  Always attempts linking if upsweep
      successful, even if there's no 'main' to be found anywhere.
  23. 08 Nov, 2000 3 commits