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 01:47:47 +0200 Organization: Informatimago Message-ID: <87fv2raz4s.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> 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 1441583428 18828 80.91.229.3 (6 Sep 2015 23:50:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 6 Sep 2015 23:50:28 +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 01:50:20 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 1ZYjhQ-0000YW-3N for geh-help-gnu-emacs@m.gmane.org; Mon, 07 Sep 2015 01:50:16 +0200 Original-Received: from localhost ([::1]:51397 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZYjhQ-0005A0-DN for geh-help-gnu-emacs@m.gmane.org; Sun, 06 Sep 2015 19:50:16 -0400 Original-Path: usenet.stanford.edu!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 78 Original-X-Trace: individual.net Bdbr1/BQOybNsYgHtBSPXw6q2W6MncQGiHJzAahdFBYtSIJ6lO Cancel-Lock: sha1:MTIxZTVjY2QzMzI2OWZlOTE4NWY5YmVkM2ZiZWY5ZTJhZWUyNzYyOQ== sha1:eTagABSlsg+DwYZbvfbMtJCk2lI= 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:214777 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:107061 Archived-At: 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. >> 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