From: Carlo Capocasa
Subject: How To Learn Lisp
Date: 
Message-ID: <fcp2p7$gpb$1@registered.motzarella.org>
A quick discussion in the previous 'Learning Lisp from Scratch'
thread lead me to spontaneously write a short article for newbies on
how to get started with lisp less painfully.

Feedback appreciated!

--

HOW TO LEARN LISP

Step 1: When you see Emacs, turn around and run

I'm new to this fantastic new language called lisp(1), and I decided
the best person to teach someone new is someone new. Only someone
new can truly understand the unique challanges of being new. To a
young man fresh in the dating game, the advice of a happily married
elder to treat a woman with care, affection and respect will
probably yield a lot of awquard situations until he has overcome his
fear of rejection, while his friend yelling "You got to put the
MOOOOOOVES on those honeys!" might help him to do just that. Before
I can go on to uncover some of the miracles our elders have promised
me lie to be discovered in Lisp, I need to overcome a few very
practical obstacles that have absolutely nothing to do with the Way
of Lisp; but overcoming them will expose me to the Way of Lisp, and
I'm sure that will be worth the trouble. Writing this, I'd like to
bring some of you along.

An Integrated Development environment is a program that you can fire
up and start doing something useful with a new language immediately.
Lisp has one of those, and it's called 'Slime'. (Charming, isn't
it?). Unfortunately, it's built on a beast of a text editor called
Emacs which is supposed to be all-powerful. I wouldn't doubt it is
extremely versatile and useful, because it has evolved through years
of being used for hard-core hacking; loads and loads of the most
valuable Software today must have been created with it. Each and
every one of us undoubtedly owe a great debt to Emacs.
Unfortunately, that doesn't make it any easier to learn to use when
you've grown up with the heavily GUI-laden OSes of the 90s and 00s.
So you're going to learn to use an obscure text-editor that follows
70s UNIX paradigms rather than 90s Desktop paradigms at the same
time as you're learning an obscure programming language? There's got
to be a better way to do this.

My approach in learning LISP has been simpler than inheriting all
the baggage at once. It is not about cloning what our elders are
doing now, but developing from our own situation just like they did
when they were young.

As for starting to work with LISP, I suggest you simply download one
of the distributions without any IDE attached to it. I used Steel
Bank Common Lisp because it felt fresh to me. Be sure to download
the binary version, unpack it somewhere, and open its executable in
a terminal. This will give you a Lisp prompt where you can start
typing in what you will be learning in all the tutorials that have
to do with the language itself, and finding out what you typed returns.

When you've done a little typing, you can start opening a text
editor you're comfortable with, and saving it to "something.lisp" in
the same directory you started Lisp executable from. You can then
load what you wrote into Lisp by typing (load "something.lisp").

For your pure pleasure, you can even compile something.lisp into an
executable. With SBCL, this is what to paste into your terminal:

(require 'asdf)
(require :sb-executable)
(compile-file "something")
(sb-executable:make-executable "something" "something.fasl")

Of course, it is always a good idea to let the first something you
compile be a file containing this:

(format t "Hello, World!~%")

Now that you can play with real code, you're ready to start learning
the language.

I would recommend starting with this book:

http://franz.com/support/documentation/6.2/ansicl/ansicl.htm

From: Carlo Capocasa
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <fcp2t4$gpb$2@registered.motzarella.org>
These footnotes should be added:

(1) Like all fantastic new things, Lisp has been around for a long time.

rev. 0.01
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-32D469.20160518092007@news-europe.giganews.com>
In article <············@registered.motzarella.org>,
 Carlo Capocasa <······@carlocapocasa.com> wrote:

> Step 1: When you see Emacs, turn around and run

There are better IDEs for less painful learning Common Lisp. For
example the LispWorks Personal Edition or the
Express Edition of Allegro CL. MCL is the best for
learning. It is much easier to use than the others.
Unfortunately it only runs on PowerPC Macs.
Corman Lisp has also an easier to use IDE than SLIME.

> I would recommend starting with this book:
> 
> http://franz.com/support/documentation/6.2/ansicl/ansicl.htm

I wouldn't recommend that for learning. It is certainly
useful to consult it while learning. For learning
programming in Common Lisp, I would recommend Peter
Seibel's book 'Practical Common Lisp'.

Here is a newer link for above reference:

http://franz.com/support/documentation/8.1/ansicl/ansicl.htm

Here is the link to the table of contents for the
full Allegro CL documentation:

http://franz.com/support/documentation/8.1/doc/contents.htm

-- 
http://lispm.dyndns.org
From: Carlo Capocasa
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <fcp5lc$qq4$1@registered.motzarella.org>
>> Step 1: When you see Emacs, turn around and run
> 
> There are better IDEs for less painful learning Common Lisp. For
> example the LispWorks Personal Edition or the
> Express Edition of Allegro CL. MCL is the best for
> learning. It is much easier to use than the others.
> Unfortunately it only runs on PowerPC Macs.
> Corman Lisp has also an easier to use IDE than SLIME.

I'm sure they're at what they do... Hm, but I didn't mention 'Free
Software' and 'Cross Platform'. These things are extremely important
to me in chosing a development platform in order to avoid growing an
overly limiting dependency.

> I wouldn't recommend that for learning. It is certainly
> useful to consult it while learning. For learning
> programming in Common Lisp, I would recommend Peter
> Seibel's book 'Practical Common Lisp'.

I think that's a great book too. Hm, probably for learning the best
approach is not to learn by a book but by a goal: "I want to write a
small program that does x." then consult any number of books while
learning.

> http://franz.com/support/documentation/8.1/ansicl/ansicl.htm

Thanks!
From: Thomas A. Russ
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <ymiy7f37lgw.fsf@blackcat.isi.edu>
Carlo Capocasa <······@carlocapocasa.com> writes:

> >> Step 1: When you see Emacs, turn around and run
> > 
> > There are better IDEs for less painful learning Common Lisp. For
> > example the LispWorks Personal Edition or the
> > Express Edition of Allegro CL. MCL is the best for
> > learning. It is much easier to use than the others.
> > Unfortunately it only runs on PowerPC Macs.
> > Corman Lisp has also an easier to use IDE than SLIME.
> 
> I'm sure they're at what they do... Hm, but I didn't mention 'Free
> Software' and 'Cross Platform'. These things are extremely important
> to me in chosing a development platform in order to avoid growing an
> overly limiting dependency.

Oh, come on now.

Are you just trying to keep raising objections instead of actually
trying this?

If you really want free and cross-platform then go with Emacs.  It's
free and cross-platform.  But you don't seem to like that answer.  It
does have the advantage that you won't develop a dependency on it
because you don't like Emacs. ;)

LispWorks is cross-platform (Linux, Mac, Windows) and has a free
personal edition.  Allegro (from Franz) is also cross-platform and also
has a free trial version.

Someone else mentioned Eclipse as a possibility, but that still ties
you to a particular IDE.

Lots of people have tried to give you reasonable and specific advice,
but you seem intent on disregarding it.

-- 
Thomas A. Russ,  USC/Information Sciences Institute
From: Pascal Costanza
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <5lakopF7b7mlU2@mid.individual.net>
Carlo Capocasa wrote:
>>> Step 1: When you see Emacs, turn around and run
>> There are better IDEs for less painful learning Common Lisp. For
>> example the LispWorks Personal Edition or the
>> Express Edition of Allegro CL. MCL is the best for
>> learning. It is much easier to use than the others.
>> Unfortunately it only runs on PowerPC Macs.
>> Corman Lisp has also an easier to use IDE than SLIME.
> 
> I'm sure they're at what they do... Hm, but I didn't mention 'Free
> Software' and 'Cross Platform'. These things are extremely important
> to me in chosing a development platform in order to avoid growing an
> overly limiting dependency.

It's very clear that you don't know what you're talking about.

ANSI Common Lisp is a very good standard that all major CL 
implementations try to support as good as they can. Deviations from the 
standard are typically punished harshly by users, that's why vendors 
don't dare to deviate.

The danger of getting dependent on a single implementation is very low, 
especially at the learning stages.


Pascal

-- 
My website: http://p-cos.net
Common Lisp Document Repository: http://cdr.eurolisp.org
Closer to MOP & ContextL: http://common-lisp.net/project/closer/
From: Carlo Capocasa
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <fcp95n$7aa$1@registered.motzarella.org>
> It's very clear that you don't know what you're talking about.

Unless you look again.

> The danger of getting dependent on a single implementation is very low,
> especially at the learning stages.

I'm not talking about getting dependant on the implementation, I'm
talking about getting dependant on the IDE.

regards,

Carlo
From: ···············@gmail.com
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190144250.985558.103630@19g2000hsx.googlegroups.com>
On Sep 18, 8:33 pm, Carlo Capocasa <······@carlocapocasa.com> wrote:
> > It's very clear that you don't know what you're talking about.
>
> Unless you look again.
>
> > The danger of getting dependent on a single implementation is very low,
> > especially at the learning stages.
>
> I'm not talking about getting dependant on the implementation, I'm
> talking about getting dependant on the IDE.
>
> regards,
>
> Carlo

I think getting dependent on an IDE isn't something to worry about,
especially if it's free software like Emacs/Slime which isn't likely
to go anywhere.

The people who swear by Slime do so because they find it fits
perfectly with Common Lisp programming. Getting dependent on something
that works so well is surely a good thing!

--
Phil
http://phil.nullable.eu/
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-84D709.21403118092007@news-europe.giganews.com>
In article <························@19g2000hsx.googlegroups.com>,
 ···············@gmail.com wrote:

> On Sep 18, 8:33 pm, Carlo Capocasa <······@carlocapocasa.com> wrote:
> > > It's very clear that you don't know what you're talking about.
> >
> > Unless you look again.
> >
> > > The danger of getting dependent on a single implementation is very low,
> > > especially at the learning stages.
> >
> > I'm not talking about getting dependant on the implementation, I'm
> > talking about getting dependant on the IDE.
> >
> > regards,
> >
> > Carlo
> 
> I think getting dependent on an IDE isn't something to worry about,
> especially if it's free software like Emacs/Slime which isn't likely
> to go anywhere.
> 
> The people who swear by Slime do so because they find it fits
> perfectly with Common Lisp programming. Getting dependent on something
> that works so well is surely a good thing!

(asbestos suit on)

SLIME/Emacs is certainly useful. But, unfortunately, it is not
a good development environment for Common Lisp. Especially
not for beginners and not for advanced users.


> 
> --
> Phil
> http://phil.nullable.eu/

-- 
http://lispm.dyndns.org
From: ···············@gmail.com
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190145122.846516.120930@k79g2000hse.googlegroups.com>
On Sep 18, 8:40 pm, Rainer Joswig <······@lisp.de> wrote:

> (asbestos suit on)
>
> SLIME/Emacs is certainly useful. But, unfortunately, it is not
> a good development environment for Common Lisp. Especially
> not for beginners and not for advanced users.

In my years I've never got along with Emacs but I think this is more
my lack of mental capacity than anything else. I think there are good
choices these days for new Lispers who want a more gentle
introduction. I'll certainly keep plugging away at mine in spare
hours.

--
Phil
http://phil.nullable.eu/
From: Carlo Capocasa
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <fcpapm$c0c$3@registered.motzarella.org>
> (asbestos suit on)
> 
> SLIME/Emacs is certainly useful. But, unfortunately, it is not
> a good development environment for Common Lisp. Especially
> not for beginners and not for advanced users.

LMAO!!!!!

LMAOOOOO!!!!
From: Frank Goenninger DG1SBG
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <lz1wcvd76q.fsf@de.goenninger.net>
Rainer Joswig <······@lisp.de> writes:

> (asbestos suit on)
>
> SLIME/Emacs is certainly useful. But, unfortunately, it is not
> a good development environment for Common Lisp. Especially
> not for beginners and not for advanced users.
>
> -- 
> http://lispm.dyndns.org

Ooookkaayyyy, Rainer - you asked for it ;-)

While I normally can resist to post in such threads I am genuinely
interested in getting to know why you, as a very experienced Lisp
programmer, think Emacs + Slime is *not* a good IDE for Common Lisp.

Your statements seems to suggest that you are not using Emacs and
Slime, or do you?

What is it actually that makes that combo inferior to some other IDE?

Thanks ...

Frank

-- 

  Frank Goenninger

  frgo(at)mac(dot)com

  "Don't ask me! I haven't been reading comp.lang.lisp long enough to 
  really know ..."
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-1EA5A9.00085319092007@news-europe.giganews.com>
In article <··············@de.goenninger.net>,
 Frank Goenninger DG1SBG <·············@nomail.org> wrote:

> Rainer Joswig <······@lisp.de> writes:
> 
> > (asbestos suit on)
> >
> > SLIME/Emacs is certainly useful. But, unfortunately, it is not
> > a good development environment for Common Lisp. Especially
> > not for beginners and not for advanced users.
> >
> > -- 
> > http://lispm.dyndns.org
> 
> Ooookkaayyyy, Rainer - you asked for it ;-)

I know, I know. ;-)

Opinion rant follows (using Aquamas/SLIME).

> 
> While I normally can resist to post in such threads I am genuinely
> interested in getting to know why you, as a very experienced Lisp
> programmer, think Emacs + Slime is *not* a good IDE for Common Lisp.
> 
> Your statements seems to suggest that you are not using Emacs and
> Slime, or do you?

(asbestos suit on, again)

I do and I hate it.

When I want to start some more intense coding session,
I somehow don't use SLIME/Emacs. LispWorks is much better.
If MCL would run on an Intel Mac, I'd use that.
If things are set up (I currently don't have a Lisp Machine
around), I use Genera.

SLIME/Emacs simply annoys me big time.

SLIME/Emacs does all kinds of subtle things to keep me away
from entering the state of flow. If I'm about to be in that
state, then some buffer pops up somewhere which I don't want
to see and which I have to close. Not once, all the time.
I often use two buffers in a frame. Emacs manages always
to display something in the other part of the window,
which won't go away. The I go hunting for obscure
configuration variables. It's all there, but it is two
orders of magnitude too much.

> What is it actually that makes that combo inferior to some other IDE?

SLIME/Emacs is a usability nightmare. It is the Pearl
Harbor of usability. It is two orders of magnitude
more complicated than it needs to be.

* You get an extremely baroque editor written in an ancient
  dialect of Lisp. Still you can't type an opening parentheses
  in a comment on the first column - if you do the editor is confused.
  It does code highlighting, but only if your Lisp code/data is short.
  If it is longer, it is confused.
  The preference system is annoying. Totally annoying.
  About 95% of the options and commands one will
  never need for Lisp programming. The stuff stands in the way.
  Most of the time.

  Once can fix some problems with customization, but then
  you have to deal with the basic software architecture
  of Emacs - which is doing both too much and too little.

  Sure you can tunnel stuff through SSL and interact with
  a dozen Lisps at the same. But then you start to get
  insane.

* You get SLIME, a piece of software which is at the
  center of what I do: using the Lisp system. Yet it
  does not have regular releases and people seem
  to break the code in the repository all the time.
  
* The basic commands of SLIME and how they are set up
  somehow try to fit into the philosophy of Emacs.
  Which is a general purpose text editor, but not a Lisp
  IDE.

  I mean, see the basic evaluation commands for SLIME:
  
      Evaluation commands:
      C-M-x    - Evaluate top-level from containing point.
      C-x C-e  - Evaluate sexp before point.
      C-c C-p  - Evaluate sexp before point, pretty-print result.

  I mean, that is a cruel joke, right? Developed
  by some company who profits from RSI victims?

  But where does it display the results? In the most
  useless place, the minibuffer. Can you reuse
  it in the listener? Nope. *? No +? No. A cruel joke.

  Ah! it even annoys me while I type this. I have
  c-h m in the top half. I have the SLIME repl
  in the lower half. I do 'Find File' and it always
  removes the slime REPL and shows the file in the lower
  half. Then I have to juggle around with the buffers
  again.

  If you had a good keyboard, then you could bind
  some of the commands in a better way.
  http://lispm.dyndns.org/lisp/pics/102-0227_IMG.JPG
  But in real life you have a developer typing
  with a shitty PC layout keyboard, keeping him
  from being productive. Sure there are F1 to F19.
  But it means nothing.

  If I'm in Zmacs and I want to try out some stuff,
  I press SUSPEND, I get a mouse sensitive REPL.
  I can simply point with the mouse on the code
  in the editor and with a click it gets inserted
  and executed. When I'm done, I press RESUME
  and the type-out REPL is gone and I have
  my nice full screen editor back. Simple as that.

  When I'm in FRED (MCL's Editor) I press ENTER
  and the code gets queued to the top-most listener.
  *? +? You bet!

* All the advanced Lisp stuff is slighty broken.
  Like the mouse-copy feature. It is there, but it
  is slightly confused. It especially interacts
  badly with other ugly usability quirks. Ever noticed
  that the cursor is always visible? You can't scroll
  down with the the scrollbar a file without (!) moving the cursor.
  Which makes it hard to click on something somewhere
  else in the buffer and have it inserted at the current
  point - unless it is visible.

* SLIME REPL mode. Right click. Basic buffer menu.
  Okay, the SLIME evaluation commands are not on the top of the
  context menu. But they are on the next level? Wroong!
  They are in the fourth menu. No kidding. You thought
  Common Lisp evaluation is the most basic thing in a REPL?
  Obviously not in SLIME.

> 
> Thanks ...
> 
> Frank

-- 
http://lispm.dyndns.org
From: Carlo Capocasa
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <fcpp0e$r36$1@registered.motzarella.org>
> SLIME/Emacs is a usability nightmare. It is the Pearl
> Harbor of usability. It is two orders of magnitude
> more complicated than it needs to be.

Not to mention that you get a free ride into Richard Stallman's
childhood neurosi through the built-in 'Emacs Psychoanalist'.
From: Frank Goenninger DG1SBG
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <lzir67au2x.fsf@de.goenninger.net>
Rainer Joswig <······@lisp.de> writes:

>
> Opinion rant follows (using Aquamas/SLIME).

It's only fair now to respond to your post, so see comments below...

>
>> 
>> While I normally can resist to post in such threads I am genuinely
>> interested in getting to know why you, as a very experienced Lisp
>> programmer, think Emacs + Slime is *not* a good IDE for Common Lisp.
>> 
>> Your statements seems to suggest that you are not using Emacs and
>> Slime, or do you?
>
> (asbestos suit on, again)
>
> I do and I hate it.

Now that was an important point to make clear, really. For the record:
So the statements below are from someone who /knows/ from hard experience...

>
> When I want to start some more intense coding session,
> I somehow don't use SLIME/Emacs. LispWorks is much better.
> If MCL would run on an Intel Mac, I'd use that.
> If things are set up (I currently don't have a Lisp Machine
> around), I use Genera.

If Allegro CL had an IDE on Intel Mac, I'd buy that. My lease license
just has ended and I decided *not* to renew it. ACL is a decent
implementation but the lacking of the IDE for Macs is just no more
tolerable. The IDE is there for Linux, Windows.

>
> SLIME/Emacs simply annoys me big time.

And that's true for me also, especially during the last three months...

>
> SLIME/Emacs does all kinds of subtle things to keep me away
> from entering the state of flow. If I'm about to be in that
> state, then some buffer pops up somewhere which I don't want
> to see and which I have to close. Not once, all the time.

Yup. Annoying.

> I often use two buffers in a frame. Emacs manages always
> to display something in the other part of the window,
> which won't go away. The I go hunting for obscure
> configuration variables. It's all there, but it is two
> orders of magnitude too much.

It took me months to get my current setup running. Now, I can use
it. This doesn't mean that it's perfect - because, as you say:

>
>> What is it actually that makes that combo inferior to some other IDE?
>
> SLIME/Emacs is a usability nightmare. It is the Pearl
> Harbor of usability. It is two orders of magnitude
> more complicated than it needs to be.
>
> * You get an extremely baroque editor written in an ancient
>   dialect of Lisp. Still you can't type an opening parentheses
>   in a comment on the first column - if you do the editor is
>   confused.

;-) Actually it does not allow to type a closing parentheses - you
  have to type C-q ) to get it.

>   It does code highlighting, but only if your Lisp code/data is short.
>   If it is longer, it is confused.

That I can't confirm. But, hey, my code is small so far.

>   The preference system is annoying. Totally annoying.
>   About 95% of the options and commands one will
>   never need for Lisp programming. The stuff stands in the way.
>   Most of the time.

Yes. Looked at it - found it to be too weird - closed it. Never looked
back at it again. The 60 or so variables and function calls I need to
set up Emacs/Slime for me are in my own startup file.

>
>   Once can fix some problems with customization, but then
>   you have to deal with the basic software architecture
>   of Emacs - which is doing both too much and too little.
>
>   Sure you can tunnel stuff through SSL and interact with
>   a dozen Lisps at the same. But then you start to get
>   insane.
>
> * You get SLIME, a piece of software which is at the
>   center of what I do: using the Lisp system. Yet it
>   does not have regular releases and people seem
>   to break the code in the repository all the time.

Oh yes. I made the mistake to go ahead with CVS changes. Slowly Slime
is stabilizing again ... MAJOR annoyance!

>   
> * The basic commands of SLIME and how they are set up
>   somehow try to fit into the philosophy of Emacs.
>   Which is a general purpose text editor, but not a Lisp
>   IDE.
>
>   I mean, see the basic evaluation commands for SLIME:
>   
>       Evaluation commands:
>       C-M-x    - Evaluate top-level from containing point.
>       C-x C-e  - Evaluate sexp before point.
>       C-c C-p  - Evaluate sexp before point, pretty-print result.
>
>   I mean, that is a cruel joke, right? Developed
>   by some company who profits from RSI victims?

Hehe - yes. Carpal Tunnel Syndrome, actually.

>
>   But where does it display the results? In the most
>   useless place, the minibuffer. Can you reuse
>   it in the listener? Nope. *? No +? No. A cruel joke.

It actually gets in the way with the underlying implementation's REPL
variables: In ACL, when I fire up the raw Lisp implementation, I can
type 

CL-User> :processes

and I get a list of currently running "processes". When in Slime I
get just :PROCESSES as a result. Made me write a small tool bound to a
function key ... So, yes, not that good.

>
>   Ah! it even annoys me while I type this. I have
>   c-h m in the top half. I have the SLIME repl
>   in the lower half. I do 'Find File' and it always
>   removes the slime REPL and shows the file in the lower
>   half. Then I have to juggle around with the buffers
>   again.

True, true. (Nodding with head heavily ...)

>
>   If you had a good keyboard, then you could bind
>   some of the commands in a better way.
>   http://lispm.dyndns.org/lisp/pics/102-0227_IMG.JPG
>   But in real life you have a developer typing
>   with a shitty PC layout keyboard, keeping him
>   from being productive. Sure there are F1 to F19.
>   But it means nothing.

I have bound them all doing something in Slime for me...

>
>   If I'm in Zmacs and I want to try out some stuff,
>   I press SUSPEND, I get a mouse sensitive REPL.
>   I can simply point with the mouse on the code
>   in the editor and with a click it gets inserted
>   and executed. When I'm done, I press RESUME
>   and the type-out REPL is gone and I have
>   my nice full screen editor back. Simple as that.

Not really knowing CLIM it sounds doable with CLIM. Is there any
attempt to get Zmacs back?  

>
>   When I'm in FRED (MCL's Editor) I press ENTER
>   and the code gets queued to the top-most listener.
>   *? +? You bet!
>
> * All the advanced Lisp stuff is slighty broken.
>   Like the mouse-copy feature. It is there, but it
>   is slightly confused. It especially interacts
>   badly with other ugly usability quirks. Ever noticed
>   that the cursor is always visible? You can't scroll
>   down with the the scrollbar a file without (!) moving the cursor.
>   Which makes it hard to click on something somewhere
>   else in the buffer and have it inserted at the current
>   point - unless it is visible.

True, true. (Nodding with head heavily ...)

>
> * SLIME REPL mode. Right click. Basic buffer menu.
>   Okay, the SLIME evaluation commands are not on the top of the
>   context menu. But they are on the next level? Wroong!
>   They are in the fourth menu. No kidding. You thought
>   Common Lisp evaluation is the most basic thing in a REPL?
>   Obviously not in SLIME.

Hunh? I don't any right-click menu at all in REPL mode when I am in
the REPL buffer. The only right-click menu is presentations...

Thanks again for a very elaborate sharing of thoughts. Why, then, are
you using Emacs/Slime at all? ;-)

Frank

-- 

  Frank Goenninger

  frgo(at)mac(dot)com

  "Don't ask me! I haven't been reading comp.lang.lisp long enough to 
  really know ..."
From: Ken Tilton
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <bG7Ii.8$9b2.1@newsfe12.lga>
Frank Goenninger DG1SBG wrote:
> Rainer Joswig <······@lisp.de> writes:
> 
> 
>>Opinion rant follows (using Aquamas/SLIME).
> 
> 
> It's only fair now to respond to your post, so see comments below...
> 
> 
>>>While I normally can resist to post in such threads I am genuinely
>>>interested in getting to know why you, as a very experienced Lisp
>>>programmer, think Emacs + Slime is *not* a good IDE for Common Lisp.
>>>
>>>Your statements seems to suggest that you are not using Emacs and
>>>Slime, or do you?
>>
>>(asbestos suit on, again)
>>
>>I do and I hate it.
> 
> 
> Now that was an important point to make clear, really. For the record:
> So the statements below are from someone who /knows/ from hard experience...

Sure, but all that can be fixed by having Kenny say something bad about 
Emacs + Slime, then it will suddenly be perfect and effortless and mow 
your lawn when it needs it.

Me, I love Slime + Emacs.

Actually, I keep wondering: could Emacs talk to SBCL or CMUCL images 
built with Celtk Inside(tm) and then have a GUI inspector, class 
browser, etal? Or does being a background process (I made that up) 
prohibit such hijinx?

I smell a commercial product....

kenny

-- 
http://www.theoryyalgebra.com/

"We are what we pretend to be." -Kurt Vonnegut
From: Frank Goenninger DG1SBG
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <lzzlzibxn7.fsf@de.goenninger.net>
Ken Tilton <···········@optonline.net> writes:

> Frank Goenninger DG1SBG wrote:

>> Now that was an important point to make clear, really. For the record:
>> So the statements below are from someone who /knows/ from hard experience...

> Sure, but all that can be fixed by having Kenny say something bad
> about Emacs + Slime, then it will suddenly be perfect and effortless
> and mow your lawn when it needs it.

hi hi (as amateur radio ops say for "laughing") -

>
> Me, I love Slime + Emacs.

Hey, Kenny, we know that ;-) Makes me feel strange when I don't see a
";-)" smiley behind this statement. Newbies could take this as being
true ;-)

>
> Actually, I keep wondering: could Emacs talk to SBCL or CMUCL images
> built with Celtk Inside(tm) and then have a GUI inspector, class
> browser, etal? Or does being a background process (I made that up)
> prohibit such hijinx?

Probably would have to go with Ltk only to mimic remote capabilities
of Slime. But, yeah, Celtk would be a very good way to do it. 

> I smell a commercial product....

Hmm - if A1 doesn't take off ... 

> kenny
>
> -- 
> http://www.theoryyalgebra.com/
>
> "We are what we pretend to be." -Kurt Vonnegut

-- 

  Frank Goenninger

  frgo(at)mac(dot)com

  "Don't ask me! I haven't been reading comp.lang.lisp long enough to 
  really know ..."
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-D95135.12205119092007@news-europe.giganews.com>
In article <··············@de.goenninger.net>,
 Frank Goenninger DG1SBG <·············@nomail.org> wrote:

...

> >   It does code highlighting, but only if your Lisp code/data is short.
> >   If it is longer, it is confused.
> 
> That I can't confirm. But, hey, my code is small so far.

Sometimes it is just large data.

...

> >   If I'm in Zmacs and I want to try out some stuff,
> >   I press SUSPEND, I get a mouse sensitive REPL.
> >   I can simply point with the mouse on the code
> >   in the editor and with a click it gets inserted
> >   and executed. When I'm done, I press RESUME
> >   and the type-out REPL is gone and I have
> >   my nice full screen editor back. Simple as that.
> 
> Not really knowing CLIM it sounds doable with CLIM. Is there any
> attempt to get Zmacs back?  

CLIMACS is an editor for McCLIM. It may not ready for
newbie usage, but it is a good attempt to get something
going.

...

> Hunh? I don't any right-click menu at all in REPL mode when I am in
> the REPL buffer. The only right-click menu is presentations...

Aquamacs gives a right click menu and puts in the mode
specific menus.

> Thanks again for a very elaborate sharing of thoughts. Why, then, are
> you using Emacs/Slime at all? ;-)

Some implementations don't have any useful alternative IDEs.
At least I found none. I'm using Emacs for many years,
but I was never overwhelmed by its usability.

> Frank

-- 
http://lispm.dyndns.org
From: Frank Goenninger DG1SBG
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <lzvea6but3.fsf@de.goenninger.net>
Rainer Joswig <······@lisp.de> writes:

> Some implementations don't have any useful alternative IDEs.
> At least I found none. I'm using Emacs for many years,
> but I was never overwhelmed by its usability.

And that finally made me look into LW Personal Edition for Mac. 
What can I say? Well, it's not yet "feeling home" but given the two
hours I had or trying I am already pretty high in productivity ... 

It took me a considerable higher amount of time to get there with
Emacs/Slime. But then again, I have been a Lisp newbie a few years ago
when I started using Slime. I am still a newbie, only somewhat less
;-)

I'll keep using LW PE for a while to see if I am finally going to
switch!

Thx for the heads-up and the encouragement - that's what it actually
meant to me, anyway.

Frank

-- 

  Frank Goenninger

  frgo(at)mac(dot)com

  "Don't ask me! I haven't been reading comp.lang.lisp long enough to 
  really know ..."
From: Frank Goenninger
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <fcrmo3$td3$00$1@news.t-online.com>
On 2007-09-19 16:20:56 +0200, Frank Goenninger DG1SBG 
<·············@nomail.org> said:

> Rainer Joswig <······@lisp.de> writes:
> 
>> Some implementations don't have any useful alternative IDEs.
>> At least I found none. I'm using Emacs for many years,
>> but I was never overwhelmed by its usability.
> 
> And that finally made me look into LW Personal Edition for Mac.
> What can I say? Well, it's not yet "feeling home" but given the two
> hours I had or trying I am already pretty high in productivity ...
> 
> It took me a considerable higher amount of time to get there with
> Emacs/Slime. But then again, I have been a Lisp newbie a few years ago
> when I started using Slime. I am still a newbie, only somewhat less
> ;-)
> 
> I'll keep using LW PE for a while to see if I am finally going to
> switch!
> 
> Thx for the heads-up and the encouragement - that's what it actually
> meant to me, anyway.
> 
> Frank

Some coments I have to say here:

Edi, you are a hero! I am now using Edi's LW-ADD-ON package and I have 
to say: Sweeeeet ! Combines the nice stuff of Slime (just name one: 
symbol completion upon hitting Tab) with a full blown IDE of LW.

I can do breakpoints now - Gasp! What a huge win for debugging ...
Singing "IDE is fun - tralala - IDE is fun -  tralala" ;-)

Frank

-- 
  Frank Goenninger

  frgo(at)goenninger(dot)net

  "Don't ask me! I haven't been reading comp.lang.lisp long enough to 
really know ..."

	
From: Giorgos Keramidas
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87wsui3xmm.fsf@kobe.laptop>
On Wed, 19 Sep 2007 11:21:58 +0200, Frank Goenninger DG1SBG <·············@nomail.org> wrote:
> In ACL, when I fire up the raw Lisp implementation, I can type
>
> CL-User> :processes
>
> and I get a list of currently running "processes". When in Slime I get
> just :PROCESSES as a result. Made me write a small tool bound to a
> function key ... So, yes, not that good.

I'm not so sure this is a propery of Slime, as I get exactly the same
result as your second description when I run SBCL in a terminal without
Slime too:

% $ sbcl
% This is SBCL 1.0.9, [...]
% * :processes
%
% :PROCESSES
% *

Surely it's not exactly a "bug" in Slime that it doesn't implement a
bug-for-bug compatible feature set maching ACL's various tricks.

In this case :processes is a keyword, and I'm not sure if the CLHS
requires that its value is ``a list of the active processes'', but
I think it's a relatively safe bet that it doesn't.

Having said that, it's a pretty cool & useful feature of ACL :-)
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-0B8EC5.21250018092007@news-europe.giganews.com>
In article <············@registered.motzarella.org>,
 Carlo Capocasa <······@carlocapocasa.com> wrote:

> >> Step 1: When you see Emacs, turn around and run
> > 
> > There are better IDEs for less painful learning Common Lisp. For
> > example the LispWorks Personal Edition or the
> > Express Edition of Allegro CL. MCL is the best for
> > learning. It is much easier to use than the others.
> > Unfortunately it only runs on PowerPC Macs.
> > Corman Lisp has also an easier to use IDE than SLIME.
> 
> I'm sure they're at what they do... Hm, but I didn't mention 'Free
> Software' and 'Cross Platform'. These things are extremely important
> to me in chosing a development platform in order to avoid growing an
> overly limiting dependency.

ACL and LispWorks are cross-platform. I usually try to
use the best tool for learning. The best tool is not
necessarily the one that costs less or is 'free'.

I don't know any EASY to use ROBUST IDE (integrated
development environment) for Lisp that is also free.
Maybe some readers' here have some advice. The emphasis
is on EASY to use. I mean EASY. Not Emacs/SLIME.

> > I wouldn't recommend that for learning. It is certainly
> > useful to consult it while learning. For learning
> > programming in Common Lisp, I would recommend Peter
> > Seibel's book 'Practical Common Lisp'.
> 
> I think that's a great book too. Hm, probably for learning the best
> approach is not to learn by a book but by a goal: "I want to write a
> small program that does x." then consult any number of books while
> learning.

That's a very good approach. I would say that one should
really read some of the basic books from start to end
and try the examples at the same time. Once one has
a basic overview of the language, a small program
is exactly the best way to learn how to apply
what one has learned. While writing that small
program one will consult some books and the reference.

The best way (IMHO) to learn something is to really
try things out and apply the language to some programming
tasks. One can theoretically read about riding a bicycle,
but you need practical experience (also making mistakes
and learning from mistakes) to real be able to use the
bicycle. Programming is not different from that. Lisp
programming in the REPL (read eval print loop) is very
similar. It is like riding a bike. Once you have learned
it, you will have learned something basic. The REPL
has a very direct feel. There is little between you and
the programs you write. Everything you type
can be tried out immediately. All of Lisp can be typed
to the REPL.

> 
> > http://franz.com/support/documentation/8.1/ansicl/ansicl.htm
> 
> Thanks!

-- 
http://lispm.dyndns.org
From: ···············@gmail.com
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190143977.427447.163980@57g2000hsv.googlegroups.com>
On Sep 18, 8:25 pm, Rainer Joswig <······@lisp.de> wrote:

> I don't know any EASY to use ROBUST IDE (integrated
> development environment) for Lisp that is also free.
> Maybe some readers' here have some advice. The emphasis
> is on EASY to use. I mean EASY. Not Emacs/SLIME.

ABLE (http://phil.nullable.eu/) is EASY and FREE but I can't honestly
say it's totally robust yet, especially on Windows. I mean I use it
for all of my Lisp programming including writing ABLE since day 1 but
it has a way to go before 1.0. But some people like it so I guess it
depends on what you're after.

--
Phil
http://phil.nullable.eu/
From: Carlo Capocasa
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <fcpcvr$lk8$1@registered.motzarella.org>
> ACL and LispWorks are cross-platform. I usually try to
> use the best tool for learning. The best tool is not
> necessarily the one that costs less or is 'free'.

It's a matter of what you perceive to be 'good': My experience with
commercial software of all kinds is that it tries to prevent you
from shooting yourself in the foot. That has a price: Sometimes you
want to do dangerous things, and in my experience, 'Free Software'
(as in Free Speech) does that. Of course, that it doesn't cost
anything makes it easier for me to use it to get rich with a web
startup.

> I don't know any EASY to use ROBUST IDE (integrated
> development environment) for Lisp that is also free.
> Maybe some readers' here have some advice. The emphasis
> is on EASY to use. I mean EASY. Not Emacs/SLIME.

Well, I suppose that *could* change over time... It will if I have
any say in it, which means: Will it be important enough to do that
as part as what I do for a living?

>> I think that's a great book too. Hm, probably for learning the best
>> approach is not to learn by a book but by a goal: "I want to write a
>> small program that does x." then consult any number of books while
>> learning.
> 
> That's a very good approach. I would say that one should
> really read some of the basic books from start to end
> and try the examples at the same time. Once one has
> a basic overview of the language, a small program
> is exactly the best way to learn how to apply
> what one has learned. While writing that small
> program one will consult some books and the reference.

Thanks! Yeah that's exactly what I did. I'll never have to worry
about having to manually open my SFTP transferred files again.
From: Thomas A. Russ
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <ymitzpr7laf.fsf@blackcat.isi.edu>
Carlo Capocasa <······@carlocapocasa.com> writes:

> My experience with
> commercial software of all kinds is that it tries to prevent you
> from shooting yourself in the foot. That has a price: Sometimes you
> want to do dangerous things, and in my experience, 'Free Software'
> (as in Free Speech) does that.

Well, at least Common Lisp doesn't have THAT problem.  Lisp never tries
to prevent you from shooting yourself in the foot.  Now, mind you, it
usually doesn't make it particularly easy, but it is always possible.
Especially with destructive operations.

-- 
Thomas A. Russ,  USC/Information Sciences Institute
From: Geoff Wozniak
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190167164.875833.187820@r29g2000hsg.googlegroups.com>
On Sep 18, 4:38 pm, Carlo Capocasa <······@carlocapocasa.com> wrote:
> It's a matter of what you perceive to be 'good': My experience with
> commercial software of all kinds is that it tries to prevent you
> from shooting yourself in the foot. That has a price: Sometimes you
> want to do dangerous things, and in my experience, 'Free Software'
> (as in Free Speech) does that.

I've successfully shot myself in the foot with Allegro CL's IDE,
LispWorks' IDE and Slime.  Well, maybe I just dropped a bowling ball,
but in any case, my foot was injured.  But at least the Allegro and
LispWorks ones looked prettier when they did it.
From: Matthias Buelow
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <5latdlF79a63U1@mid.dfncis.de>
Carlo Capocasa wrote:

> My experience with
> commercial software of all kinds is that it tries to prevent you
> from shooting yourself in the foot.

Maybe because "shooting yourself in the foot" = "dissatisfied customer".
Although I don't quite understand how this is pertaining to programming
languages. Generally speaking, you can shoot yourself in the foot as
much or as little with a commercial Lisp implementation as with a free
one, same for a commercial C compiler or a free one.
From: Carlo Capocasa
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <fcppd3$tbj$1@registered.motzarella.org>
> Maybe because "shooting yourself in the foot" = "dissatisfied customer".
> Although I don't quite understand how this is pertaining to programming
> languages. Generally speaking, you can shoot yourself in the foot as
> much or as little with a commercial Lisp implementation as with a free
> one, same for a commercial C compiler or a free one.

Sure you can keep your customer safe by telling him there are places
he cannot go. But, usually, I enjoy being a little less safe but a
little more free. Which is why... well, you know the rest of the drill.
From: David Trudgett
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <uk5qntz53.fsf@yahoo.com>
Rainer Joswig <······@lisp.de> writes:

> In article <············@registered.motzarella.org>,
>  Carlo Capocasa <······@carlocapocasa.com> wrote:
>
>> >> Step 1: When you see Emacs, turn around and run
>> > 
>> > There are better IDEs for less painful learning Common Lisp. For
>> > example the LispWorks Personal Edition or the
>> > Express Edition of Allegro CL. MCL is the best for
>> > learning. It is much easier to use than the others.
>> > Unfortunately it only runs on PowerPC Macs.
>> > Corman Lisp has also an easier to use IDE than SLIME.
>> 
>> I'm sure they're at what they do... Hm, but I didn't mention 'Free
>> Software' and 'Cross Platform'. These things are extremely important
>> to me in chosing a development platform in order to avoid growing an
>> overly limiting dependency.
>
> ACL and LispWorks are cross-platform. I usually try to
> use the best tool for learning. The best tool is not
> necessarily the one that costs less or is 'free'.

Rainer, you know very well that when Carlo said he is a strong
believer in Open Source and is looking for Free Software, that he
wasn't talking about price. Why are you being deliberately obtuse?

Regards,
David Trudgett


-- 
These are not the droids you are looking for. Move along.
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-8ECA54.00105819092007@news-europe.giganews.com>
In article <·············@yahoo.com>,
 David Trudgett <·········@yahoo.com> wrote:

> Rainer Joswig <······@lisp.de> writes:
> 
> > In article <············@registered.motzarella.org>,
> >  Carlo Capocasa <······@carlocapocasa.com> wrote:
> >
> >> >> Step 1: When you see Emacs, turn around and run
> >> > 
> >> > There are better IDEs for less painful learning Common Lisp. For
> >> > example the LispWorks Personal Edition or the
> >> > Express Edition of Allegro CL. MCL is the best for
> >> > learning. It is much easier to use than the others.
> >> > Unfortunately it only runs on PowerPC Macs.
> >> > Corman Lisp has also an easier to use IDE than SLIME.
> >> 
> >> I'm sure they're at what they do... Hm, but I didn't mention 'Free
> >> Software' and 'Cross Platform'. These things are extremely important
> >> to me in chosing a development platform in order to avoid growing an
> >> overly limiting dependency.
> >
> > ACL and LispWorks are cross-platform. I usually try to
> > use the best tool for learning. The best tool is not
> > necessarily the one that costs less or is 'free'.
> 
> Rainer, you know very well that when Carlo said he is a strong
> believer in Open Source and is looking for Free Software, that he
> wasn't talking about price. Why are you being deliberately obtuse?

I mentioned 'free'? Did you see that? Last word in the paragraph.

> 
> Regards,
> David Trudgett

-- 
http://lispm.dyndns.org
From: David Trudgett
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <umyvjf1g8.fsf@yahoo.com>
Hello Rainer,

Rainer Joswig <······@lisp.de> writes:

>> > ACL and LispWorks are cross-platform. I usually try to
>> > use the best tool for learning. The best tool is not
>> > necessarily the one that costs less or is 'free'.
>> 
>> Rainer, you know very well that when Carlo said he is a strong
>> believer in Open Source and is looking for Free Software, that he
>> wasn't talking about price. Why are you being deliberately obtuse?
>
> I mentioned 'free'? Did you see that? Last word in the paragraph.

So, what you are saying is that it is not being deliberately obtuse to
mention the ambiguous word 'free' just after the ambiguous word 'or'
just after the phrase 'costs less', and that this is not deliberately
associating the word 'free' with 'costs less'.

Did the OP even mention he was looking for cheap software? Not as I
recall. He, in fact, /said/ that he was looking for Free Software, not
low cost or zero cost software, because he is a strong believer in
open source. 

You, for reasons known only to yourself, volunteered to talk about
price, thus (apparently deliberately) diverting attention from the
OP's actual stated request, and possibly making it appear to others
that the OP's actual concern was price.

Regards,
David Trudgett



-- 
These are not the droids you are looking for. Move along.
From: Pascal Costanza
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <5lc8v3F7e5sjU1@mid.individual.net>
David Trudgett wrote:
> Hello Rainer,
> 
> Rainer Joswig <······@lisp.de> writes:
> 
>>>> ACL and LispWorks are cross-platform. I usually try to
>>>> use the best tool for learning. The best tool is not
>>>> necessarily the one that costs less or is 'free'.
>>> Rainer, you know very well that when Carlo said he is a strong
>>> believer in Open Source and is looking for Free Software, that he
>>> wasn't talking about price. Why are you being deliberately obtuse?
>> I mentioned 'free'? Did you see that? Last word in the paragraph.
> 
> So, what you are saying is that it is not being deliberately obtuse to
> mention the ambiguous word 'free' just after the ambiguous word 'or'
> just after the phrase 'costs less', and that this is not deliberately
> associating the word 'free' with 'costs less'.
> 
> Did the OP even mention he was looking for cheap software? Not as I
> recall. He, in fact, /said/ that he was looking for Free Software, not
> low cost or zero cost software, because he is a strong believer in
> open source. 
> 
> You, for reasons known only to yourself, volunteered to talk about
> price, thus (apparently deliberately) diverting attention from the
> OP's actual stated request, and possibly making it appear to others
> that the OP's actual concern was price.

There is another possibility: It may be that the tension between 
commercial and free software is not that harsh in the Lisp community 
than elsewhere, and that this is one of the prejudices that you should 
better consider dropping when being a Lisp newbie. So Rainer may just 
have been sincere in his attempt to help the OP...


Pascal

-- 
My website: http://p-cos.net
Common Lisp Document Repository: http://cdr.eurolisp.org
Closer to MOP & ContextL: http://common-lisp.net/project/closer/
From: David Trudgett
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <uir67eyw1.fsf@yahoo.com>
Hi Pascal,

Pascal Costanza <··@p-cos.net> writes:

> David Trudgett wrote:
>> Hello Rainer,
>>
>> Rainer Joswig <······@lisp.de> writes:
>>
>>>>> ACL and LispWorks are cross-platform. I usually try to
>>>>> use the best tool for learning. The best tool is not
>>>>> necessarily the one that costs less or is 'free'.
>>>> Rainer, you know very well that when Carlo said he is a strong
>>>> believer in Open Source and is looking for Free Software, that he
>>>> wasn't talking about price. Why are you being deliberately obtuse?
>>> I mentioned 'free'? Did you see that? Last word in the paragraph.
>>
>> So, what you are saying is that it is not being deliberately obtuse to
>> mention the ambiguous word 'free' just after the ambiguous word 'or'
>> just after the phrase 'costs less', and that this is not deliberately
>> associating the word 'free' with 'costs less'.
>>
>> Did the OP even mention he was looking for cheap software? Not as I
>> recall. He, in fact, /said/ that he was looking for Free Software, not
>> low cost or zero cost software, because he is a strong believer in
>> open source. 
>>
>> You, for reasons known only to yourself, volunteered to talk about
>> price, thus (apparently deliberately) diverting attention from the
>> OP's actual stated request, and possibly making it appear to others
>> that the OP's actual concern was price.
>
> There is another possibility: It may be that the tension between
> commercial and free software is not that harsh in the Lisp community
> than elsewhere, 

Hey, that's great! Of course, it does mean that those other places to
which you allude must be hell! :-) 


> and that this is one of the prejudices that you should better
> consider dropping when being a Lisp newbie.

First of all, I'm not a newbie any more. When does one stop being a
newbie, by the way? ;-) I have now graduated to being merely
relatively inexperienced in Lisp programming.

Second, I know the history of c.l.l., as do you, and it is not one of
zero tension between secret software zealots like Kenny and Kent and
others, and those with a preference for Free Software. One camp kneels
at the twin altar of expediency and the "free market", and the other
holds personal freedom or ethics as a critical value to safeguard.
Broadly speaking, one group promotes commercial software but also uses
Free Software while publically trashing it and not contributing to
it[*], and the other avoids commerical software and contributes to
Free Software as time and opportunity permit.

    [*] I am in particular referring to Rainer's recent criticisms of
    SLIME. I bet it wasn't Rainer who broke the CVS build with all his
    new patches...


> So Rainer may just have been sincere in his attempt to help the
> OP...

For the record, I never made any comment on Rainer's sincerity in
trying the "help" the OP. In fact, Rainer's sincerity may be far
greater than the OP's.

Happy Lisping,
David


-- 
These are not the droids you are looking for. Move along.
From: Slobodan Blazeski
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190200604.807866.305690@w3g2000hsg.googlegroups.com>
On Sep 19, 12:24 pm, David Trudgett <·········@yahoo.com> wrote:
> Hi Pascal,
>
>
>
>
>
> Pascal Costanza <····@p-cos.net> writes:
> > David Trudgett wrote:
> >> Hello Rainer,
>
> >> Rainer Joswig <······@lisp.de> writes:
>
> >>>>> ACL and LispWorks are cross-platform. I usually try to
> >>>>> use the best tool for learning. The best tool is not
> >>>>> necessarily the one that costs less or is 'free'.
> >>>> Rainer, you know very well that when Carlo said he is a strong
> >>>> believer in Open Source and is looking for Free Software, that he
> >>>> wasn't talking about price. Why are you being deliberately obtuse?
> >>> I mentioned 'free'? Did you see that? Last word in the paragraph.
>
> >> So, what you are saying is that it is not being deliberately obtuse to
> >> mention the ambiguous word 'free' just after the ambiguous word 'or'
> >> just after the phrase 'costs less', and that this is not deliberately
> >> associating the word 'free' with 'costs less'.
>
> >> Did the OP even mention he was looking for cheap software? Not as I
> >> recall. He, in fact, /said/ that he was looking for Free Software, not
> >> low cost or zero cost software, because he is a strong believer in
> >> open source.
>
> >> You, for reasons known only to yourself, volunteered to talk about
> >> price, thus (apparently deliberately) diverting attention from the
> >> OP's actual stated request, and possibly making it appear to others
> >> that the OP's actual concern was price.
>
> > There is another possibility: It may be that the tension between
> > commercial and free software is not that harsh in the Lisp community
> > than elsewhere,
>
> Hey, that's great! Of course, it does mean that those other places to
> which you allude must be hell! :-)
>
> > and that this is one of the prejudices that you should better
> > consider dropping when being a Lisp newbie.
>
> First of all, I'm not a newbie any more. When does one stop being a
> newbie, by the way? ;-) I have now graduated to being merely
> relatively inexperienced in Lisp programming.
>
> Second, I know the history of c.l.l., as do you, and it is not one of
> zero tension between secret software zealots like Kenny and Kent and
> others, and those with a preference for Free Software. One camp kneels
> at the twin altar of expediency and the "free market", and the other
> holds personal freedom or ethics as a critical value to safeguard.
> Broadly speaking, one group promotes commercial software but also uses
> Free Software while publically trashing it and not contributing to
> it[*], and the other avoids commerical software and contributes to
> Free Software as time and opportunity permit.

Kenny Tilton is an author of 3 high quality open source libraries
called :Cells, Celtk & Cello.
How do you compare with your contributions?


>
>     [*] I am in particular referring to Rainer's recent criticisms of
>     SLIME. I bet it wasn't Rainer who broke the CVS build with all his
>     new patches...
>
> > So Rainer may just have been sincere in his attempt to help the
> > OP...
>
> For the record, I never made any comment on Rainer's sincerity in
> trying the "help" the OP. In fact, Rainer's sincerity may be far
> greater than the OP's.
>
> Happy Lisping,
> David
>
> --
> These are not the droids you are looking for. Move along.- Hide quoted text -
>
> - Show quoted text -
From: Tim X
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87fy19sosn.fsf@lion.rapttech.com.au>
Slobodan Blazeski <·················@gmail.com> writes:

> On Sep 19, 12:24 pm, David Trudgett <·········@yahoo.com> wrote:
>> Hi Pascal,
>>
>>
>>
>>
>>
>> Pascal Costanza <····@p-cos.net> writes:
>> > David Trudgett wrote:
>> >> Hello Rainer,
>>
>> >> Rainer Joswig <······@lisp.de> writes:
>>
>> >>>>> ACL and LispWorks are cross-platform. I usually try to
>> >>>>> use the best tool for learning. The best tool is not
>> >>>>> necessarily the one that costs less or is 'free'.
>> >>>> Rainer, you know very well that when Carlo said he is a strong
>> >>>> believer in Open Source and is looking for Free Software, that he
>> >>>> wasn't talking about price. Why are you being deliberately obtuse?
>> >>> I mentioned 'free'? Did you see that? Last word in the paragraph.
>>
>> >> So, what you are saying is that it is not being deliberately obtuse to
>> >> mention the ambiguous word 'free' just after the ambiguous word 'or'
>> >> just after the phrase 'costs less', and that this is not deliberately
>> >> associating the word 'free' with 'costs less'.
>>
>> >> Did the OP even mention he was looking for cheap software? Not as I
>> >> recall. He, in fact, /said/ that he was looking for Free Software, not
>> >> low cost or zero cost software, because he is a strong believer in
>> >> open source.
>>
>> >> You, for reasons known only to yourself, volunteered to talk about
>> >> price, thus (apparently deliberately) diverting attention from the
>> >> OP's actual stated request, and possibly making it appear to others
>> >> that the OP's actual concern was price.
>>
>> > There is another possibility: It may be that the tension between
>> > commercial and free software is not that harsh in the Lisp community
>> > than elsewhere,
>>
>> Hey, that's great! Of course, it does mean that those other places to
>> which you allude must be hell! :-)
>>
>> > and that this is one of the prejudices that you should better
>> > consider dropping when being a Lisp newbie.
>>
>> First of all, I'm not a newbie any more. When does one stop being a
>> newbie, by the way? ;-) I have now graduated to being merely
>> relatively inexperienced in Lisp programming.
>>
>> Second, I know the history of c.l.l., as do you, and it is not one of
>> zero tension between secret software zealots like Kenny and Kent and
>> others, and those with a preference for Free Software. One camp kneels
>> at the twin altar of expediency and the "free market", and the other
>> holds personal freedom or ethics as a critical value to safeguard.
>> Broadly speaking, one group promotes commercial software but also uses
>> Free Software while publically trashing it and not contributing to
>> it[*], and the other avoids commerical software and contributes to
>> Free Software as time and opportunity permit.
>
> Kenny Tilton is an author of 3 high quality open source libraries
> called :Cells, Celtk & Cello.
> How do you compare with your contributions?
>

Not making any comment on Kenny's or anyone elses motivation or
contribution, but I did want to point out that open source does NOT equate
to free software. This is an all too common misunderstanding. Free software
only refers to software that is released under a license that protects the
'four freedoms' as outlined on the FSF site. It is quite possible to
release software as open source that does not have a license that protects
these freedoms and therefore is not free software as defined by the FSF.

I'm not tossing this in to extend this thread into a philosophical
arguement. I only mention it because the OP was quite clear that he was
referring to free software in the GNU sense of freedom rather than the more
generalised concept of open source. The extent to which you subscribe to
any of the camps regarding this issue is a personal choice which means
there will never be any consensus on which is right or wrong, so lets avoid
the waste of bandwidth and return to the real question - how to help a
newbie and the best environment to start with. 

Given the OPs original preference for free software solutions, I maintain
emacs+slime is the best of the free solutions that provide any level of
integrated development environment. 

I did find Rainer's response to the question of why he uses emacs and slime
when he dislikes it so much interesting. On the one hand, he discounts it
and says not to use it, yet when asked why he does, he admits that for some
of the free implementations, it is the best solution on offer. I find these
two positions a bit inconsistent. Wouldn't it be better to say that if you
plan to use free implementation X, then the best thing to use is
emacs+slime, even with its problems, but if your going to use a commercial
implementation, you will probably find the IDE it provides to be the best
solution. 

Also, while I've not encountered all the problems Rainer has outlined and
some of the behavior he found frustrating doesn't bother me, I suspect that
most of those issues will not be relevant until the OP has progressed a
fair way down the road to lisp, at which time, he will be in a better
position to evaluate which direction to take anyway.

Tim

See http://www.gnu.org/philosophy/free-sw.html for more info
-- 
tcross (at) rapttech dot com dot au
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-546BEC.11435120092007@news-europe.giganews.com>
In article <··············@lion.rapttech.com.au>,
 Tim X <····@nospam.dev.null> wrote:

> I did find Rainer's response to the question of why he uses emacs and slime
> when he dislikes it so much interesting. On the one hand, he discounts it
> and says not to use it, yet when asked why he does, he admits that for some
> of the free implementations, it is the best solution on offer.

Best solution does not mean that I think it is a 'good' solution
for, say, a newbie. A few weeks ago I gave somebody an introduction
into Aquamacs/SLIME/SBCL. He was already using Lisp for quite interesting
stuff. I could see his cognitive overload after a few hours
explaining the basics. I mean the 'basics'. I was like
fearing that he stops using Lisp because this stuff
looks all so insane.

When you are in that maze, you don't see how twisted it is. Step
back a little. Try to explain this stuff to newbies and
you will see that you will reach only a small percentage of
people with it. There is a good chance that a large percentage
will never come back.

> I find these
> two positions a bit inconsistent. Wouldn't it be better to say that if you
> plan to use free implementation X, then the best thing to use is
> emacs+slime, even with its problems, but if your going to use a commercial
> implementation, you will probably find the IDE it provides to be the best
> solution. 

I really hope for 'free', 'open source', no-cost, whatever Lisp users
that we get something better than SLIME/Emacs. For newbies and
for advanced users.

We now have some many extremely good 'free', 'open source',
no-cost, whatever Common Lisp
implementations, yet we are stuck with Emacs.

Don't get me wrong. It is good that there is a widely used
Emacs mode for Common Lisp and people have invested a lot of
time. But sometimes it would be nice if there was some
'design' and not just hacking of new features or
reorganizing of sources. From many programming languages,
Common Lisp probably has one of the best Emacs modes.
But it deserves something better.

Upon thinking why I actually use Emacs, I think say that I mostly
like DIRED and browsing text files (sources, ...) via the DIRED
these days. I don't use GNUS (tried it), planner mode (tried it).
Sometimes I use the outliner.
Also I use the shell in Emacs. But, when I want
to try out something in Common Lisp, I often use just a Terminal
and OpenMCL. If I want to try out something, I usually don't type M-x slime
(or something similar) to Emacs or try to find the last
SLIME REPL buffer (which has a shortcut, I know).
I'm more of an Emacs user than a SLIME user, I think. If
I have the choice (depending on what kind machine/OS I work)
I tend to avoid Emacs for Common Lisp programming.
When I reflect about my Lisp usage and see that I wanted to try out something,
write a code snippet or do some longer sessions and I tend
to not use SLIME/Emacs in those situations. I'm intuitively
using to some other tool.

Maybe I'm old-fashioned? But I grew up with Emacs, too.
A few days ago I ported some benchmark code to Open Genera.
Got some errors. But it felt like home. It was fun to
fix those errors. Stuff did help and did not stand in
the way. It is so much more relaxing to work with it.
It is recreational hacking. Emacs is stress.
Emacs violates all kinds of human interface principles.
If you look around you see that people are concerned
with productivity. There is lots of 'Getting Things Done'
advice you see. The main principle to get things done
is to simplify. Get rid of muda. Current Emacs is full of muda.
Too many options. Too many commands. Too many useless
ways to help the user while it actually stands in the way.

> Also, while I've not encountered all the problems Rainer has outlined and
> some of the behavior he found frustrating doesn't bother me, I suspect that
> most of those issues will not be relevant until the OP has progressed a
> fair way down the road to lisp, at which time, he will be in a better
> position to evaluate which direction to take anyway.

Double click MCL. A listener and an editor. Both written in CL
in one app. Type a form. Press enter. Done.

Newbie time to REPL with MCL? A second. With Installer for MCL
30 seconds.

How many commands distract you from Lisp code? Zero.


Now Emacs. Let's take Aquamacs.

Double Click Aquamacs. Now what? Ten thousand commands and
a million lines of Emacs Lisp. But no Common Lisp.

Now install Common Lisp. The usual Unix stuff. Not that
hard, but it takes some minutes. Then do some basic
setup so that you can call the implementation with
some simple command. No double clickable app. Okaaaaaay.

Now SLIME. Take the SLIME that comes with Aquamacs.
Outdated. Good chance that it will not work and you struggle
for some time. Time to get a newer version. But which one?
I use CMUCL on an Intel Mac. Need to get the newest or
patch it yourself. Try one from the source repository?
But which one? What is a useful version? The latest
source currently seem to broken in some features quite
often. Which was the last stable version. Okay, we
will find out.

We got SLIME. Now how to integrate it with Emacs. Read
the instructions. We are now typing Emacs Lisp - but
we just wanted to do Common Lisp. Now how to call
Common Lisp from Emacs. We find out.

Newbie time to REPL with SLIME/Emacs? A day.
How many stuff distracts you from the Common Lisp REPL?
A zillion! Learned new useless concepts? Hundreds.


It just feels like you want to teach somebody swimming and
you give him those iron water wings.



> 
> Tim
> 
> See http://www.gnu.org/philosophy/free-sw.html for more info

-- 
http://lispm.dyndns.org
From: David Reitter
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190293224.043284.188340@d55g2000hsg.googlegroups.com>
On Sep 20, 10:43 am, Rainer Joswig <······@lisp.de> wrote:

> Now SLIME. Take the SLIME that comes withAquamacs.
> Outdated. Good chance that it will not work and you struggle
> for some time.

Aquamacs comes with SLIME 2.0. If you check the SLIME website, you
will find that "The latest stable release is slime 2.0".

OK, so what exactly do you mean by "outdated"? Could you clarify why
you think that there's a good chance that it will not work?

(Don't forget, the Slime in Aquamacs has actually been tested and is
being used by many people. I myself use it with OpenMCL and I don't
have any major issues with it.)

Of  course you are right when you say that installing Emacs and Slime
can be difficult for newbies. Of course, Emacs is difficult for
newcomers. That's why there is Aquamacs. And whereever Slime and
Aquamacs (or Emacs) are still difficult, please do contribute and
change Emacs so that it is easier to use. Share your changes with the
respective projects, and everyone will benefit.


--
http://aquamacs.org -- Aquamacs: Emacs on Mac OS X
http://aquamacs.org/donate -- Could we help you? Return the favor and
support the Aquamacs Project!
From: Juho Snellman
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <slrnff4v7b.27h.jsnell@sbz-30.cs.Helsinki.FI>
David Reitter <·············@gmail.com> wrote:
> On Sep 20, 10:43 am, Rainer Joswig <······@lisp.de> wrote:
>
>> Now SLIME. Take the SLIME that comes withAquamacs.
>> Outdated. Good chance that it will not work and you struggle
>> for some time.
>
> Aquamacs comes with SLIME 2.0. If you check the SLIME website, you
> will find that "The latest stable release is slime 2.0".

Releases aren't a priority for Slime. It's expected that the target
audience is comfortable with checking out code from a version control
system.

> OK, so what exactly do you mean by "outdated"? Could you clarify why
> you think that there's a good chance that it will not work?

Slime uses undocumented/unsupported internal interfaces of some Lisp
implementations. If you're using a sufficiently undocumented and
actively developed implementation, it s possible that the latest
release of the implementation isn't compatible with a Slime from 2
years ago.

(This cuts the other way around too, a Lisp implementation from 2
years ago might not work with a current version of Slime. But that's
easy to solve by just checking out an older version of Slime from
CVS).

-- 
Juho Snellman
From: Timofei Shatrov
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <46f291d8.283527701@news.readfreenews.net>
On 20 Sep 2007 14:00:11 GMT, Juho Snellman <······@iki.fi> tried to confuse
everyone with this message:

>David Reitter <·············@gmail.com> wrote:
>> On Sep 20, 10:43 am, Rainer Joswig <······@lisp.de> wrote:
>>
>>> Now SLIME. Take the SLIME that comes withAquamacs.
>>> Outdated. Good chance that it will not work and you struggle
>>> for some time.
>>
>> Aquamacs comes with SLIME 2.0. If you check the SLIME website, you
>> will find that "The latest stable release is slime 2.0".
>
>Releases aren't a priority for Slime. It's expected that the target
>audience is comfortable with checking out code from a version control
>system.

So, Lisp Noobs are not included in the target audience?

>> OK, so what exactly do you mean by "outdated"? Could you clarify why
>> you think that there's a good chance that it will not work?
>
>Slime uses undocumented/unsupported internal interfaces of some Lisp
>implementations. If you're using a sufficiently undocumented and
>actively developed implementation, it s possible that the latest
>release of the implementation isn't compatible with a Slime from 2
>years ago.

It is also possible to grab the current CVS version and find that it's
incompartible with some implementation due to someone introducing some 
random bug, and then you have to frantically search for the bugless 
version, because the chances of that bug being fixed by SLIME developers
are quite low (I once reported a bug on SLIME list almost one year ago
and it's still unfixed).

-- 
|Don't believe this - you're not worthless              ,gr---------.ru
|It's us against millions and we can't take them all... |  ue     il   |
|But we can take them on!                               |     @ma      |
|                       (A Wilhelm Scream - The Rip)    |______________|
From: David Reitter
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190367031.357236.208800@w3g2000hsg.googlegroups.com>
On Sep 20, 3:00 pm, Juho Snellman <······@iki.fi> wrote:

> Releases aren't a priority for Slime. It's expected that the target
> audience is comfortable with checking out code from a version control
> system.


Rainer Joswig:

> Usually in the Lisp world something from April 20, 2006
> is brand new. ;-) But in this case SLIME has been rewritten
> in between several times and two or more camps tried
> to re-factor it to something that they like better. ;-)
> Well, almost.


CVS versions are under development and will inevitably contain
(temporary) bugs. Checking out a version on an arbitrary date that is
not endorsed by the developers as "release" amounts to playing Russian
Roulette. It also brings up all sorts of questions with respect to
support and incorporating bug reports. We had to do that with Aquamacs
and GNU Emacs before the 22.1 release, and GNU Emacs has had a pretty
stable CVS thanks to conservative checkin policies.

You really have to complain to the SLIME management for not getting
the project to actually do a release. It's an unfortunate situation.
Including a CVS snapshot in a distribution such as Aquamacs is not a
viable option.
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-066914.18195920092007@news-europe.giganews.com>
In article <························@d55g2000hsg.googlegroups.com>,
 David Reitter <·············@gmail.com> wrote:

> On Sep 20, 10:43 am, Rainer Joswig <······@lisp.de> wrote:
> 
> > Now SLIME. Take the SLIME that comes withAquamacs.
> > Outdated. Good chance that it will not work and you struggle
> > for some time.
> 
> Aquamacs comes with SLIME 2.0. If you check the SLIME website, you
> will find that "The latest stable release is slime 2.0".

Usually in the Lisp world something from April 20, 2006
is brand new. ;-) But in this case SLIME has been rewritten
in between several times and two or more camps tried
to re-factor it to something that they like better. ;-)
Well, almost.

> OK, so what exactly do you mean by "outdated"? Could you clarify why
> you think that there's a good chance that it will not work?

Example: There is a new port of CMUCL to Intel Macs.
It did not work with SLIME. But with the help from
some knowledgeable person, it was easy to fix.
The fix now is in the CVS (I hope). Updating to that
version probably would generate some other headaches,
since there is some coding going on all the time.
I just patched the version that I got from CVS some time
ago and which is known to work with later versions
of OpenMCL, too.

I have no idea what it takes to get a stable release
from SLIME and if the developers are willing to do
something in that direction.
 
> (Don't forget, the Slime in Aquamacs has actually been tested and is
> being used by many people. I myself use it with OpenMCL and I don't
> have any major issues with it.)
> 
> Of  course you are right when you say that installing Emacs and Slime
> can be difficult for newbies. Of course, Emacs is difficult for
> newcomers. That's why there is Aquamacs. And whereever Slime and
> Aquamacs (or Emacs) are still difficult, please do contribute and
> change Emacs so that it is easier to use. Share your changes with the
> respective projects, and everyone will benefit.

Aquamacs is quite useful. Thanks for your effort. It is
probably the best GNU Emacs version that ever existed.

Unfortunately Aquamacs has three areas of problems which are not
that easy to fix:

* since Aquamacs has a UI with Macs' menubar and Menus,
  you get a lot of complexity right there in the UI.
  Then there is little to escape those complex
  preferences with a funky UI to set those.

* With a Mac-like UI one might want in some places a UI
  that is not based on Emacs' buffer philosophy.
  
* Some of the basic things in Emacs is not Mac-like.
  No other editor on that platform has a cursor
  like Emacs. The Emacs cursor is always visible.
  Try Textedit with some longer text. Move the scroll
  bar. The cursor will stay at its position even,
  if it is outside the 'viewport'. This has induces
  subtle differences in interaction. Stuff like
  that is not easy to fix. The one-document-one-window
  model is also not possible to follow.
  
For relatively advanced users, Emacs/Aquamacs is a fine editor.
Unfortunately it does not make a good Newbie development
environment for Common Lisp. There is little chance that
this can be fixed. Advanced Common Lisp developers
also have some tendency to use something else. Not all,
but many I know. Some are keeping their old G4 Powerbooks
for MCL hacking, despite there are much more advanced
Macbooks available.

> 
> 
> --
> http://aquamacs.org -- Aquamacs: Emacs on Mac OS X
> http://aquamacs.org/donate -- Could we help you? Return the favor and
> support the Aquamacs Project!

-- 
http://lispm.dyndns.org
From: David Reitter
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190367289.555718.80060@19g2000hsx.googlegroups.com>
On Sep 20, 5:19 pm, Rainer Joswig <······@lisp.de> wrote:

> I have no idea what it takes to get a stable release
> from SLIME and if the developers are willing to do
> something in that direction.

Then please point out this thread to them if you're interested in a
new release.

> * sinceAquamacshas a UI with Macs' menubar and Menus,
>   you get a lot of complexity right there in the UI.
>   Then there is little to escape those complex
>   preferences with a funky UI to set those.

Right, but at the same time, menu-less programs that are powerful will
be even more difficult to learn (take Vi).

> * With a Mac-like UI one might want in some places a UI
>   that is not based on Emacs' buffer philosophy.

That is why one-buffer-one-frame-mode is enabled by default. But
generally you're certainly right.

> * Some of the basic things in Emacs is not Mac-like.
>   No other editor on that platform has a cursor
>   like Emacs. The Emacs cursor is always visible.
>   Try Textedit with some longer text. Move the scroll
>   bar. The cursor will stay at its position even,
>   if it is outside the 'viewport'. This has induces
>   subtle differences in interaction. Stuff like
>   that is not easy to fix.

Yes, I agree. I do find that Emacs' lack of a viewport makes mouseless
editing easier, though. But that is no excuse for the inconsistency
with other apps on our platform.



--
http://aquamacs.org -- Aquamacs: Emacs on Mac OS X
http://aquamacs.org/donate -- Could we help you? Return the favor and
support the Aquamacs Project!
From: Raffael Cavallaro
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <2007092011111316807-raffaelcavallaro@pasdespamsilvousplaitmaccom>
On 2007-09-20 05:43:51 -0400, Rainer Joswig <······@lisp.de> said:

> Newbie time to REPL with SLIME/Emacs? A day.
> How many stuff distracts you from the Common Lisp REPL?
> A zillion! Learned new useless concepts? Hundreds.
> 
> 
> It just feels like you want to teach somebody swimming and
> you give him those iron water wings.

Just so you don't feel like you're the only one, this has
been my experience as well. I think what we have in
common is that we've both been spoiled by MCL ;^)
From: Tim X
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <873ax8sfvx.fsf@lion.rapttech.com.au>
Rainer Joswig <······@lisp.de> writes:

> In article <··············@lion.rapttech.com.au>,
>  Tim X <····@nospam.dev.null> wrote:
>
>> I did find Rainer's response to the question of why he uses emacs and slime
>> when he dislikes it so much interesting. On the one hand, he discounts it
>> and says not to use it, yet when asked why he does, he admits that for some
>> of the free implementations, it is the best solution on offer.
>
> Best solution does not mean that I think it is a 'good' solution
> for, say, a newbie. A few weeks ago I gave somebody an introduction
> into Aquamacs/SLIME/SBCL. He was already using Lisp for quite interesting
> stuff. I could see his cognitive overload after a few hours
> explaining the basics. I mean the 'basics'. I was like
> fearing that he stops using Lisp because this stuff
> looks all so insane.
>

I guess we have different views. I've only been using emacs and slime for a
relatively short time and just haven't found it that much of a problem. I
suspect we are coming from two opposite extremes and reality for most
probably lies somewhere in the middle.



> When you are in that maze, you don't see how twisted it is. Step
> back a little. Try to explain this stuff to newbies and
> you will see that you will reach only a small percentage of
> people with it. There is a good chance that a large percentage
> will never come back.
>

I actually still consider myself to be a newbie when it comes to CL and
emacs slime. I've not done any customization of emacs and slime and still
find it the best integration I've seen for the free implementations.

>> I find these
>> two positions a bit inconsistent. Wouldn't it be better to say that if you
>> plan to use free implementation X, then the best thing to use is
>> emacs+slime, even with its problems, but if your going to use a commercial
>> implementation, you will probably find the IDE it provides to be the best
>> solution. 
>
> I really hope for 'free', 'open source', no-cost, whatever Lisp users
> that we get something better than SLIME/Emacs. For newbies and
> for advanced users.
>

I don't disagree, but hoping doesn't change now and that is the situation
new users are faced with. 

> We now have some many extremely good 'free', 'open source',
> no-cost, whatever Common Lisp
> implementations, yet we are stuck with Emacs.
>
> Don't get me wrong. It is good that there is a widely used
> Emacs mode for Common Lisp and people have invested a lot of
> time. But sometimes it would be nice if there was some
> 'design' and not just hacking of new features or
> reorganizing of sources. From many programming languages,
> Common Lisp probably has one of the best Emacs modes.
> But it deserves something better.
>
> Upon thinking why I actually use Emacs, I think say that I mostly
> like DIRED and browsing text files (sources, ...) via the DIRED
> these days. I don't use GNUS (tried it), planner mode (tried it).
> Sometimes I use the outliner.
> Also I use the shell in Emacs. But, when I want
> to try out something in Common Lisp, I often use just a Terminal
> and OpenMCL. If I want to try out something, I usually don't type M-x slime
> (or something similar) to Emacs or try to find the last
> SLIME REPL buffer (which has a shortcut, I know).
> I'm more of an Emacs user than a SLIME user, I think. If
> I have the choice (depending on what kind machine/OS I work)
> I tend to avoid Emacs for Common Lisp programming.
> When I reflect about my Lisp usage and see that I wanted to try out something,
> write a code snippet or do some longer sessions and I tend
> to not use SLIME/Emacs in those situations. I'm intuitively
> using to some other tool.
>
> Maybe I'm old-fashioned? But I grew up with Emacs, too.
> A few days ago I ported some benchmark code to Open Genera.
> Got some errors. But it felt like home. It was fun to
> fix those errors. Stuff did help and did not stand in
> the way. It is so much more relaxing to work with it.
> It is recreational hacking. Emacs is stress.
> Emacs violates all kinds of human interface principles.
> If you look around you see that people are concerned
> with productivity. There is lots of 'Getting Things Done'
> advice you see. The main principle to get things done
> is to simplify. Get rid of muda. Current Emacs is full of muda.
> Too many options. Too many commands. Too many useless
> ways to help the user while it actually stands in the way.
>

Maybe the problem here is that to some extent you were
spoiled by Genera and evrything else now seems to be poor in comparison? I
feel similar regarding packages I used many years ago that to me have never
been done by anyone else as well as the original, but the original is no
longer viable given changes in OS, libraries and hardware.


>> Also, while I've not encountered all the problems Rainer has outlined and
>> some of the behavior he found frustrating doesn't bother me, I suspect that
>> most of those issues will not be relevant until the OP has progressed a
>> fair way down the road to lisp, at which time, he will be in a better
>> position to evaluate which direction to take anyway.
>
> Double click MCL. A listener and an editor. Both written in CL
> in one app. Type a form. Press enter. Done.
>
> Newbie time to REPL with MCL? A second. With Installer for MCL
> 30 seconds.
>
> How many commands distract you from Lisp code? Zero.
>
>
> Now Emacs. Let's take Aquamacs.
>
> Double Click Aquamacs. Now what? Ten thousand commands and
> a million lines of Emacs Lisp. But no Common Lisp.
>
> Now install Common Lisp. The usual Unix stuff. Not that
> hard, but it takes some minutes. Then do some basic
> setup so that you can call the implementation with
> some simple command. No double clickable app. Okaaaaaay.
>
> Now SLIME. Take the SLIME that comes with Aquamacs.
> Outdated. Good chance that it will not work and you struggle
> for some time. Time to get a newer version. But which one?
> I use CMUCL on an Intel Mac. Need to get the newest or
> patch it yourself. Try one from the source repository?
> But which one? What is a useful version? The latest
> source currently seem to broken in some features quite
> often. Which was the last stable version. Okay, we
> will find out.
>
> We got SLIME. Now how to integrate it with Emacs. Read
> the instructions. We are now typing Emacs Lisp - but
> we just wanted to do Common Lisp. Now how to call
> Common Lisp from Emacs. We find out.
>
> Newbie time to REPL with SLIME/Emacs? A day.
> How many stuff distracts you from the Common Lisp REPL?
> A zillion! Learned new useless concepts? Hundreds.

I think you have made that a pretty biased outline to be honest and it
certainly doesn't reflect my experience at all. In fact, your outline of
emacs and slime setup reminds me very much of a co-worker, who having been
programming since the days of PDP-10/11 and was still in the mindset of
building everything from sources and had yet to make the transition to
modern day package management. 

My experience (only a couple of years ago)...

Woke up Saturday morning and decided this was the day to start looking into
learning CL. Logged into my Debian GNU Linux box and typed

apt-cache search "Common Lisp"

a heap of entries pop up with brief descriptions. There are numerous CL
implementations. Not sure which one to choose, but I had heard from a
friend they liked SBCL, so I decide on that one. I've already got emacs
installed and I see SLIME, so I'll grab that as well. There are a heap of
cl- packages, such as cl-pcre, decide not to install them just now - I want
a simple setup to begin with. I do notice packages for a PDF of "On Lisp',
"ANSI Common Lisp', Common Lisp The Language, 2nd Edition and an HTML
reference called the 'Hyperspec". Decided you can't have too much
documentation, so I select all of those as well. Time so far, less than 5
minutes.

Type apt-get with the list of packages. Apt tells me its also installing
some other packages that are required. I enter 'y' and the process
starts. Around 5 minutes to download and install these packages from the
net. 

I start emacs and type M-x slime in the mini-buffer. A buffer pops up with
some comment about this being the beginning of a wonderful experience and I
have a REPL prompt cl-user>. I enter (+ 3 2) and hit enter and get the
result on the next line. 

Time to get from nothing to a REPL and enter my first lisp expression, just
over 10 minutes. Number of emacs configuration steps required, none. Number
of elisp expressions required, none. 

I then spend a while exploring the environment, seeing what the various
menu options do. Discover handy little features, such as looking up a
definition in the hyperspec, describing the value/symbol/thing under point
etc. At this point, I've not used any special emacs commands apart from M-x
slime. I've been using the menus to explore the environment and while I've
noted the short cuts printed in the menus for things like describe symbol
etc, I've not used them yet. I've pretty much just used the mouse, arrow
keys and keyboard. I have enabled paren matching from the 'Options' menu
and I have enabled font locking (from the options menu).  

I do admit that later I did do considerable customization and created elisp
to add to load hooks etc. some of this was not trivial and required the
sort of knowledge that only comes after using emacs for quite some
time. However, the point is, none of this was required initially. I was
able to get up and running with a REPL in not much longer than your MCL
example and most of that time involved download and deciding which of the
many CL related packages I wanted. 

The basic 'out of the box (package)" setup was fine to start with. In fact,
many of my customizations came from searching places like the emacs wikki
and posts to groups like this one. None of them were required in order for
me to start using CL or SLIME and in fact many would make no difference
given the type of stuff I was doing initially. This is the main point I
think is often lost with experienced emacs users. Emacs actually provides a
pretty good default setup. Its actually the fact it is so powerful and
configurable that it can become a bit of a monster if you let it. For
example, the often cited 'weird' key bindings. Given that emacs has more
key bindings than any other editor I've ever seen, its no wonder that some
(even a lot) of key bindings are to key combinations that seem really crazy
or difficult to use. However, if you restrict yourself to the basic key
bindings that you would find in most editors, you find that there is a
rationale behind them and the basic ones are pretty good in that they are
logical and easy to use. 

When you first start doing CL, you are not that concerned about being able
to move around by sexps, manipulate things on a sexp level or have parens
inserted/deleted in matched pairs. This comes later, once you are doing
more complex coding. By this time, you probably know about additional
modes, such as paredit and advanced key bindings for evaluation etc. You
are probably familiar enough now to customize some of the key bindings for
the mode to make them more comfortable or natural to how you want to work
and you know which key bindings you don't use and therefore can re-bind to
different commands that are more convenient. You may even find some of the
default SLIME configuration with respect to windows, buffers etc to not be
what you want and may decide to start more serious customization, possibly
involving writing elisp etc. However, you don't *need* to do this to get
started and with modern package management, you can actually get started
without doing a single bit of emacs customization or writing elisp. 

If there is one mistake I see more than any other when it comes to emacs,
its the user who starts up emacs and within the first 5 minutes decides
that they want to start changing everything. I think this is a mistake
because in that short amount of time, they really don't understand either
the rationale that underlies many of the decisions of why something has
been done the way it has been done or have enough understanding to actually
do the customizations correctly. My advice to all new emacs users is to
just use it 'out of the box' for a few weeks before doing any
customization. Give it a chance and look at it as something new rather than
something you need to force into being like everything else you have ever
used. In the end, you are likely to extensively customize it, but by
waiting, you give yourself the chance to possibly discover new and better
ways of dinig things and you give yourself the time to learn it
sufficiently to actually customize things in the right way and not
introduce weird unexpected side effects that drive you nuts for the next 12
months while you work out that the 'bugs' and problems are actually due to
things you have done incorrectly. Like all powerful things, it takes time
to learn how to harness that power. 

There is also possibly another approach with Emacs that may still be
worthwhile, especially for those who really don't like SLIME, ILISP. This
was the mode emacs use to use before SLIME. I don't think it is maintained
any longer, but as it was quite a simple mode compared to slime, it
probably still works. Being much simpler, it may suit those who feel SLIME
tries to do too much or gets too much in the way. You can also get a fair
amount of functionality by just running an inferior lisp process within
emacs and forget about SLIME or ILISP. You would only get a REPL and the
only way to send commands from a CL code buffer would be using cut and
paste, but maybe that is a nice very simple way to get started if iether
your distro doesn't have a SLIME package and you don't want to install from sources.

I also am amazed at comments regarding CVS versions of SLIME being
unstable. What do people expect if they use the latest CVS snapshots - this
is development code and its bound to be unstable at times. SLIME is an
active, udner development package and at times it will go down paths that
either create instability or change features in ways that it later turns
out are unpopular or just were not well thought out. Welcome to the world
of distributed open source development and remember the code is in CVS, so
you can always revert to an earlier release should you find the changes to
much or the latest version to be too unstable and if you really don't like
it, don't use it, but unless you are prepared to work to improve it, pull
your head in and shut up (BTW, this is not directed at any specific
individual, so don't take it personally unless you really want to, in which
case, pull your head in and shut up)..

Tim

-- 
tcross (at) rapttech dot com dot au
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-1447C3.10400421092007@news-europe.giganews.com>
In article <··············@lion.rapttech.com.au>,
 Tim X <····@nospam.dev.null> wrote:

...

> > Maybe I'm old-fashioned? But I grew up with Emacs, too.
> > A few days ago I ported some benchmark code to Open Genera.
> > Got some errors. But it felt like home. It was fun to
> > fix those errors. Stuff did help and did not stand in
> > the way. It is so much more relaxing to work with it.
> > It is recreational hacking. Emacs is stress.
> > Emacs violates all kinds of human interface principles.
> > If you look around you see that people are concerned
> > with productivity. There is lots of 'Getting Things Done'
> > advice you see. The main principle to get things done
> > is to simplify. Get rid of muda. Current Emacs is full of muda.
> > Too many options. Too many commands. Too many useless
> > ways to help the user while it actually stands in the way.
> >
> 
> Maybe the problem here is that to some extent you were
> spoiled by Genera and evrything else now seems to be poor in comparison? I
> feel similar regarding packages I used many years ago that to me have never
> been done by anyone else as well as the original, but the original is no
> longer viable given changes in OS, libraries and hardware.

Not necessarily. There are useful alternatives now.
I'm more 'spoiled' by MCL, which is MUUUUCH simpler to use.

> I think you have made that a pretty biased outline to be honest and it
> certainly doesn't reflect my experience at all. In fact, your outline of
> emacs and slime setup reminds me very much of a co-worker, who having been
> programming since the days of PDP-10/11 and was still in the mindset of
> building everything from sources and had yet to make the transition to
> modern day package management. 

That's what I use under Ubuntu, too. But not always are the Lisp distributions
packaged in a useful version. Most of the times I build them from
sources if possible.

...

> I do admit that later I did do considerable customization and created elisp

Try to explain a newbie why there is ELISP and why there is Common Lisp
and what the differences are. He/SHE will stare at you with disbelief.

...

> When you first start doing CL, you are not that concerned about being able
> to move around by sexps, manipulate things on a sexp level or have parens
> inserted/deleted in matched pairs.

More interesting is that you can do (make-instance 'editor) and you
get an editor. Or (add-subviews (make-instance'window) (make-instance
'edit-field)) and you get a new window with an editor field.
Get rid of Emacs, ELISP and all that cruft. Like
the Common Lisp implementation is written in Common Lisp, the IDE
should be written in Common Lisp, too. It is a whole different feel.

CMUCL comes with Hemlock btw. Now one needs to get Motif.
Hemlock is an Emacs variant written in Common Lisp.
It has been adapted in other implementations, too. Though it
needs more work. OpenMCL for example comes with Hemlock
adapted to the Mac. It still looks a bit ugly, but I expect that
OpenMCL hacking gets more practical once the IDE runs on
the Intel Macs (which it doesn't do with the current OS,
but it will with the next OS).

...

-- 
http://lispm.dyndns.org
From: Madhu
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <m3k5qk5p09.fsf@robolove.meer.net>
* Rainer Joswig <····························@news-europe.giganews.com> :

| CMUCL comes with Hemlock btw. Now one needs to get Motif.

I'm sure this is not true.  You can build and Use Hemlock without motif.
Hemlock depends only on CLX and not `interface' (graphical debugger and
inspector) which is what the Motif requirement is about.

| Hemlock is an Emacs variant written in Common Lisp.
| It has been adapted in other implementations, too. Though it
| needs more work. OpenMCL for example comes with Hemlock
| adapted to the Mac. It still looks a bit ugly, but I expect that
| OpenMCL hacking gets more practical once the IDE runs on
| the Intel Macs (which it doesn't do with the current OS,
| but it will with the next OS).

How would you compare LW's editor with Hemlock?  I'd suspect they share
the same codebase, with LW being a cleaned up well packaged version.

--
Madhu
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-6958EC.12041921092007@news-europe.giganews.com>
In article <··············@robolove.meer.net>, Madhu <·······@meer.net> 
wrote:

> * Rainer Joswig <····························@news-europe.giganews.com> :
> 
> | CMUCL comes with Hemlock btw. Now one needs to get Motif.
> 
> I'm sure this is not true.  You can build and Use Hemlock without motif.
> Hemlock depends only on CLX and not `interface' (graphical debugger and
> inspector) which is what the Motif requirement is about.

Right, Hemlock is pure X11. Somewhere the Motif stuff comes in.
I have to check that out later today.

Thanks for the correction!

> 
> | Hemlock is an Emacs variant written in Common Lisp.
> | It has been adapted in other implementations, too. Though it
> | needs more work. OpenMCL for example comes with Hemlock
> | adapted to the Mac. It still looks a bit ugly, but I expect that
> | OpenMCL hacking gets more practical once the IDE runs on
> | the Intel Macs (which it doesn't do with the current OS,
> | but it will with the next OS).
> 
> How would you compare LW's editor with Hemlock?  I'd suspect they share
> the same codebase, with LW being a cleaned up well packaged version.

LW's editor is a Hemlock derivative it seems - but the code has been
hacked on for some time. Basically the LW editor runs under
X11/Motif, Cocoa/Mac OS and Windows. So it is ported to
several GUIs via the cross-platform GUI toolkit of LispWorks.
The editor is totally sufficient for Lisp development, but
it lacks a few things (like better font support). 

> 
> --
> Madhu

-- 
http://lispm.dyndns.org
From: Rainer Joswig
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <joswig-EA6437.10323822092007@news-europe.giganews.com>
In article <····························@news-europe.giganews.com>,
 Rainer Joswig <······@lisp.de> wrote:

> In article <··············@robolove.meer.net>, Madhu <·······@meer.net> 
> wrote:
> 
> > * Rainer Joswig <····························@news-europe.giganews.com> :
> > 
> > | CMUCL comes with Hemlock btw. Now one needs to get Motif.
> > 
> > I'm sure this is not true.  You can build and Use Hemlock without motif.
> > Hemlock depends only on CLX and not `interface' (graphical debugger and
> > inspector) which is what the Motif requirement is about.
> 
> Right, Hemlock is pure X11. Somewhere the Motif stuff comes in.
> I have to check that out later today.
> 
> Thanks for the correction!

I was confused. CMUCL comes with a Motif library, but Hemlock does
not use it. It is just plain X11. Kind of fun to see that it still
runs. If one has CMUCL, one just needs to do:

First setup the X11 DISPLAY.

Then start CMUCL and run this:

(require :clx)
(require :hemlock)
(ed)

Hemlock does use 'slave' Lisps for Lisp interaction
(like Emacs' inferior Lisp). You get a slave Lisp
via M-x Select Slave or C-M-c .


Screenshot:  http://lispm.dyndns.org/news?ID=NEWS-2007-08-12-1


I have seen (just) one customization example for Hemlock:

  http://www.ltn.lv/~jonis/.hemlock-init.lisp
  http://www.ltn.lv/~jonis/fix.lisp

But there is good documentation for Hemlock and
the source code looks good, too.

  http://www.cons.org/cmucl/hemlock/index.html

> 
> > 
> > | Hemlock is an Emacs variant written in Common Lisp.
> > | It has been adapted in other implementations, too. Though it
> > | needs more work. OpenMCL for example comes with Hemlock
> > | adapted to the Mac. It still looks a bit ugly, but I expect that
> > | OpenMCL hacking gets more practical once the IDE runs on
> > | the Intel Macs (which it doesn't do with the current OS,
> > | but it will with the next OS).
> > 
> > How would you compare LW's editor with Hemlock?  I'd suspect they share
> > the same codebase, with LW being a cleaned up well packaged version.
> 
> LW's editor is a Hemlock derivative it seems - but the code has been
> hacked on for some time. Basically the LW editor runs under
> X11/Motif, Cocoa/Mac OS and Windows. So it is ported to
> several GUIs via the cross-platform GUI toolkit of LispWorks.
> The editor is totally sufficient for Lisp development, but
> it lacks a few things (like better font support). 

LispWorks' editor does font highlighting, but lacks a few of
the Hemlock modes. LispWorks has for many tools own
windows, which are not editor. LispWorks has a menubar.


> 
> > 
> > --
> > Madhu

-- 
http://lispm.dyndns.org
From: Madhu
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <m34phlfx9k.fsf@robolove.meer.net>
Helu
* Rainer Joswig <····························@news-europe.giganews.com> :
[...]
| Hemlock does use 'slave' Lisps for Lisp interaction
| (like Emacs' inferior Lisp). You get a slave Lisp
| via M-x Select Slave or C-M-c .
|
|
| Screenshot:  http://lispm.dyndns.org/news?ID=NEWS-2007-08-12-1
|
|
| I have seen (just) one customization example for Hemlock:
|
|   http://www.ltn.lv/~jonis/.hemlock-init.lisp
|   http://www.ltn.lv/~jonis/fix.lisp

Martin Rydstr|m (Rydis), RIP, was the last user of CMUCL hemlock that I
heard of.

| But there is good documentation for Hemlock and
| the source code looks good, too.
|
|   http://www.cons.org/cmucl/hemlock/index.html

Apparently Gilberth has put up his copy of portable hemlock on c-l.net

	http://common-lisp.net/project/phemlock

His hemlock manual is up (today)

	http://bauhh.dyndns.org:8000/hemlock-manual/

|> > | Hemlock is an Emacs variant written in Common Lisp.
|> > | It has been adapted in other implementations, too. Though it
|> > | needs more work. OpenMCL for example comes with Hemlock
|> > | adapted to the Mac. It still looks a bit ugly, but I expect that
|> > | OpenMCL hacking gets more practical once the IDE runs on
|> > | the Intel Macs (which it doesn't do with the current OS,
|> > | but it will with the next OS).
|> >
|> > How would you compare LW's editor with Hemlock?  I'd suspect they share
|> > the same codebase, with LW being a cleaned up well packaged version.
|>
|> LW's editor is a Hemlock derivative it seems - but the code has been
|> hacked on for some time. Basically the LW editor runs under
|> X11/Motif, Cocoa/Mac OS and Windows. So it is ported to
|> several GUIs via the cross-platform GUI toolkit of LispWorks.
|> The editor is totally sufficient for Lisp development, but
|> it lacks a few things (like better font support).
|
| LispWorks' editor does font highlighting, but lacks a few of
| the Hemlock modes. LispWorks has for many tools own
| windows, which are not editor. LispWorks has a menubar.

IIRC around 2003 I could not get Hemlock working reliably in the same
CMUCL process.  I felt the important thing ("killer environment") was for
the editor to access the running image (without crashing it!) --- so not
running lisp as a slave process process was important.  This boils down
to tight integration between the various parts of the implementation (MP
etc) and #'ED.  I guess LW have invested what it takes and have been
upto the task.
--
Madhu
From: Klaus Schilling
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87abrgt8gr.fsf@web.de>
>
> I'm sure this is not true.  You can build and Use Hemlock without motif.


does lesstif work ?

Klaus Schilling
From: Rob Warnock
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <0ZWdnS_6AdS0cGnbnZ2dnUVZ_rKtnZ2d@speakeasy.net>
Klaus Schilling  <···············@web.de> wrote:
+---------------
| > I'm sure this is not true.  You can build and Use Hemlock without motif.
| 
| does lesstif work ?
+---------------

(*sigh*) As Madhu saidjust , Hemlock DOES NOT USER MOTIF (or lesstif);
only the separate, optional CMUCL graphical debugger/inspector does!!

However, if you're asking about whether lesstif can be used instead
of Motif WITH THE SEPARATE, OPTIONAL GRAPHICAL DEBUGGER/INSPECTOR,
then the answer is: Yes, I think so. In fact, ISTR doing so at some
point before Open-Motif came out [but I could be misremembering]...


-Rob

-----
Rob Warnock			<····@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607
From: Tim X
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87ps0cqp7m.fsf@lion.rapttech.com.au>
Rainer Joswig <······@lisp.de> writes:

> In article <··············@lion.rapttech.com.au>,
>  Tim X <····@nospam.dev.null> wrote:
>
>
>> I think you have made that a pretty biased outline to be honest and it
>> certainly doesn't reflect my experience at all. In fact, your outline of
>> emacs and slime setup reminds me very much of a co-worker, who having been
>> programming since the days of PDP-10/11 and was still in the mindset of
>> building everything from sources and had yet to make the transition to
>> modern day package management. 
>
> That's what I use under Ubuntu, too. But not always are the Lisp distributions
> packaged in a useful version. Most of the times I build them from
> sources if possible.

Agreed. However, the original point in all of this was with respect to the
newbie and not the more experienced user. I don't see any reason the new
user would need to get the latest versions just to start out. Part of what
I have found frustrating in the responses given to the original request has
been that many of the responses have been in the context of what is
best/required from an experienced user perspective. 

If there is anything that makes it hard for the new user, its all the
experienced lispers that insist on offering up advice which is initially
going to be of absolutely no use to the novice. All it does is make it seem
more confusing and complex than it needs to be. 

>> I do admit that later I did do considerable customization and created elisp
>
> Try to explain a newbie why there is ELISP and why there is Common Lisp
> and what the differences are. He/SHE will stare at you with disbelief.

But why even mention it? It is absolutely irrelevant when getting
started. This is exactly the sort of thing that causes confusion and is
totally unnecessary initially. If they ask, just say its the configuration
language used by emacs and nothing to do with common lisp. 

>
>> When you first start doing CL, you are not that concerned about being able
>> to move around by sexps, manipulate things on a sexp level or have parens
>> inserted/deleted in matched pairs.
>
> More interesting is that you can do (make-instance 'editor) and you
> get an editor. Or (add-subviews (make-instance'window) (make-instance
> 'edit-field)) and you get a new window with an editor field.
> Get rid of Emacs, ELISP and all that cruft. Like
> the Common Lisp implementation is written in Common Lisp, the IDE
> should be written in Common Lisp, too. It is a whole different feel.
>

this has gotten way off track. The original question was about the
development environment to use when starting to learn common lisp. I
certainly would never claim emacs+slime is the pinnacle of possible IDEs
for working with CL, only that it is one of the better ones available right
now that I can think of that is free (as in freedom) and
which meets the OPs original goals. I personally am quite happy with it as
an environment for working with several different CL implementations. I am
not a very experienced CL user, which may explain why I don't find the
problems others have raised. however, that in itself would indicate most of
the problems raised in this thread do not apply to someone who is just
starting to learn CL and I think its still better than using the other
recommendation, gedit and a term window, because it provides things like
argument hints for functions and integrated lookup into the hyperspec ,
history, completion etc plus is closer to the 'explorational development'
approach that makes CL so much fun to work/think in. 

Tim




-- 
tcross (at) rapttech dot com dot au
From: Pascal Costanza
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <5lhm0fF88ufuU1@mid.individual.net>
Tim X wrote:

> If there is anything that makes it hard for the new user, its all the
> experienced lispers that insist on offering up advice which is initially
> going to be of absolutely no use to the novice. All it does is make it seem
> more confusing and complex than it needs to be. 

The ultimately easiest way to get an environment for learning how to 
program in Common Lisp is to use one of the free editions of the 
commercial implementations. They support common keybindings, give you 
some flavor of emacs keybindings on top - so you can even learn that 
smoothly if you want to -, and have good support for exploring what is 
possible in case you get stuck somewhere. That is, it's always possible 
to fall back on using the mouse and menus.

You get this all without configuring anything, or only very little 
configuration - not more than usual for typical commercial applications.

The risk of lock-in is minimal. Even if you are a die-hard defender of 
free software, it will be easy to switch to a combination of pure free 
software components, once you have a good grasp of Common Lisp, related 
technologies, and the surrounding communities.

Things get only more complicated from day one when you insist on using 
free software from day one.


Pascal

-- 
My website: http://p-cos.net
Common Lisp Document Repository: http://cdr.eurolisp.org
Closer to MOP & ContextL: http://common-lisp.net/project/closer/
From: Giorgos Keramidas
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87ps08dsff.fsf@kobe.laptop>
On Thu, 20 Sep 2007 11:43:51 +0200, Rainer Joswig <······@lisp.de> wrote:
> Now Emacs. Let's take Aquamacs.
>
> Double Click Aquamacs. Now what? Ten thousand commands and a million
> lines of Emacs Lisp. But no Common Lisp.
>
> Now install Common Lisp. The usual Unix stuff. Not that hard, but it
> takes some minutes. Then do some basic setup so that you can call the
> implementation with some simple command. No double clickable
> app. Okaaaaaay.
>
> Now SLIME. Take the SLIME that comes with Aquamacs.  Outdated. Good
> chance that it will not work and you struggle for some time. Time to
> get a newer version. But which one?  I use CMUCL on an Intel Mac. Need
> to get the newest or patch it yourself. Try one from the source
> repository?  But which one? What is a useful version? The latest
> source currently seem to broken in some features quite often. Which
> was the last stable version. Okay, we will find out.
>
> We got SLIME. Now how to integrate it with Emacs. Read the
> instructions. We are now typing Emacs Lisp - but we just wanted to do
> Common Lisp. Now how to call Common Lisp from Emacs. We find out.
>
> Newbie time to REPL with SLIME/Emacs? A day.
> How many stuff distracts you from the Common Lisp REPL?
> A zillion! Learned new useless concepts? Hundreds.

You know, things have progressed a fair amount since things *had* to be
done this way:

  # apt-cache search slime
  cl-swank - Superior LISP Interaction Mode for Emacs (Lisp-side server)
  sbcl-source - Source code files for SBCL
  slime - Superior LISP Interaction Mode for Emacs
  stumpwm - a Common Lisp window manager
  # apt-get install slime

Then run Emacs, and type `M-x slime'.

That took me all of 20 seconds to type on my aging Debian installation,
and I was up and running a very short while later.  I'm not an Emacs
newbie, though, so my personal experience with Slime installations
doesn't really count as "the objective truth for everyone in the world".

- Giorgos
From: Carlo Capocasa
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <fctlbh$8f3$1@registered.motzarella.org>
Thanks for your kind reply!

> I did find Rainer's response to the question of why he uses emacs and slime
> when he dislikes it so much interesting. On the one hand, he discounts it
> and says not to use it, yet when asked why he does, he admits that for some
> of the free implementations, it is the best solution on offer.

With a little glue on our side, I think something to rival Slime can
be made with relatively little effort.

Carlo
From: Tim X
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87y7f0r0j1.fsf@lion.rapttech.com.au>
Carlo Capocasa <······@carlocapocasa.com> writes:

> Thanks for your kind reply!
>
>> I did find Rainer's response to the question of why he uses emacs and slime
>> when he dislikes it so much interesting. On the one hand, he discounts it
>> and says not to use it, yet when asked why he does, he admits that for some
>> of the free implementations, it is the best solution on offer.
>
> With a little glue on our side, I think something to rival Slime can
> be made with relatively little effort.
>

something I've not seen mentioned in this thread is the project that was
started to create a slime like setup for VI. I can't remember what it was
called and I don't know what the current status is, but I seem to remember
seeing a post that indicated basic functionality (i.e. ability to send CL
expressions to an inferior CL process from within VI and get back the
result) was working. 

Maybe people who find the power of emacs too much to deal with initially
would find something like this better?

Tim

-- 
tcross (at) rapttech dot com dot au
From: Matthias Buelow
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <5lfd3fF7nhi8U1@mid.dfncis.de>
Tim X wrote:
> I did want to point out that open source does NOT equate
> to free software. This is an all too common misunderstanding. Free software
> only refers to software that is released under a license that protects the
> 'four freedoms' as outlined on the FSF site. 

The FSF doesn't have an exclusive contract on the use of the term "free
software".
From: Tim X
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87tzpor0ca.fsf@lion.rapttech.com.au>
Matthias Buelow <···@incubus.de> writes:

> Tim X wrote:
>> I did want to point out that open source does NOT equate
>> to free software. This is an all too common misunderstanding. Free software
>> only refers to software that is released under a license that protects the
>> 'four freedoms' as outlined on the FSF site. 
>
> The FSF doesn't have an exclusive contract on the use of the term "free
> software".

Given they were the initiators of the whole movement, I think its not
unreasonable to accept their definition, especially in the context of the
thread where it was quite obvious the OP was referencing the FSF
philosophical position. 

Tim

-- 
tcross (at) rapttech dot com dot au
From: Timofei Shatrov
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <46f38833.346595167@news.readfreenews.net>
On Fri, 21 Sep 2007 16:36:53 +1000, Tim X <····@nospam.dev.null> tried to
confuse everyone with this message:

>Matthias Buelow <···@incubus.de> writes:
>
>> Tim X wrote:
>>> I did want to point out that open source does NOT equate
>>> to free software. This is an all too common misunderstanding. Free software
>>> only refers to software that is released under a license that protects the
>>> 'four freedoms' as outlined on the FSF site. 
>>
>> The FSF doesn't have an exclusive contract on the use of the term "free
>> software".
>
>Given they were the initiators of the whole movement, I think its not
>unreasonable to accept their definition, 

Of course, before they came up with this definition the term "free software" was
understood as something different (just like "gay" used to mean "happy"). The
term "freeware" also appeared in 1985, a simple contraction of "free software",
which is still used to this day. Of course, FSF will probably claim that "free"
in "freeware" is a misnomer, but when the term was coined, it had the same
definition as "free software" had back then. I, myself prefer this wider
definition.

-- 
|Don't believe this - you're not worthless              ,gr---------.ru
|It's us against millions and we can't take them all... |  ue     il   |
|But we can take them on!                               |     @ma      |
|                       (A Wilhelm Scream - The Rip)    |______________|
From: Matthias Buelow
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <5ligq6F8ejs1U1@mid.dfncis.de>
Tim X wrote:

> Given they were the initiators of the whole movement,

You're brainwashed.
From: Ken Tilton
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <QD9Ii.12$9b2.4@newsfe12.lga>
David Trudgett wrote:

> First of all, I'm not a newbie any more. 

Check again:

(defun flatten (tree)
   "Flatten the structure of an arbitrarily deeply nested list (tree)"
   (cond ((atom tree) (list tree))
         (t (remove nil (append (flatten (car tree))
                                (flatten (cdr tree)))))))

I don't know where to begin, other than to admire the density of noob 
errors. That REMOVE is hilarious, btw, too bad so many people will miss 
the joke. Nice touch, tho.

> Second, I know the history of c.l.l., as do you, and it is not one of
> zero tension between secret software zealots like Kenny...

...who has written more open software than you have used, and unlike FSF 
zealots licensed it without encumbrance.

> others, and those with a preference for Free Software. One camp kneels
> at the twin altar of expediency and the "free market", and the other
> holds personal freedom or ethics as a critical value to safeguard.

Free, free, free. You use that word so much. I do not think it means 
what you think it means.
From: Brian Adkins
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190349514.606089.275870@o80g2000hse.googlegroups.com>
On Sep 19, 9:36 am, Ken Tilton <···········@optonline.net> wrote:
> David Trudgett wrote:
> > First of all, I'm not a newbie any more.
>
> Check again:
>
> (defun flatten (tree)
>    "Flatten the structure of an arbitrarily deeply nested list (tree)"
>    (cond ((atom tree) (list tree))
>          (t (remove nil (append (flatten (car tree))
>                                 (flatten (cdr tree)))))))

I (pre-newbie) fooled around with this and came up with:

(defun flatten (tree)
  (if (consp tree)
    (append (flatten (car tree))
            (flatten (cdr tree)))
    (if (not (null tree))
      (list tree))))

but that just seemed odd, so I resorted to Google and found the
following which seems more readable:

(defun flatten (tree)
  (cond ((null tree) nil)
        ((atom tree) (list tree))
        (t (append (flatten (car tree))
                   (flatten (cdr tree))))))
From: Ken Tilton
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <b3SIi.650$GW.428@newsfe12.lga>
Ken Tilton wrote:
> 
> 
> Brian Adkins wrote:
> 
>> On Sep 19, 9:36 am, Ken Tilton <···········@optonline.net> wrote:
>>
>>> David Trudgett wrote:
>>>
>>>> First of all, I'm not a newbie any more.
>>>
>>>
>>> Check again:
>>>
>>> (defun flatten (tree)
>>>   "Flatten the structure of an arbitrarily deeply nested list (tree)"
>>>   (cond ((atom tree) (list tree))
>>>         (t (remove nil (append (flatten (car tree))
>>>                                (flatten (cdr tree)))))))
>>
>>
>>
>> I (pre-newbie) fooled around with this and came up with:
>>
>> (defun flatten (tree)
>>   (if (consp tree)
>>     (append (flatten (car tree))
>>             (flatten (cdr tree)))
>>     (if (not (null tree))
>>       (list tree))))
> 
> 
> Who else might have a copy to the structure passed to append?

Oops, "copy /of/" was what I meant and would have been daft cuz copies 
are what are safe... I meant who else might be /sharing/ aka /have a 
reference to/ the structure being copied?

Somebody help me, I just woke up from a nap.

Anyway, why I am here is not that. If noobs are looking to fool around 
and earn their consing wings, they should try replicate Kenny's favorite 
function, npacked-flat: a non-consing flattener that tosses NILs.

Here's the implicit spec:

(mapcar 'npacked-flat
   (list nil
     :people-on-cll-like-harrop
     (cons 0 1)
     (list 0 (cons 1 2) 3)
     (copy-tree '(nil (nil 0 nil)
                   (nil 1 (2 nil (3) 4) (5 6))
                   nil 7 nil nil))))

-> (NIL :PEOPLE-ON-CLL-LIKE-HARROP
     (0 . 1) (0 1 3) <oops>
     (0 1 2 3 4 5 6 7))


Interestingly, passed an atom it returns an atom. Dotted lists partially 
handled just now as an afterthought, extra credit for surpassing the 
master and getting nested dotted lists to work (we'll change the spec to 
say "always return a proper list, undotting as necessary" and of course 
then you can cons. Super extra credit for using a scavenged cons to 
avoid consing even that.

kenny (hoping this keeps the little devils out of our hair for a few days)

-- 
http://www.theoryyalgebra.com/

"We are what we pretend to be." -Kurt Vonnegut
From: David Trudgett
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <uejgqi2ir.fsf@yahoo.com>
Ken Tilton <···········@optonline.net> writes:

> David Trudgett wrote:
>
>> First of all, I'm not a newbie any more. 
>
> Check again:
>
> (defun flatten (tree)
>   "Flatten the structure of an arbitrarily deeply nested list (tree)"
>   (cond ((atom tree) (list tree))
>         (t (remove nil (append (flatten (car tree))
>                                (flatten (cdr tree)))))))
>
> I don't know where to begin, other than to admire the density of noob
> errors. That REMOVE is hilarious, btw, too bad so many people will
> miss the joke. Nice touch, tho.

I don't get it, Kenny, mah boy. You dig up an old bit of code from one
of my first CL programs in 2004, and try to claim that that shows that
three years later I am a CL newbie... interesting. In any case, of
course I am a newbie compared to his Kennyness. Everyone knows that.
It's a given.


>
>> Second, I know the history of c.l.l., as do you, and it is not one of
>> zero tension between secret software zealots like Kenny...
>
> ...who has written more open software than you have used, and unlike
> FSF zealots licensed it without encumbrance.

Got your VC for commercial Cells, yet?



>
>> others, and those with a preference for Free Software. One camp kneels
>> at the twin altar of expediency and the "free market", and the other
>> holds personal freedom or ethics as a critical value to safeguard.
>
> Free, free, free. You use that word so much. I do not think it means
> what you think it means.

I've built up an immunity to iocaine.

Cheers,
David



-- 
These are not the droids you are looking for. Move along.
From: Ken Tilton
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <muXJi.1951$GW.1903@newsfe12.lga>
David Trudgett wrote:
> Ken Tilton <···········@optonline.net> writes:
> 
> 
>>David Trudgett wrote:
>>
>>
>>>First of all, I'm not a newbie any more. 
>>
>>Check again:
>>
>>(defun flatten (tree)
>>  "Flatten the structure of an arbitrarily deeply nested list (tree)"
>>  (cond ((atom tree) (list tree))
>>        (t (remove nil (append (flatten (car tree))
>>                               (flatten (cdr tree)))))))
>>
>>I don't know where to begin, other than to admire the density of noob
>>errors. That REMOVE is hilarious, btw, too bad so many people will
>>miss the joke. Nice touch, tho.
> 
> 
> I don't get it, Kenny, mah boy. You dig up an old bit of code from one
> of my first CL programs in 2004, and try to claim that that shows that
> three years later I am a CL newbie... interesting.

btw, the correct way to put me in my place would have been to fix the 
frickin code. You did not do that....interesting.

:)

kenny


-- 
http://www.theoryyalgebra.com/

"We are what we pretend to be." -Kurt Vonnegut
From: Mike G.
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190741712.737434.295790@k79g2000hse.googlegroups.com>
On Sep 24, 7:08 pm, Ken Tilton <···········@optonline.net> wrote:
> David Trudgett wrote:
> > Ken Tilton <···········@optonline.net> writes:
>
> >>David Trudgett wrote:
>
> >>>First of all, I'm not a newbie any more.
>
> >>Check again:
>
> >>(defun flatten (tree)
> >>  "Flatten the structure of an arbitrarily deeply nested list (tree)"
> >>  (cond ((atom tree) (list tree))
> >>        (t (remove nil (append (flatten (car tree))
> >>                               (flatten (cdr tree)))))))
>
> >>I don't know where to begin, other than to admire the density of noob
> >>errors. That REMOVE is hilarious, btw, too bad so many people will
> >>miss the joke. Nice touch, tho.
>
> > I don't get it, Kenny, mah boy. You dig up an old bit of code from one
> > of my first CL programs in 2004, and try to claim that that shows that
> > three years later I am a CL newbie... interesting.
>
> btw, the correct way to put me in my place would have been to fix the
> frickin code. You did not do that....interesting.
>
> :)
>
> kenny
>
> --http://www.theoryyalgebra.com/
>
> "We are what we pretend to be." -Kurt Vonnegut

But, Kenny .. if he PRETENDS to not be a noob, code not-with-standing,
doesn't this imply
that he isn't?

Just wondering :)

-M
From: Pascal Costanza
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <5lchhrF773caU1@mid.individual.net>
David Trudgett wrote:
> Hi Pascal,
> 
> Pascal Costanza <··@p-cos.net> writes:
> 
>> There is another possibility: It may be that the tension between
>> commercial and free software is not that harsh in the Lisp community
>> than elsewhere, 
> 
> Hey, that's great! Of course, it does mean that those other places to
> which you allude must be hell! :-) 

:)

>> and that this is one of the prejudices that you should better
>> consider dropping when being a Lisp newbie.
> 
> First of all, I'm not a newbie any more. When does one stop being a
> newbie, by the way? ;-) 

Soon. ;)

> I have now graduated to being merely
> relatively inexperienced in Lisp programming.
> 
> Second, I know the history of c.l.l., as do you, and it is not one of
> zero tension between secret software zealots like Kenny and Kent and
> others, and those with a preference for Free Software. One camp kneels
> at the twin altar of expediency and the "free market", and the other
> holds personal freedom or ethics as a critical value to safeguard.
> Broadly speaking, one group promotes commercial software but also uses
> Free Software while publically trashing it and not contributing to
> it[*], and the other avoids commerical software and contributes to
> Free Software as time and opportunity permit.

This is all harmless. In all sufficiently large groups, you have 
disagreements about this or that. I wouldn't call that tension.

The political dimension of the free software movement has a strong 
following primarily because there are a couple of software companies who 
have a lot of power that can be easily, and in some examples is in fact, 
abused.

None of the commercial Common Lisp vendors have such strong power. They 
are also not opposed to supporting open-source projects. Many 
open-source projects in the CL world also have no problems supporting 
commercial implementations.

I don't see any strong conflicts between the different groups here.


Pascal

-- 
My website: http://p-cos.net
Common Lisp Document Repository: http://cdr.eurolisp.org
Closer to MOP & ContextL: http://common-lisp.net/project/closer/
From: Damien Kick
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <13flhv4drdveg08@corp.supernews.com>
David Trudgett wrote:
> Hello Rainer,
> 
> Rainer Joswig <······@lisp.de> writes:
> 
>>>> ACL and LispWorks are cross-platform. I usually try to
>>>> use the best tool for learning. The best tool is not
>>>> necessarily the one that costs less or is 'free'.
>>> Rainer, you know very well that when Carlo said he is a strong
>>> believer in Open Source and is looking for Free Software, that he
>>> wasn't talking about price. Why are you being deliberately obtuse?
>> I mentioned 'free'? Did you see that? Last word in the paragraph.
> 
> So, what you are saying is that it is not being deliberately obtuse to
> mention the ambiguous word 'free' just after the ambiguous word 'or'
> just after the phrase 'costs less', and that this is not deliberately
> associating the word 'free' with 'costs less'.
> 
> Did the OP even mention he was looking for cheap software? Not as I
> recall. He, in fact, /said/ that he was looking for Free Software, not
> low cost or zero cost software, because he is a strong believer in
> open source.

I just checked and even the stupid dictionary makes the mistake of 
thinking that free has something to do with money.

<blockquote>
5 given or available without charge : free health care.
</blockquote>

It's almost as if the English language were conflating all kinds of 
different concepts into the same word, thereby implying somehow that 
things like "not under the control or in the power of another; able to 
act or be done as one wishes", "not physically restrained, obstructed, 
or fixed; unimpeded", "using or expending something without restraint; 
lavish", and "given or available without charge" share some kind of 
common theme.  Stupid fucking English language!  How in the world could 
anyone think that commerce, power, and governance intersect?  If they 
did, a word like socioeconomic would make sense, which clearly it does 
not.  Clearly, we need to clean up the English language.  Fewer words 
which mean less things.   Get rid of all the clutter.  How about 
something like use-double-plus-good because you can use the software as 
intended but it is also intended to be modified so that you can use it 
really well.  Gets rid of all that nasty messy freedom business. 
Complicated word.  Besides, you were always really intended to use the 
software in this way so you really are using it as its creator wanted it 
to be used.  Where is the choice in that?  We wouldn't want to choose 
something that the creator had not intended in the first place, would we?

There, glad that's solved.  Carlos only wants software he can 
use-double-plus-good, not software he can only use.
From: George Neuner
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <s6qlf3p96e8344d85at0bu697dracraf0p@4ax.com>
On Wed, 26 Sep 2007 15:35:47 -0500, Damien Kick <·····@earthlink.net>
wrote:

>
>I just checked and even the stupid dictionary makes the mistake of 
>thinking that free has something to do with money.
>
><blockquote>
>5 given or available without charge : free health care.
></blockquote>

You have a crappy dictionary ... probably a grade school edition.

I have an 1980 ed. unabridged Webster's Dictionary (7 inches thick)
that lists 22 meanings/usages for "free".  It first mentions
"remuneration", aka payment, in #8.

Look at http://dictionary.reference.com/browse/free.  It lists 36
meaings/usages for "free" and payment isn't mentioned until #11.  The
word "money" doesn't appear until #36.

>It's almost as if the English language were conflating all kinds of 
>different concepts into the same word, thereby implying somehow that 
>things like "not under the control or in the power of another; able to 
>act or be done as one wishes", "not physically restrained, obstructed, 
>or fixed; unimpeded", "using or expending something without restraint; 
>lavish", and "given or available without charge" share some kind of 
>common theme.  Stupid fucking English language!  How in the world could 
>anyone think that commerce, power, and governance intersect?  If they 
>did, a word like socioeconomic would make sense, which clearly it does 
>not.  Clearly, we need to clean up the English language.  Fewer words 
>which mean less things.   Get rid of all the clutter.  How about 
>something like use-double-plus-good because you can use the software as 
>intended but it is also intended to be modified so that you can use it 
>really well.  Gets rid of all that nasty messy freedom business. 
>Complicated word.  Besides, you were always really intended to use the 
>software in this way so you really are using it as its creator wanted it 
>to be used.  Where is the choice in that?  We wouldn't want to choose 
>something that the creator had not intended in the first place, would we?

Double plus barf!

The common thread in all the meanings is "being unencumbered".  If you
aren't able to discern the simple pattern in the meanings, or if you
have to look up "unencumbered", then there is no hope for you.  If you
hate English so much, you're free to go somewhere where it isn't
spoken.  And here's a tip - most places where English isn't spoken
aren't "free".  That probably won't bother you much though because you
can't figure out what "free" means.

George
--
for email reply remove "/" from address
From: Damien Kick
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <13flvn33oaftn11@corp.supernews.com>
George Neuner wrote:

> I have an 1980 ed. unabridged Webster's Dictionary (7 inches thick)

My, you have such a big <blush> dictionary.

>>                                                                How about 
>> something like use-double-plus-good because you can use the software as 
>> intended but it is also intended to be modified so that you can use it 
>> really well.
> 
> Double plus barf!

Double plus barf, indeed.  I know I'm digging a little bit with this, 
but I think it's kind of ironic that your <blush> big dictionary is from 
1980.
From: Matthias Buelow
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <5m0detFale0hU1@mid.dfncis.de>
Damien Kick wrote:

> Double plus barf, indeed.  I know I'm digging a little bit with this,
> but I think it's kind of ironic that your <blush> big dictionary is from
> 1980.

Clearly the definition of "free" has changed since 1980. I mean, the FSF
didn't even exist in 1980!
From: Damien Kick
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <13fm1e2rvuo4361@corp.supernews.com>
Matthias Buelow wrote:
> Damien Kick wrote:
> 
>> Double plus barf, indeed.  I know I'm digging a little bit with this,
>> but I think it's kind of ironic that your <blush> big dictionary is from
>> 1980.
> 
> Clearly the definition of "free" has changed since 1980. I mean, the FSF
> didn't even exist in 1980!

(Thanks for the lead-in, Matthias.)  Indeed, the FSF started in 1984. 
(Well, actually it was 1985 but it sounds better this way.)  Only five 
years after The Big Dictionary, and already the word "free" has less 
meaning that it did in 1980.  And here in 2007 we've got Neuner freewise 
using duckspeak.  Hell, why even use "free" for anything when 
"unencumbered" already does the job so well?  Too many syllables, 
though.  But we do appreciate the attempt to simplify, George.
From: Matthias Buelow
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <5mmug3Fe21o4U1@mid.dfncis.de>
Damien Kick wrote:

> Hell, why even use "free" for anything when
> "unencumbered" already does the job so well?  Too many syllables,
> though.  But we do appreciate the attempt to simplify, George.

"Free software" is a misnomer anyways, unless it is really meant like in
"free beer", that is, it doesn't cost anything.

For software, just as for "free speech", it isn't the software or the
speech that is free. The term "free speech" doesn't make much sense
either, unless someone talks freely, that is, without reading from a
manuscript.

What is meant instead in both cases is the rights of the various people
involved in software production/consumption, or in the act of public
speaking. For free speech, it is freedom of the speaker to speak what's
on his mind. For software, since there're several persons involved (the
author, in some countries the copyright holder if different from the
author, the end-user, a 3rd programmer wanting to incorporate parts of
the program into his own, etc.), and maximum freedom for one does not
usually translate into maximum freedom for the other parties involved,
so using an absolute term like "free software" and then giving a
definition that's supposed to be "freer" than others is far too
simplistic and misleading.

Trying to define software "freedom" as a definite concept of maximum
utility for all parties involved (which I think the FSF aims for, while
of course their definition is not definite but just one proposal of
many) is difficult, if at all possible and probably not desirable
anyway. Some people define freedom as maximum indvididual freedom. I
personally think the fewer rules govern the use/spreading of some work,
the "more free" it is. This is a simple definition and doesn't need any
socio-political discussion as justification. In the software licensing
world, this would translate to public domain software. It certainly
isn't the best model for all "free" software, and surely not applicable
to all situations, but it sure beats lengthy tirades like the GPL for
lack of sheer annoyance.
From: George Neuner
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <f82eg3lcvtl5l98kavgh5td6hl7djs75n0@4ax.com>
On Fri, 05 Oct 2007 16:02:42 +0200, Matthias Buelow <···@incubus.de>
wrote:

>Damien Kick wrote:
>
>> Hell, why even use "free" for anything when
>> "unencumbered" already does the job so well?  Too many syllables,
>> though.  But we do appreciate the attempt to simplify, George.
>
>"Free software" is a misnomer anyways, unless it is really meant like in
>"free beer", that is, it doesn't cost anything.
>
>For software, just as for "free speech", it isn't the software or the
>speech that is free. The term "free speech" doesn't make much sense
>either, unless someone talks freely, that is, without reading from a
>manuscript.

That's "extemporaneous" speech.  How's _that_ for simplification :)

George
--
for email reply remove "/" from address
From: Kirk  Sluder
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <kirk-7FCB78.21554705102007@newsclstr02.news.prodigy.com>
In article <··············@mid.dfncis.de>,
 Matthias Buelow <···@incubus.de> wrote:

> Trying to define software "freedom" as a definite concept of maximum
> utility for all parties involved (which I think the FSF aims for, while
> of course their definition is not definite but just one proposal of
> many) is difficult, if at all possible and probably not desirable
> anyway. 

Certainly, I got profoundly frustrated with the FSF/Richard Stallman 
line of, "only an idiot would sacrifice their personal freedom to 
use non-free software" when I started seeing attacks on people with 
disabilities who were understandably concerned with the 
Massachusetts Open Office adoption.  The GPL is concerned with a 
form of "freedom" that is of maximum benefit to elite software 
developers, moderate benefit to end users, and of no benefit at all 
to those who simply can't use the software due to physical or 
sensory disabilities.  My view was that if buying non-free software 
like MS Office and Dragon NaturallySpeaking is the reasonable 
accommodation that most effectively meets the mandates of the ADA, 
then that is the course of action that maximizes the freedom for 
those stakeholders.
From: Tim X
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87myuwhihk.fsf@lion.rapttech.com.au>
Kirk  Sluder <····@nospam.jobsluder.net> writes:

> In article <··············@mid.dfncis.de>,
>  Matthias Buelow <···@incubus.de> wrote:
>
>> Trying to define software "freedom" as a definite concept of maximum
>> utility for all parties involved (which I think the FSF aims for, while
>> of course their definition is not definite but just one proposal of
>> many) is difficult, if at all possible and probably not desirable
>> anyway. 
>
> Certainly, I got profoundly frustrated with the FSF/Richard Stallman 
> line of, "only an idiot would sacrifice their personal freedom to 
> use non-free software" when I started seeing attacks on people with 
> disabilities who were understandably concerned with the 
> Massachusetts Open Office adoption.  The GPL is concerned with a 
> form of "freedom" that is of maximum benefit to elite software 
> developers, moderate benefit to end users, and of no benefit at all 
> to those who simply can't use the software due to physical or 
> sensory disabilities.  My view was that if buying non-free software 
> like MS Office and Dragon NaturallySpeaking is the reasonable 
> accommodation that most effectively meets the mandates of the ADA, 
> then that is the course of action that maximizes the freedom for 
> those stakeholders.

There is quite a high level of resistance to change amongst those working
with/for people with disabilities. Even new commercial ventures that
attempt to enter this market find it extremely difficult to get agencies
and other groups to consider alternative solutions. For example, in the
area of blind and vision impaired users, one vendor is overwhelmingly
favored over an equally powerful and cheaper solution that is in fact
easier to install and use because it doesn't have the outdated copy
protection mechanism of the more favored package. This other vendor has had
to put huge amounts of resources into getting agencies and educators to
consider their software, yet in many areas it has provided access solutions
in some areas long before the competition, such as support for web
browsing, flash etc.  

The problem with the 'what works now' approach is that it is sacrificing long term benefits
for short term results. Commercial accessibility software is expensive,
often requires higher end hardware to operate well and requires frequent
(and costly) upgrades. Often, it locks you into having to use expensive
commercial software packages, such as MS Office and does not work well with
free alternatives (such as Open office). In effect, those with a disability
requiring adaptive technology are financially disadvantaged - if you want a
mobile phone, you have to pay as much for the accessibility software as
most pay for the phone and then on top of that, you have to buy an
expensive high end phone because thats the only model the software will run
on, you want air conditioning, you have to buy an expensive high end
cntroller because thats the only one which has accessibility features and
it only works with the more expensive high end A/C units, you want a
computer, you need to get more memory, fastest possible CPU and a higher
end multi-channel sound card etc etc. At the same time, this is also a
group that is typically less financially secure - they have difficulty in
obtaining or maintaining employment and when they do, it is typically at
the lower end of the pay scale. Some governments attempt to address this
issue by providing grants, tax cuts, workplace modification funding
etc.While this is great, it only occurs in wealthier economies and it
represents on-going commitment and often is not sufficient to offset the
on-going costs of staying up-to-date.

Taking the approach that the commercial non-free solutions are the best
available provides an immediate solution, but it does nothing to change the
equation. Things will remain the same. However, if you take an alternative
approach, you have the potential to fundamentally change the dynamics of
the situation. Consider what may occur if, instead of a government spending
x million on purchasing commercial accessibility software and the related
components (hardware, office suites etc) and upgrading every 12 months etc,
that money was put into funding the development of free alternatives?
There is no reason, given sufficient resources, that the free alternatives
couldn't be as good as the commercial ones. In fact, some would argue that
the existing free alternatives, such as emacspeak, have significant
advantages over the commercial solutions for certain classes of users. In
fact, the main thing that has made the free alternatives for blind and
vision impaired users less competitive against the commercial solutions has
been the lack of a really good quality text-to-speech software
synthesiser, something which is changing gradually as more people work on
better free TTS solutions. Work on things like Orca for the Gnome desktop
is progressing well, with considerable support from companies like Sun (and
I think IBM). Personally, I'd prefer to have reduced functionality in the
short-term if I can have more accessible functionality in the long-term
which is not as financially draining on my own pocket, has less of a
financial burden on governments/tax revenue and has the ability to provide
increased levels of access regardless of the level of economic wealth in
the country you live in.

Once you have good quality free accessibility solutions, those requiring
such solutions won't be as disadvantaged. Furthermore, governments won't
have the same level of on-going financial commitments to commercial
companies through the requirement to provide access to individuals with a
disability. There are also some other potential benefits. For example,
those with a disability who also have a technical interest/skill can
actually participate in the development of the systems - direction could be
determined by user need rather than commercial viability. There may be
subtle kick-on effects - for example, Government departments may start
using open standards over closed proprietary solutions, increasing
accessibility for everyone. 

There are alternative arguments to those put forward by RMS. For example,
many argue that making commercial video codecs more accessible to peple
running GNU Linux will result in more people adopting GNU linux as their
platform and as more people adopt that platform, there will be a growth in
interest for free software and as this occurs, commercial enterprises will
begin to adopt free software because they believe more users will find
their products ethically/philosophically more acceptable.  I think this
line of reasoning is flawed because it is based on the assumption that most
people using free software are doing so because of philosophical and/or
ethical reasons. In reality, I suspect the majority of users are using it
because it is free (in the free beer sense) not becuase of any great
concern over freedom. I also believe the only motivation for business to
change (or at least the most persuasive ones) are financial and revenue
based and until commercial ventures can find a business model that users
free software and protects their revenue stream, nothing will change. The
wide adoption of 'LAMP' as an architecture for the web has had nothing to
do with philosophical decisions regarding freedom - its all been about
perceived higher cost benefits. 

I agree with the cncerns over freedom expressed by RMS and the FSF, though
I'm not convinced the GPL style of licensing is the only model that can
prevent the loss of freedom which the fSF is concerned about. Concerns
regarding loss of freedom or control over their work expressed by many who
don't agree with the GPL are, I think, misdirected. The bottom line is very
very few people make their living by writing software they then sell on the
open market. Most software is too large/complex these days for a single
developer and much of it is now created by companies where those who do all
the work are paid a basic wage. those that own the company (or shares in
it) are the ones that get the real profit.  The growth in cheaper overseas
programming labor is a far bigger threat to programmer wage levels than
anything proposed by the FSF or the GPL. There is also the overlooked fact
that nobody is forcing anyone to release software under a GPL (or any other
license). If you decide to use GPL'd software in your own projects, then I
think it is quite reasonable to require that you follow whatever license
the creator of the software you are using dictates. If you don't like it,
don't use it.

The greatest enefit I see in free software for protecting freedom is in its
wonderful ability to allow us to try out, look at and experiment with
different technology without having to make an initial, sometimes large,
investment. One way of protecting freedom is to ensure a large number of
people are familiar with available technologies. I see the whole problem as
being somewhat similar to the issue of media ownership. to some extent,
free software is fulfilling a similar role to public/community
broadcasting. It helps ensure there are other avenues of exploration and a
diversity of knowledge regarding what is occuring, what might occur and
what can occur. 

To bring it back to lisp....

its unlikely I would have started to learn lisp is I had to purchase a
commercial implementation. The financial commitment would have been
difficult to justify when I didn't know if I was going to enjoy it or
not. I can already hear some of you saying I could have downloaded one of
the free trial or student versions of the commercial
distributions. However, I attempted this and it failed. Guess why? The
package didn't work well with my accessibility software. More persistance
and I may have been able to get it working sufficiently to make it usable
for me (another weakness in accessibility software is that it tends to only
work well with 'popular' high use packages and those which closely
follow/use the MS interface libraries. custom controls, proprietary
libraries and/or vendors which still don't consider accessibility issues
are a constant frustration). On the other hand, Emacs and SLIME, together
with CMUCL and SBCL worked immediately.

Tim

-- 
tcross (at) rapttech dot com dot au
From: Slobodan Blazeski
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1191666927.297852.257830@19g2000hsx.googlegroups.com>
I believe in free software, but GPLed staff is not free in my view of
the world.
Maybe it works for OS where programms usually works at arms length but
it doesn't work
everywhere. You have the right to use GPLware as soon as you make
GPLware, advantage over
programmer working at MS,Oracle or Sun at using his company
proprietory code is only in ability
to join GPL coporation, whatever you create is theirs, the world can
have it unless they choose
to become employed at GPL coporation. So is GPLware freer than other
corporations staff?  Yes but margin is thin.

The other question is who is gonna pay for the development ? We all
like to solve sexy problems, but most of the problems a lot
of boring ones. Who gonna solve those ?  Or rather who gonna pay for
them being solved?
Helping yourself is an option, but that's risky in everybody becoming
a Jack of all trades, meaning screw the economy of scales,
apply patch after patch at the hands of multiple maintainers, each of
whom barely understood the consequences of what he or she was doing.
How much  do you have to know to make good code in certain domain ?
For wikipedia the entry point is very low writing for Linux kernel or
improving lisp compiler require specific knowledge. Roll up your own
is not an option. Good programmer  knows where to write, the great
ones knows where to reuse? I wonder where linux, apache  and many
other  jewels of the Open software will be if there was no corporate
backings to pay the programmers working full time on them? The answer
lies into our own lisp courtyard. SBCL, SLIME .. developers are doing
best they could but without someone paying their developers to
concetrate 100% on it that's  the best they could .

Slobodan
From: Kirk  Sluder
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <kirk-70B3F7.11334206102007@newsclstr02.news.prodigy.com>
In article <··············@lion.rapttech.com.au>,
 Tim X <····@nospam.dev.null> wrote:

> Personally, I'd prefer to have reduced functionality in the
> short-term if I can have more accessible functionality in the long-term
> which is not as financially draining on my own pocket, has less of a
> financial burden on governments/tax revenue and has the ability to provide
> increased levels of access regardless of the level of economic wealth in
> the country you live in.

But there, the problem is two-fold.  When I couldn't type, even on 
an alternative keyboard for 12 months, I needed a solution that 
worked immediately, not vaporware that was promised sometime in the 
future.  When the "reduced functionally" means that the software is 
incapable of assisting a person working a job.  Then the person is 
economically harmed.  Likewise the "reduced functionality" software 
fails to meet the ADA standard of "reasonable accommodation."  

Short-term compromises that exclude people from jobs are not 
acceptable.
From: Tim X
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87myuv4nke.fsf@lion.rapttech.com.au>
Kirk  Sluder <····@nospam.jobsluder.net> writes:

> In article <··············@lion.rapttech.com.au>,
>  Tim X <····@nospam.dev.null> wrote:
>
>> Personally, I'd prefer to have reduced functionality in the
>> short-term if I can have more accessible functionality in the long-term
>> which is not as financially draining on my own pocket, has less of a
>> financial burden on governments/tax revenue and has the ability to provide
>> increased levels of access regardless of the level of economic wealth in
>> the country you live in.
>
> But there, the problem is two-fold.  When I couldn't type, even on 
> an alternative keyboard for 12 months, I needed a solution that 
> worked immediately, not vaporware that was promised sometime in the 
> future.  When the "reduced functionally" means that the software is 
> incapable of assisting a person working a job.  Then the person is 
> economically harmed.  Likewise the "reduced functionality" software 
> fails to meet the ADA standard of "reasonable accommodation."  
>
> Short-term compromises that exclude people from jobs are not 
> acceptable.

I agree that if the software doesn't exist, you cannot require someone to
use it. Niether RMS or the FSF has ever claimed that people should only use
free software and if there wasn't a free alternative they shouldn't use
anything. Rather, RMS and the FSF have said its fine to use the closed
non-free software, but at the same time, effort should be put into
developing free alternatives. (I've had long e-mail discussions with RMS on
this issue as I was unclear on the FSF position in this area). 

I don't know exactly what your requirements were to make the keyboard
accessible, but I do know quite a few people working at various levels of
employment, from basic administrative assistant to mid and senior level
management that use free accessibility software for most of, if not all,
their work. While there are bound to be certain very specialised needs that
do not have free solutions, there is a considerable amount of free
assistive technology out there. Unfortunatley, many of the agencies which
those with a disability rely on for guidance and advice on assistive
technology have largely ignored the free software solutions and fail to
include them in the information they make available to clients. I have
persoanlly assisted around a dozen disabled users in switching to a free
alternative and all except for around three have stuck with the
free alternatives, despite the fact the functionality is reduced in some
areas (this is mainly because they have found the reliability and stability
of the systems is typically better than with the proprietary
solutions). The ones who did not continue with the free solutions switched
back either because they just couldn't adjust to the different environment
or because the specific functionality they needed most fell into an area in
which the free solution was still weak. 

The main point I wanted to make is that good quality free assistive
technology does exist and is sufficiently functional to map over the
majority of commercial solutions out there. There will always be edge
cases that are unlikely to ever have a free solution, but at the same time,
there are free solutions out there using alternative approaches and
techniques that actually provide a better more functional solution which
the commercial vendors haven't even considered (and are unlikely to because
the potential market is too small to justify the investment). 

I do agree that Governments probably should avoid getting down to the point
of legislating that only open source or free software can be
used. governments should never legislate over vendors and at an abstract
level, free software is really just another vendor. Likewise, I don't
believe governments should legislate that Jaws, MS Office and Dragon
naturally speaking should be used. What they should legislate about is that
a solution is provided, not the specifics of the solution. The range of
disabilities and their specific requirements are too broad to be legislated
effectively and governments rarely udnerstand the problems clearly enough
to be speicific about solutions, plus technology and available solutions
move too quickly for the slow beurocratic mechanism to keep up. However, I
do think it is a good thing if governments encourage the use of free
solutions as I think that this will increase the demand and support for
free solutions and ultimately, this will provide the greatest level of
freedom for those with a disability that rely on assistive technology for
their access. The alternative is a commercial model that is driven by
profit rather than user need. While governments can intervene to
partially reduce the pure profit motive, the bottom line is that it means
disabled users are still dependent on their solutions being profitable to
the vendor, requiring someone to pay - either the individual, the employer
or the government. 

Tim

-- 
tcross (at) rapttech dot com dot au
From: Kent M Pitman
Subject: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <u3ax0zsx1.fsf_-_@nhplace.com>
George Neuner <·········@comcast.net> writes:

> The common thread in all the meanings [of "free"] is "being unencumbered".

Which is why, of course, some people (myself included) don't like the
term "free software", which places restrictions on use.

It's like claiming you have freedom of speech and then telling people
that doesn't give you the right to speak offensively.  If the only
kind of speech to be protected were non-offensive, no one would have
bothered to make a rule protecting it.  Outlawing offensive speech
does not make the world more free, it trades one person's freedom for
another's.  It may sometimes be a reasonable thing to do, but calling
it an unambiguous exercise of freedom is very dangerous because it 
introduces the precendent that shifts of balance of power require no
scrutiny, no justification, and no labeling.  

It's also like having the Patriot Act and then wondering why people
are still talking about the content of the act... after all, isn't
having a good name enough and isn't it kind of unpatriotic to be
questioning a Patriot Act?

So while it's completely possible and appropriate under copyright law
to make contractual license restrictions with people, encumbering the
derivative uses of things the content creator makes, calling such 
restrictions "freedom" is really very 1984.  

And it teaches bad civics.  It encourages people to take things by
their label and to question neither the content nor the case-by-case
effect.  Rather it encourages one to just to accept as a lemma that 
a nice simple name implies a uniformly good and reliably effective
and unchallengeably correct effect.

> If you aren't able to discern the simple pattern in the meanings, or if 
> you have to look up "unencumbered", then there is no hope for you.  
> If you hate English so much, you're free to go somewhere where it isn't
> spoken.

I don't think this tone is appropriate.

And I think you'll find the word unencumbered does not, as a matter of
fact, refer fairly to the GPL.

 webster.com says...
  unencumbered: free of encumbrance
  encumbrance: something that encumbers: impediment, burden
  impediment: something that impedes
  impede: to interfere with or slow the progress of

Certainly the GPL interferes with and slows the progress of certain
activities.  To say that it doesn't do that to all things is to say
the obvious.  The GPL is a player in a global tug-of-war over
intellectual property.  It is not a neutral player.  To have a
tug-of-war is to pull a rope in two directions at once (let's say left
and right), and while it's truthful to say that a tug-of-war involves
pulling to the left, since it also involves pulling the other way,
it would be marginal as a point of good labeling to rename tug-of-war
to merely "leftward-pulling of rope".
From: Matthias Benkard
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <1190896724.432865.122040@19g2000hsx.googlegroups.com>
> Which is why, of course, some people (myself included) don't like the
> term "free software", which places restrictions on use.

The FSF does not define free software by restrictions, but by certain
permissions:

http://www.fsf.org/licensing/essays/free-sw.html

In essence, what you say is right, of course.  Calling some software
free while calling other software non-free, allowing certain
restrictions for ``free'' software, makes the meaning less clear.
Then again, freedom is quite a murky concept that you can argue about
all day long, anyway, so maybe it's exactly the right term for this
kind of thing. :)

After all, many people call our western civilisations ``free'', which
I personally don't agree with at all.  Freedom is in the eye of the
beholder -- or is it?

~ Matthias
From: Kamen TOMOV
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <uwsuc1c4z.fsf@cybuild.com>
On Thu, Sep 27 2007, Matthias Benkard wrote:

>> Which is why, of course, some people (myself included) don't like the
>> term "free software", which places restrictions on use.
>
> The FSF does not define free software by restrictions, but by certain
> permissions:

It is a marketing trick - when you praise something you talk about its
features, not drawbacks.

It resembles the nonsense "GNU's Not Unix".

-- 
�����
From: ················@gmail.com
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <1190923601.585147.68100@r29g2000hsg.googlegroups.com>
On Sep 26, 11:30 pm, Kent M Pitman <······@nhplace.com> wrote:

> So while it's completely possible and appropriate under copyright law
> to make contractual license restrictions with people, encumbering the
> derivative uses of things the content creator makes, calling such
> restrictions "freedom" is really very 1984.  

Nicely put. Freedom cannot be defined as being allowed to use a work
only in those ways it's author approves of.
From: Ken Tilton
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <N2VKi.1819$JD3.1343@newsfe12.lga>
················@gmail.com wrote:
> On Sep 26, 11:30 pm, Kent M Pitman <······@nhplace.com> wrote:
> 
> 
>>So while it's completely possible and appropriate under copyright law
>>to make contractual license restrictions with people, encumbering the
>>derivative uses of things the content creator makes, calling such
>>restrictions "freedom" is really very 1984.  
> 
> 
> Nicely put. Freedom cannot be defined as being allowed to use a work
> only in those ways it's author approves of.
> 

Maybe they could call it "free-range software", out there with the 
chickens and cattle, don't fence me in, let me ride through the wide 
open software prairies that I love software.

The silly thing was trying to infect other software. Don't have the 
lyrics for that ... hang on... I know I got it comin, I know I can't be 
free, but if they freed me from this prison....throw me a fish, will 
someone?

kenny

-- 
http://www.theoryyalgebra.com/

"We are what we pretend to be." -Kurt Vonnegut
From: Fred Gilham
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <u7k5qazhnr.fsf@snapdragon.csl.sri.com>
Something to keep in mind about all this, that just got brought home
again when I saw the Symbolics bit-torrent yesterday (and the
interesting comment by dkschmidt about it).  Check out lemonodor.com
for details.

Anyway...

Stallman was reacting to the change at his beloved MIT AI lab from a
free-wheeling open environment to one dominated by concerns about
intellectual property.  This was the time of LMI and Symbolics.  To
Stallman this was literally the destruction of his world.

What brought this home was the realization that the vaunted
intellectual property that Symbolics made so much of is now in a kind
of limbo.  I wonder how many of the people who poured their energy and
genius into the incredible Symbolics software are pleased to see how
it has all turned out.

As the quote goes,

"Fool! This night your soul is required of you; and the things you
have prepared, whose will they be?"

-- 
Fred Gilham                                  ······@csl.sri.com
Central bankers don't trust each other. They know how easy it is to
create money out of nothing. They hold dollar-denominated assets, such
as U.S. Treasury-bills, because they can earn interest --- not much
these days --- but they settle their final accounts with each other in
gold.                                                   --- Gary North
From: Rainer Joswig
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <joswig-F9424F.22334028092007@news-europe.giganews.com>
In article <··············@snapdragon.csl.sri.com>,
 Fred Gilham <······@snapdragon.csl.sri.com> wrote:

> Something to keep in mind about all this, that just got brought home
> again when I saw the Symbolics bit-torrent yesterday (and the
> interesting comment by dkschmidt about it).  Check out lemonodor.com
> for details.
> 
> Anyway...
> 
> Stallman was reacting to the change at his beloved MIT AI lab from a
> free-wheeling open environment to one dominated by concerns about
> intellectual property.  This was the time of LMI and Symbolics.  To
> Stallman this was literally the destruction of his world.

Yeah, free-wheeling open environment. Not. All paid for by US
military (DARPA). Someone paid the show. Nothing was 'free'.
Being paid by the military was fine - they financed
it and eventually the took the results when they needed it.

Just reading Steven Levy's "Hackers - Heroes of the Computer Revolution"
which writes a bit about the AI Lab and its history and fate.

> What brought this home was the realization that the vaunted
> intellectual property that Symbolics made so much of is now in a kind
> of limbo.

The property is definitely owned by somebody. Though
the ownership may change (or already has).

>  I wonder how many of the people who poured their energy and
> genius into the incredible Symbolics software are pleased to see how
> it has all turned out.

The fate of Symbolics was not a question of free vs. closed
software. It was a failing business. LMI (Lisp Machines)
had the same fate. TI (Lisp Machines) also. Lucid (Lisp vendor),
too. Xerox' Lisp Machines were also failing in the market,
eventually.

I think it is fine that GNU Emacs is there and survived,
but it is now a just a surviving dinosaur.

> 
> As the quote goes,
> 
> "Fool! This night your soul is required of you; and the things you
> have prepared, whose will they be?"

-- 
http://lispm.dyndns.org
From: Damien Kick
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <13frk0r57saun50@corp.supernews.com>
Rainer Joswig wrote:
> In article <··············@snapdragon.csl.sri.com>,
>  Fred Gilham <······@snapdragon.csl.sri.com> wrote:
> 
>> Something to keep in mind about all this, that just got brought home
>> again when I saw the Symbolics bit-torrent yesterday (and the
>> interesting comment by dkschmidt about it).  Check out lemonodor.com
>> for details.
>>
>> Anyway...
>>
>> Stallman was reacting to the change at his beloved MIT AI lab from a
>> free-wheeling open environment to one dominated by concerns about
>> intellectual property.  This was the time of LMI and Symbolics.  To
>> Stallman this was literally the destruction of his world.
> 
> Yeah, free-wheeling open environment. Not. All paid for by US
> military (DARPA). Someone paid the show. Nothing was 'free'.
> Being paid by the military was fine - they financed
> it and eventually the took the results when they needed it.

I still believe that the intersection of commerce, governance, culture, 
etc. and its relationship to the use of the word "free" is a rather 
complicated topic.  Yes, DARPA paid for the MIT AI lab.  There are many 
who would argue that this complicates the issue of intellectual property 
rights.  For example, some would ask how LMI (of which I've actually 
never heard before now) or Symbolics can claim to own intellectual 
property which is the result of public funding?  Consider the following 
quote from Noam Chomsky:

<blockquote cite="http://www.chomsky.info/interviews/200111--.htm">
The pharmaceutical companies will tell you that they need this 
super-extreme patent regime because they put so much money into research 
and development which results in all sorts of wonderful drugs. That is 
all nonsense. Take the case of the U.S. About half the expenditures for 
research and development comes from the public anyway. Moreover, that is 
an underestimate because it only includes the applications that grow out 
of fundamental biology, but do not count fundamental biology, which is 
entirely from the public. If you look at the part that the corporations 
actually do, a lot of it is useless and mainly for business reasons - 
copycat drugs. The part that is played by public funding plays the 
constructive role. As a believer in capitalism would do, if you 
increased the public contribution to 100 per cent and eliminated the 
pretext and forced the companies to sell their drugs on the market, 
prices would go way down and result in huge gains for consumers. But 
that is not acceptable. Neoliberalism is mostly fraud.
</blockquote>

Whether or not someone reading this agrees this position expressed by 
Chomsky above, I don't know how anyone could honestly pretend that these 
topics are simple and obvious.  I think that defining the word "free" is 
complicated, as The Big Dictionary shows us with all of the various 
definitions associated with the word.

And that is why I find all of these language mavens running around 
claiming they have a lock on a phrase like "free software" to be so 
annoying.  It seems to be so unrepentantly ideological.  IMO, Lawrence 
Lessig has written some rather more nuanced material in support of the 
idea of "[promoting] the freedom to distribute and modify creative 
works, using the Internet as well as other media."  I'm sure that Lessig 
will also be very relieved to hear that I personally have no problem 
with the choice of the term "Free Culture".  As a phrase, it has no need 
for legions of defenders explaining that, no, it does not mean that 
which most people tend to think it means but rather your must think it 
means what someone else wants it to mean.  But I also think it is 
telling that

<blockquote cite="http://en.wikipedia.org/wiki/Free_Culture_movement">
The free culture movement takes the ideals of free software movement and 
extends them from the field of software to all cultural and creative 
works. At the beginning, Richard Stallman (founder of the Free Software 
Foundation and the free software movement) supported the Creative 
Commons, but at some point he rejected it:

I no longer endorse Creative Commons. I cannot endorse Creative Commons 
as a whole, because some of its licenses are unacceptable. It would be 
self-delusion to try to endorse just some of the Creative Commons 
licenses, because people lump them together; they will misconstrue any 
endorsement of some as a blanket endorsement of all. I therefore find 
myself constrained to reject Creative Commons entirely.
</blockquote>

It just seems like such a narrow point of view.  The whole of Creative 
Commons must be rejected because it wants to provide licenses for people 
which are more (or less) restrictive, depending on if you view it from 
the left or the right, than that which Stallman wants.  It must be all 
or nothing.  It just seems so much more reasonable to try to help people 
with licenses which might be a bit more "middle of the road" so that 
they do not have to choose between the rock and a hard place.  If one 
does not automatically reject someone because they only half agree with 
you, then you still get a chance to benefit from the half with which you 
do agree.  Worse is better.  <pause> Or something like that.

ob-lisp: <pause type="For a really long time with lots of guilty 
expressions"> Lisp rules!
From: Cesar Rabak
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <fdmact$bkt$1@aioe.org>
Damien Kick escreveu:
[snipped]

> It just seems like such a narrow point of view.  The whole of Creative 
> Commons must be rejected because it wants to provide licenses for people 
> which are more (or less) restrictive, depending on if you view it from 
> the left or the right, than that which Stallman wants.  It must be all 
> or nothing. 

It seems so, but...

> It just seems so much more reasonable to try to help people 
> with licenses which might be a bit more "middle of the road" so that 
> they do not have to choose between the rock and a hard place.  If one 
> does not automatically reject someone because they only half agree with 
> you, then you still get a chance to benefit from the half with which you 
> do agree.  Worse is better.  <pause> Or something like that.

I think the issue becomes "what middle" is what? You see now companies 
bragging they 'support' open software, but when you look at their 
corporate practices you discover their cash cows are thoroughly closed 
whereas the applications or systems they 'support' have a clear aim to 
undermine some competitor profit or market share.

So this "Worse is better" pulled out of context or just labeling R.M.S 
as radical is as unreasonable as they detractors.

just my .019999....

--
Cesar Rabak
From: Cor Gest
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <87myv5gl5w.fsf@telesippa.clsnet.nl>
Some entity, AKA Cesar Rabak <·······@yahoo.com.br>,
wrote this mindboggling stuff:
(selectively-snipped-or-not-p)

> So this "Worse is better" pulled out of context or just labeling R.M.S
> as radical is as unreasonable as they detractors.

The 'FREE' (of FOSS) relates to YOU as the USER of all the code-crap, 
not the maker, vendor or any other entity.

 Cor

-- 
	 (defvar MyComputer '((OS . "GNU/Emacs")(IPL . "GNU/Linux"))) 
     If all fails to satisfy you read the HyperSpec or info woman 
                Proud member of the Spamipuku Elite
		           http://www.clsnet.nl/mail.php
 
From: Cesar Rabak
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <fdmk4b$7mp$2@aioe.org>
Cor Gest escreveu:
> 
> Some entity, AKA Cesar Rabak <·······@yahoo.com.br>,
> wrote this mindboggling stuff:
> (selectively-snipped-or-not-p)
> 
>> So this "Worse is better" pulled out of context or just labeling R.M.S
>> as radical is as unreasonable as they detractors.
> 
> The 'FREE' (of FOSS) relates to YOU as the USER of all the code-crap, 
> not the maker, vendor or any other entity.
> 
With this very complete and out of context citation I can't see the 
connection...

Do you mind elaborate?
From: Cor Gest
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <87ir5tgfut.fsf@telesippa.clsnet.nl>
Some entity, AKA Cesar Rabak <·······@yahoo.com.br>,
wrote this mindboggling stuff:
(selectively-snipped-or-not-p)

> With this very complete and out of context citation I can't see the
> connection...
> 
> Do you mind elaborate?

NO
Which IS the FREE I give myself.

Cor
-- 
	 (defvar MyComputer '((OS . "GNU/Emacs")(IPL . "GNU/Linux"))) 
     If all fails to satisfy you read the HyperSpec or info woman 
                Proud member of the Spamipuku Elite
		           http://www.clsnet.nl/mail.php
 
From: Kent M Pitman
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <utzpeqae6.fsf@nhplace.com>
Rainer Joswig <······@lisp.de> writes:

> Yeah, free-wheeling open environment. Not. All paid for by US
> military (DARPA). Someone paid the show. Nothing was 'free'.
> Being paid by the military was fine - they financed
> it and eventually the took the results when they needed it.

I'm not sure the precise point you're intending to make here so I'll just
speak generally to this topic without regard to whether I am responding 
specifically to your intent.

There are two issues that play in:

 (a) what were the terms of agreement between the funding agency and the
     academic or commercial entity doing development at the time funding
     was granted, not after the fact.

 (b) even if the government had a right to get the software back in the
     name of recovering its investment, is the GPL an appropriate vehicle
     to represent the US public interest.

I'm not sure about all the details of (a) so will decline to comment 
at this time.

But with regard to (b), the GPL singles out particular business models
and says "if you're not doing it this way, this software is not for
you ... even if we used some of your tax dollars to fund this work".

I'm not sure that, even if it has the power, the US government should
be dictating that level of business model. It's fine for a private
individual to legally leverage their own private intellectual property
stake toward their own private political ends, it seems inappopriate
for any duly authorized agent of the US Government to serve his own
political ends or those of favored constituents by reifying such
private political preference settings into public policy by deploying
software under viral political restrictions.

By the way, an example of where the government has taken sides in this
way would be DOE Maxima, where it's my understanding that this was (I
think quite inappropriately) released by the US Government in recent
years under GPL.  I think this should have been a BSD or other
similarly politically neutral license for this publicly funded work,
and I am frankly surprised that some business or another that wanted
to incorporate this work into their own products has not sued the
government for the rights to do so.

(Perhaps someone will argue that the lack of any such suit is some
kind of existence proof that no one had such a desire to use this
software in another mode than GPL, but I SERIOUSLY doubt that.  I
personally think it more likely that there WERE people who pondered
such uses of the software but either didn't think to challenge the
government's choice of license, didn't have the time/money to pursue
the matter formally, or were unable to construct an appropriate legal
argument... which MIGHT not mean there wasn't such an argument to be
made.)

IMO, the entire GPL issue is something of a holy war, and seems to me,
given the religious fervor with which GPL evangelism is often
prosecuted, that it's not much of a stretch to say that the US
Government taking a side in the matter ought reasonably to be seen as
a violation of the establishment clause of the First Amendment to the
US Constitution ... or, if not that, at least a violation of the
general maxim of "no taxation without representation".  (That is,
having paid taxes that fund DARPA, shouldn't one be entitled to share
in the benefits of such work?)

All just my personal opinion.
From: Odd Skjaeveland
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <87k5q7b3us.fsf@hamso.no>
Kent M Pitman:
[...]
> By the way, an example of where the government has taken sides in this
> way would be DOE Maxima, where it's my understanding that this was (I
> think quite inappropriately) released by the US Government in recent
> years under GPL.


Did the code catch a GPL-infection at some stage prior to the release?

-- 
Odd Skjaeveland ··········@hamso.no
From: Thomas A. Russ
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <ymiabr16wlf.fsf@blackcat.isi.edu>
Kent M Pitman <······@nhplace.com> writes:

> By the way, an example of where the government has taken sides in this
> way would be DOE Maxima, where it's my understanding that this was (I
> think quite inappropriately) released by the US Government in recent
> years under GPL.  I think this should have been a BSD or other
> similarly politically neutral license for this publicly funded work,
> and I am frankly surprised that some business or another that wanted
> to incorporate this work into their own products has not sued the
> government for the rights to do so.

I think this criticism would need to be a bit broader.  For many, many
years, U.S. government-funded research grants have -- after reserving
usage rights to the U.S. government -- allowed the inventors and their
universities to retain all other rights to the research.  So, in
particular, government funded research could be subject to any sort of
proprietary commercial license that the inventors or their institution
wished.  In this light, GPL doesn't seem like a stretch, insofar as the
government allows essentially any sort of public license.

Now lately, certain grant-giving agencies (in particular the NSF*) have
often preferred or sometimes required that the software produced by the
grant be released under some sort of "open source" license.  I agree
that this seems to be progress.  I suspect that GPL does qualify under
that category.  I furthermore suspect that not everyone at the
policy-making level understands the distinctions between the different
open-source licenses.

--------

* NSF = National Science Foundation, a U.S. Federal Government funding agency.

-- 
Thomas A. Russ,  USC/Information Sciences Institute
From: Slobodan Blazeski
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <1191150251.667082.168890@50g2000hsm.googlegroups.com>
On Sep 28, 10:33 pm, Rainer Joswig <······@lisp.de> wrote:
> In article <··············@snapdragon.csl.sri.com>,
>  Fred Gilham <······@snapdragon.csl.sri.com> wrote:
>
> > Something to keep in mind about all this, that just got brought home
> > again when I saw the Symbolics bit-torrent yesterday (and the
> > interesting comment by dkschmidt about it).  Check out lemonodor.com
> > for details.
>
> > Anyway...
>
> > Stallman was reacting to the change at his beloved MIT AI lab from a
> > free-wheeling open environment to one dominated by concerns about
> > intellectual property.  This was the time of LMI and Symbolics.  To
> > Stallman this was literally the destruction of his world.
>
> Yeah, free-wheeling open environment. Not. All paid for by US
> military (DARPA). Someone paid the show. Nothing was 'free'.
> Being paid by the military was fine - they financed
> it and eventually the took the results when they needed it.
>
> Just reading Steven Levy's "Hackers - Heroes of the Computer Revolution"
> which writes a bit about the AI Lab and its history and fate.

Would you please guys stop mentioning books you are reading, I usually
end up reading them too .
BTW Nice book .

Slobodan
From: Giorgos Keramidas
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <87myv3lowi.fsf@kobe.laptop>
On Sun, 30 Sep 2007 11:04:11 -0000, Slobodan Blazeski <·················@gmail.com> wrote:
> On Sep 28, 10:33 pm, Rainer Joswig <······@lisp.de> wrote:
>> Just reading Steven Levy's "Hackers - Heroes of the Computer
>> Revolution" which writes a bit about the AI Lab and its history and
>> fate.
>
> Would you please guys stop mentioning books you are reading, I usually
> end up reading them too .

*LOL* I second, third and sometimes, on particularly long-winded
threads, I also fourth that.  I can barely keep up with the number of
references in this newsgroup, but, oh, am I glad...

> BTW Nice book .

I haven't finished reading it yet, but it looks promising and a fun
read.  The place where TMRC gets access to TX-0 and Levy jokingly
writes:

  Now that its original job was over, the three-million-dollar TX-0 had
  been shipped over to the Institute on "long-term loan," [...]  Dennis
  asked the S&P people at TMRC whether they would like to see it. Hey
  you nuns! Would you like to meet the Pope?

is absolutely marvellous :)

Nice book, indeed.
From: Rainer Joswig
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <joswig-584965.11075901102007@news-europe.giganews.com>
In article <··············@kobe.laptop>,
 Giorgos Keramidas <········@ceid.upatras.gr> wrote:

> On Sun, 30 Sep 2007 11:04:11 -0000, Slobodan Blazeski <·················@gmail.com> wrote:
> > On Sep 28, 10:33 pm, Rainer Joswig <······@lisp.de> wrote:
> >> Just reading Steven Levy's "Hackers - Heroes of the Computer
> >> Revolution" which writes a bit about the AI Lab and its history and
> >> fate.
> >
> > Would you please guys stop mentioning books you are reading, I usually
> > end up reading them too .
> 
> *LOL* I second, third and sometimes, on particularly long-winded
> threads, I also fourth that.  I can barely keep up with the number of
> references in this newsgroup, but, oh, am I glad...
> 
> > BTW Nice book .
> 
> I haven't finished reading it yet, but it looks promising and a fun
> read.  The place where TMRC gets access to TX-0 and Levy jokingly
> writes:
> 
>   Now that its original job was over, the three-million-dollar TX-0 had
>   been shipped over to the Institute on "long-term loan," [...]  Dennis
>   asked the S&P people at TMRC whether they would like to see it. Hey
>   you nuns! Would you like to meet the Pope?
> 
> is absolutely marvellous :)
> 
> Nice book, indeed.

If you are into more nostalgia, then you might want to read
"The Brain Makers". Also:

http://www.sts.tu-harburg.de/~r.f.moeller/symbolics-info/ai-business.pdf
"If It Works, It's Not AI: A Commercial Look at Artificial Intelligence startups"

I like both titles. ;-)

-- 
http://lispm.dyndns.org
From: Slobodan Blazeski
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <1191261033.905260.107640@57g2000hsv.googlegroups.com>
On Oct 1, 11:08 am, Rainer Joswig <······@lisp.de> wrote:
> In article <··············@kobe.laptop>,
>  Giorgos Keramidas <········@ceid.upatras.gr> wrote:
>
>
>
>
>
> > On Sun, 30 Sep 2007 11:04:11 -0000, Slobodan Blazeski <·················@gmail.com> wrote:
> > > On Sep 28, 10:33 pm, Rainer Joswig <······@lisp.de> wrote:
> > >> Just reading Steven Levy's "Hackers - Heroes of the Computer
> > >> Revolution" which writes a bit about the AI Lab and its history and
> > >> fate.
>
> > > Would you please guys stop mentioning books you are reading, I usually
> > > end up reading them too .
>
> > *LOL* I second, third and sometimes, on particularly long-winded
> > threads, I also fourth that.  I can barely keep up with the number of
> > references in this newsgroup, but, oh, am I glad...
>
> > > BTW Nice book .
>
> > I haven't finished reading it yet, but it looks promising and a fun
> > read.  The place where TMRC gets access to TX-0 and Levy jokingly
> > writes:
>
> >   Now that its original job was over, the three-million-dollar TX-0 had
> >   been shipped over to the Institute on "long-term loan," [...]  Dennis
> >   asked the S&P people at TMRC whether they would like to see it. Hey
> >   you nuns! Would you like to meet the Pope?
>
> > is absolutely marvellous :)
>
> > Nice book, indeed.
>
> If you are into more nostalgia, then you might want to read
> "The Brain Makers". Also:
>
> http://www.sts.tu-harburg.de/~r.f.moeller/symbolics-info/ai-business.pdf
> "If It Works, It's Not AI: A Commercial Look at Artificial Intelligence startups"
>
> I like both titles. ;-)
>
> --http://lispm.dyndns.org- Hide quoted text -
>
> - Show quoted text -

Rainer, I hate you.
From: Giorgos Keramidas
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <87wsu6am7v.fsf@kobe.laptop>
On Mon, 01 Oct 2007 11:08:00 +0200, Rainer Joswig <······@lisp.de> wrote:
> If you are into more nostalgia, then you might want to read
> "The Brain Makers". Also:
>
> http://www.sts.tu-harburg.de/~r.f.moeller/symbolics-info/ai-business.pdf
> "If It Works, It's Not AI: A Commercial Look at Artificial Intelligence startups"

Enqueued, thanks for both references :)
From: Slobodan Blazeski
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <1191260879.878233.107610@19g2000hsx.googlegroups.com>
On Oct 1, 1:22 am, Giorgos Keramidas <········@ceid.upatras.gr> wrote:
> On Sun, 30 Sep 2007 11:04:11 -0000, Slobodan Blazeski <·················@gmail.com> wrote:
> > On Sep 28, 10:33 pm, Rainer Joswig <······@lisp.de> wrote:
> >> Just reading Steven Levy's "Hackers - Heroes of the Computer
> >> Revolution" which writes a bit about the AI Lab and its history and
> >> fate.
>
> > Would you please guys stop mentioning books you are reading, I usually
> > end up reading them too .
>
> *LOL* I second, third and sometimes, on particularly long-winded
> threads, I also fourth that.  I can barely keep up with the number of
> references in this newsgroup, but, oh, am I glad...
>
> > BTW Nice book .
>
> I haven't finished reading it yet, but it looks promising and a fun
> read.  The place where TMRC gets access to TX-0 and Levy jokingly
> writes:
>
>   Now that its original job was over, the three-million-dollar TX-0 had
>   been shipped over to the Institute on "long-term loan," [...]  Dennis
>   asked the S&P people at TMRC whether they would like to see it. Hey
>   you nuns! Would you like to meet the Pope?
>
> is absolutely marvellous :)
>
> Nice book, indeed.
Week No 1:
Wife : Are you willing to help me bring the groceries ?
Hacker : No

Week No 2:
Wife : Are you willing to help me bring the groceries ?
Hacker : No

Week No 3:
Wife : Are you willing to help me bring the groceries ?
Hacker : No
Wife (angry): Why the hell you don't want to help me with the
groceries?
Hacker : You said "Are you willing to help me with the groceries?"
Not  help me with the groceries.

The wife was debugged.
From: Robert Uhl
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <m33awullzh.fsf@latakia.dyndns.org>
Rainer Joswig <······@lisp.de> writes:
>
>> Stallman was reacting to the change at his beloved MIT AI lab from a
>> free-wheeling open environment to one dominated by concerns about
>> intellectual property.  This was the time of LMI and Symbolics.  To
>> Stallman this was literally the destruction of his world.
>
> Yeah, free-wheeling open environment. Not. All paid for by US
> military (DARPA). Someone paid the show. Nothing was 'free'.

If it was paid for by the US military, then it was paid for by the US
taxpayer, and thus any US taxpayer should have been able to use it;
no-one should have been able to close it off.

State-funded works should be released under a BSD license so that all
individuals and corporations can use them as they will.

-- 
Robert Uhl <http://public.xdi.org/=ruhl>
When I became a man, I put away childish things, including the fear of
childishness and the desire to be very grown-up.          --C.S. Lewis
From: George Neuner
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <46utf355jahpdset55gca0fhuc45ov0lps@4ax.com>
On 26 Sep 2007 23:30:34 -0400, Kent M Pitman <······@nhplace.com>
wrote:

>George Neuner <·········@comcast.net> writes:
>
>> The common thread in all the meanings [of "free"] is "being unencumbered".


>So while it's completely possible and appropriate under copyright law
>to make contractual license restrictions with people, encumbering the
>derivative uses of things the content creator makes, calling such 
>restrictions "freedom" is really very 1984.  

Under US law, contract law supersedes all other civil law, including,
theoretically, copyright law.  However, since the DMCA (1996), US
copyright law defines certain behaviors as "criminal" and levies
penalties for engaging in them so I'm not sure it actually *is* civil
law anymore. 

Technically, copyright is independent of contracted license.  The law
defines "default" rights for the author and a framework of default
compensation for use of the author's work in the absence of the
explicit permission.

The GPL is a contracted license - technically it's an example of a
"one-sided" contract in which the parties have unequal stature.
One-sided contracts are legal - whether they are ethical is a
different question.


>And it teaches bad civics.  It encourages people to take things by
>their label and to question neither the content nor the case-by-case
>effect.  Rather it encourages one to just to accept as a lemma that 
>a nice simple name implies a uniformly good and reliably effective
>and unchallengeably correct effect.

Symbolism over substance - the mantra of today's society.


>> If you aren't able to discern the simple pattern in the meanings, or if 
>> you have to look up "unencumbered", then there is no hope for you.  
>> If you hate English so much, you're free to go somewhere where it isn't
>> spoken.
>
>I don't think this tone is appropriate.

I was having a bad day.  I apologize to Dick and to anyone else who
was offended.


>And I think you'll find the word unencumbered does not, as a matter of
>fact, refer fairly to the GPL.
>
> webster.com says...
>  unencumbered: free of encumbrance
>  encumbrance: something that encumbers: impediment, burden
>  impediment: something that impedes
>  impede: to interfere with or slow the progress of
>
>Certainly the GPL interferes with and slows the progress of certain
>activities.  To say that it doesn't do that to all things is to say
>the obvious.  The GPL is a player in a global tug-of-war over
>intellectual property.  It is not a neutral player.  To have a
>tug-of-war is to pull a rope in two directions at once (let's say left
>and right), and while it's truthful to say that a tug-of-war involves
>pulling to the left, since it also involves pulling the other way,
>it would be marginal as a point of good labeling to rename tug-of-war
>to merely "leftward-pulling of rope".

Dick was going on about the dictionary meaning of "free" being tied to
money and my post was just about the definition of "free" - not about
how it pertains to the GPL.

For the record, I am against the GPL - particularly v3.  I support the
idea of "no strings" software, but I object to approach the FSF has
taken.  I particularly think the highly infectious nature of the
current GPLv3 is poorly considered.  I had similar, though less
strenuous, objections to v2, but I believed the introduction of the
LGPL was a satisfactory compromise.  v3 does not recognize LGPL and
specifically prohibits use in combination with previous GPL versions
or with other "free" licenses.

George
--
for email reply remove "/" from address
From: George Neuner
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <o1buf313e40dm0qassdrfkbuqo3g3phc6n@4ax.com>
On Sun, 30 Sep 2007 00:52:21 -0400, George Neuner
<·········@comcast.net> wrote:

>I was having a bad day.  I apologize to Dick and to anyone else who
>was offended.

I meant "Damien".  Apologies again.

Can't win for losing.
George
--
for email reply remove "/" from address
From: Damien Kick
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <13fubl2pq6hnq7e@corp.supernews.com>
George Neuner wrote:
> On Sun, 30 Sep 2007 00:52:21 -0400, George Neuner
> <·········@comcast.net> wrote:
> 
>> I was having a bad day.  I apologize to Dick and to anyone else who
>> was offended.
> 
> I meant "Damien".  Apologies again.

<laugh> No problem.  Though it did bring back bad memories from high 
school when a shop class teacher mangled my name in roll call. 
<shudder>  Not fun having a verb for a last name as a kid.
From: Matthias Benkard
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <1191169663.822059.186710@w3g2000hsg.googlegroups.com>
> For the record, I am against the GPL - particularly v3.  I support the
> idea of "no strings" software, but I object to approach the FSF has
> taken.

The GPLv3 is not a ``not strings'' license.  The FSF has never claimed
so, either.

> I particularly think the highly infectious nature of the
> current GPLv3 is poorly considered.

The GPLv3 isn't that infectious.  Yes, you have to open-source all
derivative works of GPLv3-licensed products, but, in general, you do
not have to GPL them.  (You do have to GPL your customised versions of
GPL'd software, but if you use a GPL'd piece of software as a library,
the only thing you have to do is release your code with a license that
is no more restrictive than the GPL, that is, it has to be GPL-
compatible.  It doesn't have to be the GPL itself.)

> I had similar, though less
> strenuous, objections to v2, but I believed the introduction of the
> LGPL was a satisfactory compromise.

The LGPL's purpose is different from the GPL's.  The GPL's purpose is
to give free software a competitive advantage over non-free software.
As Kent Pitman noted, the GPL is not a neutral player, and in this
case, too, the FSF has never claimed it to be.  The GPL has an openly
expressed political purpose, not a purely technical one.  It doesn't
make sense to attack it for that.

That's, after all, the difference between free software and open-
source software.  The terms seem to mean the same thing at first
glance (and purely technically, they do), but the former is much more
political in nature than the latter.

>  v3 does not recognize LGPL

I'm not sure I understand.  There's an LGPLv3, too.

> and
> specifically prohibits use in combination with previous GPL versions
> or with other "free" licenses.

As far as I know, that's inaccurate.  The GPLv2 prohibits its use
together with the GPLv3, not the other way round.  All in all, if I
remember correctly, the GPLv3 is _more_ compatible with other licenses
than the GPLv2.  Take the AGPL, for instance, which was previously
incompatible with any version of the GPL but is now being revised to
be compatible with the GPLv3, which has specific means of ensuring
compatibility with the AGPL in place.

Not to mention that all software released under the GNU GPL �version 2
or, at your option, any later version� is trivially compatible with
the GPLv3 (which probably applies to the vast majority of GPL'd code).

~ Matthias
From: Matthias Benkard
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <1191172222.009700.13950@g4g2000hsf.googlegroups.com>
I claimed:
> The GPLv3 isn't that infectious.

Actually, I'm not so sure about this, but even if I'm wrong, it
doesn't matter, as you can still dual-license your work, which has
essentially the same effect.

~ Matthias
From: George Neuner
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <8jb3g31mnf1qootmg43mocmjhf6gqgl45e@4ax.com>
On Sun, 30 Sep 2007 09:27:43 -0700, Matthias Benkard
<··········@gmail.com> wrote:

>> For the record, I am against the GPL - particularly v3.  I support the
>> idea of "no strings" software, but I object to approach the FSF has
>> taken.
>
>The GPLv3 is not a ``not strings'' license. 

I didn't say it was.  In fact I said the opposite in the part you
clipped.


>> I particularly think the highly infectious nature of the
>> current GPLv3 is poorly considered.
>
>The GPLv3 isn't that infectious.  Yes, you have to open-source all
>derivative works of GPLv3-licensed products, but, in general, you do
>not have to GPL them.  (You do have to GPL your customised versions of
>GPL'd software, but if you use a GPL'd piece of software as a library,
>the only thing you have to do is release your code with a license that
>is no more restrictive than the GPL, that is, it has to be GPL-
>compatible.  It doesn't have to be the GPL itself.)

GPLv3 appears to be much more infectious than previous versions.  

Previous GPL versions affected only the module that directly
integrated the licensed code - for example, if you created a DLL using
GPL'd code, under GPLv2 only that DLL would be GPL'd.  

Under GPLv3, it is not clear that the program using the DLL is not
affected.

Section 1 says,
"  The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities.  However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work.  For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work."

To my reading, that says a program which invokes a GPL'd DLL becomes
GPL'd itself.


Now section 5 specifically exempts "aggregates" of separate modules,
but the language does not resolve the issue of whether a program which
invokes a GPL'd DLL may be considered separate from it.  In fact it
further confuses the issue.

Section 5 says,
"  A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit.  Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate."

To my reading that is double-speak.  It says that independent parts of
an "aggregate" are exempted, but then defines "aggregate" so that it
can only apply when the whole of the distribution is licensed no more
restrictively than any of the licensed components.  While it doesn't
specifically say "more restrictively than this [GPLv3] license", since
GPLv3 is (currently) the most restrictive "free" license around, the
implication is that any GPLv3'd software included anywhere in the
distribution puts the entire distribution under GPLv3.


>> I had similar, though less
>> strenuous, objections to v2, but I believed the introduction of the
>> LGPL was a satisfactory compromise.
>
>The LGPL's purpose is different from the GPL's.

Duh.


>>  v3 does not recognize LGPL
>
>I'm not sure I understand.  There's an LGPLv3, too.

GPLv2'd modules could coexist in a distribution with LGPL'd modules.
Under GPLv3, it is unclear whether that is still true (see above).


>> [GPLv3] specifically prohibits use in combination with previous GPL
>> versions or with other "free" licenses.

>As far as I know, that's inaccurate.  The GPLv2 prohibits its use
>together with the GPLv3, not the other way round.

Being written later, the onus is on v3 to be compatible with v2.  The
FSF chose not to make it so.  

Honestly, reading the language, I can't figure out what is the actual
incompatibility between v2 and v3 (unless it is the application to
aggregates which is vague in v3).  The FSF claims the two licenses
can't be combined and so users have to respect that.


>  All in all, if I
>remember correctly, the GPLv3 is _more_ compatible with other licenses
>than the GPLv2.  Take the AGPL, for instance, which was previously
>incompatible with any version of the GPL but is now being revised to
>be compatible with the GPLv3, which has specific means of ensuring
>compatibility with the AGPL in place.
>
>Not to mention that all software released under the GNU GPL �version 2
>or, at your option, any later version� is trivially compatible with
>the GPLv3 (which probably applies to the vast majority of GPL'd code).

GPL is explicitly only compatible with other licenses that allow
releasing the combination of licensed modules under GPL.

One might think "free" licenses are compatible with GPL because they
place no conditions on inclusion of licensed material in a finished
work.  However, under the terms of GPL, when used in combination with
another license, GPL supersedes the other license and may rescind
rights explicitly or implicitly conferred by the other license without
agreement or consideration.  The net effect is as if other licenses
don't exist.  There is a term for this in contract law, but I can't
think of it just now.

This was technically true of GPLv2 as well, but v3 clarified the
language to make it explicit.  And in GPLv2 it applied narrowly to a
single program ... v3 appears to try to extend it to the whole
distribution.

George
--
for email reply remove "/" from address
From: Matthias Benkard
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <1191332639.092295.152470@k79g2000hse.googlegroups.com>
> >> For the record, I am against the GPL - particularly v3.  I support the
> >> idea of "no strings" software, but I object to approach the FSF has
> >> taken.
> >
> >The GPLv3 is not a ``not strings'' license.
>
> I didn't say it was.  In fact I said the opposite in the part you
> clipped.

I assumed ``approach'' to refer to ``the idea of `no strings'
software''.  Sorry.


> GPLv3 appears to be much more infectious than previous versions.
>
> Previous GPL versions affected only the module that directly
> integrated the licensed code - for example, if you created a DLL using
> GPL'd code, under GPLv2 only that DLL would be GPL'd.

Plus all derived works.  That includes programs linking against the
library (not their source code, though, as far as I understand, but
that is kind of beside the point, because the GPL only really
restricts the distribution of binaries anyway).


> To my reading, that says a program which invokes a GPL'd DLL becomes
> GPL'd itself.

Yes.  That has been the difference between the GPL and the LGPL all
along.


> Now section 5 specifically exempts "aggregates" of separate modules,
> but the language does not resolve the issue of whether a program which
> invokes a GPL'd DLL may be considered separate from it.  In fact it
> further confuses the issue.

http://www.gnu.org/licenses/gpl-faq.html#MereAggregation


> To my reading that is double-speak.  It says that independent parts of
> an "aggregate" are exempted, but then defines "aggregate" so that it
> can only apply when the whole of the distribution is licensed no more
> restrictively than any of the licensed components.  While it doesn't
> specifically say "more restrictively than this [GPLv3] license", since
> GPLv3 is (currently) the most restrictive "free" license around, the
> implication is that any GPLv3'd software included anywhere in the
> distribution puts the entire distribution under GPLv3.

I understand it as saying that the aggregate may not violate the GPL.
A GNU/Linux distribution, for example, must provide the source code of
the GPL'd components it contains as per the GPL, even if some parts of
the distribution aren't GPL'd.  That's not surprising. :)


> GPLv2'd modules could coexist in a distribution with LGPL'd modules.
> Under GPLv3, it is unclear whether that is still true (see above).

As the LGPL is more permissive than the GPL, I don't see any problem.


> Being written later, the onus is on v3 to be compatible with v2.  The
> FSF chose not to make it so.
>
> Honestly, reading the language, I can't figure out what is the actual
> incompatibility between v2 and v3 (unless it is the application to
> aggregates which is vague in v3).  The FSF claims the two licenses
> can't be combined and so users have to respect that.

The GPLv3 is more restrictive than the GPLv2 (it wouldn't make any
sense if weren't, because in that case, it wouldn't be needed in the
first place), while the GPLv2 prohibits combining GPLv2'd code with
any code under a more restrictive license than itself.



> GPL is explicitly only compatible with other licenses that allow
> releasing the combination of licensed modules under GPL.
>
> One might think "free" licenses are compatible with GPL because they
> place no conditions on inclusion of licensed material in a finished
> work.  However, under the terms of GPL, when used in combination with
> another license, GPL supersedes the other license and may rescind
> rights explicitly or implicitly conferred by the other license without
> agreement or consideration.  The net effect is as if other licenses
> don't exist.  There is a term for this in contract law, but I can't
> think of it just now.
>
> This was technically true of GPLv2 as well, but v3 clarified the
> language to make it explicit.  And in GPLv2 it applied narrowly to a
> single program ... v3 appears to try to extend it to the whole
> distribution.

As far as I understand it, a derived work is automatically GPL'd as
soon as one component is GPL'd, _but_ the individual parts may still
be extracted and distributed as per their original licenses.  An
aggregate isn't affected by the GPL at all.

~ Matthias
From: George Neuner
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <tao4g31n5u3ddhp8155fvdglhb10fnh3c6@4ax.com>
On Tue, 02 Oct 2007 06:43:59 -0700, Matthias Benkard
<··········@gmail.com> wrote:

>> GPLv3 appears to be much more infectious than previous versions.
>>
>> Previous GPL versions affected only the module that directly
>> integrated the licensed code - for example, if you created a DLL using
>> GPL'd code, under GPLv2 only that DLL would be GPL'd.
>
>Plus all derived works.  That includes programs linking against the
>library (not their source code, though, as far as I understand, but
>that is kind of beside the point, because the GPL only really
>restricts the distribution of binaries anyway).

But the meaning of "derived work" has expanded in v3.  According to my
IP attorneys, under GPLv2, the boundary of "derived work" was the
least set of independently built modules that did not further expose
the API of the GPL'd work.  In v3, "derived work" has been expanded to
include the entire program.


>> To my reading [of section 1.4 of GPLv3], that says a program 
>> which invokes a GPL'd DLL becomes GPL'd itself.
>
>Yes.  That has been the difference between the GPL and the LGPL all
>along.

You missed the point (and snipped the license text I was commenting
on).

At issue was the transitive application of the GPL license.  GPL'd
code used in a DLL caused the DLL to also be GPL'd, but under previous
versions of the GPL license, the license may or may not have applied
to a program using the DLL.  Under GPLv3, a program using a
transitively GPL'd DLL is GPL'd.  That is a non-neglible difference
between v3 and previous versions.


>> Now section 5 specifically exempts "aggregates" of separate modules,
>> but the language does not resolve the issue of whether a program which
>> invokes a GPL'd DLL may be considered separate from it.  In fact it
>> further confuses the issue.
>
>http://www.gnu.org/licenses/gpl-faq.html#MereAggregation
>
>
>> To my reading that is double-speak.  It says that independent parts of
>> an "aggregate" are exempted, but then defines "aggregate" so that it
>> can only apply when the whole of the distribution is licensed no more
>> restrictively than any of the licensed components.  While it doesn't
>> specifically say "more restrictively than this [GPLv3] license", since
>> GPLv3 is (currently) the most restrictive "free" license around, the
>> implication is that any GPLv3'd software included anywhere in the
>> distribution puts the entire distribution under GPLv3.
>
>I understand it as saying that the aggregate may not violate the GPL.
>A GNU/Linux distribution, for example, must provide the source code of
>the GPL'd components it contains as per the GPL, even if some parts of
>the distribution aren't GPL'd.  That's not surprising. :)

No, it goes farther than that.  Section 5 of GPLv3 specifically says
that independent modules of an "aggregate" distribution may be
exempted from GPL, but it defines "aggregate" in such a way as to
preclude any distribution that does not wholly conform to GPL.

IMO, it remains double-speak.


>The GPLv3 is more restrictive than the GPLv2 (it wouldn't make any
>sense if weren't, because in that case, it wouldn't be needed in the
>first place), while the GPLv2 prohibits combining GPLv2'd code with
>any code under a more restrictive license than itself.

Actually, GPLv2 does not say that - if you think it does, I would
appreciate a cite (from the license itself, not a FAQ interpreting the
license).  Furthermore, the FSF has not yet clarified the source of
the stated incompatibility between v2 and v3.


>> GPL is explicitly only compatible with other licenses that allow
>> releasing the combination of licensed modules under GPL.
>>
>> One might think "free" licenses are compatible with GPL because they
>> place no conditions on inclusion of licensed material in a finished
>> work.  However, under the terms of GPL, when used in combination with
>> another license, GPL supersedes the other license and may rescind
>> rights explicitly or implicitly conferred by the other license without
>> agreement or consideration.  The net effect is as if other licenses
>> don't exist.  There is a term for this in contract law, but I can't
>> think of it just now.
>>
>> This was technically true of GPLv2 as well, but v3 clarified the
>> language to make it explicit.  And in GPLv2 it applied narrowly to a
>> single program ... v3 appears to try to extend it to the whole
>> distribution.
>
>As far as I understand it, a derived work is automatically GPL'd as
>soon as one component is GPL'd, _but_ the individual parts may still
>be extracted and distributed as per their original licenses.  An
>aggregate isn't affected by the GPL at all.

Read section 5 again ... the ambiguity of the license regarding
aggregation is what I've been talking about through half of this
exchange.

George
--
for email reply remove "/" from address
From: Matthias Benkard
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <1191353406.949714.31200@y42g2000hsy.googlegroups.com>
> But the meaning of "derived work" has expanded in v3.  According to my
> IP attorneys, under GPLv2, the boundary of "derived work" was the
> least set of independently built modules that did not further expose
> the API of the GPL'd work.  In v3, "derived work" has been expanded to
> include the entire program.

Ah, I see.  Thanks for clarifying this.

So what you're saying is this (please correct me if I'm mistaken):
Assume module A is GPL'd.  Module B uses module A, so the combination
of module A and module B must be GPL'd, although module B itself
might, for instance, be distributed under the MIT license.  Then the
GPL does not apply to module C, which uses module B but does not
directly use module A, as long as A's API is not exposed in B's API.

Right?  I didn't know that the GPLv3 defined derivation differently
from the GPLv2.


> No, it goes farther than that.  Section 5 of GPLv3 specifically says
> that independent modules of an "aggregate" distribution may be
> exempted from GPL, but it defines "aggregate" in such a way as to
> preclude any distribution that does not wholly conform to GPL.

Yes, the distribution must _conform_ to the GPL, but that is kind of
obvious.  It doesn't mean that it has to be GPL'd, though.


> >The GPLv3 is more restrictive than the GPLv2 (it wouldn't make any
> >sense if weren't, because in that case, it wouldn't be needed in the
> >first place), while the GPLv2 prohibits combining GPLv2'd code with
> >any code under a more restrictive license than itself.
>
> Actually, GPLv2 does not say that - if you think it does, I would
> appreciate a cite (from the license itself, not a FAQ interpreting the
> license).  Furthermore, the FSF has not yet clarified the source of
> the stated incompatibility between v2 and v3.

>From the GPLv2:

�2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

...

b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any part
thereof, to be licensed as a whole at no charge to all third parties
under the terms of this License.�

This contradicts the GPLv3, which imposes restrictions on the
distributor that the GPLv2 doesn't, which makes it impossible to
license the derived work ``under the terms of this License''.

This is clarified further down: �But when you distribute the same
sections as part of a whole which is a work based on the Program, the
distribution of the whole must be on the terms of this License, whose
permissions for other licensees extend to the entire whole, and thus
to each and every part regardless of who wrote it.�

Note the term ``permissions''.  It's what makes the GPLv2 incompatible
with the GPLv3.


> >An aggregate isn't affected by the GPL at all.
>
> Read section 5 again ... the ambiguity of the license regarding
> aggregation is what I've been talking about through half of this
> exchange.

�... is called an "aggregate" if the compilation and its resulting
copyright are not used to limit the access or legal rights of the
compilation's users beyond what the individual works permit.�

I read that as meaning that neither the whole aggregate nor the other
parts of the aggregate may be used by the distributor to circumvent
the GPL (or any other individual licenses of parts of the aggregate)
for those parts of the aggregate that are GPL'd, for example by
ensuring that only the vendor-supplied versions of the GPL'd programs
may be run (via code signing, for instance) or by some means of hiding
the source code, binaries or license files.  It doesn't say anything
about the licensing of those other parts, only about their use.

What it does say about licensing is, in essence, that you can't hide
GPL'd code behind other code except if that code is also GPL-
compatible, and you can't give the aggregate as a whole licensing
restrictions that contradict the GPL.  (So you can't, for example,
state in your LICENSE file: ``libreadline is an integral part of this
distribution which you may never use separately, or else we sue
you.'')  It does not directly apply to the other parts of the
aggregate, merely to the aggregate itself.

That's my understanding of it, at least.

~ Matthias
From: George Neuner
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <44l7g31jveml0tm98tcofg2a46h44otnt5@4ax.com>
On Tue, 02 Oct 2007 12:30:06 -0700, Matthias Benkard
<··········@gmail.com> wrote:

>> But the meaning of "derived work" has expanded in v3.  According to my
>> IP attorneys, under GPLv2, the boundary of "derived work" was the
>> least set of independently built modules that did not further expose
>> the API of the GPL'd work.  In v3, "derived work" has been expanded to
>> include the entire program.
>
>Ah, I see.  Thanks for clarifying this.
>
>So what you're saying is this (please correct me if I'm mistaken):
>Assume module A is GPL'd.  Module B uses module A, so the combination
>of module A and module B must be GPL'd, although module B itself
>might, for instance, be distributed under the MIT license.  Then the
>GPL does not apply to module C, which uses module B but does not
>directly use module A, as long as A's API is not exposed in B's API.

>Right?  I didn't know that the GPLv3 defined derivation differently
>from the GPLv2.

Under GPLv2 it depends on *how* B uses A.

If B is statically linked to A (remember that static linking can also
apply to use of DLLs), then B must be GPL'd if A is GPL'd.  However,
if A is a DLL and B dynamically uses A - that is, the implementation
of B uses dlsym() (Unix/Linux) or GetProcAddress() (Windows) so that
any DLL having the same exported API as A could be used
interchangeably - then B is independent of A.  

If A and B are separate executables - peers or client/server - then B
is independent of A.


GPLv3 appears to recognize only the separate executable case as being
independent because under section 1, only "System Libraries", as
defined, are specifically excluded as source.  However, in the case of
dynamic DLL use (dlsym() et al), there is a language conflict between
the definitions of "source" and "corresponding source" which may
potentially allow this case to also be considered independent.  The
lawyers should asked for a technical review.


>> No, it goes farther than that.  Section 5 of GPLv3 specifically says
>> that independent modules of an "aggregate" distribution may be
>> exempted from GPL, but it defines "aggregate" in such a way as to
>> preclude any distribution that does not wholly conform to GPL.
>
>Yes, the distribution must _conform_ to the GPL, but that is kind of
>obvious.  It doesn't mean that it has to be GPL'd, though.

A distribution that qualifies as an "aggregate" doesn't have to be
GPL'd.  But the definition of "aggregate" in GPLv3 is ambiguous - it
potentially _could_ require that *every* independent module, even
those which are not GPL'd, qualify as being releasable under GPL.
That leaves out many potential distributions.

Take, for example, an application which consists of a client and a
server (perhaps a daemon), one of which is GPL'd and the other uses a
commercial library whose license prohibits redistribution, reverse
engineering, etc. of any component of the "system" (where "system" is
not restricted to mean "program")[*].  Such a  combination may not be
an "aggregate" under terms of GPLv3 and so the GPL'd program might not
be releasable in such combination.

[*] There are a lot of poorly worded license agreements.  Developers
really need some legal training to spot agreements that may cause
trouble later.


The meaning of "... the compilation and its resulting copyright are
not used to limit the access or legal rights of the compilation's
users beyond what the individual works permit ..." is ambiguous (see
below).  FSF needs to clarify the language.



>> >The GPLv3 is more restrictive than the GPLv2 (it wouldn't make any
>> >sense if weren't, because in that case, it wouldn't be needed in the
>> >first place), while the GPLv2 prohibits combining GPLv2'd code with
>> >any code under a more restrictive license than itself.
>>
>> Actually, GPLv2 does not say that - if you think it does, I would
>> appreciate a cite (from the license itself, not a FAQ interpreting the
>> license).  Furthermore, the FSF has not yet clarified the source of
>> the stated incompatibility between v2 and v3.
>
>>From the GPLv2:
>
>�2. You may modify your copy or copies of the Program or any portion
>of it, thus forming a work based on the Program, and copy and
>distribute such modifications or work under the terms of Section 1
>above, provided that you also meet all of these conditions:
>
>...
>
>b) You must cause any work that you distribute or publish, that in
>whole or in part contains or is derived from the Program or any part
>thereof, to be licensed as a whole at no charge to all third parties
>under the terms of this License.�

v3 says:
    c) You must license the entire work, as a whole, under this
    License to anyone who comes into possession of a copy.  This
    License will therefore apply, along with any applicable section 7
    additional terms, to the whole of the work, and all its parts,
    regardless of how they are packaged.  This License gives no
    permission to license the work in any other way, but it does not
    invalidate such permission if you have separately received it.

The last sentence does not contradict v2 but simply clarifies the
intent.

>This contradicts the GPLv3, which imposes restrictions on the
>distributor that the GPLv2 doesn't, which makes it impossible to
>license the derived work ``under the terms of this License''.

I'm looking at both licenses side by side.  There's a lot of
additional verbiage in v3, but most of it is definition of terms,
clarification of v2 language and example.  AFAICT, v3 places no
additional restrictions on distributors that were not also in v2.


>This is clarified further down: �But when you distribute the same
>sections as part of a whole which is a work based on the Program, the
>distribution of the whole must be on the terms of this License, whose
>permissions for other licensees extend to the entire whole, and thus
>to each and every part regardless of who wrote it.�

And v3 has the ambiguous clause concerning aggregates which could be
read as saying the same thing.



>> >An aggregate isn't affected by the GPL at all.
>>
>> Read section 5 again ... the ambiguity of the license regarding
>> aggregation is what I've been talking about through half of this
>> exchange.
>
>�... is called an "aggregate" if the compilation and its resulting
>copyright are not used to limit the access or legal rights of the
>compilation's users beyond what the individual works permit.�
>
>I read that as meaning that neither the whole aggregate nor the other
>parts of the aggregate may be used by the distributor to circumvent
>the GPL (or any other individual licenses of parts of the aggregate)
>for those parts of the aggregate that are GPL'd, for example by
>ensuring that only the vendor-supplied versions of the GPL'd programs
>may be run (via code signing, for instance) or by some means of hiding
>the source code, binaries or license files.  It doesn't say anything
>about the licensing of those other parts, only about their use.

I agree in principle with your interpretation.  My problem is with the
phrase "resulting copyright" and the stipulation that it not be used
"to limit the access or legal rights of the compilation's users beyond
what the individual works permit."  Since one or more of the
individual works is presumed to be GPL'd, this language suggests that
the "resulting copyright" can be no more restrictive than the GPL ...
else it would limit beyond GPL.  In simple terms, that amounts to a
requirement that no component license can be more restrictive than GPL
with respect to the compilation as a whole.  See the problem example
above.

I'm not a lawyer, but I come from a family of them.  I worked as a
paralegal while in college.  It makes me very sensitive to language
and the potential for misunderstanding.  I see things in seemingly
simple language that can and will get people into trouble if a dispute
about it gets to a court.

I'm also German/Irish.  I have an aversion to ambiguity (why I'm not a
lawyer myself), but I'm happy to argue about it until the beer runs
out or the FSF clarifies the language I object to.

George
--
for email reply remove "/" from address
From: ···@telent.net
Subject: Re: (not about) Re: How To Learn Lisp
Date: 
Message-ID: <47014d04$0$8420$db0fefd9@news.zen.co.uk>
Kent M Pitman wrote:
> ...calling such 
> restrictions "freedom" is really very 1984.  
> 
> And it teaches bad civics.  It encourages people to take things by
> their label and to question neither the content nor the case-by-case
> effect.  Rather it encourages one to just to accept as a lemma that 
> a nice simple name implies a uniformly good and reliably effective
> and unchallengeably correct effect.

Not finding anything to disagree with in the rest of your post, but this 
bit made me smile.  I'd suggest that the GPL and its siblings has 
sparked _far_ more examination of licence texts and copyright issues in 
general than would have been the case if it didn't exist - and that in 
some ways the effect has actually been to make life easier for software 
users.  Once upon a time it was common for people to write their own 
licences and get them badly wrong (e.g. "this is public domain and you 
are not allowed to sell it") - these days we've all had our awareness 
raised and tend to think about what we're doing a bit more.  And the 
effect is that most authors choose an off-the-shelf licence ((L)GPL 
version X, MIT, BSD, Creative Commons, PD[*], or "hands off my stuff") 
which makes it much more obvious just what encumbrances they wish to 
impose on users.


-dan

[*] yes, I know this isn't a licence as such, but it's similar insofar 
as  it describes a (empty, iirc) set of conditions on the use of works 
it applies to.
From: Timofei Shatrov
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <46f1095d.183052775@news.readfreenews.net>
On Tue, 18 Sep 2007 19:44:05 +0200, Carlo Capocasa <······@carlocapocasa.com>
tried to confuse everyone with this message:

>
>Feedback appreciated!
>
>--
>
>HOW TO LEARN LISP
>

Nice troll. Congratulations!

-- 
|Don't believe this - you're not worthless              ,gr---------.ru
|It's us against millions and we can't take them all... |  ue     il   |
|But we can take them on!                               |     @ma      |
|                       (A Wilhelm Scream - The Rip)    |______________|
From: Tim X
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <87odfzsa13.fsf@lion.rapttech.com.au>
Carlo Capocasa <······@carlocapocasa.com> writes:

> A quick discussion in the previous 'Learning Lisp from Scratch'
> thread lead me to spontaneously write a short article for newbies on
> how to get started with lisp less painfully.
>
> Feedback appreciated!
>
> --
>
> HOW TO LEARN LISP
>
> Step 1: When you see Emacs, turn around and run
>

Extremely poor advice which I think is based on FUD rather than anything else.

> I'm new to this fantastic new language called lisp(1), and I decided
> the best person to teach someone new is someone new. Only someone
> new can truly understand the unique challanges of being new. To a
> young man fresh in the dating game, the advice of a happily married
> elder to treat a woman with care, affection and respect will
> probably yield a lot of awquard situations until he has overcome his
> fear of rejection, while his friend yelling "You got to put the
> MOOOOOOVES on those honeys!" might help him to do just that. Before
> I can go on to uncover some of the miracles our elders have promised
> me lie to be discovered in Lisp, I need to overcome a few very
> practical obstacles that have absolutely nothing to do with the Way
> of Lisp; but overcoming them will expose me to the Way of Lisp, and
> I'm sure that will be worth the trouble. Writing this, I'd like to
> bring some of you along.
>

More poor advice IMO. Essentially your saying you should ignore the advice
of people who have already gone through the pain. While its all too true
that the young, through a combination of impatience and arrogance, are
destined to repeat the mistakes of those who have already been through the
process, thats not the same as telling them to actively ignore what more
experienced people have to say. Not all young men found treating women
appropriately an impediment to their dating nor did they find it created
any more awkward situations than putting 'MOOOOOOVES on those honeys!' that
resulted in either a slap or a drink in the face.

> An Integrated Development environment is a program that you can fire
> up and start doing something useful with a new language immediately.

Since when is that a definition of an IDE? 

> Lisp has one of those, and it's called 'Slime'. (Charming, isn't
> it?). Unfortunately, it's built on a beast of a text editor called
> Emacs which is supposed to be all-powerful. I wouldn't doubt it is
> extremely versatile and useful, because it has evolved through years
> of being used for hard-core hacking; loads and loads of the most
> valuable Software today must have been created with it. Each and
> every one of us undoubtedly owe a great debt to Emacs.
> Unfortunately, that doesn't make it any easier to learn to use when
> you've grown up with the heavily GUI-laden OSes of the 90s and 00s.
> So you're going to learn to use an obscure text-editor that follows
> 70s UNIX paradigms rather than 90s Desktop paradigms at the same
> time as you're learning an obscure programming language? There's got
> to be a better way to do this.

this is just ignorant rubbish  Have you actually tried using Emacs for more
than 5 minutes or are you basing this on the FUD you have heard about the
editor? Tell me what features are available in any of the GUI editors you
claim new users are accustomed to that is not in emacs? Lets just consider what you get in a current emacs -

- Menu bar with all the normal menu entries you get in GUI editors
- Tool bar that you get in GUI editors
- Full mouse support, essential for GUI uses who have never mastered a
  keyboard
- Support for various coding systems
- Support for displaying graphics, such as tiff, gif, png, jpeg etc
- support for sound

I guess the nightmare learning curve you imply that makes it such a beast
must be because you need to learn some weird incantation or key binding in
order to use the editor - lets see

Maybe you need to be in some special mode in order to enter text? No, its
not VI

Maybe you need to know weird unfamiliar key bindings in order to cut and
paste text? No, you can just use the mouse and transient mark mode (and
option in the options window and if you like the CUA type key bindings for
cut, copy and paste, you can choose that from the options window as well
while your there).

Maybe you need weird key bindings to move around in the buffer? No, arrow
keys work as expected, mouse works as expected. 

Maybe you need to know obscure or weird commands to do find and replace?
No, its there in the menu too.

Maybe you need to know weird and obscure commands to enter newlines,
indent, get line wrapping etc. No, basic editing works as
expected. Automatic line breaking etc, can be turned on from the options
menu, along with most other things someone new to emacs may want
initially. 

Maybe the problem is that you need to learn elisp in order to configure the
editor before you can use it? No, basic editor functionality generally
works 'out of the box'. Even if it didn't, the vast majority of
configuration can be done via customize (available from the menus) and
supporting radio buttons, check boxes, menus etc. No need to know elisp.

I'm not saying that emacs can't be large, complex and require significant
effort to learn to use it to its fullest. It is a very powerful editor and
as is common with powerful things, they can get complex when you want to
take advantage of that power. However, nobody says you have to take
advantage of it or that you need to have all this knowledge before you can
use it as a basic editor. 

Any IDE involves a learning curve (BTW, your setup is definetly not an
IDE). The learning curve for basic emacs operation is no worse than any
other editor. The learning curve for becoming an advanced emacs user is
certainly steep, but the learning curve to be come an advnaced user of any
system is usually steep and there is a big difference between being and
advanced user and a basic user. There is some learning involved in getting
to use SLIME with emacs, but all the basic functionality is available from
menus. Bottom line, emacs learning curve can be what you want - steep or
gentle, done all at once or over an extended period. Basically, its just a
normal editor with a lot of optional bells and whistles - how quickly or
soon you want to start learning how to use those bells and whistles is up
to the individual user.

>
> My approach in learning LISP has been simpler than inheriting all
> the baggage at once. It is not about cloning what our elders are
> doing now, but developing from our own situation just like they did
> when they were young.

Why do you asume thats how we did it? Why discount the developments and
improvements that have happened to make things easier? Why assume there is
all this baggage? 

I personally don't have an issue with how you have gone about
things. However, I get the impression you have made decissions based on FUD
rather than on any real information. It seems like you had heard others say
emacs was hard, that slime was difficult to learn and that getting to grips
with a lisp IDE was complex and therefore made the decision not to look at
it for fear it would distract you from what you wanted to do - play with
CL. If this is the case, it is unfortunate you have been misled in this
way. However, it is unacceptable to potentially allow others to be
similarly misled without some attempt to highlight some of these
misconceptions. 

Tim

-- 
tcross (at) rapttech dot com dot au
From: gavino
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1190669995.628768.172680@22g2000hsm.googlegroups.com>
On Sep 18, 10:44 am, Carlo Capocasa <······@carlocapocasa.com> wrote:
> A quick discussion in the previous 'Learning Lisp from Scratch'
> thread lead me to spontaneously write a short article for newbies on
> how to get started with lisp less painfully.
>
> Feedback appreciated!
>
> --
>
> HOW TO LEARN LISP
>
> Step 1: When you see Emacs, turn around and run
>
> I'm new to this fantastic new language called lisp(1), and I decided
> the best person to teach someone new is someone new. Only someone
> new can truly understand the unique challanges of being new. To a
> young man fresh in the dating game, the advice of a happily married
> elder to treat a woman with care, affection and respect will
> probably yield a lot of awquard situations until he has overcome his
> fear of rejection, while his friend yelling "You got to put the
> MOOOOOOVES on those honeys!" might help him to do just that. Before
> I can go on to uncover some of the miracles our elders have promised
> me lie to be discovered in Lisp, I need to overcome a few very
> practical obstacles that have absolutely nothing to do with the Way
> of Lisp; but overcoming them will expose me to the Way of Lisp, and
> I'm sure that will be worth the trouble. Writing this, I'd like to
> bring some of you along.
>
> An Integrated Development environment is a program that you can fire
> up and start doing something useful with a new language immediately.
> Lisp has one of those, and it's called 'Slime'. (Charming, isn't
> it?). Unfortunately, it's built on a beast of a text editor called
> Emacs which is supposed to be all-powerful. I wouldn't doubt it is
> extremely versatile and useful, because it has evolved through years
> of being used for hard-core hacking; loads and loads of the most
> valuable Software today must have been created with it. Each and
> every one of us undoubtedly owe a great debt to Emacs.
> Unfortunately, that doesn't make it any easier to learn to use when
> you've grown up with the heavily GUI-laden OSes of the 90s and 00s.
> So you're going to learn to use an obscure text-editor that follows
> 70s UNIX paradigms rather than 90s Desktop paradigms at the same
> time as you're learning an obscure programming language? There's got
> to be a better way to do this.
>
> My approach in learning LISP has been simpler than inheriting all
> the baggage at once. It is not about cloning what our elders are
> doing now, but developing from our own situation just like they did
> when they were young.
>
> As for starting to work with LISP, I suggest you simply download one
> of the distributions without any IDE attached to it. I used Steel
> Bank Common Lisp because it felt fresh to me. Be sure to download
> the binary version, unpack it somewhere, and open its executable in
> a terminal. This will give you a Lisp prompt where you can start
> typing in what you will be learning in all the tutorials that have
> to do with the language itself, and finding out what you typed returns.
>
> When you've done a little typing, you can start opening a text
> editor you're comfortable with, and saving it to "something.lisp" in
> the same directory you started Lisp executable from. You can then
> load what you wrote into Lisp by typing (load "something.lisp").
>
> For your pure pleasure, you can even compile something.lisp into an
> executable. With SBCL, this is what to paste into your terminal:
>
> (require 'asdf)
> (require :sb-executable)
> (compile-file "something")
> (sb-executable:make-executable "something" "something.fasl")
>
> Of course, it is always a good idea to let the first something you
> compile be a file containing this:
>
> (format t "Hello, World!~%")
>
> Now that you can play with real code, you're ready to start learning
> the language.
>
> I would recommend starting with this book:
>
> http://franz.com/support/documentation/6.2/ansicl/ansicl.htm

I noticed that Paul Graham used the vi editor.  So if the code you
write does what you want, and your parens 'match' and other syntax is
ok, it seem to not matter what editor you use.  More important are the
details of how to load existing definitions, 'macros', and other
libraries when you come back to your code so as to be able to build
upon your work so far.  I myself am going though some of the common
lisp hyperspec as I read touretsky's book to find this information.
From: ············@gmail.com
Subject: Re: How To Learn Lisp
Date: 
Message-ID: <1191662370.175665.306730@19g2000hsx.googlegroups.com>
This sums up Stallman's attitude about software:

"Would it be ethical to steal lines of unfree code from companies like
Microsoft and Oracle and use them to create a "free" version of that
program?

It would not be unethical, but it would not really work, since if
Oracle ever found out, it would be able to suppress the use of that
free software. The reason for my conclusion is that making a program
proprietary is wrong. To liberate the code, if it is possible, would
not be theft, any more than freeing a slave is theft (which is what
the slave owner would surely call it)."

http://www.forbes.com/2006/03/21/gnu-gplv3-linux-cz_dl_0321stallman2.html

Now of course we could just call Stallman a wackjob and call it a
night, but unfortunately he doesn't really believe that crap he
spews.