From: Carola
Subject: asdf-install with allegro/XP
Date: 
Message-ID: <7f5b3203-68d5-434b-a75a-2a6d61c7f0d1@l1g2000hsa.googlegroups.com>
Hi!

We tried lisp (Linux) at school and I liked it very much, so I
downloaded the allegro-version for winXP. Works nice, but now I'm
having problems with install-asdf.

I have read the tutorial and some articles in the documentation but
couldn't understand what to do.

My .clinit.cl-file contains

(require :asdf)

(pushnew "D:/Lisp/acl81-express/" asdf:*central-registry* :test
#'equal)

and seems to work fine.

Now it's said that one should
"create a symlink to your .asd file from your registry folder:

cd /path/to/your/registry/
ln -s /path/where/you/put/asdf-install/asdf-install.asd ."

but I don't know where to put these lines. (computer-newbie!)


So helpless,

Carola

From: Edi Weitz
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <usl2z8u4e.fsf@agharta.de>
On Wed, 21 Nov 2007 07:56:56 -0800 (PST), Carola <·······@gmx.de> wrote:

> We tried lisp (Linux) at school

Nice!  Which school was that?

> but I don't know where to put these lines. (computer-newbie!)

Maybe this one is easier for you:

  http://weitz.de/starter-pack/

Edi.

-- 

Lisp is not dead, it just smells funny.

Real email: (replace (subseq ·········@agharta.de" 5) "edi")
From: Maciej Katafiasz
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <fi252c$67k$1@news.net.uni-c.dk>
Den Wed, 21 Nov 2007 07:56:56 -0800 skrev Carola:

> We tried lisp (Linux) at school and I liked it very much,
[...]
> but I don't know where to put these lines. (computer-newbie!)

How does the saying go? A newbie groks Lisp in a day, an experienced 
programmer needs a week?

Cheers,
Maciej
From: Slobodan Blazeski
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <5ee0e17e-3539-408e-8602-df639fb0b521@r31g2000hsg.googlegroups.com>
On Nov 21, 7:56 am, Carola <·······@gmx.de> wrote:
> Hi!
>
> We tried lisp (Linux) at school and I liked it very much, so I
> downloaded the allegro-version for winXP. Works nice, but now I'm
> having problems with install-asdf.
>
> I have read the tutorial and some articles in the documentation but
> couldn't understand what to do.
>
> My .clinit.cl-file contains
>
> (require :asdf)
>
> (pushnew "D:/Lisp/acl81-express/" asdf:*central-registry* :test
> #'equal)
>
> and seems to work fine.
>
> Now it's said that one should
> "create a symlink to your .asd file from your registry folder:
>
> cd /path/to/your/registry/
> ln -s /path/where/you/put/asdf-install/asdf-install.asd ."
>
> but I don't know where to put these lines. (computer-newbie!)
>
> So helpless,
>
> Carola

Those a  shell commands for unices (linux , freebsd, macintosh...) you
have to install cygwin to pretend that you are on unix http://www.cygwin.com/
. I don't use cygwin so I can't say anything more about this.
Quick fix is to download libraries manually and unpack them into you
libraries folder. For a quick start first download starter pack and
download all the libraries wuth it.  I believe that's plenty for
start. Then modify  your allegro initialization file clinit.cl, create
it if it doesn't exist in the directory where allegro is installed.
The code that should be added is described in here http://bc.tech.coop/blog/051004.html
If you have problems to download some asdf-system with a lot of
dependencies drop me a mail and I will mail it to you .
Why do you need libraries now? You need some time learning lisp ,  or
you have some specific interest area where you plan  to use lisp.
Here's some thread with some lisp resources , books tutorials ,
videos ...
http://groups.google.com/group/comp.lang.lisp/browse_thread/thread/9d0080bd3be9ddea/9e0ab129d28fb21b?lnk=gst&q=slobodan+shameless+selfquoting#9e0ab129d28fb21b

cheers
Slobodan
From: Alex Mizrahi
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <47455c3f$0$90267$14726298@news.sunsite.dk>
 C> Now it's said that one should
 C> "create a symlink to your .asd file from your registry folder:

 C> cd /path/to/your/registry/
 C> ln -s /path/where/you/put/asdf-install/asdf-install.asd ."

 C> but I don't know where to put these lines. (computer-newbie!)

unfortunately that won't work anyway because winxp doesn't have file 
symlinks.
i'm not sure if there's some workaround for this, but what should definitely 
work is:

(pushnew "D:/somewhere/asdf-install" asdf:*central-registry* :test #'equal)

here D:/somewhere/asdf-install is a folder where you've unpacked 
asdf-install, it should contain file asdf-install.asd.
and you push this to asdf:*central-registry* list, so asdf will be able to 
fint it.

you can do this with any asdf-loadable library, so you don't really need 
asdf-install -- certainly it's nice when it's automatic, but often it's just 
ok to unpack library and put it's directory into central registry.

i won't bet on asdf-install working correctly on ACL8.1 on vanilla XP, so 
it's better use starter-pack as Edi suggests. 
From: Edi Weitz
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <uzlx6toqj.fsf@agharta.de>
On Thu, 22 Nov 2007 12:38:49 +0200, "Alex Mizrahi" <········@users.sourceforge.net> wrote:

> unfortunately that won't work anyway because winxp doesn't have file
> symlinks.

It does, at least on NTFS:

  http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html

Also, this patched version of asdf (by David Lichteblau) has support
for Explorer shortcuts:

  http://www.lichteblau.com/blubba/shortcut/asdf.lisp

AFAIK, this isn't part of the official distribution, though.

Edi.

-- 

Lisp is not dead, it just smells funny.

Real email: (replace (subseq ·········@agharta.de" 5) "edi")
From: Alex Mizrahi
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <47459103$0$90271$14726298@news.sunsite.dk>
 ??>> unfortunately that won't work anyway because winxp doesn't have file
 ??>> symlinks.

 EW> It does, at least on NTFS:
 EW>   http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html

those are HARD links. afaik you cannot deduce original directory from 
hardlink you have, hence it's unusable for asdf purposes.

there are also symlink-like functionality for directories (called 
junctions). as i understand they cannot be used by ASDF directly. however it 
might be possible patch ASDF to use directory links instead of file links 
for search.

Vista has symlinks, but i don't know if they work with ASDF.

 EW> Also, this patched version of asdf (by David Lichteblau) has support
 EW> for Explorer shortcuts:

that's why i wrote "i'm not sure if there's some workaround for this" -- i 
remember some discussion on this issue several years ago.
also iirc clisp has built-in support to treat windows lnks as symlinks. 
From: Edi Weitz
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <uir3utkkb.fsf@agharta.de>
On Thu, 22 Nov 2007 16:23:57 +0200, "Alex Mizrahi" <········@users.sourceforge.net> wrote:

>  EW>   http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html
>
> those are HARD links.

Right.  I missed the part on that page where it says that the symbolic
links for files are only available on Vista.

Edi.

-- 

Lisp is not dead, it just smells funny.

Real email: (replace (subseq ·········@agharta.de" 5) "edi")
From: John Thingstad
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <op.t17bfb1lut4oq5@pandora.alfanett.no>
På Thu, 22 Nov 2007 15:35:16 +0100, skrev Edi Weitz <········@agharta.de>:

> On Thu, 22 Nov 2007 16:23:57 +0200, "Alex Mizrahi"  
> <········@users.sourceforge.net> wrote:
>
>>  EW>   http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html
>>
>> those are HARD links.
>
> Right.  I missed the part on that page where it says that the symbolic
> links for files are only available on Vista.
>
> Edi.
>

There is a programmers interface for XP. NTFS hasn't changed. (I am readin  
Microsoft Windows Internals and covered that last week.)

Here is an exerpt. (junction is also called soft link)

NOTE IN PARTICULAR

Windows doesn't include any tools for creating junctions, but you can  
create a junction with either the Junction tool from  
http://www.sysinternals.com (which includes source code) or the Windows  
resource kits tool Linkd.

-------------------------------------------------

Hard Links and Junctions

A hard link allows multiple paths to refer to the same file. (Hard links  
are not supported on directories.) If you create a hard link named  
C:\Users\Documents\Spec.doc that refers to the existing file C:\My  
Documents\Spec.doc, the two paths link to the same on-disk file and you  
can make changes to the file using either path. Processes can create hard  
links with the Windows CreateHardLink function or the ln POSIX function.

In addition to hard links, NTFS supports another type of redirection  
called junctions. Junctions, also called symbolic links, allow a directory  
to redirect file or directory pathname translation to an alternate  
directory. For example, if the path C:\Drivers is a junction that  
redirects to C:\Windows\System32\Drivers, an application reading  
C:\Drivers\Ntfs.sys actually reads C:\Windows\System\Drivers\Ntfs.sys.  
Junctions are a useful way to lift directories that are deep in a  
directory tree to a more convenient depth without disturbing the original  
tree's structure or contents. The example just cited lifts the drivers  
directory to the volume's root directory, reducing the directory depth of  
Ntfs.sys from three levels to one when Ntfs.sys is accessed through the  
junction. You can't use junctions to link to remote directories—only to  
directories on local volumes.

Junctions are based on an NTFS mechanism called reparse points. (Reparse  
points are discussed further in the section "Reparse Points" later in this  
chapter.) A reparse point is a file or directory that has a block of data  
called reparse data associated with it. Reparse data is userdefined data  
about the file or directory, such as its state or location, that can be  
read from the reparse point by the application that created the data, a  
file system filter driver, or the I/O manager. When NTFS encounters a  
reparse point during a file or directory lookup, it returns a reparse  
status code, which signals file system filter drivers that are attached to  
the volume, and the I/O manager, to examine the reparse data. Each reparse  
point type has a unique reparse tag. The reparse tag allows the component  
responsible for interpreting the reparse point's reparse data to recognize  
the reparse point without having to check the reparse data. A reparse tag  
owner, either a file system filter driver or the I/O manager, can choose  
one of the following options when it recognizes reparse data:

The reparse tag owner can manipulate the pathname specified in the file  
I/O operation that crosses the reparse point and let the I/O operation  
reissue with the altered pathname. Junctions take this approach to  
redirect a directory lookup, for example.

The reparse tag owner can remove the reparse point from the file, alter  
the file in some way, and then reissue the file I/O operation. The Windows  
Hierarchical Storage Management (HSM) system uses reparse points in this  
way. HSM archives files by moving their contents to tape, leaving reparse  
points in their place. When a process accesses a file that has been  
archived, the HSM filter driver (\Windows\System32\Drivers\Rsfilter.sys)  
removes the reparse point from the file, reads the file's data from the  
archival media, and reissues the access. Thus, the retrieval of the  
offline data is transparent to a process accessing an archived file.

There are no Windows functions for creating reparse points. Instead,  
processes must use the FSCTL_SET_REPARSE_POINT file system control code  
with the Windows DeviceIoControl function. A process can query a reparse  
point's contents with the FSCTL_GET_REPARSE_ POINT file system control  
code. The FILE_ATTRIBUTE_REPARSE_POINT flag is set in a reparse point's  
file attributes, so applications can check for reparse points by using the  
Windows GetFileAttributes function.

  EXPERIMENT: Creating a Junction
Windows doesn't include any tools for creating junctions, but you can  
create a junction with either the Junction tool from  
http://www.sysinternals.com (which includes source code) or the Windows  
resource kits tool Linkd. The Linkd tool also lets you view the definition  
of existing junctions, and Junction lets you view information about  
junctions and other reparse point tags.





--------------
John Thingstad
From: Edi Weitz
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <uabp6tf40.fsf@agharta.de>
On Thu, 22 Nov 2007 17:15:01 +0100, "John Thingstad" <·······@online.no> wrote:

>>>  EW>   http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html
>>>
>>> those are HARD links.
>>
>> Right.  I missed the part on that page where it says that the
>> symbolic links for files are only available on Vista.
>
> There is a programmers interface for XP. NTFS hasn't changed. (I am
> readin Microsoft Windows Internals and covered that last week.)

Please read again what I wrote.  I was talking about symbolic links
for FILES.  What you posted was about HARD links for FILES and
junctions ("symbolic links") for DIRECTORIES.

  http://en.wikipedia.org/wiki/NTFS_junction_point
  http://en.wikipedia.org/wiki/NTFS_symbolic_link

Edi.

-- 

Lisp is not dead, it just smells funny.

Real email: (replace (subseq ·········@agharta.de" 5) "edi")
From: John Thingstad
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <op.t165y0puut4oq5@pandora.alfanett.no>
P� Thu, 22 Nov 2007 11:38:49 +0100, skrev Alex Mizrahi  
<········@users.sourceforge.net>:

>  C> Now it's said that one should
>  C> "create a symlink to your .asd file from your registry folder:
>
>  C> cd /path/to/your/registry/
>  C> ln -s /path/where/you/put/asdf-install/asdf-install.asd ."
>
>  C> but I don't know where to put these lines. (computer-newbie!)
>
> unfortunately that won't work anyway because winxp doesn't have file
> symlinks.
> i'm not sure if there's some workaround for this, but what should  
> definitely
> work is:
>

It does. Both hard and softlinks are a part of NTFS.
A shortcut is a softlink.
I have cygwin so I just use ln -s..

--------------
John Thingstad
From: Edi Weitz
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <umyt6tksl.fsf@agharta.de>
On Thu, 22 Nov 2007 15:17:14 +0100, "John Thingstad" <·······@online.no> wrote:

> It does. Both hard and softlinks are a part of NTFS.  A shortcut is
> a softlink.

No, a shortcut is not a softlink, it's a mechanism the "shell" is
supposed to understand and it also works with FAT32.

  http://hyper.sunjapan.com.cn/~hz/win32/shellnk2.htm

Edi.

-- 

Lisp is not dead, it just smells funny.

Real email: (replace (subseq ·········@agharta.de" 5) "edi")
From: Carola
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <2893f595-ec82-45c5-ac79-2ee7404633e8@s12g2000prg.googlegroups.com>
Thanks for all that help. I decided to use

"you can do this with any asdf-loadable library, so you don't really
need
asdf-install -- certainly it's nice when it's automatic, but often
it's just
ok to unpack library and put it's directory into central registry."

and it works like a charm. I'll try the other tips when I'm not that
green anymore.

"Nice!  Which school was that? "

Maybe I'm missunderstood, we really learned Delphi (really easy-going
compared to Lisp), but our teacher just wanted to show that there are
completely different languages, so he gave some examples.

Happy greetings

Carola
From: Alex Mizrahi
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <4745a68e$0$90276$14726298@news.sunsite.dk>
 JT> It does. Both hard and softlinks are a part of NTFS.
 JT> A shortcut is a softlink.
 JT> I have cygwin so I just use ln -s..

shortcuts do not work on FS or File API level (so it's not a feature of 
NTFS, it works just on any FS Windows supports), each application should 
explicitly add support for them, if it wants to.

if cygwin API emulates symlinks with shortcuts that's great, but how would 
that help to Allegro CL which uses native APIs (as far as i know)?
From: John Thingstad
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <op.t17bswp7ut4oq5@pandora.alfanett.no>
P� Thu, 22 Nov 2007 16:55:52 +0100, skrev Alex Mizrahi  
<········@users.sourceforge.net>:

>
> if cygwin API emulates symlinks with shortcuts that's great, but how  
> would
> that help to Allegro CL which uses native APIs (as far as i know)?
>
>

Soft links are not shortcuts (My bad) they are called junctions in NTFS  
and they have a programming API.
There is no user interface for it prior to Vista. One of the requirements  
for NTFS was that I would be POSIX compliant. I belive Cygwin uses this  
API.

sysinternals has a tool that allows you to create junctions and works with  
Win 2K on up.
You can also get the source for this if you are interested in figuring it  
out.

http://www.microsoft.com/technet/sysinternals/FileAndDisk/Junction.mspx

--------------
John Thingstad
From: Alex Mizrahi
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <4745d8d7$0$90271$14726298@news.sunsite.dk>
 ??>> if cygwin API emulates symlinks with shortcuts that's great, but how
 ??>> would
 ??>> that help to Allegro CL which uses native APIs (as far as i know)?
 ??>>
 JT> Soft links are not shortcuts (My bad) they are called junctions in NTFS
 JT> and they have a programming API.

oh man, don't teach my about windows, i'm kinda expert in this area.
i've said: "winxp doesn't have _file_ symlinks".
and it's 100% true.
junctions are DIRECTORY symlinks, not FILE symlinks, and are thus unusable 
for ASDF purposes directly.

 JT> There is no user interface for it prior to Vista.

i'm using FAR Manager, there making a link is as easy as copying files.

 JT>  One of the requirements  for NTFS was that I would be POSIX compliant.
 JT> I belive Cygwin uses this  API.

i believe it doesn't.

 JT> sysinternals has a tool that allows you to create junctions and works
 JT> with  Win 2K on up.

i'm using them for quite a long time already 
From: Dimiter "malkia" Stanev
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <5qmo07F10kr93U1@mid.individual.net>
Alex Mizrahi wrote:
>  ??>> if cygwin API emulates symlinks with shortcuts that's great, but how
>  ??>> would
>  ??>> that help to Allegro CL which uses native APIs (as far as i know)?
>  ??>>
>  JT> Soft links are not shortcuts (My bad) they are called junctions in NTFS
>  JT> and they have a programming API.
> 
> oh man, don't teach my about windows, i'm kinda expert in this area.
> i've said: "winxp doesn't have _file_ symlinks".
> and it's 100% true.
> junctions are DIRECTORY symlinks, not FILE symlinks, and are thus unusable 
> for ASDF purposes directly.
> 
>  JT> There is no user interface for it prior to Vista.
> 
> i'm using FAR Manager, there making a link is as easy as copying files.

Another lisper using the FAR Manager :)

By any chance, do you know of any good FAR syntax colorizer plugin 
(lisp, or other languages) - or any other that might be good for lisp 
development.

Cheers!
From: Alex Mizrahi
Subject: Re: asdf-install with allegro/XP
Date: 
Message-ID: <47467cf8$0$90273$14726298@news.sunsite.dk>
 DmS> Another lisper using the FAR Manager :)

 DmS> By any chance, do you know of any good FAR syntax colorizer plugin
 DmS> (lisp, or other languages) -

well, i think there's only one colorizer plugin for FAR: colorer 
http://colorer.sourceforge.net/
current version (5) got major improvement in lisp coloring support comparing 
to , which was confused by quotes.
colorer has flexible configuration, so you can improve coloring if you don't 
like it -- see colorer/hrc/common.jar/rare/lisp.hrc

 DmS> or any other that might be good for lisp
 DmS> development.

i was going to make a plugin once, but it didn't go farther than going, and 
soon SLIME appeared, which was made development in Emacs quite usable, so 
i've abandoned plugin idea. i'm still using FAR to find stuff in files, look 
them through and doing small changes, but for development itself i'm using 
XEmacs.