The Hashell package

[Tags: gpl, program]

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

[Skip to ReadMe]


Versions0.15, 1.0
Dependenciesbase, directory, ghc, haskell98, parsec, process, readline, regex-compat, unix [details]
AuthorLuis Francisco Araujo
CategoryUser Interfaces
UploadedFri Jan 11 02:32:20 UTC 2008 by GwernBranwen
Downloads578 total (12 in last 30 days)
0 []
StatusDocs not available [build log]
All reported builds failed as of 2015-11-14 [all 5 reports]


Maintainers' corner

For package maintainers and hackage trustees

Readme for Hashell-0.15

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