Lisp-like Syntax for Python with Lisp-like Macros
Project description
LisPython
Documentation
You can find the documentation at https://jetack.github.io/lispython/.
Installation
Manual Installation (for development)
poetry install --no-root # for dependency
pip install -e . # for development
Using pip
pip install lispython
How to Run lispy code
Run from source
lpy {filename}.lpy
Run REPL
lpy
#or
lpy -t #if you want to print python translation.
Run translation
l2py {filename}.lpy
It just displays translation. (don't run it)
Run Tests
# in project root directory
python -m unittest
#or
lpy -m unittest
Todo
Environment
- Test on more python versions
- REPL should track history and arrow key navigation
- REPL multi-line input support
- Better compileation error messages
Macro System
-
as->macro for syntactic sugar -
gensymfor avoiding name collision
Python AST
-
type_commentnever considered. Later, it should be covered - Any missing AST nodes in the version 3.12+
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
lispython-0.3.1.tar.gz
(61.5 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
lispython-0.3.1-py3-none-any.whl
(22.6 kB
view details)
File details
Details for the file lispython-0.3.1.tar.gz.
File metadata
- Download URL: lispython-0.3.1.tar.gz
- Upload date:
- Size: 61.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
353b3d9178da9b83569388fe2a8321e72359ff988519a93eb01c82058c0c3c34
|
|
| MD5 |
0178d65893e951dae0707ed9698962a6
|
|
| BLAKE2b-256 |
3c6bc48d7272cef63f8f99aa2891c810507ec460ad3ea0cc8058a0a3d89c45f5
|
File details
Details for the file lispython-0.3.1-py3-none-any.whl.
File metadata
- Download URL: lispython-0.3.1-py3-none-any.whl
- Upload date:
- Size: 22.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69dbd72fbd6cae30be58a6ed7dab1214f5dc017ea8d19c696d48af989ab48d86
|
|
| MD5 |
f026bb214306f3d5ec025962ef8786e5
|
|
| BLAKE2b-256 |
7693d63ea0d005f629ee54f9906769dfea10d38264e217f25f5a7dac5e59a029
|