Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I don't understand the goals of this project. What are these "tidy settings" they are talking about? And is having to install plugins in Emacs really such an obstacle? It would be great if the authors could elaborate a bit more about their motivation and vision.


Motivation: Emacs Lisp is not Common Lisp. It's cumbersome using Common Lisp for Emacs package development and cl.el is discouraged. Even not considering that simple fact, how we can use the massive Common Lisp ecosystem in a nice way? Sorry, I don't know how to do that in a simple way. Just no.

Beyond that Lem it is quite fast and there is the OpenGL [1] front as unofficial contribution. It could be embedded as a Lisp IDE inside of a game called Lisp Hacking Experience that was never made.

The amount of good reasons for doing that it can be enumerated by thinking about the common lisp ecosystem as I said earlier.

BTW, emacs is great but it not have good defaults enough for modern Common Lisp development, Lem it's awesome as default for Common Lisp ;). Not having any beginner friendly editor for Common Lisp it was one of the reasons that I teaching Lisp was so difficult.

Edit: Portacle is a good Emacs dist, but it is still emacs, so don't push the discussion with this in mind. It's pointless. And Portacle it's great in your own way (https://portacle.github.io/)

[1] https://github.com/pupcraft/lem-opengl


This post is full of misinformation.

cl-lib.el is not discouraged, it's widely used by Emacs itself and pretty much every substantial Emacs Lisp library out there.

What's discouraged is using an older version, cl.el, at runtime [1] because it replaces existing Emacs Lisp functions and pollutes the namespace. Even that's ok to use at compile time though.

Lastly, cl-lib.el is not cumbersome to use.

[1] https://www.gnu.org/software/emacs/manual/html_node/cl/Organ...


Actually there wasn't much disinformation.

cl-lib is cumbersome to use, especially since the CL operators now have a different prefix (since Emacs Lisp has no packages). This means I can not use any existing CL code in GNU Emacs - the operators are partially there, but all renamed.

That's cumbersome.


Let me give it a try, from an abstract/Emacs point of view:

Emacs is good for Lisp development, but both “raw” Emacs itself and most of the packaged customization versions (Spacemacs, etc) are fairly ‘opinionated’ about Lisp, and that opinion usually falls close to: Lisp is great, but Common Lisp is a little/some/much too much, so our choices often lean away from CL’s. (Lisp-1 vs. Lisp-2, dynamic vs. lexical scope, etc.) This means that you’re customizing in a nearby language, but one that dislikes some of the things that you liked when you chose CL, so there’s some impedance mismatch going on. That said, you can get a great CL dev environment from Emacs, but you’ll want to install a bunch of add-ons first, probably including a non-Emacs lisp interpreter and a package to bridge Emacs and that other lisp. True fans of CL would really like a full-blown Emacs with real CL at its core, and periodically people try to make those (Hemlock, etc), but they usually don’t catch on.


More misinformation here.

Emacs Lisp is a Lisp-2.

Emacs Lisp has lexical scope.

When writing code in Emacs, Emacs Lisp for all intents and purposes can be seen as a subset of Common Lisp, not an entirely different language like you present it to be.

Please try not to propagate this sort of misinformation again in the future. The things you claim are obviously wrong to anyone who has ever used Emacs Lisp, even once. Have you ever done that?


Please edit swipes and incivility out of your comments here, regardless of how misinformed someone else is. It's actually worse when you're right, because then you're discrediting the truth by associating it with rudeness.

There's an additional concern. As Lisp users ourselves, we remember how the CL culture was gutted by the wave of nastiness that rolled into it about 15 years ago. No trace of that is ok on Hacker News. Dismayingly, your comments have contained traces of it in the past as well as in this thread.

In fact, you have posted so many uncivil comments to HN already that we're going to ban you if you keep doing it. If you'd please read https://news.ycombinator.com/newsguidelines.html and take the spirit of this site to heart from now on, we'd greatly appreciate it. This means erring on the side of respecting others, assuming good faith, and providing correct information to teach readers rather than humiliate fellow commenters.

You might also find these links helpful for getting the spirit of this site:

https://news.ycombinator.com/newswelcome.html

https://news.ycombinator.com/hackernews.html

http://www.paulgraham.com/trolls.html

http://www.paulgraham.com/hackernews.html


Emacs Lisp is similar to CL, since both were derived from Maclisp and many basic code looks similar.

In Common Lisp a subset would mean that all programs of that subset would run unchanged in a full CL implementation. Emacs Lisp isn't like that.

More tragically, over time, Emacs Lisp implemented Common Lisp features - even though Richard Stallman does not like Common Lisp's features like keyword arguments - but not in a source compatible way. Emacs Lisp got CL features and operators via libraries, often with incompatible naming, but still can't be programmed in straight Common Lisp.


> This post is full of misinformation.

Maybe a few, but not full neither even so many. Thanks for pointing about cl vs cl-lib.


Please don't be discouraged by the occasional hostile reception. It's an invasive species here, which we do what we can to contain, but the bulk of the community is supportive and I hope that comes across in this thread! (And thanks for not taking the bait; your reply here was admirable.)


Yeah... Unfortunately or not, that type of person in the internet is so common that after years I learnt a little about it. Thanks for the support :) let's continue the good discussions on the thread o/




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: