tools for working with chinillalisp language; compiler, repl, python and wasm bindings
Project description
chinillaclvm_tools_rs
This is a second-hand port of chinilla's chinillaclvm tools to rust via the work of ChinillaMineJP porting to typescript. This would have been a lot harder to get to where it is without prior work mapping out the types of various semi-dynamic things (thanks, ChinillaMineJP).
Some reasons for doing this are:
-
Chinilla switched the chinillaclvm implementation to rust: chinillaclvm_rs, and this code may both pick up speed and track chinillaclvm better being in the same language.
-
I wrote a new compiler with a simpler, less intricate structure that should be easier to improve and verify in the future in ocaml: ochinillalisp.
-
Also it's faster even in this unoptimized form.
All acceptance tests i've brought over so far work, and more are being added. As of now, I'm not aware of anything that shouldn't be authentic when running these command line tools from chinillaclvm_tools in their equivalents in this repository
-
opc
-
opd
-
run
-
brun
-
repl
argparse was ported to javascript and I believe I have faithfully reproduced it as it is used in cmds, so command line parsing should work similarly in all three versions.
The directory structure is expected to be:
src/classic <-- any ported code with heritage pointing back to
the original chinilla repo.
src/compiler <-- a newer compiler (ochinillalisp) with a simpler
structure. Select new style compilation by
including a `(include *standard-cl-21*)`
form in your toplevel `mod` form.
Mac M1
Use cargo build --no-default-features
due to differences in how mac m1 and
other platforms handle python extensions.
Use with chinilla-blockchain
# Activate your venv, then
$ maturin develop --release
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
Built Distributions
File details
Details for the file chinillaclvm_tools_rs-0.1.28.tar.gz
.
File metadata
- Download URL: chinillaclvm_tools_rs-0.1.28.tar.gz
- Upload date:
- Size: 4.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08eef71325e8b8e1dda0d7c1fd4537c8b3296e5a7975a3e90cf9a196eb705d9e |
|
MD5 | ef9ac20f3c3a9277a8c9d9d8e4e31b11 |
|
BLAKE2b-256 | 5257d936c65d88a995c70dbc568edb7cba0790195ece180baba7f05e4a69bc38 |
File details
Details for the file chinillaclvm_tools_rs-0.1.28-cp37-abi3-win_amd64.whl
.
File metadata
- Download URL: chinillaclvm_tools_rs-0.1.28-cp37-abi3-win_amd64.whl
- Upload date:
- Size: 848.0 kB
- Tags: CPython 3.7+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15abd013f25b127a430dbc985fd7d94b285cd5193e6e43eda0ac41ae36c60bff |
|
MD5 | d05aeeeb71d90d95f6d120b065da96ee |
|
BLAKE2b-256 | 3cb5a317089fb5b2f00863f9f6359b85ab729953a67305bb41f6e7b446b93be0 |
File details
Details for the file chinillaclvm_tools_rs-0.1.28-cp37-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
.
File metadata
- Download URL: chinillaclvm_tools_rs-0.1.28-cp37-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
- Upload date:
- Size: 888.4 kB
- Tags: CPython 3.7+, manylinux: glibc 2.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b96d9075e34bd5dba0462909604418a914c2353a0319b6aded62e8c644964da4 |
|
MD5 | ab496d807a3538739ef6bad77204f16b |
|
BLAKE2b-256 | c26a5528bcd88d3301d60ad6fcbabbe19668e799596bf793041a66b4d2825bee |
File details
Details for the file chinillaclvm_tools_rs-0.1.28-cp37-abi3-macosx_10_7_x86_64.whl
.
File metadata
- Download URL: chinillaclvm_tools_rs-0.1.28-cp37-abi3-macosx_10_7_x86_64.whl
- Upload date:
- Size: 839.3 kB
- Tags: CPython 3.7+, macOS 10.7+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c1bd82e787ba814b997f189fda0e5c9d9e1bd46f809c68e5494098a59479d94 |
|
MD5 | 4b3c1bb2c98a56c85b43a4a484e78de8 |
|
BLAKE2b-256 | fdc59a9d7d2aa90e8d86a5268f29c0c2a6123bf1df5b9a9ce4e15cd294c4f897 |