this post was submitted on 21 Mar 2026
34 points (100.0% liked)

Programming

26195 readers
348 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS
top 17 comments
sorted by: hot top controversial new old
[–] Ephera@lemmy.ml 30 points 2 days ago* (last edited 2 days ago) (4 children)

Don't think the original LISP is used much anymore, but there's various dialects like Scheme, Racket and Clojure.

Some examples where it's used, off the top of my head:

  • Lilypond for when you need your sheet music to be turing-complete. Uses Scheme.
  • Emacs, for configuring the whole editor. (Has an own dialect, Elisp.)
  • GNU Guix, which uses Scheme for configuring the entire operating system.

Obviously, you can also use them for general software development. A few years ago, I read of some project that used Clojure for a larger backend service, with the author gushing all over the place.
Some folks are really passionate about the LISPs, but yeah, not terribly popular in the corporate world...

[–] HaraldvonBlauzahn@feddit.org 2 points 14 hours ago

Emacs, for configuring the whole editor. (Has an own dialect, Elisp.)

Emacs has its own Lisp dialect because it is one of the longest-running software projects in existence. Work is underway to port its core to Guile, while maintaining Elisp compatibility.

[–] HaraldvonBlauzahn@feddit.org 2 points 14 hours ago

Clojure, Racket and Guile are really nice. But especially Common Lisp is underrated - it is an interactive, compiled, high-performance language. What Lisps often suffer from is a lack of libraries compared to Python. For example, Clojure and Kawa run on the JVM. Guile has good POSIX bindings. Steel is implemented in Rust and can call into it, which means it can use its libraries.

[–] Oinks@lemmy.blahaj.zone 7 points 2 days ago

You also see Common Lisp on occasion, like in the browser Nyxt or the editor Lem.

[–] lmr0x61@lemmy.ml 2 points 2 days ago (2 children)

Guix is such a cool idea, but Nix accomplishes essentially the same thing, and the syntax is much more accessible in a post-JavaScript world. Most programmers nowadays aren’t that familiar with Lisp-like syntax, for better or worse.

I don't hate on any language's syntax tbh, but the tooling for nix is absolutely miserable compared to similar.

People hate on yaml a lot, but I can start typing and then press tab and it completes a whole template for whatever k8s objecy I am trying to make. Having to copy from my other project's shell.nix/whatever into the new one feels miserable in comparison.

[–] Ephera@lemmy.ml 3 points 2 days ago

I do agree, yeah, although I can certainly also understand LISP fans being annoyed that someone created a custom DSL for something that is adequately solved by the LISPs. I'm also certainly not enamored with the Nix syntax myself, but do find it easier to parse than a million parentheses.

But yeah, ultimately the complexity of Nix and Guix isn't in the particular symbols you type out. The complexity comes from them being expression-based (which does make sense for the use-case, but isn't as familiar as e.g. imperative languages), as well as just having to learn tons of modules for the different things you want to configure...

[–] jcr@jlai.lu 8 points 2 days ago

GNU Guile is a dialect of Lisp used by quite a few software.

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

It is the configuration language of the Guix OS, a modern distro (very focused on computer freedom) , also by libraries and software like Gnucash, the GNU Debugger, a GUI toolkit for Gnome also, etc.

It is not a replacement of C, but can be used like Python.

[–] balian@lemmy.libertarianfellowship.org 7 points 2 days ago (1 children)

The orange techbro forum site (news.ycombinator.com) is built on a Common Lisp backend (it used to be a Racket-based DSL before). IIRC Grammarly is (was?) also written in Common Lisp.

[–] abbadon420@sh.itjust.works 3 points 2 days ago

They posted something about lisp yesterday, that's how I came to ask this question.

[–] anton@lemmy.blahaj.zone 9 points 2 days ago (1 children)
[–] MonkderVierte@lemmy.zip 5 points 2 days ago* (last edited 2 days ago)

Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp.

Nice.

[–] dparticiple@sh.itjust.works 7 points 2 days ago

Years ago (early 2000s) in a product that suffered from poor product management, I worked on a codebase that included some Scheme, and a built-in Scheme interpreter to run it. I always liked the language.I think it might still have a niche in embedded systems and game dev, among other places (I read somewhere that it's used in satellite software due to being hot reloadable)?

[–] hperrin@lemmy.ca 7 points 2 days ago (1 children)

Doesn’t GIMP use Scheme for its plugins?

[–] Solemarc@lemmy.world 6 points 2 days ago (1 children)

A quick google of GIMP docs tells me it uses C, Python and Script-fu so, sorta?

https://developer.gimp.org/resource/writing-a-plug-in/

[–] hperrin@lemmy.ca 9 points 2 days ago

Thanks. :) So not technically Scheme, but a fork of Scheme.

Script-Fu is probably the oldest binding system for extending GIMP. It is also a Scheme variant, which evolved independently for many years now.

[–] bacon_pdp@lemmy.world 3 points 2 days ago

Basically big, over ambitious projects that have a single developer