From: Zoomby
Subject: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <6db7e674.0307010155.1ee82929@posting.google.com>
hi

I'm a lisp newbie comming from the procedural programming world.
I partly understand how functional programming works, but I have a
question:
How does functional programming and object-oriented programming fit
together?
I know, you can write single methodes/functions that are functional,
but isn't the whole system you would write procedural with many
states? The procedural style seems to be the only way to solve some
natural problems, cause there is  always a pool of states that change.
What I need are some ideas how functional programming works with more
complex programs and not only at the function level. And please
correct me, if I misunderstood something :-)

bye
chris

From: Alex Drummond
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <bdrmdj$epi$1@newsg1.svr.pol.co.uk>
Well, LISP isn't a purely functional language, so you can manipulate the
program state. In purely functional languages, you have to pass the program
state around explicity (as a function argument). Usually you can automate
this process somewhat (e.g. using monads in Haskell).

Alex

Zoomby wrote:

> hi
> 
> I'm a lisp newbie comming from the procedural programming world.
> I partly understand how functional programming works, but I have a
> question:
> How does functional programming and object-oriented programming fit
> together?
> I know, you can write single methodes/functions that are functional,
> but isn't the whole system you would write procedural with many
> states? The procedural style seems to be the only way to solve some
> natural problems, cause there is  always a pool of states that change.
> What I need are some ideas how functional programming works with more
> complex programs and not only at the function level. And please
> correct me, if I misunderstood something :-)
> 
> bye
> chris
From: Kaz Kylheku
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <cf333042.0307011012.9b68caf@posting.google.com>
·········@roeschter.de (Zoomby) wrote in message news:<····························@posting.google.com>...
> hi
> 
> I'm a lisp newbie comming from the procedural programming world.
> I partly understand how functional programming works, but I have a
> question:
> How does functional programming and object-oriented programming fit
> together?

From the OO point of view, functional programming consists purely of
constructor calls. Rather than changing objects in-place, you make new
objects based on old ones. Since objects are never changed, lots of
optimizations are possible: most obviously, the new objects can reuse
pieces of existing ones.

> I know, you can write single methodes/functions that are functional,
> but isn't the whole system you would write procedural with many
> states? The procedural style seems to be the only way to solve some
> natural problems, cause there is  always a pool of states that change.

The change of state of some state machine from state S0 to S1 can be
re-framed as the manufacture of a new state machine which is in state
S1 based on the existing state machine which is in S0. The old state
machine persists in state S0 so long as anyone wants to refer to it.

The functional approach has many advantages. For one thing, it
eliminates a whole class of bugs whose root cause are that one part of
the program made a change to some object which another part of the
program did not anticipate properly. Note that included in this
category are data race conditions.
From: Marco Baringer
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <m2k7b2zc54.fsf@bese.it>
·········@roeschter.de (Zoomby) writes:

> hi
> 
> I'm a lisp newbie comming from the procedural programming world.
> I partly understand how functional programming works, but I have a
> question:
> How does functional programming and object-oriented programming fit
> together?

not to be condensending but this question makes about as much sense
as: how do beer and pizza go together? (aside: very very nicely) Well,
that depends on what you want to eat. Common Lisp allows to be
"functional" (but only in so far that you can pass functions back and
forth, Common Lisp (which is what people in this news group refer to
when they say lisp) is not a "purely" functional language, see the ML
family for that), it allows you to be "OO" (but only in so far that
you con define objects and methods, you are not "required" to do
anything and things like abstract, interface, private while doable or
not generally used).

> I know, you can write single methodes/functions that are functional,
> but isn't the whole system you would write procedural with many
> states? The procedural style seems to be the only way to solve some
> natural problems, cause there is  always a pool of states that change.

if you have a problem which is by it's very nature solved as a series
of operations on some state then by all means write the solution that
way. if you have a problem which is best solved by modelling it as a
set of objects which interact with each other then by all means do
so. if you have a problem which is best solved by arbitraly combining
and calling functions then do so. Common Lisp will allow all three,
and, more importantly, it does not prefer one or the other, and, even
more importantly, it does not build walls between one or another , and
this is really really important, it's easy to change when you realize
you wanted one and not the other, and, after this i'll stop, it does
not require the entire program to follow one "paradigm", mix 'n match
is the norm.

> What I need are some ideas how functional programming works with more
> complex programs and not only at the function level. And please
> correct me, if I misunderstood something :-)

a simple shell language reads commands from a data source (as
strings), parses them (using a shift/reduce parser) and creates
functions, these functions are passed to a "world" which then calls
the function. the world is an object with various methods for
modifying it's state (mainly I/O, but that's not the point).

i don't think you miss understand any of the details, but you need to
take a better look at the big picture. functional vs OO vs logical vs
relational is not an "either/or" question, it is a "for this particular
part of my huge system what works best" question.

> bye
> chris

hth.

-- 
-Marco
Ring the bells that still can ring.
Forget your perfect offering.
There is a crack in everything.
That's how the light gets in.
     -Leonard Cohen
From: Henrik Motakef
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <pan.2003.07.01.21.55.45.831538@henrik-motakef.de>
On Tue, 01 Jul 2003 13:03:24 +0000, Marco Baringer wrote:

> Common Lisp allows to be "functional" (but only in so far that you can
> pass functions back and forth, Common Lisp (which is what people in this
> news group refer to when they say lisp) is not a "purely" functional
> language, see the ML family for that), it allows you to be "OO"

Aside: The ML languages are not purely functional either, they do have
state and destructive operations and all that. Ocaml even has an object
system, which in turn can even be used in a purely functional fashion -
basically what would be a (setf some-slot) method in lisp would return a
clone of the object with only that slot altered. Of course, destructively
modifying a slot is possible too, and is probably more common.

There isn't really a hard line between "functional" and "not functional"
languages - a good working definition seems to be that a functional
language is one where the majority of users likes to write functional
programs (or, in the context of certain newsgroups, a language is
functional if it implements the same set of features as the posters
favorite). It is a little like the "scripting language" issue.
From: Darius
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <9d140b81.0307011135.12e8dffd@posting.google.com>
·········@roeschter.de (Zoomby) wrote in message news:<····························@posting.google.com>...
> hi
> 
> I'm a lisp newbie comming from the procedural programming world.
> I partly understand how functional programming works, but I have a
> question:
> How does functional programming and object-oriented programming fit
> together?
> I know, you can write single methodes/functions that are functional,
> but isn't the whole system you would write procedural with many
> states?  The procedural style seems to be the only way to solve some
> natural problems, cause there is  always a pool of states that change.
> What I need are some ideas how functional programming works with more
> complex programs and not only at the function level. And please
> correct me, if I misunderstood something :-)
> 
> bye
> chris

Someone on either c.l.l or c.l.s or maybe somewhere else recently
mentioned a book "Concepts, Techniques, and Models of Computer
Programming".  The authors' advice and my thoughts more or less
coincide.

Stateful object-oriented programming is a very powerful way to
organize (parts of) a program.  It's also very complex.  Pure
functional code is very simple to understand.  If a function is
correct, then it will always be correct, with state it may be
necessary to check the whole program to be certain any one place is
correct.  I'd imagine many functional programmers don't (when being
serious) think objects and state are bad, they are just way, way
overused.  The advice of the above book is to use the simplest
programming model with which you can cleanly implement a solution. 
Using a more powerful/complex model adds unnecessary accidental
complexity, and using an overly simple model will simply move the
complexity from the model to your code.  Other criticism is simply
that many (popular at least) procedural/OO languages don't have decent
if any support for higher-order programming and instead ugly, complex,
verbose, monstrous work-arounds are used.

As others have mentioned Haskell is a pure functional language (most
MLs aren't by the way).  At the outermost level any program needs to
perform IO, which doesn't fit very well with the functional paradigm. 
Luckily, Haskell uses a technique (monads) to allow "imperative"
operations while still maintaining purity, so typical Haskell programs
are a thin veneer of "imperative" code over a core of functional code.
 However, even in the "imperative" parts of the code, you still win as
you still have the full expressiveness of a functional language to
work with and first class actions.  You can have
lists(/trees/hashmaps/etc) of actions, you can build your own control
abstractions (while and for loops aren't built in to Haskell but can
easily be written, as well as special purpose control structures). 
Many procedural/OO languages don't allow this, which prompted one
Haskeller to remark, "Haskell: the world's best imperative language." 
This reflects a common technique usually seen in the FP community of
developing the base language up to your problem domain, giving you a
close to ideal language to program solutions.  "On Lisp" has much to
say on this topic.

Anyways, I really recommend the above book which can currently be
downloaded for free (ask google).  It should soon be published (at
which point you won't be able to download it) if you'd like a
hard-copy version. "On Lisp" is also available online (and apparently
also about to be republished) and is another one that's highly
recommended by others as well as by me.
From: Pascal Costanza
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <bdrom3$lps$1@f1node01.rhrz.uni-bonn.de>
Zoomby wrote:
> hi
> 
> I'm a lisp newbie comming from the procedural programming world.
> I partly understand how functional programming works, but I have a
> question:
> How does functional programming and object-oriented programming fit
> together?

Hi Zoomby,

Common Lisp is a multi-paradigm language that incorporates imperative, 
functional and object-oriented programming by default, and can be 
further extended with other paradigms. So it's perfectly accepted in 
this community to mix and match different paradigms.

If you are interested how functional programming and OOP are integrated 
in Common Lisp, you can read "The Common Lisp Object System: An 
Overview" by Linda De Michiel and Richard Gabriel. You can find the 
paper at http://www.dreamsongs.com/Essays.html

A very brief overview can also be found at 
http://www.lisp.org/table/objects.htm

However, it seems to me that you are more curious about purely 
functional programming. You might want to check out Scheme that is a 
dialect of Lisp. While it still offers functions that explicitly change 
state, there is a much stronger tendency to focus on functional 
programming in that community. See comp.lang.scheme. And then, of 
course, there are languages like Haskell and ML that are even more pure 
in their approaches.

However, if you don't mind making use of side effects when they are 
useful, Common Lips is probably the right language for you.


Pascal


-- 
Pascal Costanza               University of Bonn
···············@web.de        Institute of Computer Science III
http://www.pascalcostanza.de  R�merstr. 164, D-53117 Bonn (Germany)
From: Zoomby
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <6db7e674.0307010548.ad9cd37@posting.google.com>
Thanks for the replies. I think I'll take a look at haskel to see how
program states are realized there.
I picked up Lisp cause it seems to be popular and I wanted to learn
functional programming.

bye
chris
From: Duane Rettig
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <4el1ajls3.fsf@beta.franz.com>
·········@roeschter.de (Zoomby) writes:

> Thanks for the replies. I think I'll take a look at haskel to see how
> program states are realized there.
> I picked up Lisp cause it seems to be popular and I wanted to learn
==============^^^^==========^^^^^^^^^^^^^^^^^^^
> functional programming.

Note well, citizens of c.l.l: Lisp has just turned the corner again!

-- 
Duane Rettig    ·····@franz.com    Franz Inc.  http://www.franz.com/
555 12th St., Suite 1450               http://www.555citycenter.com/
Oakland, Ca. 94607        Phone: (510) 452-2000; Fax: (510) 452-0182   
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F01BB70.6090808@nyc.rr.com>
Duane Rettig wrote:
> ·········@roeschter.de (Zoomby) writes:
> 
> 
>>Thanks for the replies. I think I'll take a look at haskel to see how
>>program states are realized there.
>>I picked up Lisp cause it seems to be popular and I wanted to learn
> 
> ==============^^^^==========^^^^^^^^^^^^^^^^^^^
> 
>>functional programming.
> 
> 
> Note well, citizens of c.l.l: Lisp has just turned the corner again!
> 

nice catch. what i had noticed was that we might soon be able to 
dispense with fractions in counting newbies per week.

book your hotel rooms before it's too late for ILC2003:

   http://www.international-lisp-conference.org/

:)

-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: Pascal Costanza
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <costanza-CE3E5D.21363201072003@news.netcologne.de>
In article <·············@beta.franz.com>,
 Duane Rettig <·····@franz.com> wrote:

> ·········@roeschter.de (Zoomby) writes:
> 
> > Thanks for the replies. I think I'll take a look at haskel to see how
> > program states are realized there.
> > I picked up Lisp cause it seems to be popular and I wanted to learn
> ==============^^^^==========^^^^^^^^^^^^^^^^^^^
> > functional programming.
> 
> Note well, citizens of c.l.l: Lisp has just turned the corner again!

Let's just hope that the world is not going to decide to focus on 
unpopular languages and to regard Lisp to be too popular... ;)


Pascal
From: David Steuber
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <87llvhprxj.fsf@verizon.net>
Pascal Costanza <········@web.de> writes:

> Let's just hope that the world is not going to decide to focus on 
> unpopular languages and to regard Lisp to be too popular... ;)

I'm thinking that INTERCAL is the programming language of the future.

Although what we really need is a programming language with just one
type and six words.  Then someone needs to implement an operating
system in it.

-- 
One Editor to rule them all.  One Editor to find them,
One Editor to bring them all and in the darkness bind them.

(do ((a 1 b) (b 1 (+ a b))) (nil a) (print a))
From: Zoomby
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <6db7e674.0307012148.4f3d15df@posting.google.com>
>Lisp has just turned the corner again

>nice catch. what i had noticed was that we might soon be able to 
>dispense with fractions in counting newbies per week.

>Let's just hope that the world is not going to decide to focus on 
>unpopular languages and to regard Lisp to be too popular... ;)

What do you want to say with these posts? Did I say something wrong?

bye
chris
From: Duane Rettig
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <4adbxxx7f.fsf@beta.franz.com>
·········@roeschter.de (Zoomby) writes:

> >Lisp has just turned the corner again
> 
> >nice catch. what i had noticed was that we might soon be able to 
> >dispense with fractions in counting newbies per week.
> 
> >Let's just hope that the world is not going to decide to focus on 
> >unpopular languages and to regard Lisp to be too popular... ;)
> 
> What do you want to say with these posts? Did I say something wrong?

On the contrary.  Contributors to this newsgroup tend to get paranoid
due to the inundation of ex-lispers and/or newbies that show up for
just enough time to take a pot-shot at lisp with a perception they
have that it is _un_popular.  Your comment is no surprise to some of
us, but it is definitely a breath of fresh air.

-- 
Duane Rettig    ·····@franz.com    Franz Inc.  http://www.franz.com/
555 12th St., Suite 1450               http://www.555citycenter.com/
Oakland, Ca. 94607        Phone: (510) 452-2000; Fax: (510) 452-0182   
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F02EA50.3070902@nyc.rr.com>
I'll mop up my mess. I wrote:

>>nice catch. what i had noticed was that we might soon be able to 
>>dispense with fractions in counting newbies per week.


Zoomby wrote:
> What do you want to say with these posts?

With "nice catch" I meant that when i originally read your post I did 
not notice that you had described Lisp as popular, and I was thanking 
Duane for picking up on it.

As for my newby counting remark, well, I happen to have been producing 
here on c.l.l over the past year a tedious drumbeat of predictions that 
Lisp was on the verge of a big upswing in popularity. I kinda was 
thinking this would happen over the next couple of years, possibly as 
long as five years.

Over the past couple of months, to my surprise and delight, I have 
noticed article after article here which began something like "Hi, I am 
new to Lisp and...". The sample is small and the absolute numbers are 
negligible when one considers Java or Python, but the spike is pretty 
sharp. We used to get one every... well, year? Now we get one or two a 
week. Hence my lame arithmetic quip.

> Did I say something wrong?

No, I did, by writing something intelligible only to heavy readers of 
this NG when obviously at least one newby (you) was reading the thread.

Sorry.

We love newbies because they are harbingers of a day when Lisp is 
mainstream and Lisp jobs will abound. In fact...

<pounce>

...whenever I see a newby here I ask them to consider participating in a 
survey:

    http://www.cliki.net/The%20Road%20to%20Lisp%20Survey

</pounce>

In your case (and this is what I should have written the first time) I 
am especially interested in your description of Lisp as "popular". Was 
that just a passing comment, or is Lisp really being talked up favorably 
amongst folks you know?


-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: Steven E. Harris
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <q67znjw6cq4.fsf@raytheon.com>
Kenny Tilton <·······@nyc.rr.com> writes:

> ...whenever I see a newby here I ask them to consider participating in
> a survey:
>
>     http://www.cliki.net/The%20Road%20to%20Lisp%20Survey

I finally added my own response under "Steven Harris."

-- 
Steven E. Harris        :: ········@raytheon.com
Raytheon                :: http://www.raytheon.com
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F031CCE.90801@nyc.rr.com>
Steven E. Harris wrote:
> Kenny Tilton <·······@nyc.rr.com> writes:
> 
> 
>>...whenever I see a newby here I ask them to consider participating in
>>a survey:
>>
>>    http://www.cliki.net/The%20Road%20to%20Lisp%20Survey
> 
> 
> I finally added my own response under "Steven Harris."

Thx. Looks like Paul Graham and Emacs Lisp (your intro) are the leading 
two attention-getters for CL nowadays.


-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: Steven E. Harris
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <q67fzlo6bs1.fsf@raytheon.com>
Kenny Tilton <·······@nyc.rr.com> writes:

> Looks like Paul Graham and Emacs Lisp (your intro) are the leading
> two attention-getters for CL nowadays.

The first place I turned to after swallowing O'Reilly's _Learning GNU
Emacs_ was Graham's _ANSI Common Lisp_.

Graham is a fantastic cheerleader and salesman. His articles, and,
believe it or not, Erik Naggum's posts here were the two main
ideological magnets pulling me toward Lisp.

I always enjoy Graham's writing. If only there were more of it.

-- 
Steven E. Harris        :: ········@raytheon.com
Raytheon                :: http://www.raytheon.com
From: Erik Winkels
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <87y8zgr6rl.fsf@xs4all.nl>
Steven E. Harris <········@raytheon.com> wrote on:
> 
> Graham is a fantastic cheerleader and salesman. His articles, and,
> believe it or not, Erik Naggum's posts here were the two main
> ideological magnets pulling me toward Lisp.

Same here.  Whenever I was searching for some solution to a
programming a problem or just seaching for an interesting discussion
on programming I'd come across some of Erik's posts in cll or another
newsgroup.

That combined with coming across Stephen Slade's "Object Oriented
Common Lisp" (nice reference book!) in a second-hand bookstore is what
got me started on Common Lisp.


Erik
From: Joe Marshall
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <ptkrbugr.fsf@ccs.neu.edu>
Erik Winkels <·······@xs4all.nl> writes:

> Steven E. Harris <········@raytheon.com> wrote on:
> > 
> > Graham is a fantastic cheerleader and salesman. His articles, and,
> > believe it or not, Erik Naggum's posts here were the two main
> > ideological magnets pulling me toward Lisp.
> 
> Same here.  Whenever I was searching for some solution to a
> programming a problem or just seaching for an interesting discussion
> on programming I'd come across some of Erik's posts in cll or another
> newsgroup.

Seems that Erik attracted people to this group as well as repelled
them.
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F0435A4.7060701@nyc.rr.com>
Joe Marshall wrote:
> Erik Winkels <·······@xs4all.nl> writes:
> 
> 
>>Steven E. Harris <········@raytheon.com> wrote on:
>>
>>>Graham is a fantastic cheerleader and salesman. His articles, and,
>>>believe it or not, Erik Naggum's posts here were the two main
>>>ideological magnets pulling me toward Lisp.
>>
>>Same here.  Whenever I was searching for some solution to a
>>programming a problem or just seaching for an interesting discussion
>>on programming I'd come across some of Erik's posts in cll or another
>>newsgroup.
> 
> 
> Seems that Erik attracted people to this group...

Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any 
other lurkers care to cite him or another lure, such as Kent's tour de 
force on slashdot?

I guess to a degree this is tough to pin down because as any marketer 
can tell you it takes a number of so-called impressions to get thru to a 
prospect.


-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: Lars Brinkhoff
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <85llvfr8r3.fsf@junk.nocrew.org>
Kenny Tilton <·······@nyc.rr.com> writes:
> Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any
> other lurkers care to cite [Erik] or another lure, such as Kent's
> tour de force on slashdot?

I tried Elisp a few years ago, but didn't get anywhere.  Then Kent's
and Paul Graham's articles spurred me into trying CL.
From: Patrick May
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <m1znjvfsdb.fsf@patrick.intamission.com>
Kenny Tilton <·······@nyc.rr.com> writes:
> Joe Marshall wrote:
> > Seems that Erik attracted people to this group...
> 
> Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any
> other lurkers care to cite him or another lure, such as Kent's tour
> de force on slashdot?

     I'll raise my hand in favor of Erik.  I got interested in Lisp
because of PAIP and some of Paul Graham's articles, but Erik's posts
here were, on balance, more intriguing than off-putting.

Regards,

Patrick

------------------------------------------------------------------------
S P Engineering, Inc.    | The experts in large scale distributed OO
                         | systems design and implementation.
          ···@spe.com    | (C++, Java, ObjectStore, Oracle, CORBA, UML)
From: Kenny X Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <tQZMa.5173$351.1728484@twister.nyc.rr.com>
Patrick May wrote:
> Kenny Tilton <·······@nyc.rr.com> writes:
> 
>>Joe Marshall wrote:
>>
>>>Seems that Erik attracted people to this group...
>>
>>Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any
>>other lurkers care to cite him or another lure, such as Kent's tour
>>de force on slashdot?
> 
> 
>      I'll raise my hand in favor of Erik.  I got interested in Lisp
> because of PAIP and some of Paul Graham's articles, but Erik's posts
> here were, on balance, more intriguing than off-putting.

I got a vote by email as well. Darn, I thought he was going to have to 
come back just to prove that CL's surge in popularity merely coincided 
with his disappearance from c.l.l. :)

Well, at least we will hear him speak at ILC2003. His LUGM '99 talk on 
time was brillos, so I am looking forward to his 2003 effort.

kenny
From: pentaside asleep
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <7d98828b.0307041335.214cd13a@posting.google.com>
Patrick May <···@spe.com> wrote in message news:<··············@patrick.intamission.com>...
>      I'll raise my hand in favor of Erik.  I got interested in Lisp
> because of PAIP and some of Paul Graham's articles, but Erik's posts
> here were, on balance, more intriguing than off-putting.

I disagree, because his posts were incredibly depressing.  I started
using computers fairly recently, and Java was among my first
languages.  Early on, even I could see something was very wrong with
Java, so quickly I found languages like the Lisp family.  But I did
not like Erik's postings, because there were tones of hopelessness
permeating them.  Just all this negative shit, including
worse-is-better and the fact that a lot of interesting things were
bound by severe computational limits.

Above that was this childishness against the Evil Anti-#' Hordes. 
It's rather interesting how much one can pack into a CL symbol, and I
think there's a sense of wonder about how deep these rabbit holes can
get.  But if an Erik's going to ruin this for new people, then why
should anyone want to steer people anywhere near the CL community? 
It's a well-known observation that communities are important because
people need to be sustained by enthusiasm, and there was none of that
infectiousness which led to works like G�del Escher Bach: EGB
supporting Lisp.

Let me aim a little closer to the point I want to emphasize.  An Erik
Naggum is a fine, entertaining and witty character in a healthy
community.  Like anyone else, I find a lot of his posts fun to read. 
But without anything counterbalancing, they were just dull notes.
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F061C2B.1050300@nyc.rr.com>
pentaside asleep wrote:
> Patrick May <···@spe.com> wrote in message news:<··············@patrick.intamission.com>...
> 
>>     I'll raise my hand in favor of Erik.  I got interested in Lisp
>>because of PAIP and some of Paul Graham's articles, but Erik's posts
>>here were, on balance, more intriguing than off-putting.
> 
> 
> I disagree, because his posts were incredibly depressing.  I started
> using computers fairly recently, and Java was among my first
> languages.  Early on, even I could see something was very wrong with
> Java, so quickly I found languages like the Lisp family.  But I did
> not like Erik's postings, because ...

OK, OK, no need for Yet Another Erik Debate. Those stink up the joint as 
bad as any other flamewar.

The question is not over the ratio of bad to good in anyone's posts. The 
point is that Erik displayed both an aptitude for this game and a strong 
preference for Lisp, such that no matter what one thought of the 
extra-curricular stuff, one might well be moved to take a look at the 
object of his passion, just to see if one is missing out on something.

In fact, I got another email citing Erik as a Lisp Lure, and this writer 
said he had plonked Erik at first but that others' quoting of Erik 
caused the writer to become a big fan.

-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: pentaside asleep
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <7d98828b.0307042134.2fad19e1@posting.google.com>
Kenny Tilton <·······@nyc.rr.com> wrote in message news:<················@nyc.rr.com>...
> OK, OK, no need for Yet Another Erik Debate. Those stink up the joint as 
> bad as any other flamewar.
> 
> The question is not over the ratio of bad to good in anyone's posts. 

You're right, and all publicity is good publicity.
From: pete kirkham
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3f0471b4$0$966$cc9e4d1f@news.dial.pipex.com>
Kenny Tilton wrote:
> Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any 
> other lurkers care to cite him or another lure, such as Kent's tour de 
> force on slashdot?
> 
> I guess to a degree this is tough to pin down because as any marketer 
> can tell you it takes a number of so-called impressions to get thru to a 
> prospect.
> 
> 

One vote for Paul Graham: having followed a link to his site from one of 
his posts on the XML-dev list, I then remembered the language I did my 
undergrad thesis in 1990, and started playing with it again.


Pete
From: Avi Blackmore
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <7c1401ca.0307040059.2e4910f0@posting.google.com>
Kenny Tilton <·······@nyc.rr.com> wrote in message news:<················@nyc.rr.com>...

[snicker snack]

> Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any 
> other lurkers care to cite him or another lure, such as Kent's tour de 
> force on slashdot?

    Well, I guess I'm a lurker.  I've been reading this newsgroup for
about 10 months now.  High time I posted, I suppose.  :-)

    I'll cite three "lures" to Common Lisp for myself, which, for
clarity, I put in the form of a "bulleted" list.  This also helps me
express myself in my natural verbosity. :-)

* Paul Graham's writings on his website, as well as his books:  He has
a very clear, concise writing style, and manages to convey not only
the practical information of CL, but also the beauty of it.  He's a
bit too down on some parts of CL, like LOOP and CLOS, and I wish he
wouldn't write his example code like he was writing in a Lisp-1, but
hey, everybody's got quirks.  I found his "On Lisp" book incredible,
and "ANSI Common Lisp" is still my primary reference.

* Kent Pitman's stuff on Slashdot, which really interested me.  In
fact, most of his posts here are fascinating to me.  Here's a guy who
has been with Lisp since before there was a Common Lisp, was
instrumental in bringing about the standard, and who has probably
written more code, and done more deep hacking on Lisp than I ever
will, and yet he's approachable.  He doesn't have a huge ego, he's not
"cooler-than-thou" about questions, he takes the time to answer even
relatively trivial newbie questions.  Plus, his perspectives on the
nature of standardizing, the value of various practices, and what's
really important when programming is just great to read.  Even when I
disagree with him on something, it's still food for thought.
 
* Erik Naggum's postings here on the newsgroup, which I found not only
full of interesting technical info, but also a fascinating perspective
on what is and is not good programming, and *why* this is so (when he
wasn't defending himself from puzzling attacks on his character, that
is).     He and Kent Pitman are two names which, when I see them on
the list of posters to a thread, make me more likely to read it. 
(Others are Tim Bradshaw, Edi Weitz, Kenny Tilton, Barry Margolin, and
probably a couple others I'm forgetting.)

    I'm a relative newbie to CL, myself, having started learning it
about a year ago.  I've been working through the examples in Graham's
books, coding up some "scripts" for managing things on my home
machine, little things like that.  Thought I'd delurk to answer this
thread, since Kenny made the invite to us lurkers.  :-)

Hope this helps, or at least staves off boredom,

Avi Blackmore
From: Lars Brinkhoff
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <85el16pshn.fsf@junk.nocrew.org>
········@cableone.net (Avi Blackmore) writes:
> I'll cite three "lures" to Common Lisp for myself, which, for
> clarity, I put in the form of a "bulleted" list.

A dotted list would have been better Lisp style. :)

-- 
Lars Brinkhoff,         Services for Unix, Linux, GCC, PDP-10, HTTP
Brinkhoff Consulting    http://www.brinkhoff.se/
From: Avi Blackmore
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <7c1401ca.0307041804.76fe2d94@posting.google.com>
Lars Brinkhoff <·········@nocrew.org> wrote in message news:<··············@junk.nocrew.org>...
> ········@cableone.net (Avi Blackmore) writes:
> > I'll cite three "lures" to Common Lisp for myself, which, for
> > clarity, I put in the form of a "bulleted" list.
> 
> A dotted list would have been better Lisp style. :)

    For that amount of text, it'd be too much consing.  Plus, the O(n)
access time would've been a problem.  I thought of using a hash table,
but that doesn't have a printed representation that you can read.  Er,
I don't think it does...  I guess you could consider the "bulleted
list" to be a sort of structure, or maybe a class.  :-)

    Anyway, at least I didn't torment you all by using XML, right?
From: Jacek Generowicz
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <tyfwueyacpg.fsf@pcepsft001.cern.ch>
Kenny Tilton <·······@nyc.rr.com> writes:

> Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any
> other lurkers care to cite him or another lure, such as Kent's tour de
> force on slashdot?

How about Bjarne Stroustrup ?

Somewhere[*] he wrote that (I paraphrase) "C++ don't do no double
dispatch, if you want that you need to go to a language such as Common
Lisp". At this point it struck me that my image of Lisp (cute
functional language with more parentheses than practical potential)
must be rather flawed. And thus the seed was planted: whenever a
reference was made to Lisp I paid attention, and the things I was
hearing sounded good.

The final straw came when I was working on a Python/C++ project, and
it struck me that I really wanted a dynamically typed language, like
Python, that would allow me to program without any type declarations
during development, but, when I needed to squeeze the the most out of
my CPU, would allow me to provide declarations and to compile to
efficient machine code (as opposed to having to re-write the relevant
chunk as an extension module in C++).

I wondered how many decades I would have to wait before someone
created such a thing (utterly convinced that no such thing could exist
today, for, if it would, then we'd ALL be using it, right?), tried to
see whether any research was being done in this direction, found
Dylan, which turned out to be, well ... Lisp.

I promptly downloaded Clisp, and was stunned to find that so many
things I had craved for in a programming language over the years I had
dabbled with programming, were there along with plenty more which I
never dreamed of.




[*] I thought that it was it _The C++ Programming Languge_, but I
    can't seem to find it in there, just now.
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F0560E2.7040508@nyc.rr.com>
Jacek Generowicz wrote:
> Kenny Tilton <·······@nyc.rr.com> writes:
> 
> 
>>Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any
>>other lurkers care to cite him or another lure, such as Kent's tour de
>>force on slashdot?
> 
> 
> How about Bjarne Stroustrup ?
> 
> Somewhere[*] he wrote that (I paraphrase) "C++ don't do no double
> dispatch, if you want that you need to go to a language such as Common
> Lisp". 

....

> [*] I thought that it was it _The C++ Programming Languge_, but I
>     can't seem to find it in there, just now.


I found this citation via google:

 From http://www.angelfire.com/in/anaskure/software/doubleDispatch.html

"I repeatedly considered a mechanism for a virtual function call based 
on [the type of] more than one object, often called multi-methods. I 
rejected multi-methods with regret because I liked the idea, but 
couldn't find an acceptable form (syntax) under which to accept it." 
[Bjarne Stroustrup]
...
[Source: Bjarne Stroustrup, The Design and Evolution of C++, pp297-301]"

Maybe the next sentence was "If you want multi-methods..."

-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F056832.5070908@nyc.rr.com>
Jacek Generowicz wrote:
> The final straw came when I was working on a Python/C++ project, and
> it struck me that I really wanted a dynamically typed language, like
> Python, that would allow me to program without any type declarations
> during development, ....
> 
> I wondered how many decades I would have to wait before someone
> created such a thing (utterly convinced that no such thing could exist
> today, for, if it would, then we'd ALL be using it, right?), tried to
> see whether any research was being done in this direction, found
> Dylan, which turned out to be, well ... Lisp.

Did you consider stopping your search at Dylan?

> 
> I promptly downloaded Clisp, and was stunned to find that so many
> things I had craved for in a programming language over the years I had
> dabbled with programming, were there along with plenty more which I
> never dreamed of.

Plz consider cutting and pasting this to:

   http://www.cliki.net/The%20Road%20to%20Lisp%20Survey

We have almost fifty stories there now, this would be a beaut. It is not 
unusual for better technology to get passed over, but I wonder how often 
such a thing rises from the ashes to win.

Heavier-than-air flying machines?

-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: Jacek Generowicz
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <tyfy8z67gcd.fsf@pcepsft001.cern.ch>
Kenny Tilton <·······@nyc.rr.com> writes:

> Did you consider stopping your search at Dylan?

Yes, briefly ... but 

  a) Dylan looked deader than Lisp, 

  b) Dylan's raison d'etre seemed to be to get rid of the parentheses,
     which didn't sound very convincing.

I suspect that, at the time, the former bore more weight
than the latter. With hindsight, the latter seems more important.

I hope that my rusty memory is not romanticizing the facts too
much. My choice could well have been influenced by more prosaic
reasons, such as having downloaded both Gwydion and Clisp, and having
got only the latter to run out of the box.

(I definitely downloaded some Dylan compiler, but can't remember what
happened then, so it is likely that I gave up, on encountering
installation problems.)

> Plz consider cutting and pasting this to:
> 
>    http://www.cliki.net/The%20Road%20to%20Lisp%20Survey

I've been considering putting something there from the day you created
it ... but it's difficult enough to find time to scan through c.l.l,
let alone thinking up sensible answers to the questions in the survey.

I'll probably put something (based on the content uptherad) in there,
in due course.
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F0D6407.6040405@nyc.rr.com>
Jacek Generowicz wrote:
> Kenny Tilton <·······@nyc.rr.com> writes:
> 
> 
>>Did you consider stopping your search at Dylan?
> 
> 
> Yes, briefly ... but 
> 
>   a) Dylan looked deader than Lisp, 

check

> 
>   b) Dylan's raison d'etre seemed to be to get rid of the parentheses,

and generating smaller runtimes, IIRC. maybe also faster?

>      which didn't sound very convincing.

yeah, i would hate to have to edit code without parentheses again.

> 
> I suspect that, at the time, the former bore more weight
> than the latter. With hindsight, the latter seems more important.
> 
> I hope that my rusty memory is not romanticizing the facts too
> much. My choice could well have been influenced by more prosaic
> reasons, such as having downloaded both Gwydion and Clisp, and having
> got only the latter to run out of the box.

that's how I pick /my/ tools. <g> unless I sense Great Things on the 
other side of the hassle of getting something to work.

> I'll probably put something (based on the content uptherad) in there,
> in due course.

it's a wiki, so you might do what I did: put up something quick and 
dirty, refine later. btw, I think I said in the "instructions" that one 
was free to ignore the survey questions, so you could literally cut and 
paste that article of yours into a response page.



-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: Paul F. Dietz
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <1uecnXh44Lwy8pCiXTWJhQ@dls.net>
Kenny Tilton wrote:

>>   b) Dylan's raison d'etre seemed to be to get rid of the parentheses,
> 
> and generating smaller runtimes, IIRC. maybe also faster?

Dylan has some tweaks over Common Lisp that assist in more
efficient compilation of OO code.  Monotonic linearization and sealing,
for example.

I don't see why these couldn't be migrated into Common Lisp in
some way, though.

	Paul
From: Marco Antoniotti
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F0D7E17.1050201@cs.nyu.edu>
Paul F. Dietz wrote:
> Kenny Tilton wrote:
> 
>>>   b) Dylan's raison d'etre seemed to be to get rid of the parentheses,
>>
>>
>> and generating smaller runtimes, IIRC. maybe also faster?
> 
> 
> Dylan has some tweaks over Common Lisp that assist in more
> efficient compilation of OO code.  Monotonic linearization and sealing,
> for example.
> 
> I don't see why these couldn't be migrated into Common Lisp in
> some way, though.

The linearization bit may be difficult.  Sealing, OTOH, should not.
I think you need a good document explaining how to do these things.

Any volunteer?  (Don't look at me!  I am just throwing the stone! :))

Cheers
--
Marco
From: Paul F. Dietz
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <312dnY3V8-dmlZOiXTWJkw@dls.net>
Marco Antoniotti wrote:

> The linearization bit may be difficult.

Monotonic linearization could be added with an appropriate metaclass.
You'd want to enforce the constraint that if class C has monotonic
linearization, then so does any subclass of C.

	Paul
From: Jacek Generowicz
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <tyfof0170pc.fsf@pcepsft001.cern.ch>
Kenny Tilton <·······@nyc.rr.com> writes:

> yeah, i would hate to have to edit code without parentheses again.

Yes, it's quite painful to read/hear people complaining about the
parentheses in Lisp, suggesting that they make the language unreadable
and unwritable. In the back of my mind I keep thinking "You poor,
innocent wretch ... if only you'd give it an honest, _unprejudiced_ try,
you'd find that it makes writing the language much _easier_".

> I think I said in the "instructions" that one was free to ignore the
> survey questions, so you could literally cut and paste that article
> of yours into a response page.

Done.
From: Julian St.
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <86vfuh2ho2.fsf@jmmr.no-ip.com>
Kenny Tilton <·······@nyc.rr.com> writes:

> Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any
> other lurkers care to cite him or another lure, such as Kent's tour de
> force on slashdot?

Sorry for my ignorance, but what "tour de force"?

Regards,
Julian
-- 
		     DARE to think for yourself!
From: Larry Clapp
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <slrnbgds62.js7.larry@theclapp.ddts.net>
In article <··············@jmmr.no-ip.com>, Julian St. wrote:
> Kenny Tilton <·······@nyc.rr.com> writes:
>> Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any
>> other lurkers care to cite him or another lure, such as Kent's tour
>> de force on slashdot?
> 
> Sorry for my ignorance, but what "tour de force"?

Part 1:
http://interviews.slashdot.org/article.pl?sid=01/11/03/1726251&mode=thread&tid=156

Part 2:
http://interviews.slashdot.org/article.pl?sid=01/11/13/0420226&mode=thread&tid=156

-- 
Larry Clapp / ·····@theclapp.org
Use Lisp from Vim: VILisp: http://vim.sourceforge.net/script.php?script_id=221


-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
-----==  Over 80,000 Newsgroups - 16 Different Servers! =-----
From: Martin Thornquist
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <lcwuerj1vd.fsf@teleute.netfonds.no>
[ Gisle S�lensminde ]

> Erik Naggum did in fact get so much attention in Norwegian newsgroups, that
> he got a full page article in on of norways biggest newspapers (On paper) 
> back in 1999, about his news postings. The online version can be found at: 
>
> http://www.dagbladet.no/kultur/1999/01/09/152790.html

Here follows for the Norwegian-challenged a not neccessarily good
translation (pretty straight translation, not reworked as much as a
good translation would be), but hopefully the meaning gets across:


Caption: Erik Naggum (33) does not try to be nice when he discusses on
the net. He doesn't much care for people who don't know what they're
talking about. But the cat XYZZ [sic -- she's called Xyzzy] he's very
fond of.


Bickerer on the net

Imagine a cab driver of the most vocal kind, combine him with a data
expart and add a drop of academic. Then you get Erik Naggum.

I love cab drivers, says the man who thus far has posted 6122 messages
on the Internet. Last year he used 9000 NOK [~ US$1225] on pizza,
delivered at the door home in his small apartment at Stovner in Oslo,
where he also makes a living as a computer consultant.


MOST PEOPLE WHO HAS the Internet as job or hobby knows who Erik Naggum
is. Abroad he is known for fighting for his own solution to how the
net's millions of text pages should be easier searchable. In Norway he
is a rash and uncompromising debatant who has very little patience
with his opponents if they come with knowledgeless rubbish. And they
often do, according to Naggum. He readily calls people unqualified
idiots, or propose that they seek phsyciatric help.

-Lots of the messages you find on the net, would not be usable for
 printing in a newspaper, Naggum says.

-Neither could they be read in a lecture hall, or on TV or radio. But
 when you actively go out and find a newsgroup -- and you do have to
 do that -- there is an understanding that here you can break most of
 the rules. These are the premises, and by going in you accepted them.

There are thousands of different discussion groups, sorted by subject.
Just in Norway there are over 150, for everything from deLillos [a
popular Norwegian pop group] fans to dog lovers. The far and away most
popular newsgroup in Norway is called "no.general". Here Erik Naggum
sent his messages so it smelled burnt. The group was in a way the
net's answer to Per St�le L�nning's "Sentrum" [a popular and sometimes
infamous, rather rash Norwegian TV discussion programme].


-IT WAS COMPLETELY WILD. We were about 20 who discussed, while 40000
 read us every day. I did not write to entertain, but regardless it
 became entertainment for people, Naggum says.

He tired from being the main attraction, and searched out other and
more exclusive fora.

Naggum's main beef is incompetence. Whether it concerns net people,
politicians or computer colleagues -- he despice people who does not
know what they talk about and does not do their job.

-An incompetent human does not care what is true or false. A competent
 human does. I can see it in the way she or he writes. And I seldom
 judge people wrong. I think it should be punishable to spread
 misinformation!

-Why this high level of aggression? Why can one not on the net have an
 on-subject discussion about the ball, without kicking the man half to
 death [Norwegian soccer analogy -- "take the ball, not the man"]?

-On the net you do not have a face. For example you do not always know
 if what people write is meant as irony. The communication is fast --
 not everyone manages to keep up with this speed. It is in the nature
 of net discussions that the temperature rises fast. But it is
 important that the debatants not break out of the net sphere and for
 example call. That is untolerable, says Erik Naggum.


Martin
-- 
"An ideal world is left as an exercise to the reader."
                                                 -Paul Graham, On Lisp
From: q u a s i
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <aftpgvchrdu7crei64rf2vc6l685dodoko@4ax.com>
On Thu, 03 Jul 2003 13:57:32 GMT, Kenny Tilton <·······@nyc.rr.com>
wrote:

>> 
>> Seems that Erik attracted people to this group...
>
>Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any 
>other lurkers care to cite him or another lure, such as Kent's tour de 
>force on slashdot?

hehe ... I miss Erik too.  Mr.Gatt first got me interested in CL with
the space angle a few years ago.  And then Mr.Pitman (I was surprised
to see that he has a beard like RMS.)

Unfortunately I got no other CL'ers around here where I live so I have
been doing less CL *sigh*...

But I still love c.l.l -- one of the best NG's around.

--
quasi
http://abhijit-rao.tripod.com/

"I slept with Faith, and found a corpse in my arms on awaking; I drank and danced all night with Doubt, and found her a virgin in the morning."
~ A. Crowley
From: pj
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <bel098$mdo$0@198.102.102.163>
> >>
> >> Seems that Erik attracted people to this group...
> >
> >Yeah, a few more votes and he makes the Lisp Lure hall of fame. Any
> >other lurkers care to cite him or another lure, such as Kent's tour de
> >force on slashdot?
>

Who woulda thought ? Eric had groupies !

But seriously, he was enormously entertaining. (if you are not at the nasty
end of his flamethrower that is).
Some of his flamewars with Gatt , Fedrero ..  classics!

I believe ( I am a lisp beginner... So I may not know) he is also very good
with common lisp ?

Anyone know what his sabbatical is all about ?

pj
From: Joe Marshall
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <ptkhnqzc.fsf@ccs.neu.edu>
"pj" <·······@hotmail.com> writes:

> Who woulda thought ? Eric had groupies !
> 
> But seriously, he was enormously entertaining. (if you are not at the nasty
> end of his flamethrower that is).
> Some of his flamewars with Gatt , Fedrero ..  classics!
> 
> I believe ( I am a lisp beginner... So I may not know) he is also very good
> with common lisp ?

Yes, he is.

> Anyone know what his sabbatical is all about ?

He got tired of being a celebrity.  He found that there were more
postings about `Erik' than there were postings about `Lisp' in this
group.
From: Michael Livshin
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <s3ptkrafo7.fsf@laredo.verisity.com.cmm>
Joe Marshall <···@ccs.neu.edu> writes:

> Seems that Erik attracted people to this group as well as repelled
> them.

is that a surprise?  people who are happy about something are usually
less vocal than those who are not, which makes it way too easy to get
a very wrong general impression about said something.

-- 
All ITS machines now have hardware for a new machine instruction --
CIZ
Clear If Zero.
Please update your programs.
From: Pascal Costanza
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <be3l10$14e6$1@f1node01.rhrz.uni-bonn.de>
Kenny Tilton wrote:

> Looks like Paul Graham and Emacs Lisp (your intro) are the leading 
> two attention-getters for CL nowadays.

The people whose writings made me explore Common Lisp have been Richard 
Gabriel, Erann Gat, Paul Graham and Guy Steele, approximately in that order.


Pascal

-- 
Pascal Costanza               University of Bonn
···············@web.de        Institute of Computer Science III
http://www.pascalcostanza.de  R�merstr. 164, D-53117 Bonn (Germany)
From: Matthew Kennedy
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <87adbwa9kr.fsf@killr.ath.cx>
Steven E. Harris <········@raytheon.com> writes:

> Kenny Tilton <·······@nyc.rr.com> writes:
>
>> ...whenever I see a newby here I ask them to consider participating in
>> a survey:
>>
>>     http://www.cliki.net/The%20Road%20to%20Lisp%20Survey
>
> I finally added my own response under "Steven Harris."

Interesting!  Your road to lisp is almost the same as mine.  I had a
chuckle at the "what a strange configuration file format [Emacs has]"
comment, as I remember thinking the same thing early on.

I can relate to your comment on the need to assail x/emacs/auto lisp.
I think it was about a week after I began making text processing
scripts in emacs lisp and getting them to run like shell commands that
I realized the need to move that kind of stand-alone work to Common
Lisp.

Matt

-- 
I've got a COUSIN who works in the GARMENT DISTRICT...
From: Zoomby
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <6db7e674.0307021014.5260d6bc@posting.google.com>
Hi,
Thanks for the reply.
After years of c/c++, java and php (always c-style-syntax procedural) I
wanted to learn an alternative programming language. I first took a look at
ruby and smalltalk and played around with them a few weeks. But I don't
liked them, because I found them to ordinary (Both are nice languages,
especially smalltalk, but they didn't offer much more features  than i.e.
java for me, even if they are purely object-oriented). Then I moved to lisp
a few weeks ago, and I think I like it. It's a challenge because of it's
syntax and interesting and new possibilities (for a c-style programmer).And
I like minimal and compact code, which is natural in lisp I think...
I don't really know how popular lisp really is, but it's mentioned at
www.gamedev.de where my most favorite forum is. But I found that there are
many usefull lisp resources on the net, much more than for smalltalk.
By the way, can you recommend a good lisp book (no e-book) that is cheap
(not more than 30$) and suitable for beginners and intermediates?

bye
chris
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F03362F.1050703@nyc.rr.com>
Zoomby wrote:
> Hi,
> Thanks for the reply.
> After years of c/c++, java and php (always c-style-syntax procedural) I
> wanted to learn an alternative programming language. I first took a look at
> ruby and smalltalk and played around with them a few weeks. But I don't
> liked them, because I found them to ordinary (Both are nice languages,
> especially smalltalk, but they didn't offer much more features  than i.e.
> java for me, even if they are purely object-oriented).

aha! this is a breakthrough moment. Languages like Java and then Python 
succeeded in part because of /similarity/ to what went before. In your 
case it seems to have been a negative that ruby and s/t were so 
reminiscent of java.

So maybe recognizability is now a liability to early adopters at least, 
and Lisp's unorthodox syntax etc are becoming advantages.

 > Then I moved to lisp
> a few weeks ago, and I think I like it. It's a challenge because of it's
> syntax and interesting and new possibilities (for a c-style programmer).And
> I like minimal and compact code, which is natural in lisp I think...

yep.

> I don't really know how popular lisp really is, but it's mentioned at
> www.gamedev.de where my most favorite forum is.

i think luke, another newby, found his way here via gamedev as well.

 > But I found that there are
> many usefull lisp resources on the net, much more than for smalltalk.
> By the way, can you recommend a good lisp book (no e-book) that is cheap
> (not more than 30$) and suitable for beginners and intermediates?

I'm no expert on this, but I hear these recommended a lot:

Common Lisp: A Gentle Introduction to Symbolic Computation
by David S. Touretzky

ANSI Common LISP
by Paul Graham

Object-Oriented Common Lisp
by Stephen Slade

Lisp (3rd Edition)
by Patrick Henry Winston, Berthold Klaus Paul Horn

Unfortunately on Amazon those all show prices in the $40 range, but with 
used copies available in the range you seek. maybe you can find used 
copies where you are.

thx for the info on how you got into using lisp.


-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: David Steuber
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <87he648hf2.fsf@verizon.net>
Kenny Tilton <·······@nyc.rr.com> writes:

> Unfortunately on Amazon those all show prices in the $40 range, but
> with used copies available in the range you seek. maybe you can find
> used copies where you are.

Try bookpool.com.  They often have good prices on books compared to
amazon.

-- 
One Editor to rule them all.  One Editor to find them,
One Editor to bring them all and in the darkness bind them.

(do ((a 1 b) (b 1 (+ a b))) (nil a) (print a))
From: Shawn Betts
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <87brvu8e9a.fsf@foo.foo>
·········@roeschter.de (Zoomby) writes:

> By the way, can you recommend a good lisp book (no e-book) that is cheap
> (not more than 30$) and suitable for beginners and intermediates?

One that comes to mind is Paul Graham's ANSI Common Lisp. But it's a
bit higher than your price (at least at Amazon it's $47).

Shawn
From: Paolo Amoroso
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <+gMDP0t=XuGx4ZouoMvamJbEbA4Q@4ax.com>
On Wed, 02 Jul 2003 14:23:54 GMT, Kenny Tilton <·······@nyc.rr.com> wrote:

> I'll mop up my mess. I wrote:

You are a heavy CLOS user, and it shows :)


Paolo
-- 
Paolo Amoroso <·······@mclink.it>
From: Kenny Tilton
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <3F0198DA.9080308@nyc.rr.com>
Zoomby wrote:
> hi
> 
> I'm a lisp newbie comming from the procedural programming world.
> I partly understand how functional programming works, but I have a
> question:
> How does functional programming and object-oriented programming fit
> together?

Use my Cells package, available at the URL below. It let's you have 
objects whose slots (state) are functional, but efficiently so. For example:

(make-instance 'boiler
     :vent-status (c? (if (excessive-p (pressure self))
                         :open :closed)))


-- 

  kenny tilton
  clinisys, inc
  http://www.tilton-technology.com/
  ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay
From: Adam Warner
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <pan.2003.07.01.11.38.24.605317@consulting.net.nz>
Hi Zoomby,

> I'm a lisp newbie coming from the procedural programming world. I partly
> understand how functional programming works, but I have a question: How
> does functional programming and object-oriented programming fit
> together?

How could they not? I like to build functional black boxes that I test and
can rely upon. I then link these together with some hairy state to
hopefully create a useful program. When something goes wrong it's almost
certainly somewhere other than those black boxes. So I see functional
programming as a way to keep complexity to a manageable level within the
entire system.

> I know, you can write single methods/functions that are functional, but
> isn't the whole system you would write procedural with many states?

Many Lisp programs are imperative. As Pascal just wrote, Common Lisp is a
multi-paradigm language.

> The procedural style seems to be the only way to solve some natural
> problems, cause there is always a pool of states that change.

Which is why Lisp is a multi-paradigm language.

> What I need are some ideas how functional programming works with more
> complex programs and not only at the function level. And please correct
> me, if I misunderstood something :-)

Ah, so you want to understand why some other languages are purely
functional. There have been some great discussions on comp.lang.functional.
I'd suggest you consult Google's archives. My one sentence understanding
is that it buys you lazy evaluation, but at price you have recognised.

Common Lisp is also a pragmatic, industrial, powerful and expressive ball
of mud. And that's an endearing quality. Some suffer from pure maths envy,
always wanting to turn Lisp into a language that makes contrived
mathematical code look good. They'll lament Common Lisp's multiple
namespaces, some of its historically derived names or its huge and wasteful
specification. But it still doesn't stop people creating beautiful Common
Lisp code. The most recent example of a wonderful translation is in the
Josephus Problem thread.

Regards,
Adam
From: Martin Thornquist
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <lc65mmfknl.fsf@teleute.netfonds.no>
[ Adam Warner ]

> Ah, so you want to understand why some other languages are purely
> functional. There have been some great discussions on comp.lang.functional.
> I'd suggest you consult Google's archives. My one sentence understanding
> is that it buys you lazy evaluation, but at price you have recognised.

Haskell is lazy, but SML is not (I'm not sure if Ocaml or any of the
other members of the ML family are). What the ML family of languages
buys you is the security net of strong, static, inferred typing.
Proponents of functional languages hold this as something which
prevents many bugs; I'm not so sure if it's worth the price -- which
why I gave up on Haskell.


Martin
-- 
"An ideal world is left as an exercise to the reader."
                                                 -Paul Graham, On Lisp
From: Thaddeus L Olczyk
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <v89bgv8mka0k029vfu46ie9a4n5bctt49i@4ax.com>
On Tue, 01 Jul 2003 15:20:46 +0200, Martin Thornquist
<············@ifi.uio.no> wrote:

>[ Adam Warner ]
>
>> Ah, so you want to understand why some other languages are purely
>> functional. There have been some great discussions on comp.lang.functional.
>> I'd suggest you consult Google's archives. My one sentence understanding
>> is that it buys you lazy evaluation, but at price you have recognised.
>
>Haskell is lazy, but SML is not (I'm not sure if Ocaml or any of the
>other members of the ML family are). What the ML family of languages
>buys you is the security net of strong, static, inferred typing.
>Proponents of functional languages hold this as something which
>prevents many bugs; I'm not so sure if it's worth the price -- which
>why I gave up on Haskell.
I believe all the eager functional languages provide mechanisms for
lazy evealuation. Including both OCaml, and the SML family.

--------------------------------------------------
Thaddeus L. Olczyk, PhD
Think twice, code once.
From: Christopher Browne
Subject: Re: Newbie: Functional and Object Oriented?
Date: 
Message-ID: <bdv9pa$10mffp$2@ID-125932.news.dfncis.de>
Martha Stewart called it a Good Thing ·············@roeschter.de (Zoomby)wrote:
> I'm a lisp newbie comming from the procedural programming world.
> I partly understand how functional programming works, but I have a
> question:
> How does functional programming and object-oriented programming fit
> together?
> I know, you can write single methodes/functions that are functional,
> but isn't the whole system you would write procedural with many
> states? The procedural style seems to be the only way to solve some
> natural problems, cause there is  always a pool of states that change.
> What I need are some ideas how functional programming works with more
> complex programs and not only at the function level. And please
> correct me, if I misunderstood something :-)

Functional programming seems nearly orthogonal to object oriented
programming.

Functional programming generally tries to evade having any "state"
around, whereas the point of having objects is that you have something
that has state.

It is certainly attractive for methods to be functional in many cases,
as that diminishes the risk of the system being made more complex by
there being complex side-effects.

But just as with the much-maligned "GOTO" statement, there _are_ cases
where code is made clearer by using GOTO or by introducing
side-effects.

"Wisdom" is demonstrated by knowing when it is preferable to use/avoid
one or the other...
-- 
select 'cbbrowne' || ·@' || 'acm.org';
http://www.ntlug.org/~cbbrowne/linuxdistributions.html
There are many intelligent species in the universe.  They are all
owned by cats.