> Suppose I want to work in a single place for all my contexts, both personal and professional.
This has always been my problem with adopting Emacs or Obsidian or any other app that purports to do this. Who are y'all working for that you can bring professional stuff onto the same system as personal stuff? I don't want my personal emails on my work computer, and my boss would be rather upset if I brought work emails onto my personal computer. I'd love one of these do everything apps that lets me tag and sync just stuff that ought to be synced.
Maybe he is a freelancer or a business owner and not an employee. If you’re one of the former, there’s often little separation between work and personal. I only truly enforce separation when I’m an employee, with different devices for each context.
I hate to tell ya this... LiveScript was renamed to JavaScript in 1995, and the first ECMAScript standard was published in 1997. So not 40 years old, but 31 years old.
NodeJS (liberating JavaScript from the browser) was first released in 2009... so again, not 40 years old, but old enough to have a drivers license.
I agree with you on the other side though: despite the language being relatively old and stable, it feels like the wheel's getting reinvented over and over again and "this will be a good enough pattern for the next decade" hasn't ever really shaken out, unlike Lisp or even Python.
What it could at least let you do is view JS code using more "Pythonic" syntax rendering. The semantics would still be JS, but you could get rid of the curly braces while you were reading it if you just preferred semantic indentation, for example
"Common Lisp Emacs" has been attempted a few times. Lem seems like the best effort yet, and I was really excited about it until they decided to adopt a webview renderer.
Having CommonLisp as the extension language would indeed be a great improvement over Elisp.
However, I am suspicious about the dependency of Lem on Webkit, which for me is rather associated with inefficiency and low performance than with the instant reactions that I expect from programming text editors, terminal emulators and tiled window managers.
The main problem is that it is very difficult for any replacement of Emacs to offer everything that already exists for Emacs.
In my opinion, the only way in which such a replacement would succeed would be if it would include an automatic translator from Elisp to CommonLisp scripts executable by it, with equivalent functionality.
Lem can also render via ncurses, which works fairly fine if you don't need mouse support. It used to also have an SDL2 frontend, but it was deprecated for reasons I don't remember
I am not sure if I would bet one way or another on who has the richer ecosystem here.. They are both great. I would probably wager elpa has more packages in general than quicklisp, but maybe not necessarily richer/higher quality.
GNU Emacs is probably the easiest way to capture the spirit of working on the Lisp machines. Interlisp is an ongoing project that takes you even further down that road.
It's a matter of philosophy; would you rather have multiple small apps that do only one job or one "super app" that does it all?
Ironically, starting from the former, I've now turned my tmux into the latter with so many utility apps integrated into it. But now I can see the benefits of each approach. Maintaining "super apps" is more challenging due to the coupling of so many pieces to each other.
And building a consistent good experience from isolated tools is even harder. The problem is just hard and I think good criteria with the super app approach is the way to go.
I really like Spacemacs. It's discoverable, extendable, quite consistent.
> And building a consistent good experience from isolated tools is even harder.
Yes, I agree, which is why my tmux slowly devours my numerous small utility apps into itself! I haven't tried Spacemacs yet, too Vim-pilled at the moment..
> Suppose I want to work in a single place for all my contexts, both personal and professional.
This has always been my problem with adopting Emacs or Obsidian or any other app that purports to do this. Who are y'all working for that you can bring professional stuff onto the same system as personal stuff? I don't want my personal emails on my work computer, and my boss would be rather upset if I brought work emails onto my personal computer. I'd love one of these do everything apps that lets me tag and sync just stuff that ought to be synced.
Maybe he is a freelancer or a business owner and not an employee. If you’re one of the former, there’s often little separation between work and personal. I only truly enforce separation when I’m an employee, with different devices for each context.
Something like Lem[1][2] could go even further because of the richer CommonLisp ecosystem compared to Elisp one.
[1] https://lem-project.github.io/
[2] https://github.com/lem-project/lem
I chose the JS ecosystem. Why does the power of Emacs not belong in the browser? These days JS is a powerful enough FP language to do it.
Nearly 40 years of stuff.
People iterating on a problem space over time is the best way we have found to improve things.
The JS ecosystem is not that old and also attempts to solve hundreds of unrelated problems like running software without peoples consent.
> The JS ecosystem is not that old
I hate to tell ya this... LiveScript was renamed to JavaScript in 1995, and the first ECMAScript standard was published in 1997. So not 40 years old, but 31 years old.
NodeJS (liberating JavaScript from the browser) was first released in 2009... so again, not 40 years old, but old enough to have a drivers license.
I agree with you on the other side though: despite the language being relatively old and stable, it feels like the wheel's getting reinvented over and over again and "this will be a good enough pattern for the next decade" hasn't ever really shaken out, unlike Lisp or even Python.
They told me the future would have horrors beyond my comprehension.
But I understand this particular horror. I might even agree... :D
Maybe python can't do it, but I would love to extend my editor (and even browser) using python.
My core idea, CSTML, isn't implementation-language-specific: https://docs.bablr.org/guides/cstml
What it could at least let you do is view JS code using more "Pythonic" syntax rendering. The semantics would still be JS, but you could get rid of the curly braces while you were reading it if you just preferred semantic indentation, for example
"Common Lisp Emacs" has been attempted a few times. Lem seems like the best effort yet, and I was really excited about it until they decided to adopt a webview renderer.
I've got vscode for that.
Having CommonLisp as the extension language would indeed be a great improvement over Elisp.
However, I am suspicious about the dependency of Lem on Webkit, which for me is rather associated with inefficiency and low performance than with the instant reactions that I expect from programming text editors, terminal emulators and tiled window managers.
The main problem is that it is very difficult for any replacement of Emacs to offer everything that already exists for Emacs.
In my opinion, the only way in which such a replacement would succeed would be if it would include an automatic translator from Elisp to CommonLisp scripts executable by it, with equivalent functionality.
Lem can also render via ncurses, which works fairly fine if you don't need mouse support. It used to also have an SDL2 frontend, but it was deprecated for reasons I don't remember
I am not sure if I would bet one way or another on who has the richer ecosystem here.. They are both great. I would probably wager elpa has more packages in general than quicklisp, but maybe not necessarily richer/higher quality.
GNU Emacs is probably the easiest way to capture the spirit of working on the Lisp machines. Interlisp is an ongoing project that takes you even further down that road.
It's a matter of philosophy; would you rather have multiple small apps that do only one job or one "super app" that does it all?
Ironically, starting from the former, I've now turned my tmux into the latter with so many utility apps integrated into it. But now I can see the benefits of each approach. Maintaining "super apps" is more challenging due to the coupling of so many pieces to each other.
And building a consistent good experience from isolated tools is even harder. The problem is just hard and I think good criteria with the super app approach is the way to go.
I really like Spacemacs. It's discoverable, extendable, quite consistent.
> And building a consistent good experience from isolated tools is even harder.
Yes, I agree, which is why my tmux slowly devours my numerous small utility apps into itself! I haven't tried Spacemacs yet, too Vim-pilled at the moment..