From amoroso@mclink.it Fri Oct 2 12:58:51 1998 Received: from mail1.mclink.it (net128-007.mclink.it [195.110.128.7]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id MAA04026 for ; Fri, 2 Oct 1998 12:58:49 -0700 (PDT) Received: from net145-051.mclink.it (net145-051.mclink.it [195.110.145.51]) by mail1.mclink.it (8.9.1/8.9.0) with SMTP id WAA13348 for ; Fri, 2 Oct 1998 22:10:26 +0200 (CEST) From: amoroso@mclink.it (Paolo Amoroso) To: clisp-list@clisp.cons.org Subject: Integrating CLISP and Tk Date: Fri, 02 Oct 1998 21:10:28 GMT Organization: Paolo Amoroso - Milan, ITALY Message-ID: <3614edf5.1707781@mail.mclink.it> X-Mailer: Forte Agent 1.5/32.451 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Is there any plan to integrate--maybe in a distant future--CLISP, Tk and CLOS as was done for STk (http://kaolin.unice.fr/STk/) with Scheme, Tk and STklos? Paolo -- Paolo Amoroso From yoda@isr.isr.ist.utl.pt Fri Oct 2 15:25:24 1998 Received: from isr.isr.ist.utl.pt (isr.isr.ist.utl.pt [193.136.138.1]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id PAA05486 for ; Fri, 2 Oct 1998 15:25:21 -0700 (PDT) Received: from magalhaes.isr.ist.utl.pt (magalhaes [193.136.138.9]) by isr.isr.ist.utl.pt (8.8.8/8.8.8) with SMTP id XAA31303 for ; Fri, 2 Oct 1998 23:39:48 +0100 (GMT+0100) Received: by magalhaes.isr.ist.utl.pt (5.65v3.2/1.1.10.5/12Dec97-1230PM) id AA09390; Fri, 2 Oct 1998 22:38:50 GMT Date: Fri, 2 Oct 1998 22:38:50 GMT Message-Id: <9810022238.AA09390@magalhaes.isr.ist.utl.pt> From: Rodrigo Ventura To: clisp-list@clisp.cons.org In-Reply-To: amoroso@mclink.it's message of Fri, 2 Oct 1998 13:01:24 -0700 (PDT) Subject: Re: Integrating CLISP and Tk References: <3614edf5.1707781@mail.mclink.it> Mime-Version: 1.0 (generated by tm-edit 7.95) Content-Type: text/plain; charset=US-ASCII >>>>> "Paolo" == Paolo Amoroso writes: Paolo> Is there any plan to integrate--maybe in a distant future--CLISP, Tk and Paolo> CLOS as was done for STk (http://kaolin.unice.fr/STk/) with Scheme, Tk and Paolo> STklos? I've been using with-wish package with great results. Although it is an *extremely* simple interface (stream-based with an interactive "wish"), it works really smooth. I've been working with it to illustrate and interact with my AI programs in LISP. It also works fine with CMUCL for instance -- no code modifications required. Of course it may be difficult to use such a simple device to more complex interfaces, or intefaces with a heavy interaction (unless you do it in tcltk). I've also tried a tk interface for gcl, but it seemed less flexible -- for instance it didn't supported certain features of tcltk8.0. With with-wish, newfeatures are trivialy supported. Another advantage is that you can still use specTcl to visually design the GUI, and then make some tcltk code to glue it to CLISP. Regards, -- -- *** Rodrigo Martins de Matos Ventura, alias *** yoda@isr.ist.utl.pt, http://www.isr.ist.utl.pt/~yoda *** Instituto de Sistemas e Robotica, Polo de Lisboa *** Instituto Superior Tecnico, Lisboa, Portugal *** PGP Public Key available on my homepage *** Key fingerprint = 0C 0A 25 58 46 CF 14 99 CF 9C AF 9E 10 02 BB 2A From baum@mbox.cri.uni-hannover.de Tue Oct 6 05:10:46 1998 Received: from mgate2-sn7.rrzn.uni-hannover.de (mgate2-sn7.rrzn.uni-hannover.de [130.75.7.13]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id FAA21280 for ; Tue, 6 Oct 1998 05:10:25 -0700 (PDT) Received: from mbox.cri.uni-hannover.de (actually cri30.cri.uni-hannover.de) by mgate2-sn7.rrzn.uni-hannover.de with LocalSMTP (PP) with ESMTP; Tue, 6 Oct 1998 14:21:18 +0200 Message-ID: <361A0B48.2DF6B99D@mbox.cri.uni-hannover.de> Date: Tue, 06 Oct 1998 14:21:28 +0200 From: Peter Baum Organization: Curt-Risch-Institut X-Mailer: Mozilla 4.05 [de]C-NECCK (Win95; I) MIME-Version: 1.0 To: clisp-list@clisp.cons.org Subject: clisp and tk with Win95 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi, I have searched the mailing-list-archive but found only a discussion how it _could_ work. Has anybody connected clisp with tk under Win95? With-wish doesn't work. It looks like Wish8.0.3 doesn't read from stdin in Win95. Peter From manaris@usl.edu Fri Oct 9 14:52:31 1998 Received: from bp.ucs.usl.edu (root@bp.ucs.usl.edu [130.70.40.36]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id OAA06788 for ; Fri, 9 Oct 1998 14:52:27 -0700 (PDT) Received: from zeus (zeus.cacs.usl.edu [130.70.72.180]) by bp.ucs.usl.edu (8.9.1/8.9.1/ucs-server_1.2) with SMTP id RAA17579; Fri, 9 Oct 1998 17:04:59 -0500 (CDT) Message-Id: <199810092204.RAA17579@bp.ucs.usl.edu> X-Sender: bzm3402@pop.usl.edu X-Mailer: QUALCOMM Windows Eudora Pro Version 4.0 Date: Fri, 09 Oct 1998 17:04:20 -0500 To: clisp-list@clisp.cons.org From: Bill Manaris Subject: Windows95/NT Cc: manaris@usl.edu In-Reply-To: <199806231559.RAA04859@halles.ilog.fr> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Greetings, Has anyone converted CLISP to a dynamic link library (DLL)? If not, does anyone foresee any problems with doing so? Background: We are converting the LISP prototype of a system to Visual C/C++. So, instead of re-writing functions like append, remove-if, etc. from scratch in C++, it would be great if we could DLLImport them. Any suggestions or pointers would be very welcome. Best regards, Bill Manaris -- Bill Manaris, Ph.D. Computer Science Department University of Southwestern Louisiana 2 Rex Street, CC400, P.O. Box 41771 Lafayette, LA 70504-1771, USA Office: (318)482-6306 Fax: (318)482-2247 http://www.usl.edu/~manaris From wlestes@wlestes.uncg.edu Sat Oct 10 06:51:23 1998 Received: from wlestes.uncg.edu (wlestes.uncg.edu [152.13.173.71]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA17844 for ; Sat, 10 Oct 1998 06:51:22 -0700 (PDT) From: wlestes@wlestes.uncg.edu Received: (from wlestes@localhost) by wlestes.uncg.edu (8.8.7/8.8.7) id KAA00297; Sat, 10 Oct 1998 10:04:07 -0400 Date: Sat, 10 Oct 1998 10:04:07 -0400 Message-Id: <199810101404.KAA00297@wlestes.uncg.edu> To: clisp-list@clisp.cons.org CC: clisp-list@clisp.cons.org In-reply-to: <199810092204.RAA17579@bp.ucs.usl.edu> (message from Bill Manaris on Fri, 9 Oct 1998 14:56:49 -0700 (PDT)) Subject: Re: Windows95/NT References: <199810092204.RAA17579@bp.ucs.usl.edu> > Has anyone converted CLISP to a dynamic link library (DLL)? > If not, does anyone foresee any problems with doing so? I know of clicc which supports a subset of common lisp. (I found the links to clicc from the comp.lang.lisp faq.) I think that clicc does something similar to what you want. From manaris@usl.edu Sun Oct 11 15:46:25 1998 Received: from bp.ucs.usl.edu (root@bp.ucs.usl.edu [130.70.40.36]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id PAA02258 for ; Sun, 11 Oct 1998 15:45:52 -0700 (PDT) Received: from zeus (zeus.cacs.usl.edu [130.70.72.180]) by bp.ucs.usl.edu (8.9.1/8.9.1/ucs-server_1.2) with SMTP id RAA16363 for ; Sun, 11 Oct 1998 17:58:09 -0500 (CDT) Message-Id: <199810112258.RAA16363@bp.ucs.usl.edu> X-Sender: bzm3402@pop.usl.edu X-Mailer: QUALCOMM Windows Eudora Pro Version 4.0 Date: Sun, 11 Oct 1998 17:58:08 -0500 To: clisp-list@clisp.cons.org From: Bill Manaris Subject: Re: Windows95/NT In-Reply-To: <199810101404.KAA00297@wlestes.uncg.edu> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" I had looked at clicc earlier. If I remember correctly, it does not handle 'eval' which is one of the functions we need. Thanks for the suggestion though. At 06:52 AM 10/10/98 -0700, wlestes@wlestes.uncg.edu wrote: >> Has anyone converted CLISP to a dynamic link library (DLL)? >> If not, does anyone foresee any problems with doing so? > >I know of clicc which supports a subset of common lisp. (I found the >links to clicc from the comp.lang.lisp faq.) I think that clicc does >something similar to what you want. > From haible@ilog.fr Mon Oct 12 13:00:48 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id MAA14674 for ; Mon, 12 Oct 1998 12:59:58 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id WAA26460 for ; Mon, 12 Oct 1998 22:11:32 +0200 (MET DST) Received: from halles.ilog.fr (halles.ilog.fr [172.16.1.96]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id WAA17547; Mon, 12 Oct 1998 22:10:51 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by halles.ilog.fr (8.8.5/8.8.5) id WAA04428; Mon, 12 Oct 1998 22:10:51 +0200 (MET DST) Date: Mon, 12 Oct 1998 22:10:51 +0200 (MET DST) Message-Id: <199810122010.WAA04428@halles.ilog.fr> To: clisp-list@clisp.cons.org Subject: Re: Windows95/NT In-Reply-To: <199810092204.RAA17579@bp.ucs.usl.edu> References: <199810092204.RAA17579@bp.ucs.usl.edu> Bill Manaris writes: > Has anyone converted CLISP to a dynamic link library (DLL)? > If not, does anyone foresee any problems with doing so? Yes. Converting anything to a Windows DLL is not immediate. First, you have to define C macros which expand to `dllexported' or `dllimported' depending on context, and then you have to add these macros to most of your C header file declarations. When you've done this, and it links, then you can start debugging for real... > Background: We are converting the LISP prototype of a system > to Visual C/C++. So, instead of re-writing functions like > append, remove-if, etc. from scratch in C++, it would be great > if we could DLLImport them. I doubt that this approach would work. The memory representations of clisp and of C/C++ are pretty different. In particular, clisp would not be able to determine the run-time type of C/C++ objects. > Any suggestions or pointers would be very welcome. Try writing a C++ class for lists, another for extensible vectors, another for reference counted strings, and so on. Thousands of C++ programmers have already done this. There are no good predefined data types, like in Common Lisp. That's C++. Bruno ! To unsubscribe from the clisp-list mailing list, send mail to ! ! listproc@clisp.cons.org ! ! including the two words "unsubscribe clisp-list" as message body. ! From manaris@usl.edu Mon Oct 12 14:15:39 1998 Received: from bp.ucs.usl.edu (root@bp.ucs.usl.edu [130.70.40.36]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id OAA15748 for ; Mon, 12 Oct 1998 14:15:23 -0700 (PDT) Received: from zeus (zeus.cacs.usl.edu [130.70.72.180]) by bp.ucs.usl.edu (8.9.1/8.9.1/ucs-server_1.2) with SMTP id QAA08581 for ; Mon, 12 Oct 1998 16:28:08 -0500 (CDT) Message-Id: <199810122128.QAA08581@bp.ucs.usl.edu> X-Sender: bzm3402@pop.usl.edu X-Mailer: QUALCOMM Windows Eudora Pro Version 4.0 Date: Mon, 12 Oct 1998 16:28:06 -0500 To: clisp-list@clisp.cons.org From: Bill Manaris Subject: Re: Windows95/NT In-Reply-To: <199810122010.WAA04428@halles.ilog.fr> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Bruno, At 01:02 PM 10/12/98 -0700, you wrote: >Bill Manaris writes: >> Background: We are converting the LISP prototype of a system >> to Visual C/C++. So, instead of re-writing functions like >> append, remove-if, etc. from scratch in C++, it would be great >> if we could DLLImport them. > >I doubt that this approach would work. The memory representations of >clisp and of C/C++ are pretty different. In particular, clisp would not >be able to determine the run-time type of C/C++ objects. I was hoping to let CLISP do it for me. That is, use the reader to get a pointer to an internal representation of some s-expression. Then pass this pointer to other DLLimported CLISP functions (append, cons, eval, etc.) . Finally use the printer (or a modified version of it) to convert the result to an external (C-string) representation. Thus, CLISP does what it does best! I am not sure if garbage collection might be a problem. Cheers, Bill From haible@ilog.fr Mon Oct 12 23:07:40 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id XAA21190 for ; Mon, 12 Oct 1998 23:07:29 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id IAA09196 for ; Tue, 13 Oct 1998 08:20:00 +0200 (MET DST) Received: from halles.ilog.fr (halles.ilog.fr [172.16.1.96]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id IAA00506; Tue, 13 Oct 1998 08:19:37 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by halles.ilog.fr (8.8.5/8.8.5) id AAA06993; Tue, 13 Oct 1998 00:18:10 +0200 (MET DST) Date: Tue, 13 Oct 1998 00:18:10 +0200 (MET DST) Message-Id: <199810122218.AAA06993@halles.ilog.fr> To: clisp-list@clisp.cons.org Subject: Re: Windows95/NT In-Reply-To: <199810122128.QAA08581@bp.ucs.usl.edu> References: <199810122128.QAA08581@bp.ucs.usl.edu> Bill Manaris writes: > I was hoping to let CLISP do it for me. That is, use the reader > to get a pointer to an internal representation of some s-expression. > Then pass this pointer to other DLLimported CLISP functions > (append, cons, eval, etc.) . Finally use the printer (or a modified > version of it) to convert the result to an external (C-string) > representation. Ah, I see. If you mean to _convert_ between one of your C++ objects and a CLISP object, for example a CLISP string, then yes, you can do that. You could represent the C++ object at address 0x403abe0 by the Lisp string "0403ABE0", then manipulate lists of strings and finally convert a Lisp result back. That would work. - Or, alternatively, use the FFI. The limitations of both approaches would be the same: Within Lisp, you only got "handles" to your C++ objects. Bruno From yoda@isr.isr.ist.utl.pt Tue Oct 13 06:31:02 1998 Received: from isr.isr.ist.utl.pt (isr.isr.ist.utl.pt [193.136.138.1]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA25255 for ; Tue, 13 Oct 1998 06:30:58 -0700 (PDT) Received: from magalhaes.isr.ist.utl.pt (magalhaes [193.136.138.9]) by isr.isr.ist.utl.pt (8.8.8/8.8.8) with SMTP id OAA09190 for ; Tue, 13 Oct 1998 14:46:34 +0100 (GMT+0100) Received: by magalhaes.isr.ist.utl.pt (5.65v3.2/1.1.10.5/12Dec97-1230PM) id AA14070; Tue, 13 Oct 1998 13:45:35 GMT Date: Tue, 13 Oct 1998 13:45:35 GMT Message-Id: <9810131345.AA14070@magalhaes.isr.ist.utl.pt> From: Rodrigo Ventura To: clisp-list@clisp.cons.org In-Reply-To: Bruno Haible's message of Mon, 12 Oct 1998 23:10:09 -0700 (PDT) Subject: CLISP's FFI [Was: Re: Windows95/NT] References: <199810122218.AAA06993@halles.ilog.fr> Mime-Version: 1.0 (generated by tm-edit 7.95) Content-Type: text/plain; charset=US-ASCII >>>>> "Bruno" == Bruno Haible writes: Bruno> result back. That would work. - Or, alternatively, use the FFI. BTW, is CLISP's FFI working? If yes, where can I find the documentation to work with it? Does CLISP already support dynamic linking of shared objects? I found a chapter on some sort of FFI on a terribly old CLISP manual, but I _hope_ it is outdated (it required recompiling CLISP, I guess, in a disappointing hack-sounding fashion). Regards, -- -- *** Rodrigo Martins de Matos Ventura, alias *** yoda@isr.ist.utl.pt, http://www.isr.ist.utl.pt/~yoda *** Instituto de Sistemas e Robotica, Polo de Lisboa *** Instituto Superior Tecnico, Lisboa, Portugal *** PGP Public Key available on my homepage *** Key fingerprint = 0C 0A 25 58 46 CF 14 99 CF 9C AF 9E 10 02 BB 2A From haible@ilog.fr Fri Oct 16 13:02:18 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id NAA08324 for ; Fri, 16 Oct 1998 13:02:15 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id WAA06826 for ; Fri, 16 Oct 1998 22:15:30 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id WAA22569; Fri, 16 Oct 1998 22:15:30 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id WAA00795; Fri, 16 Oct 1998 22:15:30 +0200 (MET DST) Date: Fri, 16 Oct 1998 22:15:30 +0200 (MET DST) Message-Id: <199810162015.WAA00795@jaures.ilog.fr> To: clisp-list@clisp.cons.org Subject: Announcement : lisp debug 0.8 released [Message forwarded from Marc Mertens .] Hello, I'm not sure if this the correct place to do an announcement , if not please forgive me. This is to announce version 0.8 of the source level LISP debugger lisp debug. The latest version supports CLISP so this could be of intrest for readers of this list. You can find the lisp debugger at sunsite (use on of the following URL's). http://sunsite.unc.edu/pub/Linux/Incoming/lispdebug-0.8.lsm http://sunsite.unc.edu/pub/Linux/devel/lang/lisp/lispdebug-0.8.lsm Happy lisping. Marc Mertens mmertens@akam.be PS. If there is a place to download software to work together with CLISP please tell me. What is LISP DEBUG. =================== LISP DEBUG is a lisp source debugger , designed to work with GCL (GNU COMMON LISP), CMUCL (CMU COMMON LISP),ACL5 (Allegro Common Lisp V5) and CLISP. LISP DEBUG is released using the GNU licence so you are free to use it. LISP DEBUG has the following functionality : - Graphical interface. - Breakpoints (conditional or not) can be set using point and click in the source. - Watchpoints on variables and expressions can be set using point and click. - Evaluation of expressions during debugging is possible - Debug controls are : - Step , execute the next expression - Step Next , execute the next expression at the same level as the previous expression. - Next , indicate what the next expression is to stop and start executing untill this expressions is reached. - Continue, continue execution untill finish or the next - Profiling of code is possible. - Highlighting of executing code. - Support for debugging multiple source code. - Debug granullity is the lispform level , so much finer then linelevel debugging. - Timetraveling , you can look at the lexical context of already executed steps (compare this with frames). - You can extend the debugger using a special language that is simular to the form definitions in CLTL2. This allows you to add support for your own controlstructures added to lisp. - Designed to be portable to other lisp's or OS's LISP DEBUG is developped and tested with the following code : - GCL-2.2.2. - CMUCL 18b. - CLISP (version 19980715) - ACL version 5 - TCL 8.0 and Tk 8.0 or higher. - I'm only able to test LISP DEBUG on my 'linux' system but installing it on other systems should be easy provided that : - The lisp is CLTL2 compliant - The lisp can use sockets. - TCL/TK libraries are available. - More porting information is available in the manual. From haible@ilog.fr Fri Oct 16 13:57:07 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id NAA09222 for ; Fri, 16 Oct 1998 13:57:06 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id XAA08398 for ; Fri, 16 Oct 1998 23:10:27 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id XAA23625; Fri, 16 Oct 1998 23:10:27 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id XAA00824; Fri, 16 Oct 1998 23:10:27 +0200 (MET DST) Date: Fri, 16 Oct 1998 23:10:27 +0200 (MET DST) Message-Id: <199810162110.XAA00824@jaures.ilog.fr> To: clisp-list@clisp.cons.org Subject: Announcement: inspect for clisp Vassili Bykov has written an INSPECT command for Common Lisp. It works nicely in CLISP and can be downloaded from ftp://ftp2.cons.org/pub/lisp/clisp/contrib/inspect1.lsp.gz Another INSPECT implementation is in ftp://ftp2.cons.org/pub/lisp/clisp/contrib/inspect2.lsp.gz inspect1 runs in any tty or xterm, whereas inspect2 uses your web browser as a display engine. Both are under GPL license. They are not yet integrated into CLISP - sorry. Bruno From haible@ilog.fr Fri Oct 16 14:01:49 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id OAA09445 for ; Fri, 16 Oct 1998 14:01:47 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id XAA08451 for ; Fri, 16 Oct 1998 23:15:13 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id XAA23730; Fri, 16 Oct 1998 23:15:13 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id XAA00829; Fri, 16 Oct 1998 23:15:13 +0200 (MET DST) Date: Fri, 16 Oct 1998 23:15:13 +0200 (MET DST) Message-Id: <199810162115.XAA00829@jaures.ilog.fr> To: clisp-list@clisp.cons.org Subject: Announcement: New version of CLISP Hi, It's already on the FTP server for a couple of days; maybe you already got it. CLISP version 1998-09-09. Source: ftp://ftp2.cons.org/pub/lisp/clisp/source/clispsrc.tar.gz ftp://ftp.hrz.tu-darmstadt.de/pub/programming/languages/lisp/clisp/source/clispsrc.tar.gz Binaries for i386-linux: ftp://ftp2.cons.org/pub/lisp/clisp/binaries/i386-linux-libc5/clisp.tar.gz ftp://ftp2.cons.org/pub/lisp/clisp/binaries/i386-linux-libc6/clisp.tar.gz This release is a collective effort of Pierpaolo Bernardi Sam Steingold Bruno Haible Gilbert Baumann Jörg Höhle Here is the list of modifications. As you can see, it is now a *lot* closer to ANSI CL than previous releases, and the move towards ANSI CL continues. 9 September 1998 ================ Important note -------------- * Changed bytecode format. All .fas files generated by previous CLISP versions are invalid and must be recompiled. User visible changes -------------------- * The 16 MB memory size limit on 32-bit machines is gone. No need for wide-mode binaries any more. The "makemake" option --with-wide is not supported any more. The command-line option -W is supported for backward compatibility, but will be removed in the future. * New variables *WARN-ON-FLOATING-POINT-CONTAGION* and *FLOATING-POINT-CONTAGION-ANSI*. * New function PROBE-DIRECTORY which tests for the existence of a directory. Suggested by many people. * New FORMAT directives ~/ (ANSI standard) and ~! (a better alternative). * ANSI CL variable *PRINT-RIGHT-MARGIN* is implemented. * The functions WRITE and WRITE-TO-STRING take the :RIGHT-MARGIN key argument. * X3J13 writeup is implemented: New type BOOLEAN. Suggested by Sam Steingold. * X3J13 writeup is implemented: Errors during function calls (too few arguments, too many arguments, invalid keyword arguments, odd number of keyword arguments, unrecognized keyword arguments) are now of type PROGRAM-ERROR. * X3J13 writeup is implemented: New function ENSURE-DIRECTORIES-EXIST. Suggested by Pierpaolo Bernardi. * X3J13 writeup is implemented: The macro DEFINE-SYMBOL-MACRO is now exported from package COMMON-LISP. Suggested by Pierpaolo Bernardi. * X3J13 writeup is implemented: New function ARRAY-DISPLACEMENT. * X3J13 writeup is implemented: Class objects can now be used as parameter specializer names (not only symbols and lists of the form (EQL object)). * X3J13 writeup is implemented: When :OUTPUT-FILE is given to COMPILE-FILE or COMPILE-FILE-PATHNAME, missing pathname components are merged in from the input file pathname. * X3J13 writeup is implemented: COMPILE-FILE-PATHNAME accepts any keyword arguments. * X3J13 writeup is implemented: COMPUTE-APPLICABLE-METHODS is now a generic function. * X3J13 writeup is implemented: Predefined condition types have their own private slot names. * X3J13 vote <57> = writeup is implemented: Different slots in a structure cannot have names whose SYMBOL-NAME are equal. * X3J13 writeup is implemented: New type specifier (CONS car-type cdr-type). * X3J13 writeup is implemented: The implicit BLOCK generated by DEFMACRO and DEFTYPE encloses only the body forms, not the forms occurring in the lambda list. * X3J13 writeup is implemented: New function COPY-STRUCTURE. * X3J13 writeup is implemented: New classes GENERIC-FUNCTION, STRUCTURE-OBJECT, CLASS, METHOD. Removed the type STRUCTURE. * X3J13 writeup is implemented: Don't export EVALHOOK, APPLYHOOK, *EVALHOOK*, *APPLYHOOK* from package COMMON-LISP any more. * X3J13 writeup is implemented: NOTINLINE declarations of macros having special compiler treatment are now respected. * X3J13 writeups and are implemented: DEFSTRUCT accepts an option :PRINT-OBJECT, similar to :PRINT-FUNCTION, and each of these options causes a method on PRINT-OBJECT to be installed. * X3J13 writeup is implemented: New function SPECIAL-OPERATOR-P. The function SPECIAL-FORM-P still exists, but its use generates a compiler warning. * X3J13 writeup is implemented: New condition types FLOATING-POINT-INEXACT, FLOATING-POINT-INVALID-OPERATION. * Fixed a bug: Reading objects in #n# syntax into typed structure slots gave an error if the structure's constructor was not compiled. Reported by Sam Steingold . * BUTLAST and NBUTLAST are now ANSI CL compliant: They signal an error if the argument is a dotted list of length 0. (Stupid.) * The macro WITH-OUTPUT-TO-STRING is now ANSI compliant. * Added FFI support for NetBSD/m68k. Thanks to Jörn Clausen . * Use of the deprecated functions GENTEMP and SET now generates a compiler warning. * Stricter syntax checking for DO and DO*. * When CLOS:CALL-NEXT-METHOD is called with arguments, it is now checked that the set of applicable methods is the same as for the original arguments, in interpreted code only. * The CLX documentation now also exists in HTML format. Thanks to Gilbert Baumann . * The normal read-eval-print loop doesn't call (CLEAR-INPUT *STANDARD-INPUT*) any more. This means that under X11, cut and paste of multiple lines into an xterm running clisp now works. Suggested by Sam Steingold. * When opening socket servers, ignore EADDRINUSE errors coming from other sockets, in TIME_WAIT or CLOSE_WAIT state, hanging around on the port. Suggested by Don Cohen. * Fixed a bug: When *PRINT-PRETTY* = T, (PRINC #\Newline) often caused two newline characters to be output instead of a single one. * Fixed a bug: The sequence type functions refused to handle sequence types of the form ([SIMPLE-]ARRAY eltype 1). SUBTYPEP returned wrong results for type specifiers of the form ([SIMPLE-]ARRAY eltype n). * Fixed a bug: GET-MACRO-CHARACTER on a dispatch macro character doesn't result in an error any more. * Fixed a bug in ECASE, ETYPECASE, CCASE, CTYPECASE. These macros now accept T and OTHERWISE as keys. * Fixed a bug: OPEN did not accept type specifiers defined by DEFTYPE as :ELEMENT-TYPE argument. * Fixed a bug in the LOOP macro: Forms containing REPEAT clauses were executed too often in the presence of FOR-= clauses. * Fixed a bug: The SPACE macro returned a list of the form's values, instead of the values themselves. * Fixed a bug, implement X3J13 writeup : When *PRINT-READABLY* = T, (PRINC string) caused the string to be output in double-quotes instead of literally. * X3J13 writeup is implemented: A "variable is used despite of IGNORE declaration" warning is not emitted any more for a variable that is only assigned to and not used for value. Suggested by Pierpaolo Bernardi. * Fixed a bug in function FILE-AUTHOR on Win32. * Fixed a bug: CLISP was unable to determine the user's homedir in certain (obscure) circumstances. * Don't warn anymore if someone modifies one of the standard generic functions of CL like PRINT-OBJECT and INITIALIZE-INSTANCE. Portability ----------- * Added AmigaOS support for the socket functions. It's not perfect, but sufficient for writing socket clients. Thanks to Jörg Höhle. * Added support for PowerPC running MkLinux. Other modifications ------------------- * `clisp-link' has a new command `run', to run a linking set with some modules loaded. If CLISP has been configured with option --with-dynamic-modules, this is much faster than constructing a temporary linking set. Suggested by Gilbert Baumann . * Compiling IFs with no else part now produce better code (Jörg Höhle). * Speed up I/O to *STANDARD-INPUT*, *STANDARD-OUTPUT* and *TERMINAL-IO*: If standard input is redirected from a file, the input side of *TERMINAL-IO* will be buffered. If standard output is redirected to a file, the output side of *TERMINAL-IO* will be buffered. * Dropped the STDWIN library. * Added bindings to libc for Linux with libc6 (aka glibc 2.0). * Miscellaneous documentation updates. From pg@yahoo-inc.com Fri Oct 16 15:47:31 1998 Received: from atresia.yahoo.com (atresia.yahoo.com [205.216.162.53]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id PAA10562 for ; Fri, 16 Oct 1998 15:47:31 -0700 (PDT) Received: (from pg@localhost) by atresia.yahoo.com (8.8.8/8.6.12) id QAA07747 for clisp-list@clisp.cons.org; Fri, 16 Oct 1998 16:00:04 -0700 (PDT) Date: Fri, 16 Oct 1998 16:00:04 -0700 (PDT) From: Paul Graham Message-Id: <199810162300.QAA07747@atresia.yahoo.com> To: clisp-list@clisp.cons.org Subject: thanks from Yahoo! Store I just sent Bruno some email thanking him and his collaborators for their work on Clisp, and mentioning that we had used it to implement Yahoo! Store (http://store.yahoo.com). Bruno suggested I send mail to clisp-list about this use of Clisp. Yahoo! Store is one of the most complex server-based apps so far, and we have found Lisp to be the perfect language for writing this type of program. Y! Store is also a good example of a successful mainstream Lisp application. It is by far the most popular offering in the extremely competitive e-commerce field. We currently have over 2300 live users, about twice as many as the #2 product. We've used Clisp since the beginning, and have found it to be a great CL implementation. --pg From haible@ilog.fr Fri Oct 16 16:34:45 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id QAA11327 for ; Fri, 16 Oct 1998 16:34:43 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id BAA12607 for ; Sat, 17 Oct 1998 01:48:13 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id BAA26725; Sat, 17 Oct 1998 01:48:12 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id BAA00876; Sat, 17 Oct 1998 01:48:11 +0200 (MET DST) Date: Sat, 17 Oct 1998 01:48:11 +0200 (MET DST) Message-Id: <199810162348.BAA00876@jaures.ilog.fr> To: clisp-list@clisp.cons.org Subject: kinds of clisp applications What is CLISP being used for? I'd be interested to hear from as many of you as possible, what you are doing in CLISP. For example, - Erann Gat and his team uses/used it as 2nd choice for the NASA Millenium Space Flight. (The first choice being Harlequin CL.) - Paul Graham uses it for programming an uncommon kind of web server. - I recently used it for prototyping a graph layout algorithm. The Lisp prototype took a week, the C++ implementation then took a month. - I also use it for extracting the german/french messages from the CLISP source and putting them into a translation database. How about you? Please reply to clisp-list@clisp.cons.org. Bruno From joswig@lavielle.com Fri Oct 16 17:44:14 1998 Received: from vampire.lavielle.com (vampire.lavielle.com [194.64.21.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id RAA12032 for ; Fri, 16 Oct 1998 17:44:13 -0700 (PDT) Received: from [194.64.21.18] ([194.163.195.67]) by vampire.lavielle.com (8.8.8/8.8.8) with ESMTP id CAA24952 for ; Sat, 17 Oct 1998 02:58:37 +0200 (MET DST) Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Sender: joswig@194.64.21.10 Message-Id: Date: Sat, 17 Oct 1998 02:58:04 +0200 To: clisp-list@clisp.cons.org From: Rainer Joswig Subject: Re: kinds of clisp applications At 16:36 Uhr -0700 16.10.1998, Bruno Haible wrote: >How about you? Please reply to clisp-list@clisp.cons.org. We were running for quite some time a telephone log accounting software with CLisp, parsing the logs of our 60 channel ISDN telephone system, sending daily summaries and creating monthly cost sums for billing our customers. Currently it runs on another Lisp (this has nothing to do with the quality of CLisp, though). I think some logs of a Radius authentication server for our Ascend remote access equipment will be nightly parsed, checked and summarized by a CLisp program. Should also give a usage overview. Some other code is running on a Lisp machine. A student is currently working on a program controlling the temperature in our server room and inside some machines (fan failures!). A CLisp program will send daily temperature overviews and will report in 15 minute intervals problematic conditions. Sure some more... We are using CLisp on Solaris (SPARC and x86). Our experiences: does its work very effectively - has replaced scripting languages like SCSH - a bit weak on the environment/UI side - more complete ANSI compliance would make sharing code with other Lisps easier. Thanks to the developers and maintainers! Rainer Joswig Rainer Joswig, Lavielle EDV Systemberatung GmbH & Co, Lotharstrasse 2b, D22041 Hamburg, Tel: +49 40 658088, Fax: +49 40 65808-202, Email: joswig@lavielle.com , WWW: http://www.lavielle.com/~joswig/ From spoon@hilbert.maths.utas.edu.au Fri Oct 16 21:53:28 1998 Received: from hilbert.maths.utas.edu.au (hilbert.maths.utas.edu.au [131.217.60.3]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id VAA13812 for ; Fri, 16 Oct 1998 21:53:26 -0700 (PDT) Received: (from spoon@localhost) by hilbert.maths.utas.edu.au (8.7.6/8.7.3) id QAA19580 for clisp-list@seagull.cons.org; Sat, 17 Oct 1998 16:04:11 +1100 (EST) From: spoon Message-Id: <199810170504.QAA19580@hilbert.maths.utas.edu.au> Subject: Re: Announcement: New version of CLISP To: clisp-list@seagull.cons.org Date: Sat, 17 Oct 1998 16:04:11 +1100 (EST) In-Reply-To: <199810162115.XAA00829@jaures.ilog.fr> from "Bruno Haible" at Oct 16, 98 02:02:01 pm Content-Type: text > > > Hi, > > It's already on the FTP server for a couple of days; maybe you already > got it. CLISP version 1998-09-09. > Hi, Great to see a new release, but when i download I get clisp-1998-08-29, is this just a book-keeping error? Simon -- ***************************************************************** * Simon Wotherspoon _--_|\ * * Maths Dept, University of Tasmania / Aus \ * * Tasmania, Australia \_.--._/ * * spoon@hilbert.maths.utas.edu.au v * ***************************************************************** From reggie@aa.net Sat Oct 17 00:37:29 1998 Received: from slave2.aa.net (slave2.aa.net [204.157.220.251]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id AAA15141 for ; Sat, 17 Oct 1998 00:37:29 -0700 (PDT) Received: from aa.net (cust76.max1.seattle-k56.aa.net [205.199.141.76]) by slave2.aa.net (8.9.0.Beta3/8.8.5) with ESMTP id AAA11913 for ; Sat, 17 Oct 1998 00:51:02 -0700 X-Intended-For: Sender: reggie@aa.net Message-ID: <36284C41.5365A75A@aa.net> Date: Sat, 17 Oct 1998 00:50:25 -0700 From: "Reginald S. Perry" Organization: ImaginationWerks Consulting X-Mailer: Mozilla 4.06 [en] (X11; U; FreeBSD 3.0-CURRENT i386) MIME-Version: 1.0 To: clisp-list@seagull.cons.org Subject: Re: thanks from Yahoo! Store References: <199810162300.QAA07747@atresia.yahoo.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi Paul, Congratulations on the Yahoo! Store. Someone mentioned the deal a number of weeks ago in comp.lang.lisp. I was wondering why you chose Clisp and not something like Allegro from Franz or LispWorks from Harlequin? Thanks. -Reggie Paul Graham wrote: > > I just sent Bruno some email thanking him and his collaborators > for their work on Clisp, and mentioning that we had used it to > implement Yahoo! Store (http://store.yahoo.com). Bruno suggested > I send mail to clisp-list about this use of Clisp. > > Yahoo! Store is one of the most complex server-based apps so far, > and we have found Lisp to be the perfect language for writing this > type of program. Y! Store is also a good example of a successful > mainstream Lisp application. It is by far the most popular offering > in the extremely competitive e-commerce field. We currently have > over 2300 live users, about twice as many as the #2 product. We've > used Clisp since the beginning, and have found it to be a great CL > implementation. > > --pg From yoda@isr.isr.ist.utl.pt Sat Oct 17 04:06:24 1998 Received: from isr.isr.ist.utl.pt (isr.isr.ist.utl.pt [193.136.138.1]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id EAA19176 for ; Sat, 17 Oct 1998 04:06:21 -0700 (PDT) Received: from magalhaes.isr.ist.utl.pt (magalhaes [193.136.138.9]) by isr.isr.ist.utl.pt (8.8.8/8.8.8) with SMTP id MAA01088 for ; Sat, 17 Oct 1998 12:22:48 +0100 (GMT+0100) Received: by magalhaes.isr.ist.utl.pt (5.65v3.2/1.1.10.5/12Dec97-1230PM) id AA15581; Sat, 17 Oct 1998 11:21:48 GMT Date: Sat, 17 Oct 1998 11:21:48 GMT Message-Id: <9810171121.AA15581@magalhaes.isr.ist.utl.pt> From: Rodrigo Ventura To: clisp-list@seagull.cons.org In-Reply-To: Bruno Haible's message of Fri, 16 Oct 1998 16:36:17 -0700 (PDT) Subject: Re: kinds of clisp applications References: <199810162348.BAA00876@jaures.ilog.fr> Mime-Version: 1.0 (generated by tm-edit 7.95) Content-Type: text/plain; charset=US-ASCII >>>>> "Bruno" == Bruno Haible writes: Bruno> How about you? Please reply to clisp-list@clisp.cons.org. Hum, what a sudden entusiasm for LISP. I don't know about you, but I just loved that message from Paul Graham, forwarded it to almost all my friends. Great! Great! Great! Since really long time ago I've been using CLISP. I started using it in a Amiga A3000. Through time I've been tried another CL implementations but anyway I always went back to CLISP. Currently I've been using CLISP for my MSc. thesis work in AI. I've been gluing LISP to neat GUI interfaces in Tcl/Tk using the naif but flexible with-wish package. This recognition of the merits of CLISP by the author of two greayt books about LISP, in an interesting applications, positivelly-reinforced my choice of CLISP, even against friend LISP programmers opinion. Afterall I was right in choosing CLISP... Best regards, -- -- *** Rodrigo Martins de Matos Ventura, alias *** yoda@isr.ist.utl.pt, http://www.isr.ist.utl.pt/~yoda *** Instituto de Sistemas e Robotica, Polo de Lisboa *** Instituto Superior Tecnico, Lisboa, Portugal *** PGP Public Key available on my homepage *** Key fingerprint = 0C 0A 25 58 46 CF 14 99 CF 9C AF 9E 10 02 BB 2A From sds@eaglets.com Sat Oct 17 09:12:42 1998 Received: from mail.eaglets.com ([208.235.77.228]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id JAA21663 for ; Sat, 17 Oct 1998 09:12:41 -0700 (PDT) Received: by mail.eaglets.com from localhost (router,SLMail V3.1); Sat, 17 Oct 1998 12:24:48 -0400 Received: by mail.eaglets.com from eho.eaglets.com [208.235.77.238] (SLmail 3.1.2948 (Release Build)); Sat, 17 Oct 1998 12:24:48 -0400 Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id MAA03804; Sat, 17 Oct 1998 12:25:49 -0400 To: clisp-list@seagull.cons.org Subject: Re: kinds of clisp applications References: <199810162348.BAA00876@jaures.ilog.fr> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: Bruno Haible's message of "Fri, 16 Oct 1998 16:36:14 -0700 (PDT)" Date: 17 Oct 1998 12:25:48 -0400 Message-ID: Lines: 20 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <199810162348.BAA00876@jaures.ilog.fr> >>>> On the subject of "kinds of clisp applications" >>>> Sent on Fri, 16 Oct 1998 16:36:14 -0700 (PDT) >>>> Honorable Bruno Haible writes: >> >> How about you? Please reply to clisp-list@clisp.cons.org. I use it as a developing platform for futures trading systems. (I do most of the actual computations using CMUCL, since it is about 8 times as fast as CLISP for my code, and even then an average task takes hours to complete). BTW, I posted an announcement of CLISP to freshmeat (http://news.freshmeat.net). -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. Never let your schooling interfere with your education. From amoroso@mclink.it Sat Oct 17 09:28:02 1998 Received: from mail1.mclink.it (net128-007.mclink.it [195.110.128.7]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id JAA21990 for ; Sat, 17 Oct 1998 09:27:59 -0700 (PDT) Received: from net145-037.mclink.it (net145-037.mclink.it [195.110.145.37]) by mail1.mclink.it (8.9.1/8.9.0) with SMTP id SAA14165 for ; Sat, 17 Oct 1998 18:41:23 +0200 (CEST) From: amoroso@mclink.it (Paolo Amoroso) To: clisp-list@seagull.cons.org Subject: Re: kinds of clisp applications Date: Sat, 17 Oct 1998 17:41:07 GMT Organization: Paolo Amoroso - Milan, ITALY Message-ID: <362cc716.663189@mail.mclink.it> References: <199810162348.BAA00876@jaures.ilog.fr> In-Reply-To: <199810162348.BAA00876@jaures.ilog.fr> X-Mailer: Forte Agent 1.5/32.451 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit On Fri, 16 Oct 1998 16:36:17 -0700 (PDT), you wrote: > What is CLISP being used for? I'd be interested to hear from as many of [...] > - Erann Gat and his team uses/used it as 2nd choice for the NASA Millenium > Space Flight. (The first choice being Harlequin CL.) Is there any publicly available info about the Lisp part of this project (i.e. I'm interested in software issues, not scientific goals or space engineering issues)? Paolo -- Paolo Amoroso From sds@eaglets.com Sat Oct 17 10:03:42 1998 Received: from mail.eaglets.com ([208.235.77.228]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id KAA22427 ; Sat, 17 Oct 1998 10:03:40 -0700 (PDT) Received: by mail.eaglets.com from localhost (router,SLMail V3.1); Sat, 17 Oct 1998 13:15:50 -0400 Received: by mail.eaglets.com from eho.eaglets.com [208.235.77.238] (SLmail 3.1.2948 (Release Build)); Sat, 17 Oct 1998 13:15:49 -0400 Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id NAA09476; Sat, 17 Oct 1998 13:16:50 -0400 To: clisp-list@seagull.cons.org Cc: Multiple recipients of list Subject: Re: kinds of clisp applications References: <362cc716.663189@mail.mclink.it> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: amoroso@mclink.it's message of "Sat, 17 Oct 1998 09:28:17 -0700 (PDT)" Date: 17 Oct 1998 13:16:48 -0400 Message-ID: Lines: 24 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <362cc716.663189@mail.mclink.it> >>>> On the subject of "Re: kinds of clisp applications" >>>> Sent on Sat, 17 Oct 1998 09:28:17 -0700 (PDT) >>>> Honorable amoroso@mclink.it (Paolo Amoroso) writes: >> On Fri, 16 Oct 1998 16:36:17 -0700 (PDT), you wrote: >> >> > What is CLISP being used for? I'd be interested to hear from as many of >> [...] >> > - Erann Gat and his team uses/used it as 2nd choice for the NASA Millenium >> > Space Flight. (The first choice being Harlequin CL.) >> >> Is there any publicly available info about the Lisp part of this project >> (i.e. I'm interested in software issues, not scientific goals or space >> engineering issues)? http://ic-www.arc.nasa.gov/ic/projects/Autonomous-Systems.html (might be relevant) -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. Do not worry about which side your bread is buttered on: you eat BOTH sides. From joswig@lavielle.com Sat Oct 17 12:37:29 1998 Received: from vampire.lavielle.com (vampire.lavielle.com [194.64.21.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id MAA23844 for ; Sat, 17 Oct 1998 12:37:15 -0700 (PDT) Received: from [194.163.195.67] ([194.163.195.67]) by vampire.lavielle.com (8.8.8/8.8.8) with ESMTP id VAA14707 for ; Sat, 17 Oct 1998 21:51:08 +0200 (MET DST) Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Sender: joswig@194.64.21.10 Message-Id: In-Reply-To: Date: Sat, 17 Oct 1998 21:50:40 +0200 To: From: Rainer Joswig Subject: Re: kinds of clisp applications At 10:03 Uhr -0700 17.10.1998, Sam Steingold wrote: >>>>> In message <362cc716.663189@mail.mclink.it> >>>>> On the subject of "Re: kinds of clisp applications" >>>>> Sent on Sat, 17 Oct 1998 09:28:17 -0700 (PDT) >>>>> Honorable amoroso@mclink.it (Paolo Amoroso) writes: > >> On Fri, 16 Oct 1998 16:36:17 -0700 (PDT), you wrote: > >> > >> > What is CLISP being used for? I'd be interested to hear from as many of > >> [...] > >> > - Erann Gat and his team uses/used it as 2nd choice for the NASA Millenium > >> > Space Flight. (The first choice being Harlequin CL.) > >> > >> Is there any publicly available info about the Lisp part of this project > >> (i.e. I'm interested in software issues, not scientific goals or space > >> engineering issues)? > >http://ic-www.arc.nasa.gov/ic/projects/Autonomous-Systems.html Click on home (http://ic.arc.nasa.gov/ic/index.html) and see (bottom of page) that Peter Norvig is now working there. Rainer Joswig, Lavielle EDV Systemberatung GmbH & Co, Lotharstrasse 2b, D22041 Hamburg, Tel: +49 40 658088, Fax: +49 40 65808-202, Email: joswig@lavielle.com , WWW: http://www.lavielle.com/~joswig/ From lambertb@uic.edu Sat Oct 17 13:05:59 1998 Received: from eeyore.cc.uic.edu (EEYORE.CC.UIC.EDU [128.248.171.51]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id NAA24316 for ; Sat, 17 Oct 1998 13:05:59 -0700 (PDT) Received: from oemcomputer (d30.focal7.interaccess.com [207.208.187.30]) by eeyore.cc.uic.edu (8.8.8/8.8.5) with SMTP id PAA16050 for ; Sat, 17 Oct 1998 15:15:00 -0500 (CDT) Message-Id: <199810172015.PAA16050@eeyore.cc.uic.edu> X-Sender: lambertb@tigger.cc.uic.edu X-Mailer: QUALCOMM Windows Eudora Pro Version 4.0 Date: Sat, 17 Oct 1998 15:19:27 -0500 To: Multiple recipients of list From: "Bruce L. Lambert" Subject: Re: kinds of clisp applications In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" I used CLISP to develop a document clustering program that extracts themes from free text data. See, e.g., ftp://ludwig.pharm.uic.edu/pub/ThemeMachine.pdf (an old tech report) ftp://ludwig.pharm.uic.edu/pub/ndcca.pdf (a research project using the Theme Machine) ftp://ludwig.pharm.uic.edu/pub/rph-units.d50.t.1.clink.out (some sample output) I also used CLISP to develop an approximate string matching and phonetic retrieval system. This system is used for finding approximate matches in large lexicons of proper names. In my case, I use the system to evaluate proposed new drug names as a means of preventing drug name confusion errors. This system is being used on a trial basis by the U. S. Food and Drug Administration and I am about to enter into a contract with the United States Adopted Names Council (USANC) to provide the same service. These two agencies combined are responsible for approving the brand and generic names of all new drugs in the United States. USANC has responsibility for international nonproprietary names as well. A paper describing aspects of this system is at ftp://ludwig.pharm.uic.edu/pub/MedErrors.pdf (Also published in the American Journal of Health-System Pharmacy, May 15, 1997). Like Sam Steingold, I began my work using CLISP and eventually moved to CMUCL. I recently 'moved up' to Allegro Common Lisp for my Tatung Ultrasparc machine, but I will always be grateful to Bruno and the other CLISP developers. CLISP is a very high quality implementation, and the developers were always prepared to offer timely and very generous assistance when questions arose. Bravo Bruno and friends! Bruce L. Lambert, PhD Department of Pharmacy Administration (M/C 871) University of Illinois at Chicago 833 S. Wood St. Chicago, IL 60612-7231 From haible@ilog.fr Sat Oct 17 14:27:45 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id OAA25151 for ; Sat, 17 Oct 1998 14:27:41 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id XAA10359 for ; Sat, 17 Oct 1998 23:41:15 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id XAA13861; Sat, 17 Oct 1998 23:41:14 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id XAA02574; Sat, 17 Oct 1998 23:41:14 +0200 (MET DST) Date: Sat, 17 Oct 1998 23:41:14 +0200 (MET DST) Message-Id: <199810172141.XAA02574@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: Announcement: New version of CLISP In-Reply-To: <199810170504.QAA19580@hilbert.maths.utas.edu.au> References: <199810170504.QAA19580@hilbert.maths.utas.edu.au> Simon Wotherspoon asks: > > got it. CLISP version 1998-09-09. > > Hi, > Great to see a new release, but when i download I get > clisp-1998-08-29, is this just a book-keeping error? You can consider them the same. The only difference between the one you got and version 1998-09-09 is a dozen of spanish translations of messages, and the date. Bruno From donc@ISI.EDU Mon Oct 19 09:05:01 1998 Received: from tnt.isi.edu (tnt.isi.edu [128.9.128.128]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id JAA15278 for ; Mon, 19 Oct 1998 09:05:00 -0700 (PDT) Received: from ISI.EDU (tnt.isi.edu [128.9.128.128]) by tnt.isi.edu (8.8.7/8.8.6) with ESMTP id JAA06238; Mon, 19 Oct 1998 09:18:51 -0700 (PDT) Message-Id: <199810191618.JAA06238@tnt.isi.edu> To: clisp-list@seagull.cons.org cc: Multiple recipients of list Subject: Re: kinds of clisp applications In-reply-to: Your message of "Fri, 16 Oct 1998 16:36:19 PDT." <199810162348.BAA00876@jaures.ilog.fr> Date: Mon, 19 Oct 1998 09:18:51 -0700 From: Don Cohen What is CLISP being used for? I'd be interested to hear from as many of you as possible, what you are doing in CLISP. AP5 is a lisp extension that serves as a higher level (than lisp) programming language - for details see http://ap5.com/ and http://www.isi.edu/software-sciences/relab/relab.html Some years ago I ported ap5 to clisp (the history of ap5 goes from about 1984 through interlisp, symbolics, lucid and franz), and I now use both clisp and Franz (Allegro) to host AP5. Currently I use ap5 mostly for work on software monitoring which is described at http://www.compsvcs.com/somos.html http://www.compsvcs.com/flea.html Also, my wife has for several years used clisp for scheduling a rather large chamber music conference. The history of that program goes back to 1977 (this time I'll go backwards in time) through IQLisp (which I still use for that same music conferece), interlisp, CMULisp. (CMULisp is not CMUCL. It was a branch from UCILisp which came from Stanford lisp 1.6, which I think came from MIT. But I digress...) From toy@rtp.ericsson.se Mon Oct 19 09:25:55 1998 Received: from gwa.ericsson.com (gwa.ericsson.com [198.215.127.2]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id JAA15756 for ; Mon, 19 Oct 1998 09:25:54 -0700 (PDT) Received: from mr3.exu.ericsson.se ([138.85.11.55]) by gwa.ericsson.com (8.8.8/8.8.8) with ESMTP id LAA11265 for ; Mon, 19 Oct 1998 11:39:10 -0500 (CDT) Received: from netmanager7.rtp.ericsson.se (netmanager7.rtp.ericsson.se [147.117.132.245]) by mr3.exu.ericsson.se (8.8.8/8.8.8) with SMTP id LAA10014 for ; Mon, 19 Oct 1998 11:39:09 -0500 (CDT) Received: from rcur (wcsdsp4 [147.117.132.216]) by netmanager7.rtp.ericsson.se (8.6.12/8.6.4) with ESMTP id MAA22033 for ; Mon, 19 Oct 1998 12:39:09 -0400 To: clisp-list@seagull.cons.org References: <199810162348.BAA00876@jaures.ilog.fr> Subject: Re: kinds of clisp applications In-reply-to: (Your message of Fri, 16 Oct 1998 16:34:52 PDT.) <199810162348.BAA00876@jaures.ilog.fr> Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Date: Mon, 19 Oct 1998 12:39:08 -0400 Message-ID: <20413.908815148@rtp.ericsson.se> From: Raymond Toy >>>>> "Bruno" == Bruno Haible writes: Bruno> What is CLISP being used for? I'd be interested to hear from as many of Bruno> you as possible, what you are doing in CLISP. For example, A while ago, I wrote a program to search for primes and generate authentication keys. The search was distributed over several machines, each one looking for one prime. When enough primes were found, the authentication keys were computed. The "multi-processing" was very crude: wait until someone returned an answer. Ray From gat@binkley.jpl.nasa.gov Mon Oct 19 10:28:50 1998 Received: from binkley.jpl.nasa.gov (binkley.jpl.nasa.gov [128.149.8.194]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id KAA16845 for ; Mon, 19 Oct 1998 10:28:50 -0700 (PDT) Received: (from gat@localhost) by binkley.jpl.nasa.gov (8.8.5/8.8.5) id KAA07752 for clisp-list@clisp.cons.org; Mon, 19 Oct 1998 10:42:33 -0700 (PDT) Date: Mon, 19 Oct 1998 10:42:33 -0700 (PDT) From: Erann Gat Message-Id: <199810191742.KAA07752@binkley.jpl.nasa.gov> To: clisp-list@clisp.cons.org Subject: Re: kinds of clisp applications X-Sun-Charset: US-ASCII > What is CLISP being used for? I'd be interested to hear from as many of > you as possible, what you are doing in CLISP. For example, > > - Erann Gat and his team uses/used it as 2nd choice for the NASA Millenium > Space Flight. (The first choice being Harlequin CL.) An overview of this project (an autonomous control system called Remote Agent) can be found in the Sept/Oct '98 issue of IEEE Intelligent Systems Magazine. We haven't published anything about software engineering issues or the use of Lisp per se. Lisp is still a political hot potato at NASA so we're trying not to make a big deal out of it. The Harlequin Lispworks implementation of the Remote Agent is being evaluated by several other NASA projects, so far with positive results. Erann Gat gat@jpl.nasa.gov From ds26@gte.com Tue Oct 20 06:26:47 1998 Received: from newman.gte.com (h132-197-8-26.gte.com [132.197.8.26]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA28154 for ; Tue, 20 Oct 1998 06:26:45 -0700 (PDT) Received: from bunny.gte.com (bunny.gte.com [132.197.8.1]) by newman.gte.com (8.9.1/8.9.1) with ESMTP id JAA11377 for ; Tue, 20 Oct 1998 09:40:12 -0400 (EDT) From: Dorai Sitaram Received: (ds26@localhost) by bunny.gte.com (8.6.9/8.6.9) id JAA29582 for clisp-list@seagull.cons.org; Tue, 20 Oct 1998 09:40:12 -0400 Message-Id: <199810201340.JAA29582@bunny.gte.com> Subject: Re: Announcement: New version of CLISP To: clisp-list@seagull.cons.org Date: Tue, 20 Oct 1998 09:40:11 -0400 (EDT) In-Reply-To: <199810172141.XAA02574@jaures.ilog.fr> from "Bruno Haible" at Oct 17, 98 02:28:06 pm X-Mailer: ELM [version 2.4 PL3] Content-Type: text What is the correct CLISP binary (i386-linux-libc5 or -libc6) to suggest for someone using Red Hat 5.1 Linux without personal modification? Thanks. --d From wlestes@wlestes.uncg.edu Tue Oct 20 06:35:44 1998 Received: from wlestes.uncg.edu (wlestes.uncg.edu [152.13.173.71]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA28405 for ; Tue, 20 Oct 1998 06:35:43 -0700 (PDT) From: wlestes@wlestes.uncg.edu Received: (from wlestes@localhost) by wlestes.uncg.edu (8.8.7/8.8.7) id JAA04434; Tue, 20 Oct 1998 09:49:33 -0400 Date: Tue, 20 Oct 1998 09:49:33 -0400 Message-Id: <199810201349.JAA04434@wlestes.uncg.edu> To: clisp-list@seagull.cons.org In-reply-to: <199810201340.JAA29582@bunny.gte.com> (message from Dorai Sitaram on Tue, 20 Oct 1998 06:28:20 -0700 (PDT)) Subject: Re: Announcement: New version of CLISP References: <199810201340.JAA29582@bunny.gte.com> > What is the correct CLISP binary (i386-linux-libc5 or > -libc6) to suggest for someone using Red Hat 5.1 Linux > without personal modification? i have an rpm which i will be uploading to redhat's contrib directory in the next couple of days. i'll announce it here--and on the redhat-announce list. --will From sds@eaglets.com Tue Oct 20 06:41:48 1998 Received: from mail.eaglets.com ([208.235.77.228]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA28650 ; Tue, 20 Oct 1998 06:41:47 -0700 (PDT) Received: by mail.eaglets.com from localhost (router,SLMail V3.1); Tue, 20 Oct 1998 09:54:35 -0400 Received: by mail.eaglets.com from eho.eaglets.com [208.235.77.238] (SLmail 3.1.2948 (Release Build)); Tue, 20 Oct 1998 09:54:34 -0400 Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id JAA32350; Tue, 20 Oct 1998 09:55:14 -0400 To: clisp-list@seagull.cons.org Cc: Multiple recipients of list Subject: Re: Announcement: New version of CLISP References: <199810201340.JAA29582@bunny.gte.com> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: Dorai Sitaram's message of "Tue, 20 Oct 1998 06:27:44 -0700 (PDT)" Date: 20 Oct 1998 09:55:14 -0400 Message-ID: Lines: 16 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <199810201340.JAA29582@bunny.gte.com> >>>> On the subject of "Re: Announcement: New version of CLISP" >>>> Sent on Tue, 20 Oct 1998 06:27:44 -0700 (PDT) >>>> Honorable Dorai Sitaram writes: >> What is the correct CLISP binary (i386-linux-libc5 or >> -libc6) to suggest for someone using Red Hat 5.1 Linux >> without personal modification? rh5.1 uses glibc2 aka libc6. -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. I'd give my right arm to be ambidextrous. From haible@ilog.fr Tue Oct 20 06:57:34 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA29029 for ; Tue, 20 Oct 1998 06:57:33 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id QAA15792 for ; Tue, 20 Oct 1998 16:11:29 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id QAA01423; Tue, 20 Oct 1998 16:11:25 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id QAA17992; Tue, 20 Oct 1998 16:11:25 +0200 (MET DST) Date: Tue, 20 Oct 1998 16:11:25 +0200 (MET DST) Message-Id: <199810201411.QAA17992@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: Announcement: New version of CLISP In-Reply-To: <199810201340.JAA29582@bunny.gte.com> References: <199810201340.JAA29582@bunny.gte.com> Dorai Sitaram asks: > What is the correct CLISP binary (i386-linux-libc5 or > -libc6) to suggest for someone using Red Hat 5.1 Linux > without personal modification? When you do "ls -l /lib/libc.so.*", I bet it will show you libc.so.6. Therefore you need the libc6 binary. Bruno From toy@rtp.ericsson.se Tue Oct 20 07:36:36 1998 Received: from gwu.ericy.com (gwu.ericy.com [208.196.3.162]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id HAA29564 for ; Tue, 20 Oct 1998 07:36:35 -0700 (PDT) Received: from mr4.exu.ericsson.se ([138.85.11.56]) by gwu.ericy.com (8.8.8/8.8.8) with ESMTP id JAA08473; Tue, 20 Oct 1998 09:51:13 -0500 (CDT) Received: from netmanager7.rtp.ericsson.se (netmanager7.rtp.ericsson.se [147.117.132.245]) by mr4.exu.ericsson.se (8.8.8/8.8.8) with SMTP id JAA20321; Tue, 20 Oct 1998 09:50:01 -0500 (CDT) Received: from rcur (wcsdsp4 [147.117.132.216]) by netmanager7.rtp.ericsson.se (8.6.12/8.6.4) with ESMTP id KAA20327; Tue, 20 Oct 1998 10:50:01 -0400 To: clisp-list@seagull.cons.org cc: Multiple recipients of list References: <199810201411.QAA17992@jaures.ilog.fr> Subject: Re: Announcement: New version of CLISP In-reply-to: (Your message of Tue, 20 Oct 1998 06:57:48 PDT.) <199810201411.QAA17992@jaures.ilog.fr> Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Date: Tue, 20 Oct 1998 10:50:00 -0400 Message-ID: <22551.908895000@rtp.ericsson.se> From: Raymond Toy >>>>> "Bruno" == Bruno Haible writes: Bruno> Dorai Sitaram asks: >> What is the correct CLISP binary (i386-linux-libc5 or >> -libc6) to suggest for someone using Red Hat 5.1 Linux >> without personal modification? Bruno> When you do "ls -l /lib/libc.so.*", I bet it will show you libc.so.6. Bruno> Therefore you need the libc6 binary. RH 5.1 also comes with libc5 libraries (if you install them?) so either binary should work. I ran a libc5 version of CMUCL on my RH 5.1 system. Ray From dtillman@palantir.cannonexpress.com Tue Oct 20 11:01:50 1998 Received: from palantir.cannonexpress.com (dtillman@palantir.cannonexpress.com [208.136.255.65]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id LAA01506 for ; Tue, 20 Oct 1998 11:01:38 -0700 (PDT) Received: (from dtillman@localhost) by palantir.cannonexpress.com (8.8.7/8.8.7) id NAA07612; Tue, 20 Oct 1998 13:15:36 -0500 To: clisp-list@seagull.cons.org Subject: CLISP & Threads References: <199810170504.QAA19580@hilbert.maths.utas.edu.au> From: David Tillman Date: 20 Oct 1998 13:15:36 -0500 In-Reply-To: spoon's message of Fri, 16 Oct 1998 21:53:41 -0700 (PDT) Message-ID: <87ogr7je0n.fsf@palantir.cannonexpress.com> Lines: 13 X-Mailer: Gnus v5.5/Emacs 20.2 Does / will CLISP support any type of thread mechanism or other form of mult-process control? -Dave -- David Tillman | Sparrow Information Systems | Contract C, C++, and dtillman@sparrowsys.com | www.sparrowsys.com | PERL code for UNIX. From seniorr@teleport.com Tue Oct 20 12:43:46 1998 Received: from smtp5.teleport.com (smtp5.teleport.com [192.108.254.44]) by seagull.cdrom.com (8.8.8/8.6.6) with SMTP id MAA02559 for ; Tue, 20 Oct 1998 12:43:44 -0700 (PDT) Received: (qmail 29107 invoked from network); 20 Oct 1998 19:57:38 -0000 Received: from user1.teleport.com (seniorr@192.108.254.10) by smtp5.teleport.com with SMTP; 20 Oct 1998 19:57:38 -0000 Received: (from seniorr@localhost) by user1.teleport.com (8.8.7/8.8.4) id MAA17167; Tue, 20 Oct 1998 12:56:48 -0700 (PDT) To: clisp-list@seagull.cons.org Subject: encode-universal-time bug in clisp-1998-09-09? From: Russell Senior Date: 20 Oct 1998 12:56:48 -0700 Message-ID: Lines: 47 X-Mailer: Gnus v5.5/Emacs 20.2 $ uname -a Linux coulee.tdb.com 2.1.115 #5 SMP Wed Sep 30 17:06:15 PDT 1998 i686 unknown This is a Debian 2.0 box and I am in the Pacific Timezone (ie, westcoast of US, TZ=PST8PDT). I compiled CLISP from source. > (lisp-implementation-version) "1998-09-09 (September 1998)" > (decode-universal-time (encode-universal-time 0 0 0 1 1 1970)) 0 ; 0 ; 23 ; 31 ; 12 ; 1969 ; 2 ; NIL ; 8 > (decode-universal-time (encode-universal-time 0 0 0 1 1 1970 8)) 0 ; 0 ; 0 ; 1 ; 1 ; 1970 ; 3 ; NIL ; 8 > It looks like the problem is in sys::default-time-zone, which is defined in src/time.d. My German isn't so good, so I haven't yet figured out what `UTstunde' is. > (sys::default-time-zone) 7 ; T Shouldn't I be getting an 8? Thanks in advance! -- Russell Senior seniorr@teleport.com From haible@ilog.fr Tue Oct 20 14:01:48 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id OAA03594 for ; Tue, 20 Oct 1998 14:01:44 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id XAA28784 for ; Tue, 20 Oct 1998 23:15:34 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id XAA18651; Tue, 20 Oct 1998 23:15:31 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id XAA21205; Tue, 20 Oct 1998 23:15:32 +0200 (MET DST) Date: Tue, 20 Oct 1998 23:15:32 +0200 (MET DST) Message-Id: <199810202115.XAA21205@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: encode-universal-time bug in clisp-1998-09-09? In-Reply-To: References: Russell Senior writes: > > > (decode-universal-time (encode-universal-time 0 0 0 1 1 1970 8)) > 0 ; > 0 ; > 0 ; > 1 ; > 1 ; > 1970 ; > 3 ; > NIL ; > 8 This one is correct. encode-universal-time interprets the date you give as 1970-01-01, 08:00:00 GMT and then converts it to your local time zone. > > (decode-universal-time (encode-universal-time 0 0 0 1 1 1970)) > 0 ; > 0 ; > 23 ; > 31 ; > 12 ; > 1969 ; > 2 ; > NIL ; > 8 This is not correct; it works for the day after or the year 1971, however. clisp tried to determine whether there was DST in your timezone at that date, issued two C library calls in order to determine this, and thus got trapped in the limitation that the C type `time_t' under Unix doesn't support dates before 1970-01-01. > It looks like the problem is in sys::default-time-zone, which is > defined in src/time.d. Yes, the code in that function tries to guess the time zone and DST value. For dates before 1970 it falls back to the current date. Since we are now (still) in DST, it starts interpreting the value in DST. > > (sys::default-time-zone) > 7 ; > T > > Shouldn't I be getting an 8? This is an undocumented function. The first value happens to be the time zone with DST correction already included. 7 is correct in your case. So, clisp does have a year 1970 problem, but it does not have a year 2000 problem :-) Bruno From haible@ilog.fr Tue Oct 20 14:13:03 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id OAA03658 for ; Tue, 20 Oct 1998 14:12:50 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id XAA29064 for ; Tue, 20 Oct 1998 23:26:39 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id XAA18925; Tue, 20 Oct 1998 23:26:37 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id XAA21216; Tue, 20 Oct 1998 23:26:38 +0200 (MET DST) Date: Tue, 20 Oct 1998 23:26:38 +0200 (MET DST) Message-Id: <199810202126.XAA21216@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: CLISP & Threads In-Reply-To: <87ogr7je0n.fsf@palantir.cannonexpress.com> References: <87ogr7je0n.fsf@palantir.cannonexpress.com> David Tillman asks: > > Does / will CLISP support any type of thread mechanism > or other form of mult-process control? I hope so. We are working on it and have done about 15% of the work involved. It will take a couple of months (at least) it this is usable. I've been told that CMUCL has some kind of multithreading (with its own scheduler, no native OS threads). Bruno From seniorr@teleport.com Wed Oct 21 00:31:50 1998 Received: from smtp4.teleport.com (smtp4.teleport.com [192.108.254.34]) by seagull.cdrom.com (8.8.8/8.6.6) with SMTP id AAA08987 for ; Wed, 21 Oct 1998 00:31:46 -0700 (PDT) Received: (qmail 16231 invoked from network); 21 Oct 1998 07:45:35 -0000 Received: from usertest.teleport.com (HELO user2.teleport.com) (seniorr@192.108.254.19) by smtp4.teleport.com with SMTP; 21 Oct 1998 07:45:35 -0000 Received: (from seniorr@localhost) by user2.teleport.com (8.8.7/8.8.4) id AAA00775; Wed, 21 Oct 1998 00:45:35 -0700 (PDT) To: clisp-list@seagull.cons.org Subject: Re: encode-universal-time bug in clisp-1998-09-09? References: From: Russell Senior Date: 21 Oct 1998 00:45:34 -0700 Message-ID: Lines: 48 X-Mailer: Gnus v5.5/Emacs 20.2 >>>>> "Russell" == Russell Senior writes: Russell> $ uname -a Linux coulee.tdb.com 2.1.115 #5 SMP Wed Sep 30 Russell> 17:06:15 PDT 1998 i686 unknown Russell> This is a Debian 2.0 box and I am in the Pacific Timezone Russell> (ie, westcoast of US, TZ=PST8PDT). I compiled CLISP from Russell> source. > (lisp-implementation-version) "1998-09-09 (September 1998)" > (decode-universal-time (encode-universal-time 0 0 0 1 1 1970)) 0 ; 0 ; 23 ; 31 ; 12 ; 1969 ; 2 ; NIL ; 8 > (decode-universal-time (encode-universal-time 0 0 0 1 1 1970 8)) 0 ; 0 ; 0 ; 1 ; 1 ; 1970 ; 3 ; NIL ; 8 Russell> It looks like the problem is in sys::default-time-zone, which Russell> is defined in src/time.d. My German isn't so good, so I Russell> haven't yet figured out what `UTstunde' is. > (sys::default-time-zone) 7 ; T Russell> Shouldn't I be getting an 8? The problem appears to be with the domain of (sys::default-time-zone) under UNIX and WIN32. On those platforms, the timezone is computed using the C library calls localtime() and gmtime(). Consequently, the valid inputs are limited to valid Unix calendar times (> Jan 1, 1970). If the input time is outside that range, the default-time-zone is whatever the timezone is currently. Today, here, that is daylight savings, which was unexpected for the date I tested. Seems like this could be more robust, perhaps falling back to the code in src/timezone.lsp? BTW, the altavista babelfish at: though far from perfect, was useful in translating some of the comments/variable names. :-) -- Russell Senior seniorr@teleport.com From jason@netgenics.com Wed Oct 21 06:08:38 1998 Received: from relay.netgenics.com (relay.netgenics.com [207.25.221.162]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA11652 for ; Wed, 21 Oct 1998 06:08:37 -0700 (PDT) Received: from netgenics.com (slocombe.dev.netgenics.com [192.168.113.134]) by relay.netgenics.com (8.8.5/8.8.6) with ESMTP id JAA20719 for ; Wed, 21 Oct 1998 09:22:42 -0400 (EDT) Message-ID: <362DE1D6.28C622C1@netgenics.com> Date: Wed, 21 Oct 1998 09:29:58 -0400 From: Jason Karney Organization: NetGenics, Inc. X-Mailer: Mozilla 4.05 [en] (WinNT; I) MIME-Version: 1.0 To: clisp-list@seagull.cons.org Subject: with-wish package on Win32 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi, Has anybody gotten the with-wish package to work with CLISP and Win95/NT? I haven't, and I am guessing that is because two-way communication (via CLISP's run-program) occurs through pipes, which win32 lacks. Any input is appreciated. Thanks. -- Jason Karney <- Advanced Technology Scientist NetGenics, Inc. [jason@netgenics.com] [STOP] Okay, you were there yesterday, but Where do you want to go tomorrow? From sds@eaglets.com Wed Oct 21 06:28:06 1998 Received: from mail.eaglets.com ([208.235.77.228]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA12112 ; Wed, 21 Oct 1998 06:27:59 -0700 (PDT) Received: by mail.eaglets.com from localhost (router,SLMail V3.1); Wed, 21 Oct 1998 09:40:26 -0400 Received: by mail.eaglets.com from eho.eaglets.com [208.235.77.238] (SLmail 3.1.2948 (Release Build)); Wed, 21 Oct 1998 09:40:26 -0400 Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id JAA28359; Wed, 21 Oct 1998 09:41:21 -0400 To: clisp-list@seagull.cons.org Cc: Multiple recipients of list Subject: Re: encode-universal-time bug in clisp-1998-09-09? References: <199810202115.XAA21205@jaures.ilog.fr> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: Bruno Haible's message of "Wed, 21 Oct 1998 00:00:23 -0700 (PDT)" Date: 21 Oct 1998 09:41:21 -0400 Message-ID: Lines: 17 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <199810202115.XAA21205@jaures.ilog.fr> >>>> On the subject of "Re: encode-universal-time bug in clisp-1998-09-09?" >>>> Sent on Wed, 21 Oct 1998 00:00:23 -0700 (PDT) >>>> Honorable Bruno Haible writes: >> >> Yes, the code in that function tries to guess the time zone and DST value. >> For dates before 1970 it falls back to the current date. Since we are now >> (still) in DST, it starts interpreting the value in DST. Shouldn't it fall back to the same date in the current year? (like, judging DST on 1969-1-1 by 1998-1-1, not by 1998-10-21) -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. When we break the law, they fine us, when we comply, they tax us. From sds@eaglets.com Wed Oct 21 07:04:31 1998 Received: from mail.eaglets.com ([208.235.77.228]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id HAA12680 for ; Wed, 21 Oct 1998 07:04:30 -0700 (PDT) Received: by mail.eaglets.com from localhost (router,SLMail V3.1); Wed, 21 Oct 1998 10:17:06 -0400 Received: by mail.eaglets.com from eho.eaglets.com [208.235.77.238] (SLmail 3.1.2948 (Release Build)); Wed, 21 Oct 1998 10:17:05 -0400 Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id KAA29082; Wed, 21 Oct 1998 10:18:03 -0400 To: clisp-list@seagull.cons.org Subject: Re: with-wish package on Win32 References: <362DE1D6.28C622C1@netgenics.com> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: Jason Karney's message of "Wed, 21 Oct 1998 06:09:03 -0700 (PDT)" Date: 21 Oct 1998 10:18:03 -0400 Message-ID: Lines: 23 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <362DE1D6.28C622C1@netgenics.com> >>>> On the subject of "with-wish package on Win32" >>>> Sent on Wed, 21 Oct 1998 06:09:03 -0700 (PDT) >>>> Honorable Jason Karney writes: >> >> Has anybody gotten the with-wish package to work with CLISP and >> Win95/NT? I haven't, and I am guessing that is because two-way >> communication (via CLISP's run-program) occurs through pipes, which >> win32 lacks. There is that mythical problem: "a w32 program can either open windows or have stdio". Thus `wish' on w32 doesn't read its stdin, so you cannot control it with `with-wish'. The exact same problem is with `gnuplot'. Actually, a w3 program *can* have both GUI and stdio (NTEmacs does it), it's just hard to do (thank to your friends from Redmond, WA). -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. Bus error -- please leave by the rear door. From dtillman@palantir.cannonexpress.com Wed Oct 21 08:36:00 1998 Received: from palantir.cannonexpress.com (dtillman@palantir.cannonexpress.com [208.136.255.65]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id IAA13718 for ; Wed, 21 Oct 1998 08:35:59 -0700 (PDT) Received: (from dtillman@localhost) by palantir.cannonexpress.com (8.8.7/8.8.7) id KAA21634; Wed, 21 Oct 1998 10:50:02 -0500 Date: Wed, 21 Oct 1998 10:50:02 -0500 Message-Id: <199810211550.KAA21634@palantir.cannonexpress.com> From: David Tillman To: clisp-list@seagull.cons.org Subject: Error during "make interpreted.mem" on SCO Can someone point me in the right direction to fix this? *** - EVAL: undefined function (SETF CSD-CS-INDEX) This is during "make interpreted.mem" on SCO 3.2v5.0. I also had some trouble with avcall-i386.S, but that may be unrelated. -Dave From dtillman@palantir.cannonexpress.com Wed Oct 21 11:36:36 1998 Received: from palantir.cannonexpress.com (dtillman@palantir.cannonexpress.com [208.136.255.65]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id LAA15438 for ; Wed, 21 Oct 1998 11:36:34 -0700 (PDT) Received: (from dtillman@localhost) by palantir.cannonexpress.com (8.8.7/8.8.7) id NAA26383; Wed, 21 Oct 1998 13:50:40 -0500 Date: Wed, 21 Oct 1998 13:50:40 -0500 Message-Id: <199810211850.NAA26383@palantir.cannonexpress.com> From: David Tillman To: clisp-list@clisp.cons.org In-reply-to: <199810202126.XAA21216@jaures.ilog.fr> (message from Bruno Haible on Wed, 21 Oct 1998 00:00:47 -0700 (PDT)) Subject: Re: CLISP & Threads References: <199810202126.XAA21216@jaures.ilog.fr> >>>> Bruno Haible wrote: > David Tillman asks: >> >> Does / will CLISP support any type of thread mechanism >> or other form of mult-process control? > >I hope so. We are working on it and have done about 15% of the work >involved. It will take a couple of months (at least) it this is usable. > >I've been told that CMUCL has some kind of multithreading (with its >own scheduler, no native OS threads). > >Bruno Ok, is there some type of fork procedure? The reason I ask is that I have been experimenting with writing http servers in different varieties of LISP and Scheme as method of becoming familiar with the language. See http://www.cannonexpress.com:1080 for an example. Obviously, it won't do to have the server blocked on a connection while other connections are waiting to be made. In MzScheme I start a new thread with each server request. In Guile I fork. Any thoughts on how to do this with CLISP? -Dave From attardi@DI.Unipi.IT Thu Oct 22 02:49:12 1998 Received: from mailserver.di.unipi.it (memphis.di.unipi.it [131.114.4.6]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id CAA23437 for ; Thu, 22 Oct 1998 02:43:22 -0700 (PDT) Organization: Dipartimento di Informatica di Pisa - Italy Received: from janet.unipi.it (janet.di.unipi.it [131.114.4.233]) by mailserver.di.unipi.it (8.9.1a/8.9.1) with ESMTP id LAA02907; Thu, 22 Oct 1998 11:51:54 +0200 (MET DST) Received: (attardi@localhost) by janet.unipi.it (8.8.8+Sun/8.6.12) id LAA16798; Thu, 22 Oct 1998 11:51:06 +0200 (MET DST) Date: Thu, 22 Oct 1998 11:51:06 +0200 (MET DST) Message-Id: <199810220951.LAA16798@janet.unipi.it> From: Giuseppe Attardi To: clisp-list@seagull.cons.org In-reply-to: <199810202126.XAA21216@jaures.ilog.fr> (message from Bruno Haible on Wed, 21 Oct 1998 00:00:50 -0700 (PDT)) Subject: Re: CLISP & Threads Just for the record, ECL has had threads for some time now. It uses its own scheduler whose source code is available: ftp://ftp.di.unipi.it/pub/lang/lisp -- Beppe From baum@mbox.cri.uni-hannover.de Thu Oct 22 07:29:36 1998 Received: from mgate2-sn7.rrzn.uni-hannover.de (mgate2-sn7.rrzn.uni-hannover.de [130.75.7.13]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id HAA25688 for ; Thu, 22 Oct 1998 07:29:35 -0700 (PDT) Received: from mbox.cri.uni-hannover.de (actually cri30.cri.uni-hannover.de) by mgate2-sn7.rrzn.uni-hannover.de with LocalSMTP (PP) with ESMTP; Thu, 22 Oct 1998 16:42:02 +0200 Message-ID: <362F4450.AC58847@mbox.cri.uni-hannover.de> Date: Thu, 22 Oct 1998 16:42:24 +0200 From: Peter Baum Organization: Curt-Risch-Institut X-Mailer: Mozilla 4.05 [de]C-NECCK (Win95; I) MIME-Version: 1.0 To: Mailingliste CLISP Subject: Re: with-wish package on Win32 References: <362DE1D6.28C622C1@netgenics.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Jason Karney schrieb: > Has anybody gotten the with-wish package to work with CLISP and Win95/NT? I > haven't, and I am guessing that is because two-way communication (via CLISP's > run-program) occurs through pipes, which win32 lacks. > > Any input is appreciated. Thanks. I had the same problem. Now I use Tcl8.1 (8.0 doesn't work!) and exec "|clisp" and communicate with it over fileevent. For me it works great. Peter From lindner@plopp.intellektik.informatik.tu-darmstadt.de Thu Oct 22 08:28:06 1998 Received: from plopp.intellektik.informatik.tu-darmstadt.de (plopp.intellektik.informatik.tu-darmstadt.de [130.83.26.29]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id IAA26459 for ; Thu, 22 Oct 1998 08:27:32 -0700 (PDT) Received: (from lindner@localhost) by plopp.intellektik.informatik.tu-darmstadt.de (8.8.7/8.8.7) id RAA27834; Thu, 22 Oct 1998 17:41:42 +0200 From: Matthias Lindner MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <13871.21045.835054.570791@orion.plopp.de> Date: Thu, 22 Oct 1998 17:41:41 +0200 (MEST) To: clisp-list@clisp.cons.org Subject: Re: with-wish package on Win32 X-Mailer: VM 6.62 under 21.2 "Aglaia" XEmacs Lucid (beta3) Reply-To: matthias@intellektik.informatik.tu-darmstadt.de Jason Karney wrote: > > Has anybody gotten the with-wish package to work with CLISP and Win95/NT? I > haven't, and I am guessing that is because two-way communication (via CLISP's > run-program) occurs through pipes, which win32 lacks. Ok - as this is the second request within the last few weeks... I have a 're-implementation' of WITH-WISH, called WITH-WISHSERVER that uses sockets instead of pipes and runs in Unix and Windows environments. The basic part of the package works in CLISP, GCL, ACL4, ACL5 and CMUCL. For Windows I have only tested it with CLISP. Before releasing it I wanted to implement some kind of 'higher level' GUI language that supports expressions like (with-canvas-window (:scrollbars :both :menubar (list (make-menu ...)) :buttons (list (make-button ... :callback #'cb-fun))) (make-instance ' '(0 0 100 100 200 0) :fill "red") ...) (Just to satisfy the 'Tcl/Tk-haters' ;-) ) Unfortunately I did not find the time to implement that... Like for WITH-WISH there is almost no documentation i.e. only some more or less ``documented'' examples. If you think you have a real need for WITH-WISHSERVER and are brave enough to try it send me e-mail and I will send you a copy. Happy CLisping --Matthias ------------------------------------------------------------------------------- Matthias Lindner, Wilhelm-Leuschner-Str.46, 64293 Darmstadt, Germany Tel.: +49 6151 22071, E-Mail: matthias@intellektik.informatik.tu-darmstadt.de ------------------------------------------------------------------------------- From lindner@plopp.intellektik.informatik.tu-darmstadt.de Thu Oct 22 08:31:22 1998 Received: from plopp.intellektik.informatik.tu-darmstadt.de (plopp.intellektik.informatik.tu-darmstadt.de [130.83.26.29]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id IAA26664 for ; Thu, 22 Oct 1998 08:31:16 -0700 (PDT) Received: (from lindner@localhost) by plopp.intellektik.informatik.tu-darmstadt.de (8.8.7/8.8.7) id RAA27999; Thu, 22 Oct 1998 17:45:21 +0200 From: Matthias Lindner MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <13871.21265.393543.333118@orion.plopp.de> Date: Thu, 22 Oct 1998 17:45:21 +0200 (MEST) To: clisp-list@clisp.cons.org Subject: Re: kinds of clisp applications X-Mailer: VM 6.62 under 21.2 "Aglaia" XEmacs Lucid (beta3) Reply-To: matthias@intellektik.informatik.tu-darmstadt.de Bruno Haible wrote: > > What is CLISP being used for? I'd be interested to hear from as many of > you as possible, what you are doing in CLISP. The first thing I did with CLISP was 'classic' AI research: Plopp! a planner for office procedures. That's where WITH-WISH came from. Last year I implemented an application that supports the production process of the new Wayfinding and Information System of Deutsche Bahn AG. Architects specify contents of information signs, relations between signs (i.e. sign groups) and architectural constraints. Based on this information the systems generates sign layouts that are used by the sign producers to control the CNC machines that cut slides for the signs. The system guarantees that all layout rules specified by the designers of the new Wayfinding System are obeyed. The need for this kind of system arose as Deutsche Bahn AG currently renovates about 6500 railway stations in Germany and it was impossible to layout all signs by hand *and* to guarantee a consistent use of the design rules. The system consists of a server, implemented in CLISP, that is connected via FFI to a relational database, a pixmap drawing module and a TCP/IP module. Clients connect via TCP/IP to this server either by launching a special Tcl/Tk GUI or a WEB browser. They can create stations, insert signs and groups of signs, preview the layout, print station catalogs or produce sign production layouts. The use of COMMON LISP and of CLISP in particular was the critical decision that enabled me to implement this complex 'real world' application within a relatively short time. So, if you ever come to one of the renovated railway stations in Germany and see one of the shiny new white-on-blue or blue-on-orange signs, remember it was CLISP that made them! (But if you lose your way or if you do not like the design of the signs you can't put the blame on CLISP! ;-) ) --Matthias ------------------------------------------------------------------------------- Matthias Lindner, Wilhelm-Leuschner-Str.46, 64293 Darmstadt, Germany Tel.: +49 6151 22071, E-Mail: matthias@intellektik.informatik.tu-darmstadt.de ------------------------------------------------------------------------------- From ds26@gte.com Thu Oct 22 09:56:36 1998 Received: from newman.gte.com (h132-197-8-26.gte.com [132.197.8.26]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id JAA27849 for ; Thu, 22 Oct 1998 09:56:31 -0700 (PDT) Received: from bunny.gte.com (bunny.gte.com [132.197.8.1]) by newman.gte.com (8.9.1/8.9.1) with ESMTP id NAA07510 for ; Thu, 22 Oct 1998 13:10:11 -0400 (EDT) From: Dorai Sitaram Received: (ds26@localhost) by bunny.gte.com (8.6.9/8.6.9) id NAA00127 for clisp-list@seagull.cons.org; Thu, 22 Oct 1998 13:10:10 -0400 Message-Id: <199810221710.NAA00127@bunny.gte.com> Subject: Re: Announcement: New version of CLISP To: clisp-list@seagull.cons.org Date: Thu, 22 Oct 1998 13:10:10 -0400 (EDT) In-Reply-To: <199810201349.JAA04434@wlestes.uncg.edu> from "wlestes@wlestes.uncg.edu" at Oct 20, 98 06:36:03 am X-Mailer: ELM [version 2.4 PL3] Content-Type: text > > What is the correct CLISP binary (i386-linux-libc5 or > > -libc6) to suggest for someone using Red Hat 5.1 Linux > > without personal modification? > > i have an rpm which i will be uploading to redhat's contrib directory > in the next couple of days. i'll announce it here--and on the > redhat-announce list. > > --will Thanks, will. I tried the binary marked libc6 and it worked as advertised. However: I found that clisp-link-kit wouldn't work (I was looking to get regexps) and neither did my attempt to "make" the full version. Would there be any obstacle to your automatically including the regexp extension in the base executable you will create for your rpm? (Unless of course you'll be providing the "full" executable.) --d From phil@redwood.rt.cs.boeing.com Thu Oct 22 10:49:43 1998 Received: from slb-smtpout-01.boeing.com (slb-smtpout-01.boeing.com [192.161.36.8]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id KAA28548 for ; Thu, 22 Oct 1998 10:49:43 -0700 (PDT) Received: from slb-hub-01.boeing.com ([192.48.21.12]) by slb-smtpout-01.boeing.com (8.9.0/8.8.5) with ESMTP id LAA02053 for ; Thu, 22 Oct 1998 11:03:52 -0700 (PDT) Received: from redwood.rt.cs.boeing.com by slb-hub-01.boeing.com; Thu, 22 Oct 1998 11:03:51 -0700 Received: from cedar.network-b by redwood.rt.cs.boeing.com (5.x/SMI-SVR4) id AA09422; Thu, 22 Oct 1998 11:04:11 -0700 Received: by cedar.network-b (SMI-8.6/SMI-SVR4) id KAA09568; Thu, 22 Oct 1998 10:56:27 -0700 Date: Thu, 22 Oct 1998 10:56:27 -0700 From: philip.harrison@boeing.com (Phil Harrison) Message-Id: <199810221756.KAA09568@cedar.network-b> To: clisp-list@clisp.cons.org Subject: compiler X-Sun-Charset: US-ASCII I experimented with CLISP on Solaris to run our grammar checker, which is written in Common Lisp. CLISP was very easy to use, but the compiled code ran much too slowly to be deployable as a useful tool. Our application needs an order of magnitude improvement in speed. Is anyone working to improve the CLISP compiler? What is the state of the compiler on other platforms besides Solaris? From sds@eaglets.com Thu Oct 22 11:14:52 1998 Received: from smtp0-alterdial.uu.net (smtp0-alterdial.UU.NET [192.48.96.28]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id LAA29121 for ; Thu, 22 Oct 1998 11:14:49 -0700 (PDT) Received: from eho.eaglets.com by smtp0-alterdial.uu.net with ESMTP (peer crosschecked as: [208.235.77.238]) id QQfmfp15060; Thu, 22 Oct 1998 18:28:54 GMT Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id OAA11473; Thu, 22 Oct 1998 14:28:46 -0400 To: clisp-list@seagull.cons.org Cc: Multiple recipients of list Subject: Re: compiler References: <199810221756.KAA09568@cedar.network-b> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: philip.harrison@boeing.com's message of "Thu, 22 Oct 1998 10:49:47 -0700 (PDT)" Date: 22 Oct 1998 14:28:45 -0400 Message-ID: Lines: 22 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <199810221756.KAA09568@cedar.network-b> >>>> On the subject of "compiler" >>>> Sent on Thu, 22 Oct 1998 10:49:47 -0700 (PDT) >>>> Honorable philip.harrison@boeing.com (Phil Harrison) writes: >> I experimented with CLISP on Solaris to run our grammar checker, >> which is written in Common Lisp. CLISP was very easy to use, but >> the compiled code ran much too slowly to be deployable as a useful tool. >> Our application needs an order of magnitude improvement in speed. Is >> anyone working to improve the CLISP compiler? What is the state of >> the compiler on other platforms besides Solaris? CLISP compiles to bytecode, which is platform independent. Depending on the kind of code you have, you can get a order of magnitude speed-up by switching to CMUCL (http://www.cons.org/cmucl). Another (more efficient!) way to speed up the code is to improve your algorithms. :-) -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. I want Tamagochi! -- What for? Your pet hamster is still alive! From haible@ilog.fr Thu Oct 22 11:19:20 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id LAA29357 for ; Thu, 22 Oct 1998 11:19:19 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id UAA15722 for ; Thu, 22 Oct 1998 20:33:30 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id UAA04151; Thu, 22 Oct 1998 20:33:27 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id UAA01952; Thu, 22 Oct 1998 20:33:28 +0200 (MET DST) Date: Thu, 22 Oct 1998 20:33:28 +0200 (MET DST) Message-Id: <199810221833.UAA01952@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: compiler In-Reply-To: <199810221756.KAA09568@cedar.network-b> References: <199810221756.KAA09568@cedar.network-b> Phil Harrison writes: > I experimented with CLISP on Solaris to run our grammar checker, > which is written in Common Lisp. CLISP was very easy to use, but > the compiled code ran much too slowly to be deployable as a useful tool. > Our application needs an order of magnitude improvement in speed. Hmm. I estimate the speed gain of using a native compiler like CMUCL [1] to be a factor 5 or so. If you want more than this, I suggest you get an idea of what's eating up all that CPU time, by using the `space' macro of CLISP, and the `metering' tool of Mark Kantrowitz [2]. > Is anyone working to improve the CLISP compiler? What is the state of > the compiler on other platforms besides Solaris? The CLISP compiler is stable for a long time. Noone plans to let it generate machine code directly - we don't have the resources to do that. But if someone wants to let it generate C/C++/Java code and use gcc as a "back end", he is welcome to do that. Bruno [1] ftp://ftp2.cons.org/pub/lisp/cmucl/release/ [2] ftp://ftp2.cons.org/pub/lisp/clisp/contrib/metering.lsp.gz From toy@rtp.ericsson.se Thu Oct 22 11:39:40 1998 Received: from gwu.ericy.com (gwu.ericy.com [208.196.3.162]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id LAA29793 for ; Thu, 22 Oct 1998 11:39:38 -0700 (PDT) Received: from mr3.exu.ericsson.se ([138.85.11.55]) by gwu.ericy.com (8.8.8/8.8.8) with ESMTP id NAA28764; Thu, 22 Oct 1998 13:54:17 -0500 (CDT) Received: from netmanager7.rtp.ericsson.se (netmanager7.rtp.ericsson.se [147.117.132.245]) by mr3.exu.ericsson.se (8.8.8/8.8.8) with SMTP id NAA20311; Thu, 22 Oct 1998 13:53:04 -0500 (CDT) Received: from rcur (wcsdsp4 [147.117.132.216]) by netmanager7.rtp.ericsson.se (8.6.12/8.6.4) with ESMTP id OAA21698; Thu, 22 Oct 1998 14:53:04 -0400 To: clisp-list@seagull.cons.org cc: Multiple recipients of list References: <199810221833.UAA01952@jaures.ilog.fr> Subject: Re: compiler In-reply-to: (Your message of Thu, 22 Oct 1998 11:19:30 PDT.) <199810221833.UAA01952@jaures.ilog.fr> Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Date: Thu, 22 Oct 1998 14:53:03 -0400 Message-ID: <26940.909082383@rtp.ericsson.se> From: Raymond Toy >>>>> "Bruno" == Bruno Haible writes: Bruno> Phil Harrison writes: >> I experimented with CLISP on Solaris to run our grammar checker, >> which is written in Common Lisp. CLISP was very easy to use, but >> the compiled code ran much too slowly to be deployable as a useful tool. >> Our application needs an order of magnitude improvement in speed. Bruno> Hmm. I estimate the speed gain of using a native compiler like CMUCL [1] Bruno> to be a factor 5 or so. If you want more than this, I suggest you get an Bruno> idea of what's eating up all that CPU time, by using the `space' macro of Bruno> CLISP, and the `metering' tool of Mark Kantrowitz [2]. But this is highly dependent on what you are running and how many declarations you put in. On some bignum code I did, I think CLISP was equal or slightly faster than CMUCL, and used far less memory. (Sparc versions). I used CLISP in that particular application. For heavy number crunching on single- or double-float numbers, with appropriate declarations, I think 5 or 10 or more would be possible. In fact, on my 16384-point complex FFT test with full declarations, CLISP takes 2.42 sec to run. CMUCL takes 0.06 sec, a factor of 40. This doesn't mean you'll always get 40! I still think CLISP is a great Lisp: small and quite fast for many things. Ray From sds@eaglets.com Thu Oct 22 11:59:14 1998 Received: from smtp0-alterdial.uu.net (smtp0-alterdial.UU.NET [192.48.96.28]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id LAA00275 for ; Thu, 22 Oct 1998 11:59:11 -0700 (PDT) Received: from eho.eaglets.com by smtp0-alterdial.uu.net with ESMTP (peer crosschecked as: [208.235.77.238]) id QQfmfs09462; Thu, 22 Oct 1998 19:13:24 GMT Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id PAA11679; Thu, 22 Oct 1998 15:13:22 -0400 To: clisp-list@seagull.cons.org Subject: Re: compiler References: <199810221833.UAA01952@jaures.ilog.fr> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: Bruno Haible's message of "Thu, 22 Oct 1998 11:19:32 -0700 (PDT)" Date: 22 Oct 1998 15:13:20 -0400 Message-ID: Lines: 17 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <199810221833.UAA01952@jaures.ilog.fr> >>>> On the subject of "Re: compiler" >>>> Sent on Thu, 22 Oct 1998 11:19:32 -0700 (PDT) >>>> Honorable Bruno Haible writes: >> >> If someone wants to let it generate C/C++/Java code and use gcc as a >> "back end", he is welcome to do that. IIRC, gcc compiles c/c++/obj-c to some internal intermediate pseuso-assembler. Would it be a reasonable idea to compile CLISP into that? -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. A computer scientist is someone who fixes things that aren't broken. From wlestes@wlestes.uncg.edu Thu Oct 22 13:56:08 1998 Received: from wlestes.uncg.edu (wlestes.uncg.edu [152.13.173.71]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id NAA01364 for ; Thu, 22 Oct 1998 13:56:06 -0700 (PDT) From: wlestes@wlestes.uncg.edu Received: (from wlestes@localhost) by wlestes.uncg.edu (8.8.7/8.8.7) id RAA06288; Thu, 22 Oct 1998 17:10:03 -0400 Date: Thu, 22 Oct 1998 17:10:03 -0400 Message-Id: <199810222110.RAA06288@wlestes.uncg.edu> To: clisp-list@seagull.cons.org In-reply-to: <199810221710.NAA00127@bunny.gte.com> (message from Dorai Sitaram on Thu, 22 Oct 1998 09:57:12 -0700 (PDT)) Subject: Re: Announcement: New version of CLISP References: <199810221710.NAA00127@bunny.gte.com> > > i have an rpm which i will be uploading to redhat's contrib directory > > in the next couple of days. i'll announce it here--and on the > > redhat-announce list. > Thanks, will. I tried the binary marked libc6 and it > worked as advertised. However: I found that > clisp-link-kit wouldn't work (I was looking to get > regexps) and neither did my attempt to "make" the full > version. Would there be any obstacle to your > automatically including the regexp extension in the > base executable you will create for your rpm? (Unless > of course you'll be providing the "full" executable.) I'm not on the machine with the rpm, now, but if memory serves everything is in the final dump except the lib6 bindings--and those due to prototype conflicts. --will From donc@ISI.EDU Thu Oct 22 23:13:05 1998 Received: from tnt.isi.edu (tnt.isi.edu [128.9.128.128]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id XAA05920 for ; Thu, 22 Oct 1998 23:13:05 -0700 (PDT) Received: from ISI.EDU (tnt.isi.edu [128.9.128.128]) by tnt.isi.edu (8.8.7/8.8.6) with ESMTP id XAA29867 for ; Thu, 22 Oct 1998 23:27:22 -0700 (PDT) Message-Id: <199810230627.XAA29867@tnt.isi.edu> To: clisp-list@seagull.cons.org Subject: Re: speed of byte code Date: Thu, 22 Oct 1998 23:27:22 -0700 From: Don Cohen But this is highly dependent on what you are running and how many ... I second that. I was surprised to find that my standard tests (related to ap5) were only slightly slower in clisp than in, say ACL. The main place where ACL and other compilers win big is low level arithmetic compiled under proper declarations and compiler settings. If this is really your concern you could write the critical parts in c (or even assembly). From yoda@isr.isr.ist.utl.pt Fri Oct 23 01:54:36 1998 Received: from isr.isr.ist.utl.pt (isr.isr.ist.utl.pt [193.136.138.1]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id BAA07596 for ; Fri, 23 Oct 1998 01:54:32 -0700 (PDT) Received: from magalhaes.isr.ist.utl.pt (magalhaes [193.136.138.9]) by isr.isr.ist.utl.pt (8.8.8/8.8.8) with SMTP id KAA31841 for ; Fri, 23 Oct 1998 10:11:40 +0100 (GMT+0100) Received: by magalhaes.isr.ist.utl.pt (5.65v3.2/1.1.10.5/12Dec97-1230PM) id AA19141; Fri, 23 Oct 1998 09:10:36 GMT Date: Fri, 23 Oct 1998 09:10:36 GMT Message-Id: <9810230910.AA19141@magalhaes.isr.ist.utl.pt> From: Rodrigo Ventura To: clisp-list@seagull.cons.org In-Reply-To: Sam Steingold's message of Fri, 23 Oct 1998 00:00:52 -0700 (PDT) Subject: Re: compiler References: Mime-Version: 1.0 (generated by tm-edit 7.95) Content-Type: text/plain; charset=US-ASCII >>>>> "Sam" == Sam Steingold writes: >>> If someone wants to let it generate C/C++/Java code and use gcc as a >>> "back end", he is welcome to do that. Sam> IIRC, gcc compiles c/c++/obj-c to some internal intermediate Sam> pseuso-assembler. Sam> Would it be a reasonable idea to compile CLISP into that? Yeah, I like that idea too. That intermediate language is called RTL (register transfer language). I suppose this language is completely platform independent, but I'm not quite sure. Probably not. Here is a sample of it (gcc -dr yproxy.c): (insn 290 289 291 (set (mem:QI (plus:SI (reg:SI 18) (const_int -298))) (asm_operands/v ("btl %1,%2 ; setb %0") ("=q") 0[ (mem:SI (plus:SI (reg:SI 18) (const_int -8))) (mem/s:BLK (plus:SI (reg:SI 18) (const_int -288))) ] [ (asm_input:SI ("r")) (asm_input:BLK ("m")) ] ("yproxy.c") 211)) -1 (nil) (nil)) Sounds familiar? He he.... Maybe a huge macro would do the job.... BTW, I read somewhere that the interpretative nature of CLISP (in the sense that it interprets compiled bytecodes) is a plus in certain aspects. I was wondering in what respects, specifically, would the whole CLISP philosofy would be affected by the use of an assembly level compiler. How hard it is to compile to assembly after all? Best regards, -- -- *** Rodrigo Martins de Matos Ventura, alias *** yoda@isr.ist.utl.pt, http://www.isr.ist.utl.pt/~yoda *** Instituto de Sistemas e Robotica, Polo de Lisboa *** Instituto Superior Tecnico, Lisboa, Portugal *** PGP Public Key available on my homepage *** Key fingerprint = 0C 0A 25 58 46 CF 14 99 CF 9C AF 9E 10 02 BB 2A From haible@ilog.fr Fri Oct 23 05:48:36 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id FAA09335 for ; Fri, 23 Oct 1998 05:48:30 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id PAA15478 for ; Fri, 23 Oct 1998 15:02:45 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id PAA14451; Fri, 23 Oct 1998 15:02:41 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id PAA03945; Fri, 23 Oct 1998 15:02:41 +0200 (MET DST) Date: Fri, 23 Oct 1998 15:02:41 +0200 (MET DST) Message-Id: <199810231302.PAA03945@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: compiler In-Reply-To: References: Sam Steingold writes: > IIRC, gcc compiles c/c++/obj-c to some internal intermediate > pseuso-assembler. > Would it be a reasonable idea to compile CLISP into that? What would be the benefits and drawbacks vs. compiling to C ? * Benefits: You can do some things which you cannot express in C: - Functions with multiple entry points, useful for functions with keyword arguments. - unwind-protect and handler-case (although you can express them in Java, which means that gcc already has support for it). * Drawbacks: - Compiling into gcc's tree and rtl representations is a lot of work. When clisp's compiler, written in Lisp, is 500KB, you can imagine its size if it were written in C. (Just for comparison, the Java frontend of gcc is already 2.5 MB of C code right now.) And if it's not written in C, you have a bootstrapping problem (like GNAT, the GNU Ada compiler, has). - When compiling to C, you have distinct passes, which makes development and bug tracking a lot easier: just have a look at the intermediate C file and you know whether the bug is in the Lisp to C compiler or in the C to machine code compiler. Rodrigo Ventura writes: > BTW, I read somewhere that the interpretative nature of CLISP > (in the sense that it interprets compiled bytecodes) is a plus in > certain aspects. One plus is that is consumes not much memory. Another one, that it's easy to develop :-) > I was wondering in what respects, specifically, would the whole CLISP > philosophy would be affected by the use of an assembly level compiler. You would get an implementation like CMUCL. > How hard it is to compile to assembly after all? Very hard. The core development deam of GCC comprises 20 persons. Lots of platforms have to be supported, with lots of calling conventions. Register allocation and instruction scheduling are hard. Bruno From yoda@isr.isr.ist.utl.pt Fri Oct 23 06:20:37 1998 Received: from isr.isr.ist.utl.pt (isr.isr.ist.utl.pt [193.136.138.1]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA09762 for ; Fri, 23 Oct 1998 06:20:30 -0700 (PDT) Received: from magalhaes.isr.ist.utl.pt (magalhaes [193.136.138.9]) by isr.isr.ist.utl.pt (8.8.8/8.8.8) with SMTP id OAA01040 for ; Fri, 23 Oct 1998 14:37:47 +0100 (GMT+0100) Received: by magalhaes.isr.ist.utl.pt (5.65v3.2/1.1.10.5/12Dec97-1230PM) id AA19622; Fri, 23 Oct 1998 13:36:45 GMT Date: Fri, 23 Oct 1998 13:36:45 GMT Message-Id: <9810231336.AA19622@magalhaes.isr.ist.utl.pt> From: Rodrigo Ventura To: clisp-list@seagull.cons.org In-Reply-To: Bruno Haible's message of Fri, 23 Oct 1998 05:50:02 -0700 (PDT) Subject: Re: compiler References: <199810231302.PAA03945@jaures.ilog.fr> Mime-Version: 1.0 (generated by tm-edit 7.95) Content-Type: text/plain; charset=US-ASCII >>>>> "Bruno" == Bruno Haible writes: >> How hard it is to compile to assembly after all? Bruno> Very hard. The core development deam of GCC comprises 20 persons. Bruno> Lots of platforms have to be supported, with lots of calling conventions. Bruno> Register allocation and instruction scheduling are hard. Ok, but much of that effort is to produce assembly code as efficient as possible. I guess that a plain C->assembly compiler is not all that complex, although awfuly slow. But I suppose that translating LISP directly into assembly is an extremely difficult task. But let me ask, how hard is it to translate from the CLISP bytecode into assembly? The CLISP VM is a stack machine, right? Isn't it straightforward to turn that into assembly, say, using memory stack instead of taking advantage of the multiple registers? Even this inefficient way would be faster than the present implementation, which I suppose must use some sort of dispatch table and manual instruction fetch loop. Best Regards, -- -- *** Rodrigo Martins de Matos Ventura, alias *** yoda@isr.ist.utl.pt, http://www.isr.ist.utl.pt/~yoda *** Instituto de Sistemas e Robotica, Polo de Lisboa *** Instituto Superior Tecnico, Lisboa, Portugal *** PGP Public Key available on my homepage *** Key fingerprint = 0C 0A 25 58 46 CF 14 99 CF 9C AF 9E 10 02 BB 2A From sds@eaglets.com Fri Oct 23 07:33:43 1998 Received: from smtp0-alterdial.uu.net (smtp0-alterdial.UU.NET [192.48.96.28]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id HAA10479 for ; Fri, 23 Oct 1998 07:33:42 -0700 (PDT) Received: from eho.eaglets.com by smtp0-alterdial.uu.net with ESMTP (peer crosschecked as: [208.235.77.238]) id QQfmit02696; Fri, 23 Oct 1998 14:47:59 GMT Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id KAA21680; Fri, 23 Oct 1998 10:46:50 -0400 To: clisp-list@seagull.cons.org Cc: Multiple recipients of list Subject: Re: compiler References: <199810231302.PAA03945@jaures.ilog.fr> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: Bruno Haible's message of "Fri, 23 Oct 1998 05:49:36 -0700 (PDT)" Date: 23 Oct 1998 10:46:49 -0400 Message-ID: Lines: 78 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <199810231302.PAA03945@jaures.ilog.fr> >>>> On the subject of "Re: compiler" >>>> Sent on Fri, 23 Oct 1998 05:49:36 -0700 (PDT) >>>> Honorable Bruno Haible writes: >> Sam Steingold writes: >> >> > IIRC, gcc compiles c/c++/obj-c to some internal intermediate >> > pseuso-assembler. >> > Would it be a reasonable idea to compile CLISP into that? >> >> What would be the benefits and drawbacks vs. compiling to C ? >> >> * Benefits: >> >> You can do some things which you cannot express in C: >> - Functions with multiple entry points, useful for functions with keyword >> arguments. >> - unwind-protect and handler-case (although you can express them in Java, >> which means that gcc already has support for it). I did not realize these arguments! My idea was that *.fas byte-code might be ideologically closer to the gcc's "pseuso-assembler", so the compilation might be easier. >> * Drawbacks: >> >> - Compiling into gcc's tree and rtl representations is a lot of work. >> When clisp's compiler, written in Lisp, is 500KB, you can imagine its >> size if it were written in C. (Just for comparison, the Java frontend >> of gcc is already 2.5 MB of C code right now.) And if it's not written >> in C, you have a bootstrapping problem (like GNAT, the GNU Ada compiler, >> has). Nope. You are saying that CLISP will deteriorate into the CMUCL's disaster of "you need cmucl to build cmucl". Not necessarily. IIUC from observing the CLISP build process, it goes like this: 1. build lisp.run from *.d 2. load *.lsp and dump interpreted.mem 3. compile compiler.lsp (into compiler.fas) 4. load *.lsp + compiler.fas and dump halfcompiled.mem 5. compile *.lsp (into *.fas) 6. load *.fas and dump lispinit.mem. Now the native compiler will add the following steps: 7. compile native-comp.fas (into native-comp.bin) 8. load native-comp.bin and dump binhalfcompiled.mem [this step can be omitted] 9. compile *.fas (into *.bin) 10. load *.bin and dump lispinitbin.mem Yes, this is 50-60% more at build time. If it will buy orders of magnitude of speedup, it is worth it. >> - When compiling to C, you have distinct passes, which makes development >> and bug tracking a lot easier: just have a look at the intermediate C file >> and you know whether the bug is in the Lisp to C compiler or in the C to >> machine code compiler. This is a very strong point. Another drawback (moderate) is that this would mean sticking with gcc - no other C compiler would do. The issue here is: will CLISP remain "a nice small CL for fun" or will it graduate to an "industry strength implementation". IMO, "industry strength" means - MT - ANSI - native compilation. -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. MS DOS: Keyboard not found. Press F1 to continue. From haible@ilog.fr Fri Oct 23 08:20:16 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id IAA11055 for ; Fri, 23 Oct 1998 08:20:10 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id RAA20795 for ; Fri, 23 Oct 1998 17:34:27 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id RAA23491; Fri, 23 Oct 1998 17:34:25 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id RAA05029; Fri, 23 Oct 1998 17:34:27 +0200 (MET DST) Date: Fri, 23 Oct 1998 17:34:27 +0200 (MET DST) Message-Id: <199810231534.RAA05029@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: compiler In-Reply-To: <9810231336.AA19622@magalhaes.isr.ist.utl.pt> References: <9810231336.AA19622@magalhaes.isr.ist.utl.pt> Rodrigo Ventura writes: > But let me ask, how hard is it to > translate from the CLISP bytecode into assembly? The CLISP VM is a > stack machine, right? Isn't it straightforward to turn that into > assembly, say, using memory stack instead of taking advantage of the > multiple registers? Even this inefficient way would be faster than the > present implementation, which I suppose must use some sort of dispatch > table and manual instruction fetch loop. You're right. Such a direct bytecode to machine code translation would be about twice as fast as current clisp. (I know that half of the time of the bytecode interpreter is spent in fetching and decoding the bytecode instructions.) For a widely used CPU, such as x86, I think it's worth doing. Bruno From Immanuel.Litzroth@pandora.be Fri Oct 23 10:22:49 1998 Received: from hercules.telenet-ops.be (hercules.telenet-ops.be [195.130.132.33]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id KAA12548 for ; Fri, 23 Oct 1998 10:22:47 -0700 (PDT) Received: from pepper.nirvana.be.pandora.be ([195.130.146.38]) by hercules.telenet-ops.be (Netscape Messaging Server 3.6) with ESMTP id AAA20E1; Fri, 23 Oct 1998 19:36:54 +0200 From: Immanuel Litzroth To: clisp-list@seagull.cons.org CC: clisp-list@clisp.cons.org In-reply-to: (message from Sam Steingold on Fri, 23 Oct 1998 00:00:09 -0700 (PDT)) Subject: Re: compiler References: Date: Fri, 23 Oct 1998 19:36:54 +0200 Message-ID: <77189F2DE46.AAA20E1@hercules.telenet-ops.be> >>>>> "Sam Steingold" == Sam Steingold writes: Sam Steingold> IIRC, gcc compiles c/c++/obj-c to some internal Sam Steingold> intermediate pseuso-assembler. Would it be a Sam Steingold> reasonable idea to compile CLISP into that? Thought about this too, but the following fragment comes from the gcc info file. > People frequently have the idea of using RTL stored as text in a >file as an interface between a language front end and the bulk of GNU >CC. This idea is not feasible. > GNU CC was designed to use RTL internally only. Correct RTL for a >given program is very dependent on the particular target machine. And >the RTL does not contain all the information about the program. > The proper way to interface GNU CC to a new language front end is >with the "tree" data structure. There is no manual for this data >structure, but it is described in the files `tree.h' and `tree.def'. Maybe someone should check this out, as I have not the time (or the skills). Immanuel From haible@ilog.fr Fri Oct 23 11:37:02 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id LAA13446 for ; Fri, 23 Oct 1998 11:37:01 -0700 (PDT) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id UAA26587 for ; Fri, 23 Oct 1998 20:51:19 +0200 (MET DST) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id UAA01209; Fri, 23 Oct 1998 20:51:17 +0200 (MET DST) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id UAA05330; Fri, 23 Oct 1998 20:51:18 +0200 (MET DST) Date: Fri, 23 Oct 1998 20:51:18 +0200 (MET DST) Message-Id: <199810231851.UAA05330@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: encode-universal-time bug in clisp-1998-09-09? In-Reply-To: References: Russell Senior writes: > > (decode-universal-time (encode-universal-time 0 0 0 1 1 1970)) > 0 ; 0 ; 23 ; 31 ; 12 ; 1969 ; 2 ; NIL ; 8 > Seems like this could be more robust, perhaps falling back to the code > in src/timezone.lsp? I just made the code more robust, thus fixing bug you mentioned in the development sources. Thanks for the suggestion. Bruno ! To unsubscribe from the clisp-list mailing list, send mail to ! ! listproc@clisp.cons.org ! ! including the two words "unsubscribe clisp-list" as message body. ! From toy@rtp.ericsson.se Sun Oct 25 04:40:09 1998 Received: from gwa.ericsson.com (gwa.ericsson.com [198.215.127.2]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id EAA02526 for ; Sun, 25 Oct 1998 04:40:08 -0800 (PST) Received: from mr4.exu.ericsson.se ([138.85.11.56]) by gwa.ericsson.com (8.8.8/8.8.8) with ESMTP id GAA26744; Sun, 25 Oct 1998 06:54:12 -0600 (CST) Received: from netmanager7.rtp.ericsson.se (netmanager7.rtp.ericsson.se [147.117.132.245]) by mr4.exu.ericsson.se (8.8.8/8.8.8) with SMTP id GAA10547; Sun, 25 Oct 1998 06:54:11 -0600 (CST) Received: from rcur (wcsdsp4 [147.117.132.216]) by netmanager7.rtp.ericsson.se (8.6.12/8.6.4) with ESMTP id HAA29335; Sun, 25 Oct 1998 07:54:10 -0500 To: clisp-list@seagull.cons.org cc: Multiple recipients of list References: Subject: Re: compiler In-reply-to: (Your message of Fri, 23 Oct 1998 07:34:05 PDT.) Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Date: Sun, 25 Oct 1998 07:54:10 -0500 Message-ID: <4585.909320050@rtp.ericsson.se> From: Raymond Toy >>>>> "Sam" == Sam Steingold writes: Sam> Nope. You are saying that CLISP will deteriorate into the CMUCL's Sam> disaster of "you need cmucl to build cmucl". Not necessarily. Sam> IIUC from observing the CLISP build process, it goes like this: No seems to consider gcc to be a disaster. Have you ever tried building it without a C compiler? So, you basically need "gcc to build gcc". The only real difference is that no one has made it possible to compile CMUCL's compiler on a different lisp. Ray From Paul.Sokolovsky@technologist.com Sun Oct 25 06:11:14 1998 Received: from infoservice.lg.ua (is.lg.ua [195.145.213.42]) by seagull.cdrom.com (8.8.8/8.6.6) with SMTP id GAA03329 for ; Sun, 25 Oct 1998 06:11:08 -0800 (PST) Received: from is by infoservice.lg.ua with smtp (Smail3.2 #11) id m0zXR7F-000QB5C; Sun, 25 Oct 1998 16:25:57 +0200 (EET) Date: Sun, 25 Oct 1998 17:27:02 +0300 From: Paul Sokolovsky X-Mailer: The Bat! (v1.00 Christmas Preview) Registered to _ Reply-To: Paul Sokolovsky Priority: Normal Message-ID: <14727.981025@technologist.com> To: clisp-list@clisp.cons.org Subject: libreadline 2.0 port to win32 available Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hello Clisp-list, With great pleasure I may report that GNU readline library port to win32 is available. Maybe, authors could consider including it in next release of CLISP for win32. I'd be glad to do it myself, but for this it first should be merely compiled, what is infeasible. http://www.is.lg.ua/~paul/devel/readline/ Best regards, Paul mailto:Paul.Sokolovsky@technologist.com From sds@eaglets.com Sun Oct 25 08:09:48 1998 Received: from smtp0-alterdial.uu.net (smtp0-alterdial.UU.NET [192.48.96.28]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id IAA04504 for ; Sun, 25 Oct 1998 08:09:47 -0800 (PST) Received: from eho.eaglets.com by smtp0-alterdial.uu.net with ESMTP (peer crosschecked as: [208.235.77.238]) id QQfmqj12433; Sun, 25 Oct 1998 16:24:16 GMT Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id LAA01421; Sun, 25 Oct 1998 11:24:14 -0500 To: clisp-list@seagull.cons.org Subject: Re: compiler References: <4585.909320050@rtp.ericsson.se> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: Raymond Toy's message of "Sun, 25 Oct 1998 04:41:11 -0800 (PST)" Date: 25 Oct 1998 11:24:14 -0500 Message-ID: Lines: 45 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <4585.909320050@rtp.ericsson.se> >>>> On the subject of "Re: compiler" >>>> Sent on Sun, 25 Oct 1998 04:41:11 -0800 (PST) >>>> Honorable Raymond Toy writes: >> >>>>> "Sam" == Sam Steingold writes: >> >> >> Sam> Nope. You are saying that CLISP will deteriorate into the CMUCL's >> Sam> disaster of "you need cmucl to build cmucl". Not necessarily. >> Sam> IIUC from observing the CLISP build process, it goes like this: >> >> No seems to consider gcc to be a disaster. Have you ever tried >> building it without a C compiler? So, you basically need "gcc to >> build gcc". I must admit that I have never compiled gcc myself, but I would expect that if I have a working Linux with, say, gcc 2.7, I will be able to do exactly this: $ tar zxfv gcc-2.8.tgz $ cd gcc-2.8 $ ./configure $ make $ make install I would be surprised if the procedure were much different. With cmucl I have to type esoteric commands by hand (there are no makefiles, no configure script, nothing), and at the end, when everything fails, I am told that CMUCL 18a+ cannot compile CMUCL 18b. >> The only real difference is that no one has made it possible to >> compile CMUCL's compiler on a different lisp. A crucial difference! Also, even older versions of CMUCL can't compile a new CMUCL, which is mildly strange (yes, I read the relevant thread in c.l.l). Nobody is trying to insult or denigrate CMUCL, mind you. -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. Bus error -- please leave by the rear door. From jason@netgenics.com Mon Oct 26 05:27:36 1998 Received: from relay.netgenics.com (relay.netgenics.com [207.25.221.162]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id FAA14405 for ; Mon, 26 Oct 1998 05:27:35 -0800 (PST) Received: from netgenics.com (slocombe.dev.netgenics.com [192.168.113.134]) by relay.netgenics.com (8.8.5/8.8.6) with ESMTP id IAA10758 for ; Mon, 26 Oct 1998 08:42:16 -0500 (EST) Message-ID: <36347DF7.E8C214A2@netgenics.com> Date: Mon, 26 Oct 1998 08:49:43 -0500 From: Jason Karney Organization: NetGenics, Inc. X-Mailer: Mozilla 4.05 [en] (WinNT; I) MIME-Version: 1.0 To: clisp list Subject: latest version of CLISP? Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi, "1997-09-19 (September 1997)" is the version of CLISP I am using (obtained as a prebuilt binary for Windows). Is there a newer version? Thanks for the info. -- Jason Karney <- Advanced Technology Scientist NetGenics, Inc. [jason@netgenics.com] [STOP] Okay, you were there yesterday, but Where do you want to go tomorrow? From sds@eaglets.com Mon Oct 26 06:03:19 1998 Received: from smtp0-alterdial.uu.net (smtp0-alterdial.UU.NET [192.48.96.28]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA14883 for ; Mon, 26 Oct 1998 06:03:18 -0800 (PST) Received: from eho.eaglets.com by smtp0-alterdial.uu.net with ESMTP (peer crosschecked as: [208.235.77.238]) id QQfmtt11766; Mon, 26 Oct 1998 14:17:59 GMT Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id JAA03788; Mon, 26 Oct 1998 09:17:58 -0500 To: clisp-list@seagull.cons.org Subject: Re: latest version of CLISP? References: <36347DF7.E8C214A2@netgenics.com> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: Jason Karney's message of "Mon, 26 Oct 1998 05:30:30 -0800 (PST)" Date: 26 Oct 1998 09:17:58 -0500 Message-ID: Lines: 15 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <36347DF7.E8C214A2@netgenics.com> >>>> On the subject of "latest version of CLISP?" >>>> Sent on Mon, 26 Oct 1998 05:30:30 -0800 (PST) >>>> Honorable Jason Karney writes: >> >> "1997-09-19 (September 1997)" is the version of CLISP I am using (obtained as a >> prebuilt binary for Windows). Is there a newer version? no - but you can build your own from the CVS tree. -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. Diplomacy is the art of saying "nice doggy" until you can find a rock. From toy@rtp.ericsson.se Mon Oct 26 06:15:27 1998 Received: from gwa.ericsson.com (gwa.ericsson.com [198.215.127.2]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id GAA15152 for ; Mon, 26 Oct 1998 06:15:27 -0800 (PST) Received: from mr4.exu.ericsson.se ([138.85.11.56]) by gwa.ericsson.com (8.8.8/8.8.8) with ESMTP id IAA14059 for ; Mon, 26 Oct 1998 08:29:37 -0600 (CST) Received: from netmanager7.rtp.ericsson.se (netmanager7.rtp.ericsson.se [147.117.132.245]) by mr4.exu.ericsson.se (8.8.8/8.8.8) with SMTP id IAA25884 for ; Mon, 26 Oct 1998 08:29:36 -0600 (CST) Received: from rcur (wcsdsp4 [147.117.132.216]) by netmanager7.rtp.ericsson.se (8.6.12/8.6.4) with ESMTP id JAA10598 for ; Mon, 26 Oct 1998 09:29:36 -0500 To: clisp-list@seagull.cons.org References: Subject: Re: compiler In-reply-to: (Your message of Sun, 25 Oct 1998 08:10:00 PST.) Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Date: Mon, 26 Oct 1998 09:29:35 -0500 Message-ID: <6382.909412175@rtp.ericsson.se> From: Raymond Toy >>>>> "Sam" == Sam Steingold writes: Sam> With cmucl I have to type esoteric commands by hand (there are no Sam> makefiles, no configure script, nothing), and at the end, when Sam> everything fails, I am told that CMUCL 18a+ cannot compile CMUCL 18b. There are scripts in the tools directory. I've never used them, except for worldbuild and worldload. I do it with home-made scripts. >>> The only real difference is that no one has made it possible to >>> compile CMUCL's compiler on a different lisp. Sam> A crucial difference! Also, even older versions of CMUCL can't compile Sam> a new CMUCL, which is mildly strange (yes, I read the relevant thread in Sam> c.l.l). I guess that's just the nature of lisp: compiling a lisp can modify the running lisp. Sam> Nobody is trying to insult or denigrate CMUCL, mind you. None taken. I agree that it's bad for CMUCL that building is so hard. I think CMUCL would progress much faster than it has if it weren't so hard. It took many months to get specialized support for complex numbers in, and that wasn't particularly hard. It would be nice if CLISP could be used to compile up a new version of CMUCL. I guess all the principal developers are too busy for such a mundane task. Oh, well. Ray From sds@eaglets.com Mon Oct 26 07:04:35 1998 Received: from smtp0-alterdial.uu.net (smtp0-alterdial.UU.NET [192.48.96.28]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id HAA15699 for ; Mon, 26 Oct 1998 07:04:34 -0800 (PST) Received: from eho.eaglets.com by smtp0-alterdial.uu.net with ESMTP (peer crosschecked as: [208.235.77.238]) id QQfmtx29237; Mon, 26 Oct 1998 15:19:15 GMT Received: (from sds@localhost) by eho.eaglets.com (8.9.1/8.9.1) id KAA04188; Mon, 26 Oct 1998 10:19:14 -0500 To: clisp-list@seagull.cons.org Cc: Multiple recipients of list Subject: Re: compiler References: <6382.909412175@rtp.ericsson.se> Return-Receipt-To: sds@goems.com Reply-To: sds@goems.com X-Disclaimer: You should not expect anyone to agree with me. X-Attribution: Sam X-No-Archive: Yes Mail-Copies-To: never From: Sam Steingold In-Reply-To: Raymond Toy's message of "Mon, 26 Oct 1998 06:15:31 -0800 (PST)" Date: 26 Oct 1998 10:19:14 -0500 Message-ID: Lines: 15 X-Mailer: Gnus v5.5/Emacs 20.3 >>>> In message <6382.909412175@rtp.ericsson.se> >>>> On the subject of "Re: compiler" >>>> Sent on Mon, 26 Oct 1998 06:15:31 -0800 (PST) >>>> Honorable Raymond Toy writes: >> >> It would be nice if CLISP could be used to compile up a new version >> of CMUCL. I wonder what breaks when CLISP loads Python. -- Sam Steingold (http://www.goems.com/~sds) running RedHat5.1 GNU/Linux Micros**t is not the answer. Micros**t is a question, and the answer is Linux, (http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation. I want Tamagochi! -- What for? Your pet hamster is still alive! From toy@rtp.ericsson.se Mon Oct 26 07:12:20 1998 Received: from gwu.ericy.com (gwu.ericy.com [208.196.3.162]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id HAA15921 for ; Mon, 26 Oct 1998 07:12:18 -0800 (PST) Received: from mr4.exu.ericsson.se ([138.85.11.56]) by gwu.ericy.com (8.8.8/8.8.8) with ESMTP id JAA20665; Mon, 26 Oct 1998 09:27:35 -0600 (CST) Received: from netmanager7.rtp.ericsson.se (netmanager7.rtp.ericsson.se [147.117.132.245]) by mr4.exu.ericsson.se (8.8.8/8.8.8) with SMTP id JAA06201; Mon, 26 Oct 1998 09:26:21 -0600 (CST) Received: from rcur (wcsdsp4 [147.117.132.216]) by netmanager7.rtp.ericsson.se (8.6.12/8.6.4) with ESMTP id KAA14382; Mon, 26 Oct 1998 10:26:20 -0500 To: clisp-list@seagull.cons.org cc: Multiple recipients of list References: Subject: Re: compiler In-reply-to: (Your message of Mon, 26 Oct 1998 07:04:49 PST.) Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Date: Mon, 26 Oct 1998 10:26:20 -0500 Message-ID: <6501.909415580@rtp.ericsson.se> From: Raymond Toy >>>>> "Sam" == Sam Steingold writes: >>>>> In message <6382.909412175@rtp.ericsson.se> >>>>> On the subject of "Re: compiler" >>>>> Sent on Mon, 26 Oct 1998 06:15:31 -0800 (PST) >>>>> Honorable Raymond Toy writes: >>> >>> It would be nice if CLISP could be used to compile up a new version >>> of CMUCL. Sam> I wonder what breaks when CLISP loads Python. It's mostly the fact that the packages and stuff don't exist. You have to go track down lots of support packages, then compile, and load them, before you can actually compile Python. After an hour of so, I stopped trying. I should try again, because I know much more about CMUCL than I did then.... Ray From schrod@npc.de Mon Oct 26 08:50:49 1998 Received: from mail.omnilink.net (mail.omnilink.net [194.64.25.6]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id IAA16802 for ; Mon, 26 Oct 1998 08:50:47 -0800 (PST) Received: from gazette.omnilink.net (gazette.omnilink.net [194.64.25.22]) by mail.omnilink.net (8.9.1a/8.9.1) with ESMTP id SAA17370 for ; Mon, 26 Oct 1998 18:04:57 +0100 (MET) Received: (from uucp@localhost) by gazette.omnilink.net (8.8.7/8.8.7) with UUCP id SAA25997 for clisp-list@seagull.cons.org; Mon, 26 Oct 1998 18:04:57 +0100 (MET) (envelope-from schrod@npc.de) Received: (from schrod@localhost) by npc.de (8.6.12/8.6.12) id RAA23650; Mon, 26 Oct 1998 17:01:35 +0100 Date: Mon, 26 Oct 1998 17:01:35 +0100 Message-Id: <199810261601.RAA23650@npc.de> From: Joachim Schrod To: clisp-list@seagull.cons.org Subject: Re: kinds of clisp applications In-Reply-To: <199810241311.PAA21381@npc.de> References: <199810241311.PAA21381@npc.de> Mime-Version: 1.0 (generated by tm-edit 7.95) Content-Type: text/plain; charset=US-ASCII >>>>> "BH" == Bruno Haible writes: BH> What is CLISP being used for? Some of our projects: xindy, a next-generation index processor, is written in CLISP. (Note that this is an index processor, not an indexing system.) http://www.iti.informatik.th-darmstadt.de/xindy/ has more information. xindy is actively developped. It is one of the projects that try to push out a Lisp-based systems to the `masses' who are not interested in Lisp at all. An interesting part problem is the creation of a reasonably good source distribution. (Distribution and documentation structure are currently one of our greatest hurdles.) -- If anyone wants to give a hand here, contact Roger or me... :-) :-) xindy builds on the ideas of STIL, (`SGML Transformations in Lisp', a style sheet language to create structure-controlled SGML applications.) STIL is an experiment to check if a CLOS-based approach may be used in that context, instead of the commonly used scheme-based DSSSL approaches. It is not a production system. STIL is not actively developped. Oh yes, and ETLS, the Executable TeX Language Specification. An interpreter for a formal specification of the TeX Macro Language, written in CLISP. (The concept used is very near to standard denotational semantics.) Some day, I'm going to continue on that project, make a TeX debugger out of it to show that this theoretical work can have practical consequences... :-) Besides, Lisp systems to interpret specifications of UI toolkits. But that's up to Gabor to describe, he's reading this list, too. :-) Cheers, Joachim -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Joachim Schrod Email: jschrod@acm.org Net & Publication Consultance GmbH Tel.: +49-6074-861530 Roedermark, Germany Fax: +49-6074-861531 From donc@ISI.EDU Mon Oct 26 23:04:38 1998 Received: from tnt.isi.edu (tnt.isi.edu [128.9.128.128]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id XAA23606 for ; Mon, 26 Oct 1998 23:04:38 -0800 (PST) Received: from ISI.EDU (tnt.isi.edu [128.9.128.128]) by tnt.isi.edu (8.8.7/8.8.6) with ESMTP id XAA22823; Mon, 26 Oct 1998 23:19:18 -0800 (PST) Message-Id: <199810270719.XAA22823@tnt.isi.edu> To: clisp-list@seagull.cons.org cc: Multiple recipients of list Subject: Re: latest version of CLISP Date: Mon, 26 Oct 1998 23:19:18 -0800 From: Don Cohen Latest clisp in linux has been giving me some problems. Anyone have any ideas where to even start looking? These are not trivially reproducible, which leads me to suspect GC. Or maybe hardware. (This machine is pretty flakey, but linux hasn't suffered any obvious problems through all of this, so probably that's not it.) (lisp-implementation-version) "1998-08-29 (August 1998)" ================ *** - handle_fault error2 ! address = 0x8EFB43C not in [0x20194000,0x202DDA8C) ! SIGSEGV cannot be cured. Fault address = 0x8EFB43C. Segmentation fault (core dumped) ================ *** - handle_fault error2 ! address = 0x2003BB18 not in [0x20194000,0x202930EC) ! SIGSEGV cannot be cured. Fault address = 0x2003BB18. Segmentation fault (core dumped) ================ *** - handle_fault error2 ! address = 0x5 not in [0x20194000,0x20293690) ! SIGSEGV cannot be cured. Fault address = 0x5. Segmentation fault (core dumped) ================ *** - handle_fault error2 ! address = 0x20F05D5C not in [0x20194000,0x20363AA8) ! SIGSEGV cannot be cured. Fault address = 0x20F05D5C. Segmentation fault (core dumped) ================ From arvo@goblin.cs.caltech.edu Tue Oct 27 21:11:29 1998 Received: from csvax.cs.caltech.edu (csvax.cs.caltech.edu [131.215.131.131]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id VAA04984 for ; Tue, 27 Oct 1998 21:11:29 -0800 (PST) Received: from goblin.cs.caltech.edu (goblin.cs.caltech.edu [131.215.131.116]) by csvax.cs.caltech.edu (8.9.1/8.9.1) with SMTP id VAA10536 for ; Tue, 27 Oct 1998 21:26:21 -0800 (PST) Received: (from arvo@localhost) by goblin.cs.caltech.edu (950413.SGI.8.6.12/950213.SGI.AUTOCF) id VAA03370 for clisp-list@clisp.cons.org; Tue, 27 Oct 1998 21:37:42 -0800 From: "Jim Arvo" Message-Id: <9810272137.ZM3368@goblin.cs.caltech.edu> Date: Tue, 27 Oct 1998 21:37:42 -0800 X-Mailer: Z-Mail (3.2.3 08feb96 MediaMail) To: clisp-list@clisp.cons.org Subject: Disabling CLOS warnings Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Is it possible to disable warnings of the following type in clisp? WARNING: The generic function # is being modified, but has already been called. From haible@ilog.fr Wed Oct 28 01:01:46 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id BAA06871 for ; Wed, 28 Oct 1998 01:01:45 -0800 (PST) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id KAA11339 for ; Wed, 28 Oct 1998 10:16:36 +0100 (MET) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id KAA06740; Wed, 28 Oct 1998 10:16:36 +0100 (MET) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id KAA02664; Wed, 28 Oct 1998 10:16:34 +0100 (MET) Date: Wed, 28 Oct 1998 10:16:34 +0100 (MET) Message-Id: <199810280916.KAA02664@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: Disabling CLOS warnings In-Reply-To: <9810272137.ZM3368@goblin.cs.caltech.edu> References: <9810272137.ZM3368@goblin.cs.caltech.edu> Jim Arvo writes: > Is it possible to disable warnings of the following type in clisp? > > WARNING: > The generic function # is being modified, > but has already been called. This warning does not occur any more in the newest release (1998-09-09). Btw, new binaries of 1998-09-09 are on the ftp server for the following platforms: decalpha-osf4, hppa1.1-hpux10.20, rs6000-aix4.2, sparc-sunos5.4, sparc-sunos4. Bruno From haible@ilog.fr Wed Oct 28 08:51:40 1998 Received: from sceaux.ilog.fr (sceaux.ilog.fr [193.55.64.10]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id IAA10847 for ; Wed, 28 Oct 1998 08:51:39 -0800 (PST) Received: from ilog.ilog.fr ([172.17.4.22]) by sceaux.ilog.fr (8.8.8/8.8.7) with ESMTP id SAA03135 for ; Wed, 28 Oct 1998 18:06:33 +0100 (MET) Received: from jaures.ilog.fr (jaures.ilog.fr [172.16.1.81]) by ilog.ilog.fr (8.8.8/8.7.3) with ESMTP id SAA05045; Wed, 28 Oct 1998 18:06:32 +0100 (MET) From: Bruno Haible Received: (from haible@localhost) by jaures.ilog.fr (8.9.0/8.9.0) id SAA05729; Wed, 28 Oct 1998 18:06:32 +0100 (MET) Date: Wed, 28 Oct 1998 18:06:32 +0100 (MET) Message-Id: <199810281706.SAA05729@jaures.ilog.fr> To: clisp-list@seagull.cons.org Subject: Re: latest version of CLISP In-Reply-To: <199810270719.XAA22823@tnt.isi.edu> References: <199810270719.XAA22823@tnt.isi.edu> Don Cohen writes: > Latest clisp in linux has been giving me some problems. > Anyone have any ideas where to even start looking? The first thing to check is whether your shared libraries match the ones the binaries were built with. Newer shared libraries usually work; older ones sometimes don't. Here is the list of libraries Sam and I used to build the binaries: i386-linux-libc5: base binary: libc.so.5.4.46 libm.so.5.0.9 libdl.so.1.9.9 libncurses.so.3.0.980228 full binary: same, plus libX11.so.6.1 libXext.so.6.3 libXpm.so.4.10 i386-linux-libc6: base binary: libc.so.6 -> libc-2.0.7.so libdl.so.2 -> libdl-2.0.7.so libtermcap.so.2.0.8 full binary: same, plus libX11.so.6.1 libXext.so.6.3 libXpm.so.4.10 > These are not trivially reproducible, which leads me to suspect GC. > Or maybe hardware. If you can experience the same crash when running the same program with the same input under the same circumstances (and it doesn't use random or interactive input), then it's likely to be a problem with CLISP, maybe GC. If you can't reproduce it, my guess it hardware problems, or an unstable kernel version. Bruno From Paul.Sokolovsky@technologist.com Wed Oct 28 13:05:02 1998 Received: from infoservice.lg.ua (is.lg.ua [195.145.213.42]) by seagull.cdrom.com (8.8.8/8.6.6) with SMTP id NAA13372 for ; Wed, 28 Oct 1998 13:04:03 -0800 (PST) Received: from is by infoservice.lg.ua with smtp (Smail3.2 #11) id m0zYd0C-000QBwC; Wed, 28 Oct 1998 23:19:36 +0200 (EET) Date: Wed, 28 Oct 1998 23:20:09 +0300 From: Paul Sokolovsky X-Mailer: The Bat! (v1.00 Christmas Preview) Registered to _ Reply-To: Paul Sokolovsky Priority: Normal Message-ID: <9972.981028@technologist.com> To: clisp-list@clisp.cons.org Subject: Re: compiler Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hello Clisp-list, What about general look at compilation ? Analysis needed to make optimal code may be divided in two categories: 1. Data flow analysis 2. Control flow analysis First is one best dealed with "traditional" compilers like GCC, this is why usually people prefer to compile to C, just not to mind about such trivialities. But control flow analysis always was powerful side of Lispish compilers - let's remember classic 'Rabbit: Compiler for Scheme' by Guy Steele. CLISP with its 500k compiler, surely, too employs sofisticated CF analysis. AT opposite, this a weak side of conventional compilers - even last features like EGCS far from good at this. So, idea may be viewed as to combine this analyses in one powerful optimizer having nothing in common with previous toyish approaches. Of course, this analyzer must work in closed, complete and hence decidable (I don't use this words in mathematical sense) environment, i.e. know all about all. To achive this, system must be basised on small set of primitives with known properties and other operations must be built on them. This will allow sofisticated dataflow analysis, e.g. type deduction. To achive optimal translation of complex operations into sequences of primitives, sofisticated controlflow analyses required. Last words on what it should compile to. C is out of scope - it just can't represent advanced control-flow structure. So, some specific representation required - not so hi-level to allow machine code generation just with primitive additional anylasys (e.g. register allocation), but still machine (even virtual) independent - no such things as registers. It may be noted that things as register allocation aren't primitive at all - this surely right, but it's not the most important thing in all process. And at all, current hardware more and more fades boundary between register and memory access - if something needed often, it will be on cache, so even code generation with only one accumulator may be not so bad. Of course, that's not so good for RISCs unable to access memory in all commands - but anyway all that just inherent hardware idiosyncrasies, last thing to deal with. All this is surely not new. Maybe, it's very trivial and automagically understandable, but what is sure that we don't have it implemented (maybe in lisp machines - sorry, never seen something except my creepy pentuin box). But at least we can see approaches to: Aforementioned "Rabbit: A Compiler for Scheme" by Guy L. Steele, Jr. ftp://publications.ai.mit.edu/ai-publications/0-499/AITR-474.ps Type deducing is used in Standard ML http://www.cs.bell-labs.com/cm/cs/what/smlnj/index.html Something about proper design of virtual machine that then allows generation of effective code ftp://ftp.cs.indiana.edu/pub/scheme-repository/doc/pubs/pvm.ps.gz Described closed-world approach exactly what is being done by Jeffrey Siskind in his Stalin (Scheme compiler) ftp://ftp.nj.nec.com/pub/qobi/stalin-0.7-no-binaries.tar.Z So, it's hardly to develop something new. Instead, it may be developed _usable_ - point, where all previously written stuff connects with CLISP. Best regards, Paul mailto:Paul.Sokolovsky@technologist.com From toy@rtp.ericsson.se Wed Oct 28 13:55:36 1998 Received: from gwa.ericsson.com (gwa.ericsson.com [198.215.127.2]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id NAA14036 for ; Wed, 28 Oct 1998 13:55:27 -0800 (PST) Received: from mr3.exu.ericsson.se ([138.85.11.55]) by gwa.ericsson.com (8.8.8/8.8.8) with ESMTP id QAA16497; Wed, 28 Oct 1998 16:09:49 -0600 (CST) Received: from netmanager7.rtp.ericsson.se (netmanager7.rtp.ericsson.se [147.117.132.245]) by mr3.exu.ericsson.se (8.8.8/8.8.8) with SMTP id QAA14826; Wed, 28 Oct 1998 16:09:48 -0600 (CST) Received: from rcur (wcsdsp4 [147.117.132.216]) by netmanager7.rtp.ericsson.se (8.6.12/8.6.4) with ESMTP id RAA11036; Wed, 28 Oct 1998 17:09:47 -0500 To: clisp-list@seagull.cons.org cc: Multiple recipients of list References: <199810231534.RAA05029@jaures.ilog.fr> Subject: Re: compiler In-reply-to: (Your message of Fri, 23 Oct 1998 08:20:28 PDT.) <199810231534.RAA05029@jaures.ilog.fr> Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Date: Wed, 28 Oct 1998 17:09:47 -0500 Message-ID: <6616.909612587@rtp.ericsson.se> From: Raymond Toy >>>>> "Bruno" == Bruno Haible writes: Bruno> Rodrigo Ventura writes: >> But let me ask, how hard is it to >> translate from the CLISP bytecode into assembly? The CLISP VM is a >> stack machine, right? Isn't it straightforward to turn that into >> assembly, say, using memory stack instead of taking advantage of the >> multiple registers? Even this inefficient way would be faster than the >> present implementation, which I suppose must use some sort of dispatch >> table and manual instruction fetch loop. Bruno> You're right. Such a direct bytecode to machine code translation would Bruno> be about twice as fast as current clisp. (I know that half of the time Bruno> of the bytecode interpreter is spent in fetching and decoding the bytecode Bruno> instructions.) For a widely used CPU, such as x86, I think it's worth Bruno> doing. Wouldn't it be possible to cache or compile the bytecode lookup directly into the corresponding built-in native lisp ops? I might be way off base here, since I don't know how the compiler/bytecode interpreter works. If this works, then everyone wins, and it might be easier to do than compile to x86 code. Ray From toy@rtp.ericsson.se Wed Oct 28 14:03:19 1998 Received: from gwa.ericsson.com (gwa.ericsson.com [198.215.127.2]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id OAA14247 for ; Wed, 28 Oct 1998 14:02:58 -0800 (PST) Received: from mr4.exu.ericsson.se ([138.85.11.56]) by gwa.ericsson.com (8.8.8/8.8.8) with ESMTP id QAA17461; Wed, 28 Oct 1998 16:17:26 -0600 (CST) Received: from netmanager7.rtp.ericsson.se (netmanager7.rtp.ericsson.se [147.117.132.245]) by mr4.exu.ericsson.se (8.8.8/8.8.8) with SMTP id QAA09412; Wed, 28 Oct 1998 16:17:25 -0600 (CST) Received: from rcur (wcsdsp4 [147.117.132.216]) by netmanager7.rtp.ericsson.se (8.6.12/8.6.4) with ESMTP id RAA11301; Wed, 28 Oct 1998 17:16:21 -0500 To: clisp-list@seagull.cons.org cc: Multiple recipients of list References: <9972.981028@technologist.com> Subject: Re: compiler In-reply-to: (Your message of Wed, 28 Oct 1998 13:05:56 PST.) <9972.981028@technologist.com> Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Date: Wed, 28 Oct 1998 17:16:21 -0500 Message-ID: <6628.909612981@rtp.ericsson.se> From: Raymond Toy >>>>> "Paul" == Paul Sokolovsky writes: Paul> Hello Clisp-list, Paul> What about general look at compilation ? Paul> Analysis needed to make optimal code may be divided in two Paul> categories: Paul> 1. Data flow analysis Paul> 2. Control flow analysis Paul> First is one best dealed with "traditional" compilers like GCC, Paul> this is why usually people prefer to compile to C, just not to mind Paul> about such trivialities. Would a C compiler working on lisp-compiled-to-C code be able to really do the correct "optimum" data flow analysis of the original C? (I have no idea.) Paul> Last words on what it should compile to. C is out of scope - it Paul> just can't represent advanced control-flow structure. So, some Do you mean C can't handle this? If so, then you might want to look at a discussion on comp.lang.lisp or comp.lang.scheme a while back. Jeffrey Siskind presented some results from his Stalin scheme compiler that compiles to C. The resulting C code was much faster than the equivalent C version of the test. I believe the gain came from the fact that Stalin could do the interprocedural data-flow to produce good code. The C compiler couldn't do this, even when all of the procedures were in the same file. This seems to say that using C is fine, if your Lisp compiler is smart enough. Ray From gadbois@cyc.com Wed Oct 28 14:23:10 1998 Received: from catbert.cyc.com (catbert.cyc.com [207.207.8.5]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id OAA14640 for ; Wed, 28 Oct 1998 14:23:10 -0800 (PST) Received: from lagavulin.cyc.com (gadbois@lagavulin [207.207.8.13]) by catbert.cyc.com (8.8.8/8.8.8) with ESMTP id QAA21770; Wed, 28 Oct 1998 16:37:25 -0600 (CST) Received: (from gadbois@localhost) by lagavulin.cyc.com (8.8.8/8.8.8) id QAA28234; Wed, 28 Oct 1998 16:37:31 -0600 Date: Wed, 28 Oct 1998 16:37:31 -0600 Message-Id: <199810282237.QAA28234@lagavulin.cyc.com> From: David Gadbois To: clisp-list@clisp.cons.org In-reply-to: <6628.909612981@rtp.ericsson.se> (message from Raymond Toy on Wed, 28 Oct 1998 14:03:41 -0800 (PST)) Subject: Re: compiler References: <6628.909612981@rtp.ericsson.se> Date: Wed, 28 Oct 1998 14:03:41 -0800 (PST) From: Raymond Toy This seems to say that using C is fine, if your Lisp compiler is smart enough. By way of an aside, there has lately been a lot of grumbling lately about using C as a back end. The C-- language (http://research.microsoft.com/Users/simonpj/c--.html) looks like a promising alternative. --David Gadbois From kuroda@herbrand.msi.co.jp Thu Oct 29 02:42:15 1998 Received: from herbrand.msi.co.jp ([192.51.53.147]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id CAA21200 for ; Thu, 29 Oct 1998 02:42:14 -0800 (PST) Received: (from kuroda@localhost) by herbrand.msi.co.jp (8.8.8/8.8.8) id TAA28226; Thu, 29 Oct 1998 19:57:14 +0900 (JST) (envelope-from kuroda) To: clisp-list@clisp.cons.org Cc: kuroda@msi.co.jp Subject: how to use FFI on win32? Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII From: KURODA Hisao Date: 29 Oct 1998 19:57:14 +0900 Message-ID: <71ww5jbppx.fsf@herbrand.msi.co.jp> Lines: 34 X-Mailer: Gnus v5.5/XEmacs 20.4 - "Emerald" hello. Does anyone know How can I use FFI(Foreign Function Call Facility) on win32? I think perhaps I should make CLISP by cygwin32, but I failed. Followings are my operation and error messages. % cd clisp-1998-09-09 % ./configure % cd src % makekemake --with-readline --with-gettext --with-dynamic-ffi > Makefile % make ..... ..... gcc -O -W -Wswitch -Wcomment -Wpointer-arith -Wimplicit -Wreturn-type -fomit-frame-pointer -O -DDYNAMIC_FFI -x none spvw.o spvwtabf.o spvwtabs.o spvwtabo.o eval.o control.o pathname.o stream.o socket.o io.o array.o hashtabl.o list.o package.o record.o sequence.o charstrg.o debug.o error.o misc.o time.o predtype.o symbol.o lisparit.o graph.o foreign.o unixaux.o ari80386.o modules.o libtermcap.a libintl.a libreadline.a libavcall.a libcallback.a -o lisp.run ..... ..... ./lisp.run -m 750KW -N locale -x "(load \"init.lsp\") (sys::%saveinitmem) (exit)" (d:\clisp\cygwin32\clisp-1998-09-09\src\lisp.run 19441) In cygwin_except_handler ..... ..... (d:\clisp\cygwin32\clisp-1998-09-09\src\lisp.run 19441) In cygwin_except_handler (d:\clisp\cygwin32\clisp-1998-09-09\src\lisp.run 19441) Error while dumping state (probably corrupted stack) make: *** [interpreted.mem] Error 2 % gcc --version cygnus-2.7.2-970404 Vielen Dank. ;;; $Id: .signature,v 1.3 1996/09/20 07:06:26 kuroda Exp $ (define (KURODA Hisao) (email kuroda@msi.co.jp)) From Paul.Sokolovsky@technologist.com Fri Oct 30 06:48:16 1998 Received: from infoservice.lg.ua (is.lg.ua [195.145.213.42]) by seagull.cdrom.com (8.8.8/8.6.6) with SMTP id GAA05284 for ; Fri, 30 Oct 1998 06:48:08 -0800 (PST) Received: from is by infoservice.lg.ua with smtp (Smail3.2 #11) id m0zZG65-000QBxC; Fri, 30 Oct 1998 17:04:17 +0200 (EET) Date: Fri, 30 Oct 1998 17:04:32 +0300 From: Paul Sokolovsky X-Mailer: The Bat! (v1.00 Christmas Preview) Registered to _ Reply-To: Paul Sokolovsky Priority: Normal Message-ID: <10711.981030@technologist.com> To: Raymond Toy Subject: Re[2]: compiler References: <6628.909612981@rtp.ericsson.se> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hello Raymond, > Would a C compiler working on lisp-compiled-to-C code be able to > really do the correct "optimum" data flow analysis of the original C? > (I have no idea.) I think no. > Paul> Last words on what it should compile to. C is out of scope - it > Paul> just can't represent advanced control-flow structure. So, some > > Do you mean C can't handle this? If so, then you might want to look > at a discussion on comp.lang.lisp or comp.lang.scheme a while back. > Jeffrey Siskind presented some results from his Stalin scheme compiler > that compiles to C. The resulting C code was much faster than the > equivalent C version of the test. I believe the gain came from the > fact that Stalin could do the interprocedural data-flow to produce > good code. The C compiler couldn't do this, even when all of the > procedures were in the same file. Yes, right this I argue too. Indeed, closed-world approach in Lisp-like language lets to perform really total analysis, what is never possible (and shouldn't) in C, which compilers stick to notion of 'function'. > This seems to say that using C is fine, if your Lisp compiler is smart > enough. But then, C is superfluous! It just used as kind of assembly language, and not-so-adequate one, since it can't handle computable gotos (not calls), which surely emerge from continuation-passing style transformation, one element of the control-flow optimization. For example, resulting code may be compiled to never use hardware stack (why - really don't know, but consider architectures without hardware stack, and, maybe using own stack will ease such things as its winding), except for FFI. Such code just couldn't be represented in C. But anyway, we se that compiling Common Lisp to Scheme, followed by compiling latter in whatever, is more feasible than compiling directly to whatever. > > Ray Best regards, Paul mailto:Paul.Sokolovsky@technologist.com From attardi@DI.Unipi.IT Sat Oct 31 02:39:11 1998 Received: from mailserver.di.unipi.it (memphis.di.unipi.it [131.114.4.6]) by seagull.cdrom.com (8.8.8/8.6.6) with ESMTP id CAA14364 for ; Sat, 31 Oct 1998 02:39:08 -0800 (PST) Organization: Dipartimento di Informatica di Pisa - Italy Received: from janet.unipi.it (janet.di.unipi.it [131.114.4.233]) by mailserver.di.unipi.it (8.9.1a/8.9.1) with ESMTP id LAA02930; Sat, 31 Oct 1998 11:48:52 +0100 (MET) Received: (attardi@localhost) by janet.unipi.it (8.8.8+Sun/8.6.12) id LAA11991; Sat, 31 Oct 1998 11:47:56 +0100 (MET) Date: Sat, 31 Oct 1998 11:47:56 +0100 (MET) Message-Id: <199810311047.LAA11991@janet.unipi.it> From: Giuseppe Attardi To: clisp-list@seagull.cons.org CC: clisp-list@clisp.cons.org In-reply-to: <9972.981028@technologist.com> (message from Paul Sokolovsky on Wed, 28 Oct 1998 13:07:52 -0800 (PST)) Subject: Re: compiler As Bruno mentioned in passing, the most significant gain in performance can be achieved by exploiting variable declarations. This is especially true for code with many numeric operations: exploiting declarations lots of boxing/unboxing operations, memory allocation and type checks at runtime can be avoided. By performing more careful type analysis, ECL for instance gains 30% performance over GCL. As far as I remember, CLISP discards most type information, and adding type analysis is definitely a major undertaking. -- Beppe