my attempt to implement a [typed] Lisp-like language in Haskell
Haskell Scheme
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src
LICENSE
README.md
Setup.hs
toylisp.cabal

README.md

ToyLisp

NooblisperToyLisp is a Lisp-like language that I write mostly for learning purposes.

My aim while developing it was to implement as many features as possible, without making the language completely unusable. It now supports call/cc, exceptions, threads and sockets.

Installation

Usage

TODO

  • Make function calls CPS

    • Then implement call/cc
    • Implement exceptions.
    • Imtplement threads.
  • Implement (read)

  • Implement quasiquotations

  • Remove unnecessary error type (ThrowsError, making every error type of IOThrowsError should be better for debugging, and make the code simpler)

  • Use GADTs for syntax tree

  • Compiling to another language(OCaml ?)

  • First-class macros ??

  • Remove PrimitiveFunc type.

  • Remove dotted-pairs.

  • Remove IOFunc type