From: Alex Mizrahi
Subject: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <4543f53e$0$49209$14726298@news.sunsite.dk>
Hello, All!

Allegro CL Express Installer is a wonderful example of an application with 
built-in A.I.

i was downloading acl8.0 freeexpress with it. (i won't say much about other 
installer oddities -- it's unable to create folder for file being 
downloaded, it starts displaying progress only after a few megabytes were 
downloaded..). download went to 75% when my DSL disconnected. well, it 
disconnects from time to time.. i've reconnected it in few seconds, but what 
did downloader-installer said? it said that it's UNEXPECTED ERROR, and 
showed some hiper-socket error like 'connection reset by peer'.
do you think it resumed download after i reconnected DSL? hell no, it 
started from beginning.. marvelous example of an A.I..

what a hell for do they use that meta-installer program??? i'm able to do 
download myself, i have a program that is able to resume HTTP downloads..

i found major companies -- Sun, Nokia, Adobe -- all have their own 
'downloaders', one worse than another. looks like Franz followed their way..

With best regards, Alex Mizrahi. 

From: Bill Atkins
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <m21wor3k4k.fsf@weedle-24.dynamic.rpi.edu>
"Alex Mizrahi" <········@users.sourceforge.net> writes:

> Hello, All!
>
> Allegro CL Express Installer is a wonderful example of an application with 
> built-in A.I.
>
> i was downloading acl8.0 freeexpress with it. (i won't say much about other 
> installer oddities -- it's unable to create folder for file being 
> downloaded, it starts displaying progress only after a few megabytes were 
> downloaded..). download went to 75% when my DSL disconnected. well, it 
> disconnects from time to time.. i've reconnected it in few seconds, but what 
> did downloader-installer said? it said that it's UNEXPECTED ERROR, and 
> showed some hiper-socket error like 'connection reset by peer'.
> do you think it resumed download after i reconnected DSL? hell no, it 
> started from beginning.. marvelous example of an A.I..
>
> what a hell for do they use that meta-installer program??? i'm able to do 
> download myself, i have a program that is able to resume HTTP downloads..
>
> i found major companies -- Sun, Nokia, Adobe -- all have their own 
> 'downloaders', one worse than another. looks like Franz followed their way..
>
> With best regards, Alex Mizrahi. 

www.lispworks.com

Problem solved.
From: Alex Mizrahi
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <454467ed$0$49201$14726298@news.sunsite.dk>
(message (Hello 'Bill)
(you :wrote  :on '(Sat, 28 Oct 2006 22:56:27 -0400))
(

 BA> www.lispworks.com

 BA> Problem solved.

i'm going to use ACL only for compat testing, but anyway..

does LispWorks offer a webserver implementation, internal DB like 
AllegroCache, triple store like AllegroGraph, native threads support?
do they have some RDF reasoner for it, like RACER for ACL?

and as for performace, i don't think lispworks will win here.

so i don't see LispWorks bringing any additional value over free 
implementations, unlike AllegroCL.

all they can offer is partly-working ORM mapping. last time i checked it was 
completely broken by design -- for example, i'm unable to do cascade 
deletion with it, am i supposed to leave garbage in my DB, or i should 
delete everything manually?? even free implementation (i don't remember 
name, clsql, i think) was better than their implementation -- and free lib 
can be fixed, unlike built-in..

)
(With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
"People who lust for the Feel of keys on their fingertips (c) Inity") 
From: Alex Mizrahi
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <45446f55$0$49206$14726298@news.sunsite.dk>
(message (Hello 'Alex)
(you :wrote :to '(Bill Atkins) :on '(Sun, 29 Oct 2006 10:35:52 +0200))
(

 AM> native threads support?

well, it appears Allegro CL don't fully support native threads either --  
it's able to run lisp code only in one native thread just like LispWorks.

i think we should wait until somebody implements Common Lisp on Java or .NET 
platforms to utilize multiple CPUs/processor cores. somehow Java and .NET 
(Mono) implementation-makers know how to make multithreading stuff, but Lisp 
don't. (well, there's already ABCL for Java more-or-less working (and 
supporting SMP), but because of Java ugliness there are some ugly points in 
it. i think on .NET it will work much better)

)
(With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
"People who lust for the Feel of keys on their fingertips (c) Inity") 
From: Rainer Joswig
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <joswig-92871B.13260129102006@news-europe.giganews.com>
In article <·························@news.sunsite.dk>,
 "Alex Mizrahi" <········@users.sourceforge.net> wrote:

> (message (Hello 'Alex)
> (you :wrote :to '(Bill Atkins) :on '(Sun, 29 Oct 2006 10:35:52 +0200))
> (
> 
>  AM> native threads support?
> 
> well, it appears Allegro CL don't fully support native threads either --  
> it's able to run lisp code only in one native thread just like LispWorks.
> 
> i think we should wait until somebody implements Common Lisp on Java or .NET 
> platforms to utilize multiple CPUs/processor cores. somehow Java and .NET 
> (Mono) implementation-makers know how to make multithreading stuff, but Lisp 
> don't. (well, there's already ABCL for Java more-or-less working (and 
> supporting SMP), but because of Java ugliness there are some ugly points in 
> it. i think on .NET it will work much better)

SBCL, Corman CL and Scieneer CL are examples of Lisp implementations
with support for multiple CPUs/cores.

Example from the Corman Lisp manual:
"Multi-threading. The compiler has been designed to support multiple threads 
of execution, with special variable bindings on a per thread basis. These threads 
are managed by the operating system, affording you the full advantage of the 
features provided by the operating system. Multiple CPUs are supported, with 
lisp threads running simultaneously on multiple processors."


> 
> )
> (With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
> "People who lust for the Feel of keys on their fingertips (c) Inity")
From: Alex Mizrahi
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <4544a48b$0$49195$14726298@news.sunsite.dk>
(message (Hello 'Rainer)
(you :wrote  :on '(Sun, 29 Oct 2006 13:26:01 +0200))
(

 RJ> SBCL,

with Linux 2.6 NTPL only, depends on futexes..
also it crashes from time to time..
well, it crashed ALL the time i tried to load some multithreaded web stuff 
like Araneida. status of threading in SBCL is BETA.

 RJ>  Corman CL

on Windows only. i once had quite bad experience with it -- it crashed even 
without any threads :), so i won't like to use it in production environment.

 RJ>  and Scieneer CL

hmm, i've thought they abandoned it, site looked very dead for some years, 
but now i see some activities with it..
it appears to be The Common Lisp with threads working right -- but look HOW 
MUCH does it cost.. it appers that threads for Lisp are rocket-science :)

)
(With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
"People who lust for the Feel of keys on their fingertips (c) Inity") 
From: Rainer Joswig
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <joswig-4A409E.14122129102006@news-europe.giganews.com>
In article <·························@news.sunsite.dk>,
 "Alex Mizrahi" <········@users.sourceforge.net> wrote:

> (message (Hello 'Rainer)
> (you :wrote  :on '(Sun, 29 Oct 2006 13:26:01 +0200))
> (
> 
>  RJ> SBCL,
> 
> with Linux 2.6 NTPL only, depends on futexes..

Mac OS X on Intel also.

> also it crashes from time to time..
> well, it crashed ALL the time i tried to load some multithreaded web stuff 
> like Araneida. status of threading in SBCL is BETA.
> 
>  RJ>  Corman CL
> 
> on Windows only. i once had quite bad experience with it -- it crashed even 
> without any threads :), so i won't like to use it in production environment.
> 
>  RJ>  and Scieneer CL
> 
> hmm, i've thought they abandoned it, site looked very dead for some years, 
> but now i see some activities with it..
> it appears to be The Common Lisp with threads working right -- but look HOW 
> MUCH does it cost.. it appers that threads for Lisp are rocket-science :)

You seem to have all kinds of problems with Common Lisp
implementations and nobody seems to be able to help you.
Why struggle? Why not just switch to Java?

> 
> )
> (With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
> "People who lust for the Feel of keys on their fingertips (c) Inity")
From: Victor Kryukov
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <m2ac3e286o.fsf@victor-kryukovs-computer.local>
Rainer Joswig <······@lisp.de> writes:

> In article <·························@news.sunsite.dk>,
>  "Alex Mizrahi" <········@users.sourceforge.net> wrote:
>>  RJ> SBCL,
>> 
>> with Linux 2.6 NTPL only, depends on futexes..
>
> Mac OS X on Intel also.

Really? I would be interested to know if SBCL supports threads on
Intel Mac OS X. I have tried 0.9.17, and it doesn't. Are you talking about
cvs version?
From: Rainer Joswig
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <joswig-44EF99.21254429102006@news-europe.giganews.com>
In article <··············@victor-kryukovs-computer.local>,
 Victor Kryukov <···················@gmail.com> wrote:

> Rainer Joswig <······@lisp.de> writes:
> 
> > In article <·························@news.sunsite.dk>,
> >  "Alex Mizrahi" <········@users.sourceforge.net> wrote:
> >>  RJ> SBCL,
> >> 
> >> with Linux 2.6 NTPL only, depends on futexes..
> >
> > Mac OS X on Intel also.
> 
> Really? I would be interested to know if SBCL supports threads on
> Intel Mac OS X. I have tried 0.9.17, and it doesn't. Are you talking about
> cvs version?

I have still SBCL 0.9.15 on my Macbook and it supports
threads and both cores.
From: Alex Mizrahi
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <4544b562$0$49204$14726298@news.sunsite.dk>
(message (Hello 'Rainer)
(you :wrote  :on '(Sun, 29 Oct 2006 14:12:21 +0200))
(

 RJ> You seem to have all kinds of problems with Common Lisp
 RJ> implementations and nobody seems to be able to help you.
 RJ> Why struggle?

i like the syntax :)
but implementations make me sad..

afaik Mono guys made stable .NET platform in relatively short time, i wonder 
why Lisp guys were not able to do same.

 RJ>  Why not just switch to Java?

i did that, sort of. i'm currently using Armed Bear Common Lisp, based on 
Java. and i have less problems with it than with other implementations i 
used. if it breaks down, i typically know where to fix it.
however it has some unfixable problem -- CLOS crashes with hardware 
multithreading.. and it's quite slow. so i'm afraid i won't be able to use 
it in production environment, if i ever do any production..

(actually i only program Lisp as a 'hobby'; at work i mainly use C++. it 
constantly crashes, but that's what C++ was designed for :)

)
(With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
"People who lust for the Feel of keys on their fingertips (c) Inity") 
From: Sacha
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <o7i1h.156298$G54.2529369@phobos.telenet-ops.be>
> SBCL, Corman CL and Scieneer CL are examples of Lisp implementations
> with support for multiple CPUs/cores.

Ahwell, next time i'll read the full thread...

Sacha 
From: Bill Atkins
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <m2u01n3x5i.fsf@weedle-24.dynamic.rpi.edu>
"Alex Mizrahi" <········@users.sourceforge.net> writes:

> does LispWorks offer a webserver implementation, 

Not out of the box, but Hutchentoot, Araneda, mod_lisp, and
portable_aserve are all easily obtained.

> internal DB like AllegroCache, triple store like AllegroGraph, 

Nope.

> native threads support?

Of course.

> do they have some RDF reasoner for it, like RACER for ACL?

Nope.  Are you intending to use AllegroCache, AllegroGraph, and RACER,
or are you just comparing features?

> and as for performace, i don't think lispworks will win here.

Why?

> so i don't see LispWorks bringing any additional value over free 
> implementations, unlike AllegroCL.

How about a vastly superior IDE, a sane licensing policy, and the CAPI
toolkit?
From: Alex Mizrahi
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <4544ffb5$0$49209$14726298@news.sunsite.dk>
(message (Hello 'Bill)
(you :wrote  :on '(Sun, 29 Oct 2006 11:27:21 -0500))
(

 ??>> native threads support?

 BA> Of course.

i meant two lisp threads running simultaneously on two processors/cores.

 ??>> do they have some RDF reasoner for it, like RACER for ACL?

 BA> Nope.  Are you intending to use AllegroCache, AllegroGraph, and RACER,
 BA> or are you just comparing features?

yes, i'm thinking of doing SemanticWeb-related stuff.
afaik LispWorks have Prolog. i think they can upgrade it to RDF-reasoner, 
add some triple store support -- and sell it as a kewl Semantic Web toolkit, 
that sounds much better than old Prolog :).

 ??>> and as for performace, i don't think lispworks will win here.

 BA> Why?

i've benchmarked them once.. i'm a benchmark maniac, so i have developed 
feeling of what runs at what pace.
(and i don't just run benchmarks -- this friday i've optimized application 
60-70% in critical area using native threads, but it's not related to 
Lisp..).

 ??>> so i don't see LispWorks bringing any additional value over free
 ??>> implementations, unlike AllegroCL.

 BA> How about a vastly superior IDE,

better than SLIME? :)
well, i'm now struggling with ABCL that is not able to provide any debugging 
features, so i have to debug via print and meditation :). so more sane IDE 
would be great, but none of implementations satisfy my criterias :(

 BA>  and the CAPI toolkit?

not interested in GUI.

)
(With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
"People who lust for the Feel of keys on their fingertips (c) Inity") 
From: Bill Atkins
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <m21woqodaf.fsf@weedle-24.dynamic.rpi.edu>
"Alex Mizrahi" <········@users.sourceforge.net> writes:

> better than SLIME? :)

FAR better.
From: Rainer Joswig
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <joswig-7048F0.13193329102006@news-europe.giganews.com>
In article <·························@news.sunsite.dk>,
 "Alex Mizrahi" <········@users.sourceforge.net> wrote:

> (message (Hello 'Bill)
> (you :wrote  :on '(Sat, 28 Oct 2006 22:56:27 -0400))
> (
> 
>  BA> www.lispworks.com
> 
>  BA> Problem solved.
> 
> i'm going to use ACL only for compat testing, but anyway..
> 
> does LispWorks offer a webserver implementation, internal DB like 
> AllegroCache, triple store like AllegroGraph, native threads support?
> do they have some RDF reasoner for it, like RACER for ACL?

You can run other webservers with LispWorks.
LispWorks does not offer an internal DB.
LispWorks has native thread support, but does not
utilize multiple processors (similar to ACL).
LispWorks does not have a 'Triple Store'.
Racer is available for LispWorks, too.

> and as for performace, i don't think lispworks will win here.

It is mostly in the same league as ACL.

> so i don't see LispWorks bringing any additional value over free 
> implementations, unlike AllegroCL.

Well, LispWorks has a GUI toolkit and an IDE that works
on Windows,  X11/Motif and Mac OS X / Cocoa.

> all they can offer is partly-working ORM mapping. last time i checked it was 
> completely broken by design -- for example, i'm unable to do cascade 
> deletion with it, am i supposed to leave garbage in my DB, or i should 
> delete everything manually?? even free implementation (i don't remember 
> name, clsql, i think) was better than their implementation -- and free lib 
> can be fixed, unlike built-in..

I'm not sure if it completely broken by design. That's a dubious claim.

The database interface is used for example within 'Link Explorer':
http://www.lispworks.com/success-stories/xanalys-link-explorer.html

> 
> )
> (With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
> "People who lust for the Feel of keys on their fingertips (c) Inity") 

So, you had a trivial problem with ACL just because their installer
had a simple hickup and you post this here as big news??? Really?
From: Alex Mizrahi
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <4544b118$0$49204$14726298@news.sunsite.dk>
(message (Hello 'Rainer)
(you :wrote  :on '(Sun, 29 Oct 2006 13:19:33 +0200))
(

 RJ> I'm not sure if it completely broken by design. That's a dubious claim.

but how do i use standard SQL feature 'on delete cascade' with it then? i 
don't see such option there.
without that feature database can get inconsistent. the whole point of RDBMS 
is to make user data ever-consistent.
no one wants to have 'hanging' employees when you delete a company they 
belong to, or some hanging 'employee-salary' when you delete that employee.

 RJ> So, you had a trivial problem with ACL just because their installer
 RJ> had a simple hickup and you post this here as big news??? Really?

it's a big SHAME for company to have installer like that. i'm tired of 
crapware. it's a pity that there is some crapware in Lisp world.
i understand that some stuff can be broken, that's one thing. but that's 
another thing when users are forced (or encouraged) to use some flashy piece 
of crap that has absolutely no useful functionality and is only a source of 
problems for users! luckily my web traffic is free, but i've wasted some of 
my time because of that broken installer-downloader!

public feedback is one of ways to force comanies to reduce amount of crap 
they produce.

)
(With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
"People who lust for the Feel of keys on their fingertips (c) Inity") 
From: Michael D. Kersey
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <45450ee2$0$97590$a726171b@news.hal-pc.org>
Alex Mizrahi wrote:
> (message (Hello 'Rainer)
> (you :wrote  :on '(Sun, 29 Oct 2006 13:19:33 +0200))
> (
> 
>  RJ> I'm not sure if it completely broken by design. That's a dubious claim.
> 
> but how do i use standard SQL feature 'on delete cascade' with it then? i 
> don't see such option there.
> without that feature database can get inconsistent. the whole point of RDBMS 
> is to make user data ever-consistent.
> no one wants to have 'hanging' employees when you delete a company they 
> belong to, or some hanging 'employee-salary' when you delete that employee.

The cascade delete should be part of your database definition (DDL).

Once the RDBMS database is properly defined (including the cascade 
deletes), every time you issue a
SQL DELETE company WHERE ...
the appropriate company tuple will be deleted and all dependent employee 
tuples will be deleted.

IOW this has nothing to do with the language or the language 
implementation but with the RDBMS chosen.
From: Alex Mizrahi
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <4545202e$0$49207$14726298@news.sunsite.dk>
(message (Hello 'Michael)
(you :wrote  :on '(Sun, 29 Oct 2006 14:28:36 -0600))
(

 MDK> The cascade delete should be part of your database definition (DDL).

 MDK> IOW this has nothing to do with the language or the language
 MDK> implementation but with the RDBMS chosen.

SQL library in LispWorks has OO ORM stuff. one can define def-view-class, 
and it will automatically generate table definitions, and will allow to do 
fancy queries. def-view-class has lotsa stuff, including type 
specifications, but surprisingly no ON DELETE CASCADE and ON DELETE 
RESTRICT. i wonder why didn't they include it, since without it whole idea 
with def-view-class becomes useless -- surely one can build database 
definition himself (although Lisp programmers might be more efficient 
writting Lisp def-view-class code rather than SQL definitions), but then 
he'll need to synchonize def-view-class definitions with SQL table 
definitions, that is not good..

)
(With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
"People who lust for the Feel of keys on their fingertips (c) Inity") 
From: Bill Atkins
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <m2pscamyky.fsf@weedle-24.dynamic.rpi.edu>
"Alex Mizrahi" <········@users.sourceforge.net> writes:

> SQL library in LispWorks has OO ORM stuff. one can define def-view-class, 
> and it will automatically generate table definitions, and will allow to do 
> fancy queries. def-view-class has lotsa stuff, including type 
> specifications, but surprisingly no ON DELETE CASCADE and ON DELETE 
> RESTRICT. i wonder why didn't they include it, since without it whole idea 
> with def-view-class becomes useless -- surely one can build database 
> definition himself (although Lisp programmers might be more efficient 
> writting Lisp def-view-class code rather than SQL definitions), but then 
> he'll need to synchonize def-view-class definitions with SQL table 
> definitions, that is not good..

DEF-VIEW-CLASS isn't only for schema generation.  You can also use it
as to map between an already-defined database and your classes.  IMO,
the automatic table generation stuff should only be used for testing
anyway.  Play with CREATE-VIEW-CLASS until your code is working, then
use a "create table" SQL command to define the schema you're going to
use, with any optimizations and delete cascade stuff included.  Your
program can still benefit from having view classes that handle
interaction with the database.
From: Alex Mizrahi
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <4545b835$0$49200$14726298@news.sunsite.dk>
(message (Hello 'Bill)
(you :wrote  :on '(Sun, 29 Oct 2006 19:33:49 -0500))
(

 BA> DEF-VIEW-CLASS isn't only for schema generation.  You can also use it
 BA> as to map between an already-defined database and your classes.  IMO,
 BA> the automatic table generation stuff should only be used for testing
 BA> anyway.  Play with CREATE-VIEW-CLASS until your code is working, then
 BA> use a "create table" SQL command to define the schema you're going to
 BA> use, with any optimizations and delete cascade stuff included.

however Ystok SQL 
(http://www.lispworks.com/success-stories/ystok-tournament.html) does offer 
foriegn-key constraint specification with on-update and on-delete policy 
specification (they offer kinda same interface as Lispworks'). so i think 
_their_ SQL wrappers can be used not only for testing, but for real work..

)
(With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
"People who lust for the Feel of keys on their fingertips (c) Inity") 
From: Sacha
Subject: Re: allegro cl installer -- A.I built in, all the way DOWN
Date: 
Message-ID: <S5i1h.156295$gM.2658374@phobos.telenet-ops.be>
> LispWorks has native thread support, but does not
> utilize multiple processors (similar to ACL).

Are there any lisp implementation doing real multithreading instead of 
"thread serialization" � la Lispworks ?
SBCL maybe ?

Sacha