[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: What's missing in ELisp that makes people want to use cl-lib?
From: |
Petteri Hintsanen |
Subject: |
Re: What's missing in ELisp that makes people want to use cl-lib? |
Date: |
Sun, 12 Nov 2023 13:08:20 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Eli Zaretskii <eliz@gnu.org> writes:
>> Emacs Lisp can learn from interesting ideas that other
>> languages provide, adapt and add them, making them available to
>> everyone.
>
> It certainly can. The question is: should it? Since we are not
> driven by any standard, it is completely up to us to make those
> decisions, and we should IMO make them judiciously and carefully,
> taking the downsides into consideration. In particular, I hope people
> agree that making a language too large and complex is not a good
> thing in the long run.
I don't know anything about Common Lisp, and only fundamentals of Emacs
Lisp, but I think the above is really the crux of this discussion.
I believe that the complexity of our tools (including programming
languages) affects the complexity of our products. Therefore, a kind of
methodological minimalism is valid, as it tends to lead to simpler
solutions, which are almost always preferable.
Additionally, since debugging is at least twice as hard as writing new
code--and I'd extrapolate that debugging code written by others is at
least four times as hard--any efforts to make debugging easier are
commendable. Often this boils down to general principles: write
clearly, don't be too clever, do the same thing the same way, accumulate
idioms [1, 2]. Limiting the number of acceptable language features,
either by preference or deprecation, is another way towards this aim.
Would it be useful to document recommended and/or avoidable practices,
for example by extending Appendix D (Tips and Conventions) in Emacs Lisp
reference manual? Or maybe a separate set of guidelines for code that
is, or is likely to be, included in Emacs itself?
For a recent example of a growing hodgepodge complexity, consider C++.
C++98 was already a Byzantine language. C++11 made it significantly
more complex, and the recent editions are borderline crazy. Even the
creator of the language seems to agree [3]. Nowadays I cannot recommend
learning C++ for any novice programmer in good faith. It would be sad
to see Emacs Lisp take the same path. (Even though I agree this is
comparing apples to oranges; C++ is truly a general programming language
in the widest sense, while Emacs Lisp is not.)
Thanks,
Petteri
[1] Kernighan and Plauger: The Elements of Programming Style. (1978)
[2] A J Perlis: Epigrams in Programming. (1982)
[3] B Stroustrup: Remember the Vasa! (2018)
- Re: What's missing in ELisp that makes people want to use cl-lib?, (continued)
- Re: What's missing in ELisp that makes people want to use cl-lib?, Gerd Möllmann, 2023/11/09
- Re: What's missing in ELisp that makes people want to use cl-lib?, Emanuel Berg, 2023/11/03
- Re: What's missing in ELisp that makes people want to use cl-lib?, Eli Zaretskii, 2023/11/03
- Re: What's missing in ELisp that makes people want to use cl-lib?, Philip Kaludercic, 2023/11/03
- Re: What's missing in ELisp that makes people want to use cl-lib?, Eli Zaretskii, 2023/11/03
- Re: What's missing in ELisp that makes people want to use cl-lib?, Philip Kaludercic, 2023/11/03
- Re: What's missing in ELisp that makes people want to use cl-lib?, Richard Stallman, 2023/11/11
- Re: What's missing in ELisp that makes people want to use cl-lib?,
Petteri Hintsanen <=
- Re: What's missing in ELisp that makes people want to use cl-lib?, Eli Zaretskii, 2023/11/12
- Re: What's missing in ELisp that makes people want to use cl-lib?, Emanuel Berg, 2023/11/12
Re: What's missing in ELisp that makes people want to use cl-lib?, João Távora, 2023/11/02
- Re: What's missing in ELisp that makes people want to use cl-lib?, Emanuel Berg, 2023/11/02
- RE: [External] : Re: What's missing in ELisp that makes people want to use cl-lib?, Drew Adams, 2023/11/02
- Re: [External] : Re: What's missing in ELisp that makes people want to use cl-lib?, Richard Stallman, 2023/11/07
- RE: [External] : Re: What's missing in ELisp that makes people want to use cl-lib?, Drew Adams, 2023/11/07
- RE: [External] : Re: What's missing in ELisp that makes people want to use cl-lib?, Bob Rogers, 2023/11/07