Skip to content

5hubh4m/simple-scheme

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SimpleScheme

A very simple implementation of Scheme in Haskell from the book Write Yourself a Scheme in 48 Hours. It is a work in progress.

Building and Running

The sources can be build by the .cabal file using stack or cabal. Perhaps, we must also initialise the project managers for better library and environment handling.

stack is recommended to avoid cabal-hell.

cabal init; cabal build

or

stack init; stack build

Then the executable can be run by

cabal run

or

stack exec scheme

Modules

The source is divide into the following sections

SimpleDefs.hs

Contains the data definitions for the project and hepler fucntions

SimpleParser.hs

Contains parsing functions for various datatypes. Implementation for more complex data types is commented out as it needs further refinement.

SimpleEvaluator.hs

Contains the functions for evaluating the lisp expressions.

SimpleError.hs

Contains definitions for error handling functions.

SimpleEnv.hs

Definitions for supporting mutable environment variables.

Main.hs

Contains the REPL and main function.

TODOs

  • Complete the excercises.
  • Possbily implement the complete R5RS standard.

About

A simple scheme implementation in Haskell.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published