From: Jeffery Zhang
Subject: Installing libraries
Date: 
Message-ID: <e2490k$sg8$1@ruby.cit.cornell.edu>
I've been trying to install some libraries to setup a web development 
environment for Lisp. I'm doing this on a WinXP machine and it seems 
that a lot of the tutorials and installation utilities are built for 
UNIX systems.

I'm trying to use Uncommon Web, To use that I need Apache with mod_lisp, 
so I tried setting it up based on Bill Clementson's blog entry
http://bc.tech.coop/blog/041111.html

Apparently I will also need TBNL, CL-WHO, KMRCL, MD5, and a whole bunch 
of other libraries. Is there a way to install all this stuff given the 
limited knowledge/tools available to someone just starting out?

I know Lisp basics having worked through Paul Graham's ANSI Common Lisp 
and Peter Siebel's PCL, but neither cover library installations.

Can anyone explain what is the most painless way I can install libraries 
(and also set it up so that I don't have to hand load everything 
everytime I startup) for Lispbox or otherwise do a complete Lisp 
installation if there is something about Lispbox that is limiting 
things. Thanks a lot.

-Jeff

From: Pascal Bourguignon
Subject: Re: Installing libraries
Date: 
Message-ID: <87acaigrw0.fsf@thalassa.informatimago.com>
Jeffery Zhang <····@cornell.edu> writes:

> I've been trying to install some libraries to setup a web development
> environment for Lisp. I'm doing this on a WinXP machine and it seems
> that a lot of the tutorials and installation utilities are built for
> UNIX systems.
>
> I'm trying to use Uncommon Web, To use that I need Apache with
> mod_lisp, so I tried setting it up based on Bill Clementson's blog
> entry
> http://bc.tech.coop/blog/041111.html
>
> Apparently I will also need TBNL, CL-WHO, KMRCL, MD5, and a whole
> bunch of other libraries. Is there a way to install all this stuff
> given the limited knowledge/tools available to someone just starting
> out?
>
> I know Lisp basics having worked through Paul Graham's ANSI Common
> Lisp and Peter Siebel's PCL, but neither cover library installations.
>
> Can anyone explain what is the most painless way I can install
> libraries (and also set it up so that I don't have to hand load
> everything everytime I startup) for Lispbox or otherwise do a complete
> Lisp installation if there is something about Lispbox that is limiting
> things. Thanks a lot.

The most painless way would be to download ASDF-INSTALL, and to use it
to install the other libraries.

-- 
__Pascal Bourguignon__                     http://www.informatimago.com/

READ THIS BEFORE OPENING PACKAGE: According to certain suggested
versions of the Grand Unified Theory, the primary particles
constituting this product may decay to nothingness within the next
four hundred million years.
From: Alan Manuel K. Gloria
Subject: Re: Installing libraries
Date: 
Message-ID: <1145452646.416497.277390@j33g2000cwa.googlegroups.com>
I've posted about my trials and tribulations regarding ASDF-INSTALL on
a WinXP system:
http://groups.google.com/group/comp.lang.lisp/browse_thread/thread/f60096a7f62f275a/ac89b58a890a2ee2

I've got it happily installed with CLISP (although I have to press
CTRL-D each time ASDF-INSTALL untars a file, which also inconveniently
boots me out of CLISP after ASDF-INSTALL completes - but you'd prolly
install just a few times anyway, so no big deal if you use CLISP too).

Major points:
1.  You need some sort of TAR archive-opening executable.  In fact, you
need Cygwin.  When the code detects Windows, it expects Cygwin to be
installed in C:\Progra~1\Cygwin.  This should usually be C:\Program
Files\Cygwin.
2.  You need to properly set the ASDF-INSTALL:*locations* variable.
Okay, maybe not really, but someone suggested that spaces in pathnames
sometimes give trouble, so maybe you should explicitly set
ASDF-INSTALL:*locations* such that the no spaces exist in pathnames.

Dunno about LispBox, when I was looking for a lisp implementation I
never got around to it (or maybe I ignored it, dunno), so I'm now using
CLISP.
From: Alan Manuel K. Gloria
Subject: Re: Installing libraries
Date: 
Message-ID: <1145454246.886791.104300@i39g2000cwa.googlegroups.com>
Some more stuff.  The instructions to install are in:
http://cvs.sourceforge.net/viewcvs.py/*checkout*/cclan/asdf-install/doc/index.html

There are two very important points:
You MUST ADD this to your lisp initialization/lisp core file:
 (pushnew 'asdf-install:sysdef-source-dir-search
         asdf:*system-definition-search-functions*)
If you change ASDF-INSTALL:*locations*, make sure to add a trailing /
to directory names:
 (setq asd-install:*locations*
  (list
    (list
      #p"e:/lisp/.asdf-install-dir/site/"
      #p"e:/lisp/.asdf-install-dir/system/" ;;the last / is important!!
      "Personal Installation" )))


ASDF is SEPARATE from ASDF-INSTALL.  ASDF is the system that defines
systems.  ASDF-INSTALL installs libraries that conform to that system
and let ASDF load those libraries.  This confused me horribly (me
stupid noob), so I thought that I'd advise you more about it.

ASDF-INSTALL *requires* Cygwin to work on a WinXP OS.  If you're in the
Philippines, look for the .jp domain when Cygwin asks you where you
want to download (Unlikely that you're Filipino, but just in case
someone else out there is.).

If you're willing to dig through my previously posted thread and parse
out the stuff about my new girlfriend (girlfriend for 161.5 hours so
far!), you'll pretty much just get the above advice in the end.
From: Jeffery Zhang
Subject: Re: Installing libraries
Date: 
Message-ID: <e264f4$spi$1@ruby.cit.cornell.edu>
Aha, so Cygwin is the key. I was just being frustrated that windows is 
such a poor environment to be running unix software. Buying this machine 
was a huge mistake, my new Mac should be arriving in a few days.

As for config directory, lispbox is setup so that it requires no 
installation/configuration for newbies. So now I run into all sorts of 
limitations because it doesn't use the .emacs or the Lisp initialization 
files. I don't know exactly how it works. Can someone just walk me 
through how to setup a Non-lispbox installation of Clisp, emacs and 
slime+ASDF-INSTALL? I've been reading all these online tutorials on how 
to do it and all of them are written for Unix systems with maybe a 
footnote on windows.

-Jeff

Alan Manuel K. Gloria wrote:
> Some more stuff.  The instructions to install are in:
> http://cvs.sourceforge.net/viewcvs.py/*checkout*/cclan/asdf-install/doc/index.html
> 
> There are two very important points:
> You MUST ADD this to your lisp initialization/lisp core file:
>  (pushnew 'asdf-install:sysdef-source-dir-search
>          asdf:*system-definition-search-functions*)
> If you change ASDF-INSTALL:*locations*, make sure to add a trailing /
> to directory names:
>  (setq asd-install:*locations*
>   (list
>     (list
>       #p"e:/lisp/.asdf-install-dir/site/"
>       #p"e:/lisp/.asdf-install-dir/system/" ;;the last / is important!!
>       "Personal Installation" )))
> 
> 
> ASDF is SEPARATE from ASDF-INSTALL.  ASDF is the system that defines
> systems.  ASDF-INSTALL installs libraries that conform to that system
> and let ASDF load those libraries.  This confused me horribly (me
> stupid noob), so I thought that I'd advise you more about it.
> 
> ASDF-INSTALL *requires* Cygwin to work on a WinXP OS.  If you're in the
> Philippines, look for the .jp domain when Cygwin asks you where you
> want to download (Unlikely that you're Filipino, but just in case
> someone else out there is.).
> 
> If you're willing to dig through my previously posted thread and parse
> out the stuff about my new girlfriend (girlfriend for 161.5 hours so
> far!), you'll pretty much just get the above advice in the end.
> 
From: Pascal Bourguignon
Subject: Re: Installing libraries
Date: 
Message-ID: <87mzehdxnm.fsf@thalassa.informatimago.com>
Jeffery Zhang <····@cornell.edu> writes:

> Aha, so Cygwin is the key. I was just being frustrated that windows is
> such a poor environment to be running unix software. Buying this
> machine was a huge mistake, my new Mac should be arriving in a few
> days.

Well, the machine, I don't know, but the OS, certainly.  Happily, you
can easily correct the situation.  Download a Linux or FreeBSD
distribution and install it over that MS-Windows.

-- 
__Pascal Bourguignon__                     http://www.informatimago.com/

PLEASE NOTE: Some quantum physics theories suggest that when the
consumer is not directly observing this product, it may cease to
exist or will exist only in a vague and undetermined state.
From: mac
Subject: Re: Installing libraries
Date: 
Message-ID: <1145513545.932117.278780@i39g2000cwa.googlegroups.com>
I have a totally different approach of managing lisp libraries.

I don't use asdf-install or the debian cl-controller. Some libraries
have compatibility issues with certain lisp implementations (especially
if you use multiple lisps and different OS'es) or their FFI bindings
(curl, pg, mysql, etc).

But that's not the major reason why I don't use asdf-install.

I usually download / cvs darcs checkout the latest version of a
library, test that it works with my lisp, and check it into a personal
subversion repo (or darcs).

If I need that library in another machine (usually linux or freebsd in
vmware), I just do a svn checkout, together with a preconfigured
.sbclrc etc that will have the asdf path setup properly.  I don't
update my library often, unless there is a major enhancement.

But why all these troubles? Well, lisp is very addictive. It's fun to
use and read. For a lot of c programs, I usually untar *.tar.gz;
./configure; make install and immediately delete the source tree.

But lisp is different... I found that I always liked to use M-. (my
binding for slime-edit-definition) to jump to the lisp library that I'm
using and check what it does underneath. It accelerates my rate of
learning lisp _a lot_, and all the while having fun doing it.

Sometimes I made small changes / fixes / enhancement to the library.
But most of the time my fix is not polished enough to submit as a
patch. However, I don't want to lose my changes, so the repo is the
perfect place to keep my edits. And when I have time or become more
knowledgeable to restructure the code, I can then submit the changes to
the author. That's something you cannot conveniently do with
asdf-install.

Now I have a general impression of the lisp style of various famous
open source lisp library authors. For instance, Edi Weitz's code is
always very polished and easy to read. Marco Baringer's arenis library
contains gems of hacks, much like pg's ansi common lisp functions and
macros (sometimes I need to stare at the screen for minutes to figure
out what the hell is going on, and then Aha! But UCW is way out of my
codefoo level to comprehend). Iterate is a beautifully designed macro,
it beats cl's build-in "loop" macro out of the water. Gary king, Kevin
Rosenberg, Sven Van Caekenberghe, etc have produced tons of libraries
that is simply amazing. The list goes on and on.

I never have such a joy with any other languages.

-- Mac
From: Jeffery Zhang
Subject: Re: Installing libraries
Date: 
Message-ID: <e2790r$d2s$1@ruby.cit.cornell.edu>
wow, that's awesome. I should try that.

mac wrote:
> I have a totally different approach of managing lisp libraries.
> 
> I don't use asdf-install or the debian cl-controller. Some libraries
> have compatibility issues with certain lisp implementations (especially
> if you use multiple lisps and different OS'es) or their FFI bindings
> (curl, pg, mysql, etc).
> 
> But that's not the major reason why I don't use asdf-install.
> 
> I usually download / cvs darcs checkout the latest version of a
> library, test that it works with my lisp, and check it into a personal
> subversion repo (or darcs).
> 
> If I need that library in another machine (usually linux or freebsd in
> vmware), I just do a svn checkout, together with a preconfigured
> ..sbclrc etc that will have the asdf path setup properly.  I don't
> update my library often, unless there is a major enhancement.
> 
> But why all these troubles? Well, lisp is very addictive. It's fun to
> use and read. For a lot of c programs, I usually untar *.tar.gz;
> ../configure; make install and immediately delete the source tree.
> 
> But lisp is different... I found that I always liked to use M-. (my
> binding for slime-edit-definition) to jump to the lisp library that I'm
> using and check what it does underneath. It accelerates my rate of
> learning lisp _a lot_, and all the while having fun doing it.
> 
> Sometimes I made small changes / fixes / enhancement to the library.
> But most of the time my fix is not polished enough to submit as a
> patch. However, I don't want to lose my changes, so the repo is the
> perfect place to keep my edits. And when I have time or become more
> knowledgeable to restructure the code, I can then submit the changes to
> the author. That's something you cannot conveniently do with
> asdf-install.
> 
> Now I have a general impression of the lisp style of various famous
> open source lisp library authors. For instance, Edi Weitz's code is
> always very polished and easy to read. Marco Baringer's arenis library
> contains gems of hacks, much like pg's ansi common lisp functions and
> macros (sometimes I need to stare at the screen for minutes to figure
> out what the hell is going on, and then Aha! But UCW is way out of my
> codefoo level to comprehend). Iterate is a beautifully designed macro,
> it beats cl's build-in "loop" macro out of the water. Gary king, Kevin
> Rosenberg, Sven Van Caekenberghe, etc have produced tons of libraries
> that is simply amazing. The list goes on and on.
> 
> I never have such a joy with any other languages.
> 
> -- Mac
> 
From: Jeffery Zhang
Subject: Re: Installing libraries
Date: 
Message-ID: <e277eh$8u3$1@ruby.cit.cornell.edu>
Ok, I got it to work now. ASDF-INSTALL is really convenient. I can't 
believe it's that easy. I spent a day installing CL-PPCRE to lispbox.

Jeffery Zhang wrote:
> I've been trying to install some libraries to setup a web development 
> environment for Lisp. I'm doing this on a WinXP machine and it seems 
> that a lot of the tutorials and installation utilities are built for 
> UNIX systems.
> 
> I'm trying to use Uncommon Web, To use that I need Apache with mod_lisp, 
> so I tried setting it up based on Bill Clementson's blog entry
> http://bc.tech.coop/blog/041111.html
> 
> Apparently I will also need TBNL, CL-WHO, KMRCL, MD5, and a whole bunch 
> of other libraries. Is there a way to install all this stuff given the 
> limited knowledge/tools available to someone just starting out?
> 
> I know Lisp basics having worked through Paul Graham's ANSI Common Lisp 
> and Peter Siebel's PCL, but neither cover library installations.
> 
> Can anyone explain what is the most painless way I can install libraries 
> (and also set it up so that I don't have to hand load everything 
> everytime I startup) for Lispbox or otherwise do a complete Lisp 
> installation if there is something about Lispbox that is limiting 
> things. Thanks a lot.
> 
> -Jeff
From: Jeffery Zhang
Subject: Re: Installing libraries
Date: 
Message-ID: <e278ep$cd7$1@ruby.cit.cornell.edu>
I spoke too soon. So Alan, am I correct to understand that I basically 
have to download the .tar manually and install it from a local directory?

Jeffery Zhang wrote:
> Ok, I got it to work now. ASDF-INSTALL is really convenient. I can't 
> believe it's that easy. I spent a day installing CL-PPCRE to lispbox.
> 
> Jeffery Zhang wrote:
> 
>> I've been trying to install some libraries to setup a web development 
>> environment for Lisp. I'm doing this on a WinXP machine and it seems 
>> that a lot of the tutorials and installation utilities are built for 
>> UNIX systems.
>>
>> I'm trying to use Uncommon Web, To use that I need Apache with 
>> mod_lisp, so I tried setting it up based on Bill Clementson's blog entry
>> http://bc.tech.coop/blog/041111.html
>>
>> Apparently I will also need TBNL, CL-WHO, KMRCL, MD5, and a whole 
>> bunch of other libraries. Is there a way to install all this stuff 
>> given the limited knowledge/tools available to someone just starting out?
>>
>> I know Lisp basics having worked through Paul Graham's ANSI Common 
>> Lisp and Peter Siebel's PCL, but neither cover library installations.
>>
>> Can anyone explain what is the most painless way I can install 
>> libraries (and also set it up so that I don't have to hand load 
>> everything everytime I startup) for Lispbox or otherwise do a complete 
>> Lisp installation if there is something about Lispbox that is limiting 
>> things. Thanks a lot.
>>
>> -Jeff
From: Alan Manuel K. Gloria
Subject: Re: Installing libraries
Date: 
Message-ID: <1145629723.176439.217960@v46g2000cwv.googlegroups.com>
@Jeffery:
Sorry for the tardy reply, had network problems yesterday.  And a date
with my girlfriend.  Hehe.

1. Yes, that's one way: download .tar.gz manually, open with WinZip,
and place it in some repository/directory on local.  You probably
should put that directory in your ASDF:*locations* variable and add
asdf-install:sysdef-source-dir-search to the
asdf:*system-definition-search-functions*, but you could also just add
each library's location into asdf:*central-registry*.  Pros: No need to
install Cygwin.

2.  I've managed to get ASDF-INSTALL working normally with CLISP+WinXP,
however.  Try doing this:
a. Download and unzip ASDF. (This is separate from ASDF-INSTALL).
b. call clisp and type: (load (compile-file "asdf.lisp"))
c. type (ext:saveinitmem "lispinit.mem" :quiet t) and quit clisp.
d. Download and unzip ASDF-INSTALL.  Go to the directory you unzipped
it.  To be specific, I unzipped it where I unzipped ASDF.
e. call clisp -M d:\path\to\asdf\lispinit.mem . If you unzipped it
where you first loaded ASDF, it's you don't need the complete path.
f. type (asdf:operate 'asdf:compile-op :asdf-install).  This compiles
ASDF-INSTALL.  Then type (asdf:operate 'asdf:load-op :asdf-install).
g. create a file containing:
(setq asdf-install:*locations*
	(list
		(list
			#p"e:/lisp/.asdf-install-dir/site/"
			#p"e:/lisp/.asdf-install-dir/systems/"
			"Personal installation")))

(pushnew 'asdf-install:sysdef-source-dir-search
asdf:*system-definition-search-functions*)

g.1.  change your path to what you want.  REMEMBER THE TRAILING SLASH.
h. load the file you created in g. I named it asdf-foo.lisp, so (load
"asdf-foo.lisp")
i. type (ext:saveinitmem "lispinit.mem" :quiet t) and quit clisp.
j. copy the created lispinit.mem to your clisp installation's.  In my
distro there were two copies, one in c:/clisp-2.38/base/ and the other
in c:/clisp-2.38/full/, the one that worked was base/.  You prolly
should backup the old lispinit.mem file, though, just in case.
k. Install Cygwin.  NOTE: the ASDF-INSTALL code expects the tar to be
in C:/Progra~1/Cygwin/bin/tar.exe .  However, on my computer Cygwin
defaulted to C:/Cygwin/ .  You can copy the /Cygwin/ files to /Program
Files/Cygwin/ , that's what I did.
l. contact me on the groups about it.