HACKER Q&A
📣 amichail

Why do apps use Lisp/Scheme as a scripting language instead of Python?


Wouldn't using Python (at least as an option) allow more people to script apps?


  👤 thesuperbigfrog Accepted Answer ✓
Python has not always been as popular as it currently is.

Many apps were created before Python's current popularity so they did not choose Python for scripting.

Lisp and Scheme are relatively easy to parse and were taught as part of introductory computer science courses (for example: https://ocw.mit.edu/courses/6-001-structure-and-interpretati...) before Python was taught for such courses.

This meant that a large number of programmers were / are familiar with Scheme or Lisp and that it could easily be added to projects without too much effort.

Scheme is still used in many projects:

Guile Scheme is the official extension scripting language of the GNU project:

https://www.gnu.org/software/guile/

The Gimp also uses Scheme for its Script-Fu:

https://docs.gimp.org/en/gimp-using-script-fu-tutorial.html

Lisps are also used:

AutoCAD uses AutoLisp:

https://blogs.autodesk.com/autocad/autolisp-to-automate-your...

Emacs uses EmacsLisp:

https://www.gnu.org/software/emacs/manual/html_node/elisp/in...


👤 anthonyhn
Lisp has very minimal syntax and so you can build a lisp interpreter fairly easily in many languages. Most languages don't have a readily available python interpreter that you can embed, and building one that is feature parity with CPython (the most popular python implementation) is not an easy task.