Permalink
Commits on Sep 15, 2010
  1. Docs and spelling.

    committed Sep 15, 2010
  2. Makefile tweaks.

    committed Sep 15, 2010
Commits on Aug 23, 2010
Commits on Jun 22, 2010
  1. Fix warning.

    committed Jun 22, 2010
Commits on Jun 18, 2010
  1. Move over a few more commands.

    committed Jun 18, 2010
Commits on Jun 17, 2010
  1. MEGA-COMMIT: Start support for two-tier architecture.

    To avoid various problems with the GHC API, we now use a
    multi-process architecture in Scion.  The Scion client still
    connects to only one Scion server, but this server now acts as a
    proxy and forwards each request to a number of Scion workers.
    The proxy and the server communicate via stdin/sdtout using a
    binary protocol, so this should be quite efficient.
    
    This avoids the following problems:
    
      - Memory bloat: GHC currently never shrinks a heap, so memory
        intensive processes (like indexing the package database)
        would cause high memory usage of the current session.  GHC
        API caches also tend to never get cleared, causing a similar
        problem.
     
      - Static flags: Some flags (e.g., -prof) can only be set once
        per *process*.  It is now simpler to just start a new process
        with the new flags.  Similarly, the package DB can only
        safely be read once (at the beginning of the session).  If a
        dependency was missing, the user can now install it and it's
        easy to restart the Scion worker.
    
      - All these above problems could have been solved by requiring
        the Scion client to use and manage multiple Scion servers.
        By doing it in Scion, we hopefully avoid unnecessary code
        duplication.
    
      - During development of Scion we now mostly only need to
        recompile and restart the worker, not the proxy.  This could
        make it easier to work on Scion itself.
    
    I'm not quite sure yet how the final client interface should look
    like.  For now there's only one worker, but the path to using
    multiple workers is now much clearer.
    committed Jun 17, 2010
Commits on Apr 23, 2010
  1. Remove redundant import.

    committed Apr 23, 2010
  2. Fix warning.

    committed Apr 23, 2010
Commits on Apr 13, 2010
Commits on Jan 8, 2010
Commits on Dec 26, 2009
Commits on Dec 22, 2009
Commits on Dec 13, 2009
  1. Make it build against GHC 6.12.1

    greenrd committed Dec 13, 2009
Commits on Dec 2, 2009
  1. Tweak Makefile. Now allows out-of tree dist directory.

    This is useful if you keep the sources in a place that might be shared
    across several different machines.  E.g., the sources might be stored
    on a remote (and backed-up) filesystem, but the compiled files should
    be stored locally and need not require backup.
    committed Dec 2, 2009
Commits on Nov 2, 2009
  1. Use -DSCION_DEBUG instead of -DDEBUG in testing mode.

    hslogger defines a DEBUG constructor which leads to compilation errors
    if -DDEBUG is defined.
    committed Nov 2, 2009
Commits on Oct 20, 2009
  1. Fix haddock comment formatting.

    committed Oct 20, 2009
  2. Merge remote branch 'Functorsalad/master' into devel.

    Conflicts:
    	lib/Scion/Session.hs (imports only)
    committed Oct 20, 2009
  3. Remove impossible case.

    committed Oct 20, 2009
  4. Fix formatting in `S.Session`.

    committed Oct 20, 2009