Skip to main content

Lisp-like Syntax for Python with Lisp-like Macros

Project description

LisPython

PyPI version

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
  • gensym for avoiding name collision

Python AST

  • type_comment never considered. Later, it should be covered
  • Any missing AST nodes in the version 3.12+

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

lispython-0.4.0.tar.gz (70.8 kB view details)

Uploaded Source

Built Distribution

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

lispython-0.4.0-py3-none-any.whl (30.6 kB view details)

Uploaded Python 3

File details

Details for the file lispython-0.4.0.tar.gz.

File metadata

  • Download URL: lispython-0.4.0.tar.gz
  • Upload date:
  • Size: 70.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for lispython-0.4.0.tar.gz
Algorithm Hash digest
SHA256 d47424b277b5f927ed9cc5c58fd42ae2f39ab82f11e8981648a97952f9f7d026
MD5 0aee91840e22dfe0ad8ccc25e8877452
BLAKE2b-256 d7d57d55ef10bf7818c567e2f00a8ad87118dfeca73479e3fee8a4f1e7c150f8

See more details on using hashes here.

File details

Details for the file lispython-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: lispython-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 30.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for lispython-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e27dde3848a8f933dc1e45dd905eb07d853ababdafd0dc06e0c77b8ae84d5b2d
MD5 1890126fbbd0fd2ffc639f2e98dd8a63
BLAKE2b-256 4b839a2647b28729bf10d5028722409b1168dfe1e3257196c98cce0fc77269f9

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