Simple Scheme interpreter in Python
Project description
Overview
Serval is a high-level Scheme interpreter written in Python. It implements a subset of R5RS. The code closely follows Scheme meta-circular evaluator implementation from Ch.4 of the SICP book.
The goal of the project
Self-education (I’ve been always fascinated by language design and implementation, it was about time I started learning about interpreters and compilers by actually writing something).
To serve as a potential example for other people interested in interpreter implementation, particularly Scheme interpreter.
Not a goal per se, but I wanted the Serval to be able to run all examples from “The Little Schemer” book (that was my test target). The project has a test module test_the_little_schemer.py which runs simple meta-circular evaluator from Ch.10 of the book.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file serval-0.1.tar.gz
.
File metadata
- Download URL: serval-0.1.tar.gz
- Upload date:
- Size: 14.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49647bf55c41f1f09980f0e6eece8192458bb3066248d91cb291a4acbb2307a3 |
|
MD5 | ac15b41e04a6ec42e8afa199f997d1c3 |
|
BLAKE2b-256 | a28d91acf6fb092eb27b76fff8ab8ea0a5b9c2ce8764215e0d5f567bd4d4f8d0 |