From: vin
Subject: How to proceed?
Date: 
Message-ID: <kzfn7.98803$tb.10157854@news02.optonline.net>
A few months ago I started studying LISP on my own.  I read Touretzky's 
Gentle introduction and even did most of the exercises.  However, I still 
feel I know very little about programming in LISP.  Unfortunately, at my 
work I couldn't find any way to use LISP, so my progress slowed down.

I continued studying some other books with hope to learn more: however, I 
started feeling that I really need to work on some good and usefull 
application in order to improve.  I searched the web to find some ongoing 
projects to join and contribute to, but couldn't find any.

It would be very helpfull if somebody can give me a piece of advice .
Thanks
Vin

From: Friedrich Dominicus
Subject: Re: How to proceed?
Date: 
Message-ID: <871yleb10w.fsf@frown.here>
vin <·········@hotmail.com> writes:

> A few months ago I started studying LISP on my own.  I read Touretzky's 
> Gentle introduction and even did most of the exercises.  However, I still 
> feel I know very little about programming in LISP.  Unfortunately, at my 
> work I couldn't find any way to use LISP, so my progress slowed down.
> 
> I continued studying some other books with hope to learn more: however, I 
> started feeling that I really need to work on some good and usefull 
> application in order to improve.  I searched the web to find some ongoing 
> projects to join and contribute to, but couldn't find any.#
Well on the homepage of cl-http there are a bunch of suggestions.

But why do you need someone to tell you what to do? I suggest you read
PAIP and do some excercises, you can read Object-Oriented Programming
in Lisp and learn more about CLOS you can check out www.alu.org and
look for LispSoftware, you can discussions here to find out what
people might be intersted in (very actual the regular expression
stuff) you can write a small software on you own,e g. a software to
manage you records, books, you can look into CLISP and CMUCL to check
what is missing there. I really know so many more problems that it's
hard to begin just because one does not know what's more "important"

Regards
Friedrich
From: George Demmy
Subject: Re: How to proceed?
Date: 
Message-ID: <wu1yldn699.fsf@hades.layton-graphics.com>
Hi Vin,

Here are some newbie to newbie musings that might inspire the Big Guns
of Lisp Hacking to jump in (or horrify them so greatly that they are
compelled to flame us to cinders). My road to lisp was paved by a "do
this or else!"  assignment in autocad. I had never used autocad, but I
had to hack something to manipulate lots of objects in lots
(~1.2x10^6) of different drawings in batch. So, I started diddling
with autolisp, writing some really crappy lisp code. But then it hit
me... Caca Fuego! This is full blown programming language to which you
have full access at any time. It didn't take long to find Reini
Urban's Lisp (nice!), and I was knocking out all of these nifty
programs to help our "production folks" do nifty things in autocad.

The next epiphany blinded me when I realized that emacs is the same
thing. Now, I had been using Emacs for years, but only in a miserable,
pathetic way that *earned* my breatheren and sisteren the title:
luser. One of the big regrets of my computer-oriented life was to miss
what emacs was all about for so many years. Emacs is a little lisp
machine. I still giggle when I bind a key to do something like look up
the current word in info or on a dictionary site on the internet.

I'm working through Touretzky's book and SICP, with Peter Norvig's
Paradigms and Paul Graham's ANSI CL in the queue. I had no formal CS
training, just the numerology in FORTRAN and bit diddling in C that
you might expect from undergrad physics and engineering grad
school. Although this is not a bad thing in itself, it seems that
there is an innately anti-lisp perspective that accompanies such a
background. That is, I didn't even know what lisp was, but my thinking
flowed along non-lispy paths.

There is a wealth of Lisp-in-the-mainstream papers out there, and they
are worth reading: the oscillations of Richard Gabriel in the "Worse
is Better" series, Paul Graham's contributions, especially on "Being
Popular", and Peter Norvig's musings (read Python for Lispers for a
disassembly of Lisp into a Python vernacular). This wealth is not in
the vastness of numbers as much as it is distilled and precious.

These factors, along with surfing through the canonical lisp sites,
have led me to conclude some of the following of how to get started
with lisp.

Develop a Problem Solving Environment

Emacs is a problem solving environment (PSE), as is autocad. Lisp
transforms the mere text editor and cad package into mini lisp
machines. Use lisp to create a problem solving environment. Write
functions that are callable from the top level that solve your
problems. It is easy enough to wrap these up in scripts (at least it
is in clisp! see Extensions-2.8, 2.9 in implementation notes if you
want to use clisp) that are "applications", but in a sense it is the
collection of functions (libraries) that make the PSE.

Unix is a PSE, C is its extension language, and it has a wealth of
"little languages": Perl, the shells, etc. Windows is a PSE, Visual
Basic/C/C++ are its extension languages. Lisp is a PSE and Lisp is
extension language of Lisp. Of course, that first Lisp is a Lisp
implementation. So, the question is, how do you "boot" your Lisp PSE
to get some work done?

Well, it depends upon your requirements and constraints. I'm in a
unixy environment, and have been easing my way into lisp by developing
a lisp-like PSE in python (flame on!). My colleagues aren't ready to
make the leap just yet. Hell, I have a tough time convincing them that
emacs is not vi with different key strokes! Some things are more
convenient to as scripts, but much of the time, I fire up emacs and
run things from there, tweaking functions as needed, reinstalling, and
calling "applications" as functions from the top level. This may be a
dumbass way to do things, but that's how I'm doing it! I'd love to
hear how others do things day to day.

I hope this stimulates some discussion to you, Vin, and others.

George
From: Friedrich Dominicus
Subject: Re: How to proceed?
Date: 
Message-ID: <87lmjl8xd6.fsf@frown.here>
George Demmy <······@layton-graphics.com> writes:

> 
> The next epiphany blinded me when I realized that emacs is the same
> thing. Now, I had been using Emacs for years, but only in a miserable,
> pathetic way that *earned* my breatheren and sisteren the title:
> luser.
Well I do not know if makes you feel better to hear. You are not the
only one. Well exactly the same happened to me. Well till I really
start my journey to Common Lisp. Well prejudices are hard to overcome
I guess.


Regards
Friedrich
From: George Demmy
Subject: Re: How to proceed?
Date: 
Message-ID: <wuu1y9lafi.fsf@hades.layton-graphics.com>
Friedrich Dominicus <·····@q-software-solutions.com> writes:

> George Demmy <······@layton-graphics.com> writes:
> 
> > 
> > The next epiphany blinded me when I realized that emacs is the same
> > thing. Now, I had been using Emacs for years, but only in a miserable,
> > pathetic way that *earned* my breatheren and sisteren the title:
> > luser.
> Well I do not know if makes you feel better to hear. You are not the
> only one. Well exactly the same happened to me. Well till I really
> start my journey to Common Lisp. Well prejudices are hard to overcome
> I guess.
> 
> 
> Regards
> Friedrich

Hi Friedrich,

Thanks for the commiseration! I guess the main point of the "luser"
comment was to invoke the image of maclisp hackers looking down from
their lofty perches (or askance from nearby terminals) at a newbie ITS
user, quasi-affectionately known in that circle (from what I've read)
as a luser, giggling and freaking out when he discovers what is to her
is a completely magical feature, but is a merest trifle to one in the
know. Upon rereading, the cited passage has a self-deprecating tone,
and I wouldn't want it to reflect poorly upon those who might have
similar experiences. Office mates give me the evil eye when I jump out
of my chair upon writing some lisp code that makes emacs do something
nifty, or discover some new functionality buried deep within some
package, or solve some programming problem in the clear, concise code
that lisp admits.

Yours,

George