Shentong is a Haskell implementation of Shen, a modern Lisp family programming language which includes many advanced and interesting features. The name is thematically in keeping with that of shen, a construct from another esoteric religion.
Package dependencies are:
- mtl
- unordered-containers
- uniplate
- parallel
- hashmap
Shentong runs on a fully native Haskell backend directly ported from the backend written in Shen’s kernel language, K Lambda. It is licensed under BSD 3. If cabal is not used to compile the sources, the GHC compiler option -fno-full-laziness must be used, as in
ghc -O2 Shen.hs -fno-full-laziness
The current supported version is Shen 20.
$> git clone https://github.com/mthom/shentong.git $> cd shentong $> cabal sandbox init $> cabal install $> cd .cabal-sandbox/bin $> ./shen
or install it through Hackage:
$> cabal install shentong $> ./shen