From: Rolf Rander Naess
Subject: compiling clocc
Date: 
Message-ID: <ukwzorakdyc.fsf@pvv.org>
Hi all.

I'm new at lisp, but I thought it would be nice to have some example
code to look at, so i fetched the latest snapshot of clocc from
sourceforge.

However, compiling it turned out to be not exactly straight ahead:

1216$ make all
make: *** No rule to make target `base.lsp', needed by `base.fas'.  Stop.
1217$ make system
make: *** No rule to make target `.system', needed by `system'.  Stop.

I had read someplace that everything needed `port', so I thought this
was a good place to start:

$ make all
/export/a/store/store/camilo/clocc-c/src-00.03.04-386linuxlibc6/bin/run-lisp  -c ext.lsp
(#P"")
*** - UNIX error 13 (EACCES): Permission denied

OK, so lisp doesn't like that my files are symlinked into a read-only
file-system.

Copy the files, and a new try:
Compiling file /export/a/store/store/camilo/clocc-c/clocc/src/port/sys.lsp ...
*** - TRANSLATE-LOGICAL-PATHNAME: unknown logical host "CLOCC" in 
#S(LOGICAL-PATHNAME :HOST "CLOCC" :DEVICE NIL
   :DIRECTORY (:ABSOLUTE "SRC" "PORT") :NAME "EXT" :TYPE NIL :VERSION NIL
  )

que?

Then I thought "I bet these lisp-guys like to do everything from
within lisp", so I fired up clisp to try:

  (mk:compile-system "cllib")

But after spending 3 hours on trying to understand how lisp deals with
pathnames, I gave up.

So, what is the magic sourcery needed?  It should be possible to use
this package without being a lisp-wizard?

(I have clisp 199.07.22 if it matters)


regards
Rolf Rander, confused lisp newbie...

-- 
                                            (c) 2000 Rolf Rander N�ss
http://www.pvv.org/~rolfn/

My mailer limits .sigs to 4 lines. But ingeniously I bypassed this by

From: Rudolf Schlatte
Subject: Re: compiling clocc
Date: 
Message-ID: <lxwvmerpvy.fsf@ist.tu-graz.ac.at>
Rolf Rander Naess <··········@pvv.org> writes:

> Hi all.
> 
> I'm new at lisp, but I thought it would be nice to have some example
> code to look at, so i fetched the latest snapshot of clocc from
> sourceforge.

That's a good idea.  I did the same some months ago.

> Compiling file /export/a/store/store/camilo/clocc-c/clocc/src/port/sys.lsp ...
> *** - TRANSLATE-LOGICAL-PATHNAME: unknown logical host "CLOCC" in 
> #S(LOGICAL-PATHNAME :HOST "CLOCC" :DEVICE NIL
>    :DIRECTORY (:ABSOLUTE "SRC" "PORT") :NAME "EXT" :TYPE NIL :VERSION NIL
>   )
> 
> que?

Load the file clocc.lsp (after editing the pathname translation
therein) in your Lisp startup file (could be .clisprc for clisp, don't
know for sure).  This sets up the logical host clocc to point to
wherever you copied the source tree.

You might consider filing a bug saying that the make process does not
set up the logical host translation automagically.

> Then I thought "I bet these lisp-guys like to do everything from
> within lisp", so I fired up clisp to try:
> 
>   (mk:compile-system "cllib")

I had a short look at cllib.lisp and it uses logical pathnames, too.
So edit and load #p"clocc:clocc.lsp" and it should work better.

> But after spending 3 hours on trying to understand how lisp deals with
> pathnames, I gave up.

You might want to look at http://www.telent.net/lisp/howto.html --
this is a fine, easy-to-read introduction to running Lisp on Linux.
It has a short section on filename handling in Lisp that should get
you going.

> (I have clisp 199.07.22 if it matters)

You could check if there's a newer version; I vaguely recall hearing
that it had buglets with logical pathnames until recently.

> regards
> Rolf Rander, confused lisp newbie...

Don't give up, it's worth it  :-)
From: Sam Steingold
Subject: Re: compiling clocc
Date: 
Message-ID: <uog7qhr18.fsf@ksp.com>
I am sorry to hear about your problems.
Needless to say, I do not have them :-)

The standard way to build everything is to type "make system" (using GNU
make) in a directory writable for you.
make with no args should tell you the available targets. 

>>>> In message <···············@pvv.org>
>>>> On the subject of "compiling clocc"
>>>> Sent on Mon, 03 Apr 2000 22:39:25 GMT
>>>> Honorable Rolf Rander Naess <··········@pvv.org> writes:
 >> 
 >> I'm new at lisp, but I thought it would be nice to have some example
 >> code to look at, so i fetched the latest snapshot of clocc from
 >> sourceforge.

good for you

 >> However, compiling it turned out to be not exactly straight ahead:

what directory are you in?

 >> 1216$ make all
 >> make: *** No rule to make target `base.lsp', needed by `base.fas'.  Stop.
 >> 1217$ make system
 >> make: *** No rule to make target `.system', needed by `system'.  Stop.

this is strange.
are you using GNU make? 

 >> I had read someplace that everything needed `port', so I thought this
 >> was a good place to start:
 >> 
 >> $ make all
 >> /export/a/store/store/camilo/clocc-c/src-00.03.04-386linuxlibc6/bin/run-lisp  -c ext.lsp
 >> (#P"")
 >> *** - UNIX error 13 (EACCES): Permission denied
 >> 
 >> OK, so lisp doesn't like that my files are symlinked into a read-only
 >> file-system.

yeah...

 >> Copy the files, and a new try:
 >> Compiling file /export/a/store/store/camilo/clocc-c/clocc/src/port/sys.lsp ...
 >> *** - TRANSLATE-LOGICAL-PATHNAME: unknown logical host "CLOCC" in 
 >> #S(LOGICAL-PATHNAME :HOST "CLOCC" :DEVICE NIL
 >>    :DIRECTORY (:ABSOLUTE "SRC" "PORT") :NAME "EXT" :TYPE NIL :VERSION NIL
 >>   )
 >> 
 >> que?

you have to load TOP/clocc.lsp, which defines this logical host

 >> Then I thought "I bet these lisp-guys like to do everything from
 >> within lisp", so I fired up clisp to try:
 >> 
 >>   (mk:compile-system "cllib")

what error are you getting here?

 >> But after spending 3 hours on trying to understand how lisp deals with
 >> pathnames, I gave up.

too bad.  please try again!

 >> So, what is the magic sourcery needed?  It should be possible to use
 >> this package without being a lisp-wizard?

indeed.

 >> (I have clisp 199.07.22 if it matters)

it does: you must use 2000-03-06 or newer because of a logical pathname bug.

-- 
Sam Steingold (http://www.podval.org/~sds)
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.
char*a="char*a=%c%s%c;main(){printf(a,34,a,34);}";main(){printf(a,34,a,34);}
From: Rolf Rander Naess
Subject: Re: compiling clocc
Date: 
Message-ID: <ukw8zytrcec.fsf@pvv.org>
Thanks for the replies so far.  Here is the next chapter in my quest
for lisp-glory...

[ Sam Steingold, 04 Apr 2000 10:36 ]
> I am sorry to hear about your problems.
> Needless to say, I do not have them :-)

:-)

> The standard way to build everything is to type "make system" (using GNU
> make) in a directory writable for you.

Obviously after telling which flavour of lisp i run:

  run-lisp: Sorry, option -faslext not supported for LISPTYPE=.

>  >> Rolf Rander Naess <··········@pvv.org> writes:
>  >> However, compiling it turned out to be not exactly straight ahead:
> 
> what directory are you in?

In the top directory

> this is strange.
> are you using GNU make? 

1022$ make --version
GNU Make version 3.78.1, by Richard Stallman and Roland McGrath.

>  >>   (mk:compile-system "cllib")
> what error are you getting here?
> 
>  >> But after spending 3 hours on trying to understand how lisp deals with
>  >> pathnames, I gave up.
> too bad.  please try again!

My problems were more like: "how do I change the default directory",
"how do I find which subdirectories there are in current directory".
Actually, I suppose I should start by looking up "pathname" in a
lisp-book and start from there...  (I tried reading the hyperspec, but
it started out on a bit too technical level.)

Anyway, as suggested in both answers, I edited TOP/clocc.lsp and added
it to my .clisprc.

`make system' from TOP still doesn't work, but from the
port-directory, I could do:
[1]> (load "../defsystem-3.x/defsystem.lisp")
[2]> (mk:compile-system "port")

which worked, but when trying:

[5]> (load "../cllib/cllib.system")
[6]> (mk:compile-system "cllib")

i got:

*** - A file with name /store/store/camilo/clocc-c/src-00.03.04-386linuxlibc6/src/tools/metering/metering does not exist


am I getting closer?

regards,
Rolf Rander

-- 
                                            (c) 2000 Rolf Rander N�ss
http://www.pvv.org/~rolfn/

My mailer limits .sigs to 4 lines. But ingeniously I bypassed this by
From: Sam Steingold
Subject: Re: compiling clocc
Date: 
Message-ID: <ud7o5h50u.fsf@ksp.com>
>>>> In message <···············@pvv.org>
>>>> On the subject of "Re: compiling clocc"
>>>> Sent on Tue, 04 Apr 2000 17:43:25 GMT
>>>> Honorable Rolf Rander Naess <··········@pvv.org> writes:
 >> 
 >> Obviously after telling which flavour of lisp i run:
 >> 
 >>   run-lisp: Sorry, option -faslext not supported for LISPTYPE=.

AHA! here is your problem: you must set LISPTYPE to "clisp"!
(or too whatever CL you are using - see clocc/bin/run-lisp)

 >> My problems were more like: "how do I change the default directory",

see clocc/src/port/sys.lsp which defined `chdir'

 >> [6]> (mk:compile-system "cllib")
 >> *** - A file with name /store/store/camilo/clocc-c/src-00.03.04-386linuxlibc6/src/tools/metering/metering does not exist

the problem is that metering has the extension "lisp" while cllib uses
"lsp" and your clisp doesn't understand it (yet).  please compile
metering by hand:
$ clisp -c metering.lisp

 >> am I getting closer?

yes, you are almost there!



-- 
Sam Steingold (http://www.podval.org/~sds)
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.
You can have it good, soon or cheap.  Pick two...
From: Rolf Rander Naess
Subject: Re: compiling clocc
Date: 
Message-ID: <ukwzor9mpmb.fsf@pvv.org>
[ Sam Steingold, 04 Apr 2000 18:31 ]
> >>>> In message <···············@pvv.org>
> >>>> On the subject of "Re: compiling clocc"
> >>>> Sent on Tue, 04 Apr 2000 17:43:25 GMT
> >>>> Honorable Rolf Rander Naess <··········@pvv.org> writes:
>  >> 
>  >> Obviously after telling which flavour of lisp i run:
>  >> 
>  >>   run-lisp: Sorry, option -faslext not supported for LISPTYPE=.
> 
> AHA! here is your problem: you must set LISPTYPE to "clisp"!
> (or too whatever CL you are using - see clocc/bin/run-lisp)

No, it's not.  I figured this out and set it to clisp.

> the problem is that metering has the extension "lisp" while cllib uses
> "lsp" and your clisp doesn't understand it (yet).  please compile
> metering by hand:
> $ clisp -c metering.lisp

I finally figured that out.  But I'm afraid the solution isn't that
simple...:
$ find . -name \*.lisp|wc -l
     58

I thought I might do still try a fancy lisp-solution, so I renamed all
.lisp to .lsp and did a:

(dolist (pak '(("cllib"              "cllib"  )
	       ("ext/queues"         "queues" )
	       ("math/clmath"        "clmath" )
	       ("port/configuration" "defconf")
	       ("port"               "port"   )
	       ("port/environment"   "env"    )))
	(load (concatenate 'string (car pak) "/" (cadr pak) ".system"))
	(mk:compile-system (cadr pak)))

But it got lost with two levels of directories.

Next try was (as you proposed) using som bash-magic to compile each
file separately:

find . -type d | while read f; do p=`pwd`; cd $f; for g in *.lsp *.lisp
do clisp -q -c $g < /dev/null; done; cd $p; done

This left me with 66 .fas files as opposed to 107 .lisp/.lsp files.

>  >> am I getting closer?
> yes, you are almost there!

I'm loosing faith... ;-)

I suppose this is a bootstrap problem. All (or most, anyway) people
using clocc have done so since the start, and used lisp before taht.
I.e. they already have a lisp environment set up.  Well, I don't, so
theres a challenge :-)


regards
Rolf Rander, still hoping for lisp as login-shell...

-- 
                                            (c) 2000 Rolf Rander N�ss
http://www.pvv.org/~rolfn/

My mailer limits .sigs to 4 lines. But ingeniously I bypassed this by
From: Sam Steingold
Subject: Re: compiling clocc
Date: 
Message-ID: <u7lecxtpf.fsf@ksp.com>
>>>> In message <···············@pvv.org>
>>>> On the subject of "Re: compiling clocc"
>>>> Sent on Tue, 04 Apr 2000 23:09:02 GMT
>>>> Honorable Rolf Rander Naess <··········@pvv.org> writes:
 >> 
 >> I finally figured that out.  But I'm afraid the solution isn't that
 >> simple...:
 >> $ find . -name \*.lisp|wc -l
 >>      58

huh?!
what do you want to do with *ALL* clocc sources?
Let's step back and contemplate, *what* do you expect from CLOCC?
Even if you manage to compile it, it will not be an OS, or editor or web
browser.  What do you *want*?

If you are learning Lisp, you would probably be better off reading code,
not compiling it.

If you are writing something, you might be ineterested in some parts of
CLOCC which do something inetersting to you (XML parsing,
cross-implementation portability, defsystem &c).

If you are just a user looking for a "cool app", I am afraid there is
very little of this kind here: stock quotes, bbdb<-->vcard, fetch latest
RPMs - that's about it, and no gui either.

Just get your expectations right.

 >> I thought I might do still try a fancy lisp-solution, so I renamed
 >> all .lisp to .lsp and did a:

ouch!

 >> Next try was (as you proposed) using som bash-magic to compile each
 >> file separately:
 >> 
 >> find . -type d | while read f; do p=`pwd`; cd $f; for g in *.lsp *.lisp
 >> do clisp -q -c $g < /dev/null; done; cd $p; done
 >> 
 >> This left me with 66 .fas files as opposed to 107 .lisp/.lsp files.

:-)

come on - what exactly do you want to accomplish?

Get me right - I am glad to see someone trying to use Lisp, and I am
genuinely sorry about your problems.  But the task you are trying to
accomplish ("compile all CLOCC") doesn't look reasonable to me.
You would get more help if you could explain your goals.

-- 
Sam Steingold (http://www.podval.org/~sds)
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.
Stupidity, like virtue, is its own reward.
From: Rolf Rander Naess
Subject: Re: compiling clocc
Date: 
Message-ID: <ukw66twtgux.fsf@pvv.org>
[ Sam Steingold, 05 Apr 2000 14:56 ]
> huh?!
> what do you want to do with *ALL* clocc sources?
> Let's step back and contemplate, *what* do you expect from CLOCC?
> Even if you manage to compile it, it will not be an OS, or editor or web
> browser.  What do you *want*?

Good question.  I guess I'm stuck in the traditional C/unix way of
thinking:
 - get the source
 - compile the library
 - include a header-file
 - start programming

> If you are just a user looking for a "cool app", I am afraid there is
> very little of this kind here: stock quotes, bbdb<-->vcard, fetch latest
> RPMs - that's about it, and no gui either.

No, I'm not.  I have a fairly good idea of what I can get out of this,
I just used the wrong approach.  To learn lisp, I intend to start
making small utilities, and hoping to combine them to larger programs
and eventually building great systems.  However, for it to work (for
me) I have to make something useful, which means I need a lot of
support-utilities (this relates to the perl thread recently).  And
instead of inventing the weel over and over, I thought it would be
better to reuse existing code.

This has been a very meaningful day to me!

Sorry if I have wasted your time.

Rolf Rander

-- 
                                            (c) 2000 Rolf Rander N�ss
http://www.pvv.org/~rolfn/

My mailer limits .sigs to 4 lines. But ingeniously I bypassed this by
From: Sam Steingold
Subject: Re: compiling clocc
Date: 
Message-ID: <un1n8nr1j.fsf@ksp.com>
>>>> In message <···············@pvv.org>
>>>> On the subject of "Re: compiling clocc"
>>>> Sent on Wed, 05 Apr 2000 20:48:39 GMT
>>>> Honorable Rolf Rander Naess <··········@pvv.org> writes:
 >> 
 >> To learn lisp, I intend to start making small utilities, and hoping
 >> to combine them to larger programs and eventually building great
 >> systems.  However, for it to work (for me) I have to make something
 >> useful, which means I need a lot of support-utilities (this relates
 >> to the perl thread recently).  And instead of inventing the weel
 >> over and over, I thought it would be better to reuse existing code.

Great! Than CLOCC is the right place to start!

I recommend this approach:

 - compile defsystem by hand
 - dump it with your lisp (make sure that the default invocation of
   CLISP has defsystem in it)
 - cd src/port;  make TAGS; make system;
 - cd src/cllib; make TAGS; make system;

use TAGS to find the code you need.
use `require'.
ask questions on clocc-list.

-- 
Sam Steingold (http://www.podval.org/~sds)
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.
The difference between genius and stupidity is that genius has its limits.
From: Marco Antoniotti
Subject: Re: compiling clocc
Date: 
Message-ID: <lwitxvu0w4.fsf@parades.rm.cnr.it>
Sam Steingold <···@gnu.org> writes:

> >>>> In message <···············@pvv.org>
> >>>> On the subject of "Re: compiling clocc"
> >>>> Sent on Wed, 05 Apr 2000 20:48:39 GMT
> >>>> Honorable Rolf Rander Naess <··········@pvv.org> writes:
>  >> 
>  >> To learn lisp, I intend to start making small utilities, and hoping
>  >> to combine them to larger programs and eventually building great
>  >> systems.  However, for it to work (for me) I have to make something
>  >> useful, which means I need a lot of support-utilities (this relates
>  >> to the perl thread recently).  And instead of inventing the weel
>  >> over and over, I thought it would be better to reuse existing code.
> 
> Great! Than CLOCC is the right place to start!
> 
> I recommend this approach:
> 
>  - compile defsystem by hand

Let me add here that 'defsystem-3.x' is also defined as a CVS 'module'
within the CLOCC.  I.e. you can do

  cvs -d ·········@cvs.clocc.sourceforge.net:/cvsroot/clocc co defsystem-3.x

just to get MK:DEFSYSTEM.

Cheers

-- 
Marco Antoniotti ===========================================
PARADES, Via San Pantaleo 66, I-00186 Rome, ITALY
tel. +39 - 06 68 10 03 17, fax. +39 - 06 68 80 79 26
http://www.parades.rm.cnr.it/~marcoxa
From: Paolo Amoroso
Subject: Re: compiling clocc
Date: 
Message-ID: <yoDsOBZQGLr7v4D1rN=VhEMDnwdX@4ax.com>
On 05 Apr 2000 14:56:28 -0400, Sam Steingold <···@gnu.org> wrote:

> what do you want to do with *ALL* clocc sources?
> Let's step back and contemplate, *what* do you expect from CLOCC?
> Even if you manage to compile it, it will not be an OS, or editor or web
> browser.  What do you *want*?

Perhaps it may be useful to compare CLOCC to a software repository like
CPAN, CTAN, the CMU AI Repository, etc. Just like people don't compile the
whole AI Repository, but grab and compile what they need, CLOCC is probably
not intended to be built as a single package. CLOCC is a "collection", not
an "application". Is this a good comparison?


Paolo
-- 
EncyCMUCLopedia * Extensive collection of CMU Common Lisp documentation
http://cvs2.cons.org:8000/cmucl/doc/EncyCMUCLopedia/
From: Andrew McDowell
Subject: Re: compiling clocc
Date: 
Message-ID: <8cffem$sca$1@hammer.msfc.nasa.gov>
I gave up on CLOCC after experiencing the same problems you have.  I just
attributed it to 'still being under development' pains, and resigned to try
again later.
The installation documentation is rather shaky.

-Drew
From: Sam Steingold
Subject: Re: compiling clocc
Date: 
Message-ID: <ug0t0xuf1.fsf@ksp.com>
>>>> In message <············@hammer.msfc.nasa.gov>
>>>> On the subject of "Re: compiling clocc"
>>>> Sent on 5 Apr 2000 13:35:18 GMT
>>>> Honorable "Andrew McDowell" <·············@msfc.nasa.gov> writes:
 >> I gave up on CLOCC after experiencing the same problems you have.  I
 >> just attributed it to 'still being under development' pains, and
 >> resigned to try again later.

What were you trying to achieve?

 >> The installation documentation is rather shaky.

CLOCC has not even been officially announced yet! :-)

-- 
Sam Steingold (http://www.podval.org/~sds)
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.
Hard work has a future payoff.  Laziness pays off NOW.
From: Rolf Rander Naess
Subject: Re: compiling clocc
Date: 
Message-ID: <ukwpus4tl29.fsf@pvv.org>
[ Sam Steingold, 05 Apr 2000 14:41 ]
> >>>> In message <············@hammer.msfc.nasa.gov>
> >>>> On the subject of "Re: compiling clocc"
> >>>> Sent on 5 Apr 2000 13:35:18 GMT
> >>>> Honorable "Andrew McDowell" <·············@msfc.nasa.gov> writes:
>  >> The installation documentation is rather shaky.
> 
> CLOCC has not even been officially announced yet! :-)


Based on recent messages in this thread, I think I'll change strategy:
from "installing the clocc-package" to "learning by doing", and
hopefully being able to contribute rather than wasting any more of
your time with my silly questions.

I'll also subscribe to the mailinglist and direct any further
inquiries there.

Thanks for all the feedback from all of you!


humbly yours
Rolf Rander

-- 
                                            (c) 2000 Rolf Rander N�ss
http://www.pvv.org/~rolfn/

My mailer limits .sigs to 4 lines. But ingeniously I bypassed this by
From: Thom Goodsell
Subject: Re: compiling clocc
Date: 
Message-ID: <38EB424B.AD968150@cra.com>
Rolf Rander Naess wrote:
> regards
> Rolf Rander, still hoping for lisp as login-shell...

http://esh.netpedia.net/

Not feature complete, but . . . .

Thom Goodsell

Scientist                               ···@cra.com
Charles River Analytics         (617) 491-3474 x574
Cambridge, MA, USA              http://www.cra.com/
From: Rob Warnock
Subject: shells  [was: Re: compiling clocc ]
Date: 
Message-ID: <8cgpke$ejlm$1@fido.engr.sgi.com>
Thom Goodsell  <···@cra.com> wrote:
+---------------
| > Rolf Rander, still hoping for lisp as login-shell...
| 
| http://esh.netpedia.net/
| Not feature complete, but . . . .
+---------------

Neat! But... Two things:

1. Are you familiar with the "Esh Scheme shell" (not in the sense you
   mean it, but as an embedding/extension tool) done at Sun some time ago?
   Reference (should be accessible at DejaNews):

	Message-ID: <··············@serpentine.com>
	Date: 04 May 1997 12:30:34 -0700
	Newsgroups: comp.lang.scheme
	From: Bryan O'Sullivan <···@serpentine.com>
	Subject: Re: A few points regarding Guile

	...
	Several years ago, a few people in Sun were charged with the task
	of building a Scheme implementation.  What they came up with was
	a system called esh.  Esh included a native code batch compiler
	and an interpreter.
	...
	For the past while, esh has been distributed for free with the TNF
	tools package.  It runs on SPARC-based systems running Solaris 2. For
	information, see <URL:http://sunsite.unc.edu/pub/sun-info/tnftools>.
	Note that the distribution does not include sources.

   [That URL no longer is valid, though it *once* was, since I still have
   some of the "Esh" papers/articles/doc-files from that distribution.]

2. More to the point, you might also be interested in "es", an extensible
   shell (in the sense you mean) by Paul Haahr & Byron Rakitzis:

	Es is a command interpreter and programming language which combines
	the features of other Unix shells and the features of a functional
	programming language such as Scheme. The syntax is derived from
	rc(1). Es is intended for use both as an interactive shell and a
	programming language for scripts.

	Es is an extremely customizable language. The semantics can be
	altered radically by redefining functions that are called to
	implement internal operations.

   The syntax:

	...was derived from the Plan 9 shell, rc, and was influenced
	by functional programming languages, such as Scheme, and the Tcl
	embeddable programming language.  This implementation is derived
	from Byron Rakitzis's public domain implementation of rc.

   The distribution (still actively being used, according to the archives of
   the mailing list) is available at <URL:ftp://ftp.sys.toronto.edu/pub/es/>, 
   and the Usenix paper there, "Es: a shell with higher-order functions",
   is recommended reading (by me, at least) for anyone considering writing
   a Unix command-line shell based on Scheme or Lisp principles. Even though
   "es" itself is written purely in C, internally it contains bindings,
   closures, lambdas, thunks, garbage collection -- all the usual suspects.

   [In fact, so much so that one wonders why they didn't just write it *in*
   Scheme or Lisp?!?!? I suspect that it has something to do with being
   "derived from Byron Rakitzis's public domain implementation of rc".
   Sometimes it's awfully hard for people to let go of a mess of working
   code, even if it's a godawful mess (not that I'm saying "rc" is/was,
   just "even if"), and start over "clean".]


-Rob

-----
Rob Warnock, 41L-955		····@sgi.com
Applied Networking		http://reality.sgi.com/rpw3/
Silicon Graphics, Inc.		Phone: 650-933-1673
1600 Amphitheatre Pkwy.		PP-ASEL-IA
Mountain View, CA  94043
From: Raymond Toy
Subject: Re: compiling clocc
Date: 
Message-ID: <4n7leddcm4.fsf@rtp.ericsson.se>
>>>>> "Sam" == Sam Steingold <···@gnu.org> writes:

    >>> (I have clisp 199.07.22 if it matters)

    Sam> it does: you must use 2000-03-06 or newer because of a logical pathname bug.

Bruno Haible and crew must be really, really old if clisp existed in
199.07.22. :-) 

Ray
From: William Deakin
Subject: Re: compiling clocc
Date: 
Message-ID: <38EAEDC9.964FF2ED@pindar.com>
Raymond Toy wrote:

> Bruno Haible and crew must be really, really old if clisp existed in 199.07.22. :-)

It would also explain the Latin that occasionally pops up on the newsgroup from time to
time,

;) will
From: Fernando D. Mato Mira
Subject: Re: compiling clocc
Date: 
Message-ID: <38EB0ACD.442D4AA6@acm.org>
Raymond Toy wrote:

> >>>>> "Sam" == Sam Steingold <···@gnu.org> writes:
>
>     >>> (I have clisp 199.07.22 if it matters)
>
>     Sam> it does: you must use 2000-03-06 or newer because of a logical pathname bug.
>
> Bruno Haible and crew must be really, really old if clisp existed in
> 199.07.22. :-)

Not to mention that would add almost 1760 additional years of reinvention ;->

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: William Deakin
Subject: Re: compiling clocc
Date: 
Message-ID: <38EB1349.D5F045DB@pindar.com>
Fernando D. Mato Mira wrote:

> Not to mention that would add almost 1760 additional years of reinvention ;->

Ah, 1760, what an excellent year. And just think about all that compound interest

;) will
From: Fernando D. Mato Mira
Subject: Re: compiling clocc
Date: 
Message-ID: <38EB0C70.42531AE9@acm.org>
Rolf Rander Naess wrote:

> /export/a/store/store/camilo/clocc-c/src-00.03.04-386linuxlibc6/bin/run-lisp  -c ext.lsp

                                                                           ^^^^^^^^

Get a CMUCL binary from debian.org [You can't get `alien' for your distribution?? Time to
switch..]

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html