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

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

Re: member returns list


From: Pascal J. Bourguignon
Subject: Re: member returns list
Date: Mon, 07 Sep 2015 03:29:41 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

"Pascal J. Bourguignon" <pjb@informatimago.com> writes:

> 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.

Also, an important part was that C is such a bad language, that the only
reason to implement it, is not to write new programs, but to run old
programs like the unix system, so there's an insentive to make compilers
that implement the same language over and over.

On the other hand, the reason to use lisp was to invent new kinds of
programs that have never been done so far, so there were less a reason
why to keep the same language.



Nowadays the situation is a little different. While it's still possible
to invent new kinds of programs (and programming paradygms), with Common
Lisp, people also want to be able to use libraries and reuse old
code.  Hence the standardization.

-- 
__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


reply via email to

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