Homoiconic Python

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • js-lisp

    Toy lisp-like language interpreter in javascript

    I did something along those lines with JS lists: https://github.com/andrelaszlo/js-lisp

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • janet

    A dynamic language and bytecode vm

    Only tangentially related, but for anyone interested in the idea of a simple, quick Python-like scripting Lisp, there are two Clojure-style languages to look at:

    1) Hy (https://hylang.org/, compiles to Python bytecode, usually slower than Python but compatible with all Python libraries)

    2) Janet (https://janet-lang.org/, very light Lua-style embeddable VM ~1 Mb, roughly twice as fast as Python for similar ops, very easy C interop)

  • hy

    A dialect of Lisp that's embedded in Python

    Only tangentially related, but for anyone interested in the idea of a simple, quick Python-like scripting Lisp, there are two Clojure-style languages to look at:

    1) Hy (https://hylang.org/, compiles to Python bytecode, usually slower than Python but compatible with all Python libraries)

    2) Janet (https://janet-lang.org/, very light Lua-style embeddable VM ~1 Mb, roughly twice as fast as Python for similar ops, very easy C interop)

  • basilisp

    A Clojure-compatible(-ish) Lisp dialect targeting Python 3.9+

  • cpython-lldb

    LLDB extension for debugging Python programs

  • pydbattach

    attach to running Python process

  • CIEL

    CIEL Is an Extended Lisp. Scripting with batteries included.

    > quick python-like scripting

    since we're at it, why not a batteries-included Common Lisp: https://github.com/ciel-lang/ciel it comes as a binary that starts fast and that includes libraries for mundane tasks.

    (for more CL<->Python if anyone's interested: https://github.com/CodyReichert/awesome-cl?tab=readme-ov-fil...)

  • awesome-cl

    A curated list of awesome Common Lisp frameworks, libraries and other shiny stuff.

    > quick python-like scripting

    since we're at it, why not a batteries-included Common Lisp: https://github.com/ciel-lang/ciel it comes as a binary that starts fast and that includes libraries for mundane tasks.

    (for more CL<->Python if anyone's interested: https://github.com/CodyReichert/awesome-cl?tab=readme-ov-fil...)

  • rhombus

    Rhombus programming language

  • fakelisp

    Lisp as a Python module (don't take it seriously though)

    I also played with the same idea some time ago: https://github.com/akalenuk/fakelisp

    I ended up using tuples instead of lists for cosmetic purposes :-) My Fakelisp then looks like this:

        from fakelisp import *

  • yamlscript

    Programming in YAML

    https://github.com/yaml/yamlscript

    yes, exactly what you think it is - here's the whole description, very to-the-point:

    > Program in YAML

    really needn't say more.

  • cl-cookbook

    The Common Lisp Cookbook

    an actually difficult question! Different persons will absorb different things from articles, and will enjoy different projects as a first encounter. Pointers:

    https://lispcookbook.github.io/cl-cookbook/ (and see the Emacs or the debugging pages to see what's possible)

    see https://www.youtube.com/@CBaggers/playlists and either his introductions to Slime, either his introductions to CEPL to play with graphics interactively,

    also for graphics, a new 3D system in development: https://www.youtube.com/watch?v=liaLgaTOpYE

    for an overview of how thought through is REPL driven development in CL: https://mikelevins.github.io/posts/2020-12-18-repl-driven/

    and, we are lucky (or cursed :] ), there are many more cool articles on the topic.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

Did you konow that Python is
the 1st most popular programming language
based on number of metions?