From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Pascal J. Bourguignon" Newsgroups: gmane.emacs.help Subject: Re: member returns list Date: Mon, 07 Sep 2015 03:29:41 +0200 Organization: Informatimago Message-ID: <87bndfauey.fsf@kuiper.lan.informatimago.com> References: <55E5C99B.3020608@yandex.ru> <87lhcpu2wb.fsf_-_@debian.uxu> <874mjchisl.fsf@web.de> <87pp20jxy7.fsf@debian.uxu> <87twrcxyfk.fsf@mbork.pl> <87y4gnt2r5.fsf@debian.uxu> <87twran0dw.fsf@mbork.pl> <87d1xwbwh9.fsf@debian.uxu> <87oahgbfmp.fsf@kuiper.lan.informatimago.com> <87k2s3b5xw.fsf@kuiper.lan.informatimago.com> <87fv2raz4s.fsf@kuiper.lan.informatimago.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1441589427 1790 80.91.229.3 (7 Sep 2015 01:30:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 7 Sep 2015 01:30:27 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Mon Sep 07 03:30:19 2015 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZYlGE-0000DG-9x for geh-help-gnu-emacs@m.gmane.org; Mon, 07 Sep 2015 03:30:18 +0200 Original-Received: from localhost ([::1]:51861 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZYlGE-000078-B3 for geh-help-gnu-emacs@m.gmane.org; Sun, 06 Sep 2015 21:30:18 -0400 Original-Path: usenet.stanford.edu!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 73 Original-X-Trace: individual.net DSxbo+19dU/5h0CHsQFTUAPDDVSalKYTS1mhwoV12/yRlJ1TOj Cancel-Lock: sha1:NmQ3ZjQ5MDgyNzUxYzc3MmU3M2JiZGRmYzAzZjFkMjExZmQwNzA3MA== sha1:6JXgyZ2ajn4EQjurjfFj6+6ob0k= Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAQMAAABtzGvEAAAABlBMVEUAAAD///+l2Z/dAAAA oElEQVR4nK3OsRHCMAwF0O8YQufUNIQRGIAja9CxSA55AxZgFO4coMgYrEDDQZWPIlNAjwq9 033pbOBPtbXuB6PKNBn5gZkhGa86Z4x2wE67O+06WxGD/HCOGR0deY3f9Ijwwt7rNGNf6Oac l/GuZTF1wFGKiYYHKSFAkjIo1b6sCYS1sVmFhhhahKQssRjRT90ITWUk6vvK3RsPGs+M1RuR mV+hO/VvFAAAAABJRU5ErkJggg== X-Accept-Language: fr, es, en User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) Original-Xref: usenet.stanford.edu gnu.emacs.help:214778 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:107062 Archived-At: "Pascal J. Bourguignon" writes: > Emanuel Berg writes: > >> "Pascal J. Bourguignon" >> 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