Skip to content

mthom/shentong

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

A Haskell implementation of the Shen programming language.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •