• Stars
    star
    161
  • Rank 233,470 (Top 5 %)
  • Language
    Haskell
  • License
    Other
  • Created almost 10 years ago
  • Updated over 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Haskell implementation of the Shen programming language.

Shentong

A Haskell implementation of the Shen programming language

vajra.jpg

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.

Try it

$> 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