Skip to content

Crafty is a Haskell implementation of R7RS Scheme.

Notifications You must be signed in to change notification settings

noahcgreen/Crafty

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Crafty Scheme

Overview

Crafty is a Haskell implementation of R7RS Scheme. This project is my long-running playground for learning about:

  • Haskell, Scheme, and functional programming in general
  • Interpreter/compiler theory and practice

The aim is to produce a Scheme interpreter which can be embedded within Haskell applications or run standalone.

The project's name is a reference to Crafting Interpreters.

Roadmap

  • Basic parser implemented with Parsec
  • Tree-walk interpreter
  • End-to-end eval test suite
  • Garbage collector
  • Rewrite parser with custom tokenizer + parser, eliminating Parsec dependency
  • Replace tree-walk interpreter with a bytecode VM
  • Bonus: Compiler to produce native executables?

About

Crafty is a Haskell implementation of R7RS Scheme.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published