The ghclive package

[Tags:bsd3, library, program]

ghclive is an interactive multi-user Haskell interpreter in a browser. It mixes a pastebin with an interpreter and is designed for remote teaching.

[Skip to Readme]


Dependencies aeson (>0.6 && <0.7), base (==4.*), blaze-html (>0.5), blaze-markup (>0.5), bytestring (>0.9), containers (>0.4), diagrams-lib (>0.5), diagrams-svg (>0.3), directory, file-embed (>0.0.4), ghc-prim, ghclive (>0.0.1), hint (==0.3.*), mtl (>=2.0 && <3), text (>0.11), time (>1.3), unix, unordered-containers (>0.2), vector (>0.9), wai (==1.3.*), wai-websockets (>1.3), warp (==1.3.*), websockets, yesod (==1.1.*), yesod-static [details]
License BSD3
Author Shae Erisson
Category Web, Compilers/Interpreters, Application
Home page
Source repository head: git clone
Uploaded Mon Aug 20 21:14:37 UTC 2012 by ShaeErisson
Distributions NixOS:
Downloads 802 total (12 in the last 30 days)
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI




Maintainer's Corner

For package maintainers and hackage trustees

Readme for ghclive

Readme for ghclive-


Google Summer of Code 2012 project, GHCi for the web


Chrome 21.x Firefox 14.x

Does not work with Firefox 10

Quick start installation

git clone && cd ghclive && cabal install && ghclive then point your browser to http://localhost:3000

Here's some source code to paste into the editor buffer:

import Diagrams.Prelude
import Prelude
import Network.Web.GHCLive.Display

hilbert = iterate expand mempty where
  expand t = alignBL $ hcat [u, hrule 1, reflectX u] where
             u = vcat [t, vrule 1, rotateBy (3/4) t]

ex = pad 1.1 . centerXY . lw 0.05 $ hilbert!!5

then type ex in the Haskell expression buffer and hit enter!


The prototypes subdirectory contains several quick hacks demonstrating various concepts.