Skip to content
A tiny scheme interpreter in Haskell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs Add parsec paper Apr 3, 2017
exec Architectural cleanup, moving code around Apr 1, 2017
scripts Rename let to macros Apr 2, 2017
src Report a bunch of bugs Apr 17, 2017
test Get rid of macro tests for now. Apr 19, 2017
.gitignore Build with stack Dec 13, 2015
.travis.yml Stack ♥ Travis Jan 15, 2016
.watsonrc Setup watson Jan 15, 2016
LICENSE Module structure, tests Mar 10, 2015
README.md Update description Mar 14, 2017
Setup.hs Getting started Oct 11, 2014
lisper.cabal Architectural cleanup, moving code around Apr 1, 2017
stack.yaml Upgrade Stackage from 8.3 -> 8.4 Mar 10, 2017

README.md

Lisper Build Status

A tiny scheme interpreter in Haskell

Getting started

$ brew install haskell-stack
$ gem install watson-ruby (optional)
$ git clone https://github.com/jaseemabid/lisper && cd lisper
$ stack build
$ stack test
$ stack install

Stack installs a binary called lisper into $PATH.

REPL

Lisper has a simple shell.

$ lisper
λ (cons 1 '(2 3 4))
(1 2 3 4)
λ (define (add a b) (+ a b))
<λ add >
λ (add 10 20)
30

Resources

  1. The scheme programming language
  2. Revised 5 report on the algorithmic language scheme
  3. (welcome '(schemers . org))
  4. The Scheme Programming Language (book)
  5. Write you a Haskell

--

  1. What I Wish I Knew When Learning Haskell
  2. Wikibook: Write yourself a scheme in 48 hours
  3. A bunch of related projects

Contributing

See reported issues or fix an of the failing test cases.

$ watson reports a whole bunch of issues in code.

License

MIT.

You can’t perform that action at this time.