unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: "Pascal J. Bourguignon" <pjb@informatimago.com>
To: help-gnu-emacs@gnu.org
Subject: Re: member returns list
Date: Mon, 07 Sep 2015 01:47:47 +0200	[thread overview]
Message-ID: <87fv2raz4s.fsf@kuiper.lan.informatimago.com> (raw)
In-Reply-To: mailman.598.1441581917.19560.help-gnu-emacs@gnu.org

Emanuel Berg <embe8573@student.uu.se> writes:

> "Pascal J. Bourguignon" <pjb@informatimago.com>
> writes:
>
>> Because each implementation worked on a different
>> machine with a different OS (if an OS was available
>> at all).
>
> Yeah, but there were many machines at the time of the
> "crazy language" C as well, still, there aren't
> a plethora of C dialects. (If you don't count all the
> epigone languages that borrowed heavily the syntax
> of C.)
>
> But C is famous for its portability (which also
> proliferated Unix) - perhaps the exception that
> confirms the rule, that Lisp is cooler than C?

It's not exactly the same time period, and not the same kind of
machines.

Basically, C was running on small machines, that were all the same.
After C the micro-processors appeared, and since they were so bad, they
soon were optimized to run C code efficiently.

On the other hand, Lisp was running on mainframes, each with a different
kind of processor.  Those were machines that could get new instructions
each week!

Granted, the CADR was a prototype:
https://c1.staticflickr.com/5/4040/4456481460_e7ef34f49e_b.jpg
so it wouldn't be surprising if it got new instructions hardwired often.
But it was also the case on other mainframe, commercially
installed.  They got upgrades that changed the instructions.


Also, a variant of what has already been discussed to death, C syntax is
so horrible than you don't dare implement a new parser: you get the
grammar from some previous compiler, and you use a parser generator to
parse the same.  On the other hand, there's no parser in lisp, and you
can implement a lisp reader in half a hour.  You can implement a running
lisp system in an afternoon (remember, EVAL is one page in AIM-8).

Basically, you can implement a lisp without having access to an old lisp
system, just by hearing about it and having a little light bulb going
tilt in your head.

Not so with C.



 
>> But basically, he started GNU emacs and designing
>> emacs lisp slightly beforem the CL standardization
>> process started, and it was far from obviouos that
>> it would succeed (it took ten years!).
>
> OK, but when it did "succeed", why not then?

It would have been too much work for a single programmer, and he
probably already had a lot of users writing emacs lisp code like crazy
demons.


> And, cannot CL be used from Elisp, with explicit
> notation (actually naming), but nonetheless?

Yes. There's emacs-cl.  But it bit-rotted on the passage from emacs 23
to 24 with lexical binding.



-- 
__Pascal Bourguignon__                 http://www.informatimago.com/
“The factory of the future will have only two employees, a man and a
dog. The man will be there to feed the dog. The dog will be there to
keep the man from touching the equipment.” -- Carl Bass CEO Autodesk


  parent reply	other threads:[~2015-09-06 23:47 UTC|newest]

Thread overview: 103+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-01 15:50 To `boundp' or not to `boundp'? Alexander Shukaev
2015-09-01 15:51 ` Dmitry Gutov
2015-09-01 15:53   ` Alexander Shukaev
2015-09-01 16:42   ` Drew Adams
2015-09-01 17:13     ` Michael Heerdegen
2015-09-01 18:00       ` Drew Adams
     [not found]   ` <mailman.331.1441125765.19560.help-gnu-emacs@gnu.org>
2015-09-01 20:20     ` Barry Margolin
2015-09-01 23:37       ` member returns list (was: Re: To `boundp' or not to `boundp'?) Emanuel Berg
2015-09-02  0:10         ` Drew Adams
2015-09-02  0:27           ` Emanuel Berg
2015-09-02  0:38             ` Drew Adams
2015-09-02  1:17               ` Emanuel Berg
2015-09-02  6:21                 ` Drew Adams
2015-09-02 21:20                   ` Emanuel Berg
     [not found]               ` <mailman.370.1441156160.19560.help-gnu-emacs@gnu.org>
2015-09-03  5:17                 ` member returns list Pascal J. Bourguignon
2015-09-04  0:26                   ` Emanuel Berg
2015-09-02 16:45         ` Michael Heerdegen
2015-09-02 21:47           ` Emanuel Berg
2015-09-02 22:09             ` Michael Heerdegen
2015-09-02 22:11             ` Drew Adams
2015-09-02 22:13             ` Marcin Borkowski
2015-09-04  1:03               ` Emanuel Berg
2015-09-04  6:50                 ` Marcin Borkowski
2015-09-05 17:35                   ` Emanuel Berg
2015-09-05 17:55                     ` Random832
2015-09-05 18:09                       ` Emanuel Berg
2015-09-05 21:04                         ` Random832
2015-09-06  2:57                           ` Emanuel Berg
     [not found]                     ` <mailman.552.1441475739.19560.help-gnu-emacs@gnu.org>
2015-09-05 23:39                       ` Pascal J. Bourguignon
2015-09-06  2:46                         ` Emanuel Berg
2015-09-09  1:48                           ` Robert Thorpe
2015-09-09  2:44                             ` Pascal J. Bourguignon
2015-09-09  3:19                               ` John Mastro
2015-09-10  0:25                             ` Emanuel Berg
     [not found]                         ` <mailman.557.1441507097.19560.help-gnu-emacs@gnu.org>
2015-09-06 21:20                           ` Pascal J. Bourguignon
2015-09-06 23:33                             ` Emanuel Berg
     [not found]                             ` <mailman.598.1441581917.19560.help-gnu-emacs@gnu.org>
2015-09-06 23:47                               ` Pascal J. Bourguignon [this message]
2015-09-07  1:29                                 ` Pascal J. Bourguignon
2015-09-07  2:25                                   ` Emanuel Berg
2015-09-09  1:44                                   ` Robert Thorpe
2015-09-10  0:23                                     ` Emanuel Berg
     [not found]                                     ` <mailman.793.1441844665.19560.help-gnu-emacs@gnu.org>
2015-09-10  2:01                                       ` Pascal J. Bourguignon
2015-09-10  2:32                                         ` Emanuel Berg
     [not found]                                           ` <ECCA0E56-A051-4D38-8CBB-6CE9208BB047@openmailbox.org>
2015-09-11  1:32                                             ` Emanuel Berg
2015-09-11  1:46                                               ` Emanuel Berg
     [not found]                                         ` <mailman.797.1441852386.19560.help-gnu-emacs@gnu.org>
2015-09-10  4:21                                           ` Pascal J. Bourguignon
2015-09-10 18:09                                             ` Alex Kost
2015-09-11  1:01                                               ` Random832
2015-09-11  1:28                                                 ` Emanuel Berg
2015-09-11  2:01                                                   ` Emanuel Berg
2015-09-11  2:52                                                     ` Random832
     [not found]                                                   ` <mailman.890.1441936900.19560.help-gnu-emacs@gnu.org>
2015-09-11  2:27                                                     ` Pascal J. Bourguignon
2015-09-12  0:10                                                       ` Emanuel Berg
2015-09-11  2:37                                                   ` Ian Zimmerman
2015-09-11  1:03                                               ` Emanuel Berg
2015-09-11  0:57                                             ` Emanuel Berg
2015-09-11  5:42                                               ` tomas
2015-09-12  0:18                                                 ` Emanuel Berg
2015-09-13  8:12                                                   ` tomas
     [not found]                                               ` <mailman.897.1441950163.19560.help-gnu-emacs@gnu.org>
2015-09-11 23:29                                                 ` Pascal J. Bourguignon
2015-09-12  0:20                                                   ` Emanuel Berg
     [not found]                                                   ` <mailman.966.1442016910.19560.help-gnu-emacs@gnu.org>
2015-09-12  2:01                                                     ` Pascal J. Bourguignon
2015-09-12  3:26                                                       ` Emanuel Berg
2015-09-13  7:50                                                       ` tomas
2015-09-12  2:03                                                     ` Pascal J. Bourguignon
2015-09-12  2:45                                                       ` Stefan Monnier
2015-09-12  3:12                                                         ` Emanuel Berg
2015-09-12  3:31                                                       ` Emanuel Berg
     [not found]                                                       ` <mailman.972.1442025961.19560.help-gnu-emacs@gnu.org>
2015-09-12  6:16                                                         ` Pascal J. Bourguignon
2015-09-12 23:38                                                           ` Emanuel Berg
2015-09-13  8:03                                                             ` tomas
2015-09-14  1:31                                                               ` Emanuel Berg
     [not found]                                                           ` <mailman.1016.1442100597.19560.help-gnu-emacs@gnu.org>
2015-09-13  0:09                                                             ` Pascal J. Bourguignon
2015-09-13  0:24                                                               ` John Mastro
     [not found]                                                               ` <mailman.1019.1442103883.19560.help-gnu-emacs@gnu.org>
2015-09-13  4:29                                                                 ` Pascal J. Bourguignon
2015-09-16  0:01                                                               ` computer history (was: Re: member returns list) Emanuel Berg
     [not found]                                                       ` <mailman.978.1442028310.19560.help-gnu-emacs@gnu.org>
2015-09-12  6:18                                                         ` member returns list Pascal J. Bourguignon
2015-09-12 23:56                                                           ` Emanuel Berg
     [not found]                                                           ` <mailman.1018.1442101697.19560.help-gnu-emacs@gnu.org>
2015-09-13  0:20                                                             ` Pascal J. Bourguignon
2015-09-14  1:24                                                               ` Emanuel Berg
2015-09-12  2:04                                                     ` Pascal J. Bourguignon
2015-09-12  3:15                                                       ` Emanuel Berg
2015-09-12  7:40                                                   ` Eli Zaretskii
     [not found]                                             ` <mailman.884.1441933051.19560.help-gnu-emacs@gnu.org>
2015-09-11  2:26                                               ` Pascal J. Bourguignon
2015-09-12  0:16                                                 ` Emanuel Berg
2015-09-07  2:38                                 ` Drew Adams
2015-09-07  2:37                             ` Drew Adams
     [not found]                 ` <mailman.502.1441349470.19560.help-gnu-emacs@gnu.org>
2015-09-04 17:26                   ` Barry Margolin
2015-09-05 17:40                     ` Emanuel Berg
2015-09-02  0:40       ` member (was: Re: To `boundp' or not to `boundp'?) Emanuel Berg
     [not found]       ` <mailman.363.1441150201.19560.help-gnu-emacs@gnu.org>
2015-09-02 16:25         ` member returns list " Barry Margolin
2015-09-02 21:35           ` Emanuel Berg
     [not found]           ` <mailman.426.1441229773.19560.help-gnu-emacs@gnu.org>
2015-09-02 22:56             ` Barry Margolin
2015-09-02 23:23               ` Emanuel Berg
     [not found]       ` <mailman.368.1441153951.19560.help-gnu-emacs@gnu.org>
2015-09-03  5:19         ` member Pascal J. Bourguignon
2015-09-04  0:24           ` member Emanuel Berg
     [not found]     ` <<barmar-B5D67F.16201001092015@88-209-239-213.giganet.hu>
2015-09-01 20:42       ` To `boundp' or not to `boundp'? Drew Adams
2015-09-02  2:12 ` Stefan Monnier
2015-09-02 15:26   ` Alexander Shukaev
2015-09-02 16:51     ` Michael Heerdegen
     [not found]     ` <mailman.410.1441212753.19560.help-gnu-emacs@gnu.org>
2015-09-02 20:00       ` Barry Margolin
     [not found] <mailman.719.1441763081.19560.help-gnu-emacs@gnu.org>
2015-09-09 15:03 ` member returns list Barry Margolin
2015-09-09 19:44   ` Ted Zlatanov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87fv2raz4s.fsf@kuiper.lan.informatimago.com \
    --to=pjb@informatimago.com \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).