Skip to content

A Python-based Scheme interpreter, utilizing lexical and syntactic analysis to parse, evaluate, and output.

Notifications You must be signed in to change notification settings

joonyoo181/scheme-interpreter

Repository files navigation

Scheme Interpreter

A Python-based Scheme interpreter, utilizing lexical and syntactic analysis to parse, evaluate, and output.

Summary

Scheme is a dialect of the Lisp family of programming languages. This program provides the backend system modules for a terminal to interpret a subset of Scheme programs.

Features of the interpreter:

  • lexical analysis and syntactical analysis to read, parse, evaluate, and print Scheme code
  • tail call optimization to reduce stack frame allocations when handling recursive functions

Using the Interpreter

  1. Clone the repository
  2. In the terminal, cd inside the cloned directory,
  3. Run python scheme.py or python3 scheme.py depending on your Python version
  4. To exit, press Ctrl-d or evaluate (exit) in the interpreter
  5. To interpret Scheme files (.scm), run python3 scheme.py <file_name>.scm or python3 scheme.py <file_name>.scm depending on your Python version

Interpreter

image

This project was made with ❤️‍🔥 by Jeremy Yoo

About

A Python-based Scheme interpreter, utilizing lexical and syntactic analysis to parse, evaluate, and output.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages