Skip to main content

An r7rs-small compliant implementation of Scheme

Project description

Trick

Trick is an ongoing implementation of the Scheme programming language, targeting an SECD machine, and aiming for full R7RS-small compatibility. It's written in Python and, as of this moment, very very slow! It's mostly an educational project at the moment, though I might be able to write a faster implementation of the virtual machine in the future.

Completion Status

The core language primitives are all implemented, but the internal libraries are not complete yet. (scheme base) however is nearly complete however, as well as several others.

Requirements

Python 3.9 or later is required. There is no other dependency.

Running Trick

In order to get a REPL, simply run ./trick.py. In order to compile a source file named 'foo.scm' into a FASL file that can be run by the VM run ./trick.py -c foo.scm. This creates a files named foo.fasl. Now you can run the file by running ./trick.py run foo.fasl.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

trick-scheme-0.1.0.tar.gz (92.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

trick_scheme-0.1.0-py3-none-any.whl (95.1 kB view details)

Uploaded Python 3

File details

Details for the file trick-scheme-0.1.0.tar.gz.

File metadata

  • Download URL: trick-scheme-0.1.0.tar.gz
  • Upload date:
  • Size: 92.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for trick-scheme-0.1.0.tar.gz
Algorithm Hash digest
SHA256 42a215b28ceb2c1298aa8277aba065021d21869bf7fd96fdf1b0a97576d65bf0
MD5 b5c9ef486127e00af8d5d9327a7167aa
BLAKE2b-256 b74d3177298ee15c8129005191f7bd5be15b1453638f2708008a167c716166a7

See more details on using hashes here.

File details

Details for the file trick_scheme-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: trick_scheme-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 95.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for trick_scheme-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 34cd0ef6d6b39c61c312fd92a8485dd1cf9b2ebfbdbf8259a1e7cc3a5f50c1a7
MD5 472b8c71ec914017b35d8ade45ecdf5c
BLAKE2b-256 dffc1380877a31af860103847f51d18c1f32623b8644dfe0980cd44484a5cc63

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page