The Hashell package

[Tags:gpl, program]

A simple shell written in Haskell; through the GHC API, it allows evaluation of Haskell expressions.

This works only with old GHCs.

[Skip to Readme]


Versions 0.15, 1.0
Change log CHANGELOG
Dependencies base (==3.*), directory, ghc, haskell98, parsec, process, readline, regex-compat, unix [details]
License GPL
Author Luis Francisco Araujo
Maintainer none
Stability experimental
Category User Interfaces
Uploaded Sun Jan 18 04:12:50 UTC 2009 by GwernBranwen
Distributions NixOS:1.0
Downloads 720 total (8 in the last 30 days)
0 []
Status Docs not available [build log]
All reported builds failed as of 2016-10-25 [all 12 reports]


Maintainer's Corner

For package maintainers and hackage trustees

Readme for Hashell

Readme for Hashell-1.0

Hashell : A Haskell shell
Version: 0.014a
Status: Alpha


*The Glasgow Haskell Compiler
     >= 6.8 <>
     (any version should work fine; <>)
     >= 1.0 <>

You can build and install Hashell like any other Haskell package, through Cabal; the following example installs as the current user to one's ~/bin directory, but to install elsewhere or as root, simply change the directories or remove the --user flags, respectively:

   $ runhaskell Setup configure --verbose=2 --user --prefix=$HOME/bin --datadir=$HOME/bin/share
   $ runhaskell Setup build
   $ runhaskell Setup install --user;

You need to have Cabal installed in your system.
Cabal will often be part of your GHC installation, but you can get a stand-alone version of Cabal from <>.

NOTE! The current version of Hashell assumes you have GHC 6.8.2 installed, and that the output of 'ghc --print-libdir' = "/usr/lib/ghc-6.8.2/". If that's not the right directory, you must edit Hashell/Eval.hs and update the constant 'ghcPath'.


   $ hashell


   $ hashell -c <configurationfile>

You always can use the --help option for further help.

   $ hashell --help

The syntax is still fluid, but roughly, ';' is a terminator; an expression starting with ':' will be treated as a load-file command; one starting with "quit" will exit Hashell; one starting with "cd" will change the working directory; and an expression enclosed in a "!()" will be passed through the GHC API and evaluated as an arbitrary Haskell expression. All other commands should be treated as programs to be run.


   Luis Francisco Araujo