Earlier quoted context omitted.
You're postulating a population that are willing to take on the cognitive burden of learning Emacs but who are unwilling to do the same for ELisp. I think that's a smallish population, almost entirely composed of people who want a Scheme, probably Guile, instead (but, like me, are plugging along in Elisp in anticipation of Emacs-Guile potentially shipping before the Rapture). People who want to script in Go, Common L…
I've actually met many programmers who used Emacs but knew zero Lisp of any kind, including Emacs Lisp. They were just happy using the available goods without looking under the hood. I don't think it's that unusual. Emacs is quite popular. If even 25% of the user base coded in Lisp, it would be ... astonishing.
Goism – Use Go instead of Emacs Lisp inside Emacs
71–78 of 78 posts
Re: Goism – Use Go instead of Emacs Lisp inside Emacs
#72Earlier quoted context omitted.
It's a lisp. That is enough for a lot of us to want to use another language, irrespective of how much Emacs lisp improves.
If you don't like Lisp for editor programmoing, then an editor which is literally built upon a million lines of Lisp code seems to be a very bad choice. Even providing another extension language won't make the Lisp go away.
Re: Goism – Use Go instead of Emacs Lisp inside Emacs
#73Earlier quoted context omitted.
It's a lisp. That is enough for a lot of us to want to use another language, irrespective of how much Emacs lisp improves.
You should try digging deeper into Lisp before disqualifying in such a frivolous way.
Re: Goism – Use Go instead of Emacs Lisp inside Emacs
#74Earlier quoted context omitted.
> where is BASIC today? On .NET, UWP and Microsoft Office macros. It even is supported by .NET Native compiler, something that F# is still WIP. And yes, at enterprise level, there are new lines of VB.NET and VBA being written every day.
The last time I touched BASIC was Visual Basic 6. VB.NET is a great example of my point - from what I understand it was a huge pain to move VB6 applications to VB.NET
That is the tool that many researchers with some programming skills reach for, maybe they will some day move to Python or R, but VB is what they use currently.
Re: Goism – Use Go instead of Emacs Lisp inside Emacs
#75I haven't taken an incredibly close look at this, but it seems like a pretty bad idea. Elisp is definitely not a great language, and I'd like an alternative as much as the next Emacs user. But I feel pretty strongly that any alternative has to be a Lisp, or very close to one. Code-is-data/data-is-code is very important for the more "config-file" aspects of configuring Emacs. Being able to use and write DSLs to succin…
I used Emacs Lisp for scripting tasks like code and data generation. It is great to have an ability to evaluate form right inside the spot you want results to be inserted. This kind of code does not require AST manipulations or macro. Also, some of my projects that become bigger than 1000 LoC could benefit from static typing and (subjectively) better tooling. By the way, I think extending Emacs in Racket would be gre…
Racket seems like a near perfect match for the domain. Start with a hacky one-off script. Augment with unit tests. Code base grows and starts becoming more stable? Progressively migrate to Typed Racket.
Re: Goism – Use Go instead of Emacs Lisp inside Emacs
#76Re: Goism – Use Go instead of Emacs Lisp inside Emacs
#77Earlier quoted context omitted.
If you don't like Lisp for editor programmoing, then an editor which is literally built upon a million lines of Lisp code seems to be a very bad choice. Even providing another extension language won't make the Lisp go away.
The implementation language does not matter to me - I'm not working on the code base, and have no interest in doing so. I don't care that there is lisp there, as long as I don't have to write it.
The implementation language does matter a lot in this case, because the part of Emacs that is written in Emacs Lisp (~90% of Emacs) can and should be leveraged (modified, extended or used to build upon) at runtime by users. This is what gives Emacs it's tremendous flexibility and power.
Using anything other than a Lisp with semantics close to Emacs Lisp for user code that leverages what Emacs offers built-in, will be an exercise in frustration since a lot of the power I described will be so cumbersome to access and make use of. It's been tried before, multiple times by people not very familiar with Emacs Lisp, and it has never worked out.
Experienced Emacs Lisp developers immediately understand the futility and pointlessness of such endeavors which is why you never see them attempt them.
Re: Goism – Use Go instead of Emacs Lisp inside Emacs
#78Earlier quoted context omitted.
It is possible to emit Emacs Lisp instead of bytecode/lapcode. This was the first code generator target actually. Easier to debug, simpler to trust (for the end user) and not that hard to generate. The problem is that it is harder to implement some features of Go in terms of Emacs Lisp without going down to the virtual machine level. Best examples are arbitrary return statements (can be emulated by throw/catch) and g…
Could you implement arbitrary return with cl-block and cl-return-from?
Possible implementation (about 20 lines of code): https://github.com/Quasilyte/goism/issues/57
Not sure if "defadvice" around "byte-compile-form" is acceptable for all users.