help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Where is Emacs Lisp taught ?


From: Garreau, Alexandre
Subject: Re: Where is Emacs Lisp taught ?
Date: Fri, 26 Oct 2018 13:43:03 +0200
User-agent: Gnus (5.13), GNU Emacs 25.1.1 (i686-pc-linux-gnu, GTK+ Version 3.22.11) of 2017-09-15, modified by Debian

On 2018-10-25 at 21:01, Emanuel Berg wrote:
> Garreau, Alexandre wrote:
>> Elisp is often to be considered a bad language
>
> By whom? Elisp is not considered a bad language. It is just another
> Lisp dialect.  I wouldn't recommend it for an industrial style project
> - Common Lisp, rather - but for Emacs purposes it is great and not
> that different at all from many other Lisps that are around.

By some people on EmacsWiki at least:
<https://www.emacswiki.org/emacs/WhyDoesElispSuck>
<https://www.emacswiki.org/emacs/EmacsLispLimitations>

What I’ve heard personally is about inconsistency in the language as a
library/interface, and slowness due to naive implementation of lisp,
absence of compiler, commitment to a truely maximally dynamic
architecture, and simplicity (you can’t extend the reader for instance,
contrarily to both cl and TeX).

Beside that (therefore including emacs-specific features), Emacs Lisp is
partially compatible with Common Lisp and I’ve already heard of
applications working almost completely out-of-the-box with no
modification by being evaluated by both Emacs and a Common Lisp
compiler/interpreter.

It is, I believe, in expressivity, still a better language than most
languages, such as javascript, C, or in speed too (as well as
expressivity), probably better than python, and “some old very bad
compilers” I heard (how much compared to java? might be impressive).
But compared to quite unknown languages better known to lispers than to
the average programer, such as FP (maybe APL?), Scheme, CL, Haskell, it
certainly lacks stuff.

> And a note on university education.  There aren't really courses on
> specific languages anymore, if there ever was (?).  The courses have
> names that denotes different themes or aspects of computers/computing,
> and then you do stuff with tools and languages to fit the purpose.

I often feel that’s more an excuse to invisibilize vendor lock-in (even
when only caused by, at least, habits and interfaces), because in the
end you have to spend time with a language, you have your preferences,
and these change a lot the kind of errors students will do.  So your
course *will* in the end be tailored by a language, except if it’s
purely theoric, and then it’s bad because harder to grasp, or accepting
arbitrary languages from students, which then can demand an awful
quantity of work to correct if only one student have an unusual and
unknown language.

For instance, I have a “functional programming” course, which is in
ocaml, like almost everywhere I saw in France, because “they don’t know
ocaml” and “dislike lisp because too much parentheses”.  And in it at
some point we did 80% of imperative programming, because the Graphics
Ocaml API is purely imperative, so I ended rewriting the whole API in
functional style so to try benefiting purely functional programming.
So in the end it’s not a real “functional programming” course, it is a
fake name, the real object of the course is “ocaml programming”.

> So even if you don't find the word "Lisp" anywhere doesn't mean it
> isn't taught anywhere/-longer. There is hope :)

Of course, but even looking at the courses *content* lisp is not that
popular, compared to C and python… or C++… or Java …or even javascript
and php separately maybe (taught united they certainly win).



reply via email to

[Prev in Thread] Current Thread [Next in Thread]