Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Why learn Lisp
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  Messages 51 - 75 of 118 - Collapse all  -  Translate all to Translated (View all originals) < Older  Newer >
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Andreas Hinze  
View profile  
 More options Aug 26 2002, 11:22 am
Newsgroups: comp.lang.lisp
From: Andreas Hinze <a...@smi.de>
Date: Mon, 26 Aug 2002 17:22:24 +0200
Local: Mon, Aug 26 2002 11:22 am
Subject: Re: Why learn Lisp
Paolo Amoroso wrote:

> With due respect for your enthusiasm, I don't think that a few weeks worth
> of thinking can bring any significant innovation. The tough part is not to
> understand why a new feature may be useful, but to realize why it may not
> be a good idea.

This might be a little bit off-topic, but what is the current state of the ANSI
standard (AFAIK they are reviewed all five years) ? Are there any activities to
add new features or cleaning up ambiguous items ?

Best
AHz


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kaz Kylheku  
View profile  
 More options Aug 26 2002, 11:39 am
Newsgroups: comp.lang.lisp, comp.lang.scheme
From: k...@ashi.footprints.net (Kaz Kylheku)
Date: 26 Aug 2002 08:39:41 -0700
Local: Mon, Aug 26 2002 11:39 am
Subject: Re: Why learn Lisp

Charlton Wilbur <cwil...@mithril.chromatico.net> wrote in message <news:87znva1cg6.fsf@mithril.chromatico.net>...
> And even then, designing a new language does not necessarily mean
> rejecting all that has gone before.  Did Bertrand Meyer discard what
> he had learned from other languages when he designed Eiffel?  Did
> Bjarne Stroustrup discard what he had learned from other languages
> when he started down the path that led to C++?  Did Kernighan,
> Ritchie, and Thompson discard what they had learned when they created
> C?  Of course not.

Actually I dare say that the answer is yes on all counts. And I would
add the remark that the world would have been better off without
these,
with the possible exception of Eiffel.

These designers, deliberately or not, discarded lots of useful ideas
for
which efficient compilation is difficult to implement. Multiple
dispatch,
garbage collection, dynamic typing.

Stroustrup declined nearly every opportunity to improve on weak areas
of C, in the name of preserving backward compatibility. Actually, many
things can be fixed in an entirely backward compatible way, for
example
allowing arrays to be assigned and returned from functions, or
allowing
the . and -> operators to be interchangeable. Stroustrup could have
specified that C++ evaluation takes place left to right, thereby
eliminating those stupid sequence points that only serve as
programming
pitfalls. That would have been completely backward-compatible as well.
He introduced a completely useless keyword, ``class'' which behaves
only slightly differently from ``struct'', yet he did not fix the
stupid
overloading of the meaning of ``static'', which could have been done
by a new keyword. For example the ``private'' and ``public'' keywords
introduced for writing access specifiers could be used at file scope
to
determine the linkage of an external declaration.

> All of them saw deficiencies in the existing
> languages, and created a new language with what they considered
> strengths and with as few weaknesses as possible.

That's not the case with C; C started out as a deliberately
dumbed-down
imitation of BCPL called B that could fit onto a machine with 8
kilowords
of memory. C was designed to to do job, not to be a showcase of
language
design. That job was maintaining an operating system and related tools
in a reasonably portable and maintainable expression.

In a paper called _The Development of the C Language_, Ritchie admits
that he did not fix the precedence of the & and | operators when
&& and || were added because a whopping 600 kilobytes of C code
already existed.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Friedrich Dominicus  
View profile  
 More options Aug 26 2002, 12:18 pm
Newsgroups: comp.lang.lisp
From: Friedrich Dominicus <fr...@q-software-solutions.com>
Date: 26 Aug 2002 18:14:11 +0200
Local: Mon, Aug 26 2002 12:14 pm
Subject: Re: Why learn Lisp

Friedrich Dominicus <fr...@q-software-solutions.com> writes:

> And then you can check out
> http://www.bagley.org/~doug/shootout/

> Well and got and idea that a Lisp solution must not look much
> different from a C solution.

Ok I'm sorry, english has catched me. Of course it should be "that a
Lisp solution does not have look much different".

I'm sorry for that confusion.

Friedrich


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Fred Gilham  
View profile  
 More options Aug 26 2002, 1:19 pm
Newsgroups: comp.lang.lisp
From: Fred Gilham <gil...@snapdragon.csl.sri.com>
Date: 26 Aug 2002 10:19:39 -0700
Local: Mon, Aug 26 2002 1:19 pm
Subject: Re: Why learn Lisp

> It's not weird at all. In C (and many similar languages), there are
> a lot of different "syntax embellishments" to actually help reading.
> LISP uses only parentheses. This makes it very easy to parse by a
> computer, but not by (mant? most?) humans.

Well, the argument is that in Lisp, eventually you don't `see' the
parentheses --- the mind filters them out as irrelevant to
understanding what's going on.  Then you just start reading code in a
literal sense.  The syntax embellishments aren't necessary.

--
Fred Gilham                                         gil...@csl.sri.com
If there is one consistent theme to be found in the great works of the
20th century, it seems to me to be the presentation of a doomed quest:
the search to find something capable of filling that great void that
has been left in the soul of man by the repudiation of God.
                                            --- Skylar Hamilton Burris


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Richard Krush  
View profile  
 More options Aug 26 2002, 1:41 pm
Newsgroups: comp.lang.lisp
From: Richard Krush <rkr...@gmx.net>
Date: 26 Aug 2002 10:41:48 -0700
Local: Mon, Aug 26 2002 1:41 pm
Subject: Re: Why learn Lisp

Andreas Hinze <a...@smi.de> writes:
> Paolo Amoroso wrote:

> This might be a little bit off-topic, but what is the current state of
> the ANSI standard (AFAIK they are reviewed all five years) ? Are there
> any activities to add new features or cleaning up ambiguous items ?

According to the annual report for year 2000 from the committee [1],
there has been no active projects and generally the committee has been
falling apart.

  [1] http://www.ncits.org/tc_home/j13.htm

Here are some interesting quotes from the aforementioned web-site:

"Membership was stable at eleven in 1999 and 2000, but 2001 paid renewals
may have fallen as low as three."

"J13 continues with no active projects. There was one meeting during
2000, conducted by electronic online chat."

"Despite the best of intentions and genuine interest in standardizing
areas of current development, no project proposals have been
generated. The Chair does not foresee any to be immediately
forthcoming."

--
 Richard Krushelnitskiy   "I know not with what weapons World War III will
 rkrush (at) gmx.net       be fought, but World War IV will be fought with
 http://rkrush.cjb.net     sticks and stones." -- Albert Einstein


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Discussion subject changed to "OT: No active projects at J13 ?? (was Re: Why learn Lisp)" by Andreas Hinze
Andreas Hinze  
View profile  
 More options Aug 26 2002, 2:52 pm
Newsgroups: comp.lang.lisp
From: Andreas Hinze <a...@smi.de>
Date: Mon, 26 Aug 2002 20:52:20 +0200
Local: Mon, Aug 26 2002 2:52 pm
Subject: OT: No active projects at J13 ?? (was Re: Why learn Lisp)
Hi all,
i changed the topic because i found that this now goes far away from the
original thread. I'm not very experienced with Lisp history and when to
introduce new stuff but i'm still wondering about that:

Why aren't there active projects ? At least multithreading and foreign function
support are concepts that would be nice to have in the standard. And i think there
are a lot of other topics too.

> "Despite the best of intentions and genuine interest in standardizing
> areas of current development, no project proposals have been
> generated. The Chair does not foresee any to be immediately
> forthcoming."

Is this process that complicated ? If i look at CLOCCs port library i find the
first "proposal". AFAIK the only purpose of this library is to "hide" differences
in implementations that are not covered by the standard.

I'm _not_ talking about bigger libraries. Erik Naggum made some good comments
about that some time ago. What i mean is that it is less usefull to have a set
of features in almost every lisp implementation when every implementation does
it in their own way (i.e. FFI).

Any idea's ?
Best
AHz


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kent M Pitman  
View profile  
 More options Aug 26 2002, 3:22 pm
Newsgroups: comp.lang.lisp
From: Kent M Pitman <pit...@world.std.com>
Date: Mon, 26 Aug 2002 19:21:28 GMT
Local: Mon, Aug 26 2002 3:21 pm
Subject: Re: OT: No active projects at J13 ?? (was Re: Why learn Lisp)

Andreas Hinze <a...@smi.de> writes:

This isn't OT.

Speaking personally as someone who would have been first in line if he
thought this was a productive tack to take, but not in any official
representative of anything, the answer is simply this:

I personaly think ANSI is a large, too-slow, not-very-useful entity to
be accomodating all but the most low-level basic standards.  It was
probably appropriate to standardize CL itself this way, but even then
it's quite clear that the long time-line caused by ANSI resulted in
some companies going bankrupt in the meanwhile.  Was ANSI the cause?
Probably not.  But did producing an ANSI standard cost a serious lot of
money on the part of all Lisp vendors?  Yes.

Further, there is no evidence that the support already present in the
existing vendors is an impediment to anyone. The amount of work required
to hook yourself into the multithreading component of most vendors is quite
small, and even to port to a different system is often quite small.  There
is a bigger difference on the foreign function call thing, but even then,
it should be possible in most cases to keep that work to a relative minimum.

Users love to point to things like this because they want everything on a
silver platter if they can get it, but the cost of getting this silver platter
is high enough that the rough edges present will buy you more in terms of
other things vendors could provide.

In sum, if vendors perceived that users were failing to buy Lisp
merely because of lack of a standard system of the kind you're talking, then
vendors themselves would rush to advertise these facilities.

If users perceived that the differences were annoying enough, they would
get together themselves and make an informal standard and insist that vendors
adhere, but no such movement has occurred.

The fact that there is no motion on either of these leads me to believe that
users just find this easy to grumble about because it's visible and "seems"
easy.

There is a hidden assumption in all of this that ANSI is the only kind of
standard, and that things are only worthy "community achievements" if they
are standards.  I think these are bad assumptions.  There are more streamlined
ways to make standards, and there are not-formally-standardized-things that
are nevertheless fine good community achievements and resources.  Often,
standards bodies want you to believe otherwise because, after all, they are
in the commercial business of selling you their stamp of approval.  But
think of college degrees: they're nice for those of have them, but their
absence is not proof that the person does not know what they're doing.

> > "Despite the best of intentions and genuine interest in standardizing
> > areas of current development, no project proposals have been
> > generated. The Chair does not foresee any to be immediately
> > forthcoming."
> Is this process that complicated ?

EXPENSIVE.

> If i look at CLOCCs port library i find the first "proposal". AFAIK
> the only purpose of this library is to "hide" differences in
> implementations that are not covered by the standard.

You can't just open the process of change to only a set of known outcomes.
You mostly can just either open to editorial correction to arbitrary change
or nothing.

> I'm _not_ talking about bigger libraries. Erik Naggum made some good
> comments about that some time ago. What i mean is that it is less
> usefull to have a set of features in almost every lisp
> implementation when every implementation does it in their own way
> (i.e. FFI).

If you are a customer of the implementation that isn't meeting your
needs, complain to that vendor. If you are a customer, why isn't "I
need this" a stronger argument than "the standard requires this"
(which personally to me sounds like make-work).  If you're not a
customer, why do you care (other than, again, make-work) whether some
vendor you don't use carries it?  Yes, it might win the occasional debate
point to say CL had these features, but all useful CL's have these features
and you should just assert that fact anyway in a debate.

My bottom line points:
 * I allege that these issues do not stand in the way of anyone
   deploying a successful commercial product.
 * I further allege that money which you want to go to these
   things could better be used addressing vendor-specific issues
   that do stand in the way of successful commercial products.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Discussion subject changed to "Why learn Lisp" by Marc Battyani
Marc Battyani  
View profile  
 More options Aug 26 2002, 4:37 pm
Newsgroups: comp.lang.lisp
From: "Marc Battyani" <Marc.Batty...@fractalconcept.com>
Date: Mon, 26 Aug 2002 22:35:33 +0200
Local: Mon, Aug 26 2002 4:35 pm
Subject: Re: Why learn Lisp

"Mr. Neutron" <nicktsoca...@charter.net> wrote

> I can build rocket ships in my native tongue (C). Translating my rocket
> ship into Lisp results in a broken machine. I am missing doors, windows,
> glass, steering controls, landing gear, wings, and fuel. I have a
> complete toolbox in C. In Lisp, I just have a screwdriver.

Sigh... This subject comes so often here that we could think that there
exists people that know how to post to comp.lang.lisp but not how to use
google.

FYI here is a quote from message news:4wutlo4tq.fsf@beta.franz.com by Jor
Marshall

(with-quote
Item # 3021 - C Tool Belt    Suggested Price $9.95  Our Price $6.50

A true classic, our C Tool Belt comes with all the tools you'll need
for fashioning quality software.  Comfortable, natural material can
be draped around hips.  Basic instruction manual includes directions
for making a buckle.  Rock is made of genuine granite, the same material
used in many of the finest buildings in the world.  Pointy stick has
built-in hardwood handle and may be used by left-handed or right-handed
people with equal ease.

      Features:  all hide construction
                 pocket for spare rock
                 holster for pointy stick

Spare rock sold separately.  Not for sale to residents of
Massachusetts, California, or any other state with restrictions upon
ownership of rocks and/or pointy sticks.

Item # 5274 - Common Lisp Tool Belt   Suggested Price $40,000.  Our Price
$10,000.

Our Common Lisp tool belt is designed with the tinkerer in mind.  The
three-axis Bridgeport Series I Standard Mill (included) is located
on the hip pocket for easy access, while the high-speed Intaglio
Printer is tucked away in the back for more convenient carrying.
Detachable GPS may be worn on wrist.

    Features:  dual cutting heads -- water jet and plasma
               Computer Numerical Control interface
               CRC Handbook, OED, PDR, and DSM IV included
               in documentation

Item # 38661 - C++ Tool Belt   Suggested Price $100.00  Our Price $69.95

Make a fashion statement with our modern C++ Tool Belt.  Features
genuine synthetic rock and over 3,000 custom made pointy sticks so
you'll always have exactly the right tool for the job.  Belt comes
with heavy duty buckles, zippers, velcro, buttons, hook and eye
fasteners, snaps, frogs (both the fastener and the amphibian), clasps,
sequins, lace trim, and mounting points for clip-on suspenders.
Expansion kits of pointy sticks available.

    Features:  trendy colors
               pocket for spare rock
               holster for pointy stick

Note:  Synthetic rock should not be used in situations where it may
come into contact with other objects such as the pointy stick.
Synthetic rock composed of man-made materials, repeated use may cause
skin irritation or death.)    ;*** note the parent nicely closing the
with-quote form ***

If you try goole with "group:comp.lang.lisp lisp better" you find 14500
messages.
The first 3 of these threads are :

Re: *Why* is LISP better?
comp.lang.lisp - 05 Aug 2002, posté par Erik Naggum - Afficher l'
arborescence (97 articles)

Re: How is Lisp "better"?
comp.lang.lisp.x - 28 Jul 1998, posté par Blake McBride - Afficher l'
arborescence (21 articles)

Re: Lisp better than C?
comp.lang.lisp - 25 Dec 1991, posté par U20...@uicvm.uic.edu - Afficher l'
arborescence (17 articles)

As you can see the last one is rather recent. So read before always asking
the same question.

I suggest that we make a few biased demos of lisp features for this kind of
question and then ask people to do the same in C[#,++], J[#,++,ava],
[J]Python, etc.

Marc


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Discussion subject changed to "OT: No active projects at J13 ?? (was Re: Why learn Lisp)" by Christopher Browne
Christopher Browne  
View profile  
 More options Aug 26 2002, 4:40 pm
Newsgroups: comp.lang.lisp
From: Christopher Browne <cbbro...@acm.org>
Date: 26 Aug 2002 20:40:16 GMT
Local: Mon, Aug 26 2002 4:40 pm
Subject: Re: OT: No active projects at J13 ?? (was Re: Why learn Lisp)
In the last exciting episode, Andreas Hinze <a...@smi.de> wrote::

"Nice to have" does not mean that it's likely to actually happen.

>> "Despite the best of intentions and genuine interest in
>> standardizing areas of current development, no project proposals
>> have been generated. The Chair does not foresee any to be
>> immediately forthcoming."
> Is this process that complicated ? If i look at CLOCCs port library
> i find the first "proposal". AFAIK the only purpose of this library
> is to "hide" differences in implementations that are not covered by
> the standard.
> I'm _not_ talking about bigger libraries. Erik Naggum made some good
> comments about that some time ago. What i mean is that it is less
> usefull to have a set of features in almost every lisp
> implementation when every implementation does it in their own way
> (i.e. FFI).

For there to be a standards meeting costs a pile of people a pile of
money, because they have to see about getting together in one spot.
In order for the committee to start a meeting and then say "meeting
adjourned" more than likely costs $100K, and that's a meeting in which
NOTHING actually gets accomplished.

It is _vastly_ more likely that you'd find better value in working on
the "UFFI" project, more than likely by building/improving the binding
to one CL implementation or another.  If you spent $100K on that,
you'd probably be able to get some meaningful improvements and make it
work with a goodly number of CL implementations.
--
(concatenate 'string "cbbrowne" "@acm.org")
http://www3.sympatico.ca/cbbrowne/rdbms.html
Zaphod's just zis guy, you know?


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Discussion subject changed to "Why learn Lisp" by cr88192
cr88192  
View profile  
 More options Aug 26 2002, 7:05 pm
Newsgroups: comp.lang.lisp, comp.lang.scheme
From: cr88192 <cr88...@hotmail.nospam.com>
Date: Mon, 26 Aug 2002 15:04:33 -0700
Local: Mon, Aug 26 2002 6:04 pm
Subject: Re: Why learn Lisp

Fred Gilham wrote:

>> if people don't care I have little reason to implement it...

> You have to do some `supply-side' thinking --- `build it and they will
> come'.  Of course, you are taking the risk that you will build it and
> they'll stay away in droves.  But if you win, you win really big.

maybe.

> If you decided to revive the T implementation, personally I'd
> definitely comment on it, and one part of my comment would be `thank
> you very much'.

t was pretty cool, and also a few details of my current scheme vm were
borrowed from t. now that I think of it though still substantial work is
needed on the vm, and maybe I should work more on making persistence work...

I could look into implementing t, and consider how much work it would be
for my current vm. allready many of the internals of my vm have been being
altered, however most of the changes were intended to make it more
general...

I was considering making a kind of "glue" interface to allow persistent
stuff to reference stuff generated at runtime, this would likely solve a
few problems of mine.

> But I found your language design really frustrating.  You seemed to
> want to combine some aspects of Python, Scheme and Common Lisp.  It
> didn't seem at all promising to me and I thought silence would be the
> most charitable response.

I had thought the mishmash aspect was a good point, oh well...
or was it the features from the various languages I had chosen?...

> You should realize that good self-image comes from accomplishment.  If
> you do something good, you WILL become world famous.  I kid you not.
> That's just the way the Internet is.  You will get messages from all
> over the world either praising you or asking for free upgrades. :-)

yes, but accomplishment is the hard part. at present my most promising
project is my os, even though development has been slow recently.

my language would have been a branch of my vm, which is a branch of my os.
my vm is still cruddy, as an os involves plenty of other work as well...

> So you've got a lot of time on you hands: pick a project and see it
> through.  Then put it out there.  Repeat until satisfied.

maybe can do...

the simplest approach for me right now would be to continue using scheme
but probably add what stuff I was thinking on top.
the alternate syntax could be a different reader, though selecting which
reader to use might be difficult or kludgy. one idea is to select via a
command line option, or the file suffix. another option could be to have
reader and language configuration stuff embeded in comments, though
possibly this would be annoying...

--
<cr88192[at]hotmail[dot]com>
<http://bgb1.hypermart.net/>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Discussion subject changed to "Recognizing accomplishment (was Re: Why learn Lisp)" by Fred Gilham
Fred Gilham  
View profile  
 More options Aug 26 2002, 8:02 pm
Newsgroups: comp.lang.lisp
From: Fred Gilham <gil...@snapdragon.csl.sri.com>
Date: 26 Aug 2002 17:02:34 -0700
Local: Mon, Aug 26 2002 8:02 pm
Subject: Recognizing accomplishment (was Re: Why learn Lisp)

I've been thinking recently that Mike McDonald deserves kudos, and
perhaps apotheosis, for his work on Free CLIM (aka McCLIM).  I know
it's not finished yet, but IMHO it is usable by the adventurous.

(This is not to minimize the contributions of others who worked on
Free CLIM.  The whole thing is amazing to me.)

I recently had occasion to want to experiment with the graph stuff in
CLIM.  I noticed that it wasn't in the Free CLIM I'd checked out, so I
did a CVS update, and lo and behold, there it was, about 90%
functional too! :-)

--
Fred Gilham                                         gil...@csl.sri.com
When an economist criticizes any human institution because it has
failed to convey to mankind an incommunicable attribute of God, we can
safely dismiss that economist. The trouble is, there remains a market
for these economists in academia. I regard this fact as one more piece
of evidence for the failure of tax-subsidized education. -- Gary North


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Discussion subject changed to "Why learn Lisp" by news.verizon.net
news.verizon.net  
View profile  
 More options Aug 26 2002, 10:59 pm
Newsgroups: comp.lang.lisp
From: "news.verizon.net" <vze4c...@verizon.net>
Date: Tue, 27 Aug 2002 02:59:03 GMT
Local: Mon, Aug 26 2002 10:59 pm
Subject: Re: Why learn Lisp
Try reading http://www.paulgraham.com/diff.html followed by
http://www.paulgraham.com/icad.html.  Even if you don't agree you will see
why we like Lisp.

Regards,

John

"Mr. Neutron" <nicktsoca...@charter.net> wrote in message

news:pan.2002.08.25.07.02.46.793119.14463@charter.net...


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Adam Warner  
View profile  
 More options Aug 26 2002, 11:12 pm
Newsgroups: comp.lang.lisp
From: "Adam Warner" <use...@consulting.net.nz>
Date: Tue, 27 Aug 2002 15:16:50 +1200
Local: Mon, Aug 26 2002 11:16 pm
Subject: Re: Why learn Lisp
Hi Fred Gilham,

>> It's not weird at all. In C (and many similar languages), there are a
>> lot of different "syntax embellishments" to actually help reading. LISP
>> uses only parentheses. This makes it very easy to parse by a computer,
>> but not by (mant? most?) humans.

> Well, the argument is that in Lisp, eventually you don't `see' the
> parentheses --- the mind filters them out as irrelevant to understanding
> what's going on.  Then you just start reading code in a literal sense.
> The syntax embellishments aren't necessary.

Yes, you can rely upon an editor's automatic indenting to let you see
whether parentheses are out of place without needing to explicitly count
them.

Furthermore the spare characters like [ ] { } come in really handy when
implementing reader macros.

Regards,
Adam


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Donald Fisk  
View profile  
 More options Aug 27 2002, 12:32 am
Newsgroups: comp.lang.lisp
From: Donald Fisk <hibou00000nos...@enterprise.net>
Date: Tue, 27 Aug 2002 01:28:28 +0100
Local: Mon, Aug 26 2002 8:28 pm
Subject: Re: Why learn Lisp

Kaz Kylheku wrote:

> In article <umi9336kgck...@corp.supernews.com>, cr88192 wrote:
> > Kaz Kylheku wrote:
> >> Nobody cares about the braindamaged spec for your nonexistent language, so
> >> stop
> >> bringing it up, you lunatic. It's not topical here.  Maybe try the
> >> patience of comp.compilers for a change.

> > hell, at least this is some feedback.
> > if others feel similar I guess it explains the lack of reply.

> > if I write a compiler will this topic be more acceptable?...

> Not in this forum unless it is a compiler for the language ANSI Common Lisp.

Since when?   As far as I'm aware, it's for any kind of Lisp
except Scheme, which has its own group, and maybe Emacs Lisp and
AutoLisp for the same reason.

I've posted stuff on MacLisp here not so long ago.   Sosumi.   And
if Paul Graham or anyone else wants to post Arc stuff here for
general discussion, he's welcome to, at least until Arc gets its
own group.

Le Hibou
--
Dalinian: Lisp. Java. Which one sounds sexier?
RevAaron: Definitely Lisp. Lisp conjures up images of hippy coders,
drugs,
sex, and rock & roll. Late nights at Berkeley, coding in Lisp fueled by
LSD.
Java evokes a vision of a stereotypical nerd, with no life or social
skills.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Donald Fisk  
View profile  
 More options Aug 27 2002, 12:33 am
Newsgroups: comp.lang.lisp
From: Donald Fisk <hibou00000nos...@enterprise.net>
Date: Tue, 27 Aug 2002 01:44:53 +0100
Local: Mon, Aug 26 2002 8:44 pm
Subject: Re: Why learn Lisp

Erik Naggum wrote:
>   So far, the willingness to listen does not even extend to Paul Graham's Arc.
>   Novices with a desire to reinvent the world before they know what it is like
>   should take notice of this.  Improving on Common Lisp is /very/ hard.  And
>   most of the "improvements" on Scheme are neither improvements nor Scheme.

Agreed.   Common Lisp is the best language we have.

It even bothers me that people are busy inventing new languages
which are clearly inferior to existing ones in all important
aspects.

This is not to say that people shouldn't try, but that they should
bear in mind that if they cannot claim their language is better
than Common Lisp (or at least a useful subset of it) in at least
one important way, maybe they should keep it to themselves.   It
isn't needed, and there are too many languages already.

And language designers should be able to program in numerous
quite different languages, and should maybe cut their teeth by
designing  a few special purpose languages, as I have done.

This doesn't prevent people inventing languages which aren't
as good as Lisp -- False was worth inventing, to show what could
still be done even if you limit your compiler size to one
kilobyte, for example.

> Erik Naggum, Oslo, Norway

Le Hibou
--
Dalinian: Lisp. Java. Which one sounds sexier?
RevAaron: Definitely Lisp. Lisp conjures up images of hippy coders,
drugs,
sex, and rock & roll. Late nights at Berkeley, coding in Lisp fueled by
LSD.
Java evokes a vision of a stereotypical nerd, with no life or social
skills.

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Donald Fisk  
View profile  
 More options Aug 27 2002, 12:33 am
Newsgroups: comp.lang.lisp
From: Donald Fisk <hibou00000nos...@enterprise.net>
Date: Tue, 27 Aug 2002 01:57:29 +0100
Local: Mon, Aug 26 2002 8:57 pm
Subject: Re: Why learn Lisp

BTDT.   Implemented in C (for my last employer) a library containing
heap
management, (singly, as God intended) linked lists, side-effect free
functions for C's ASCIZ strings, hash tables and a better interface
to Regex.h

This saved me lots of effort.

Greenspun's tenth rule in action, but at least, having implemented
Lisp several times previously, I knew how to do it properly.

Le Hibou
--
Dalinian: Lisp. Java. Which one sounds sexier?
RevAaron: Definitely Lisp. Lisp conjures up images of hippy coders,
drugs,
sex, and rock & roll. Late nights at Berkeley, coding in Lisp fueled by
LSD.
Java evokes a vision of a stereotypical nerd, with no life or social
skills.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Donald Fisk  
View profile  
 More options Aug 27 2002, 12:33 am
Newsgroups: comp.lang.lisp
From: Donald Fisk <hibou00000nos...@enterprise.net>
Date: Tue, 27 Aug 2002 02:07:54 +0100
Local: Mon, Aug 26 2002 9:07 pm
Subject: Re: Why learn Lisp

"Mr. Neutron" wrote:
> I would like to learn how to program in Lisp, so I can appreciate
> something of the history of Computer Science. I am also interested
> in understanding Lisp, because I have read that it teaches you to think
> about problems recursively. But I am still struggling to figure out how
> to write an interesting program in the language.

I was for many months trying to think of an interesting program
to write in Fortran, because number crunching didn't interest me.
Then I discovered Artificial Intelligence.   I was soon pointed
in the direction of Lisp and never looked back.

Almost all programs written nowadays could just as well be
written in COBOL, Fortran, or something similar.   Most programming
problems are deadly dull, and you don't need Lisp for these.   AI
is a different matter -- nothing suffices except Lisp or Prolog.
So look for a problem that you cannot solve easily in your favourite
languages and try Lisp on it.

> If you can explain to a neophyte Computer Scientist why learning to code
> in Lisp will enlighten me and will be worth the pain of getting
> acquainted with it, I'd like to know!

> Also are there any free e-books on programming in Lisp or Scheme?
> Are there any places I can get Lisp (or Scheme) code so I can look at to
> learn how to think in these languages?

Paul Graham's On Lisp, and if you want Scheme there's SICP.

> I am still interested in the way of Lisp and Scheme so I am not closed to
> learning about it. But my only experience with it is a funny taste. It is
> completely opposite of how I think and I can not think at all in this
> language. I just stare at the clisp prompt wondering what I should do
> next. I can write simple programs that process a list, but it is a toy.
> There must be more to it than just making toys.

This is because you're having to think up (Lisp is higher level than
C or Java).   I had the same problem with Prolog, which is higher level
than Lisp, but I persevered, and after heavy use grokked it.

> Thanks

Le Hibou
--
Dalinian: Lisp. Java. Which one sounds sexier?
RevAaron: Definitely Lisp. Lisp conjures up images of hippy coders,
drugs,
sex, and rock & roll. Late nights at Berkeley, coding in Lisp fueled by
LSD.
Java evokes a vision of a stereotypical nerd, with no life or social
skills.

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kaz Kylheku  
View profile  
 More options Aug 27 2002, 1:17 am
Newsgroups: comp.lang.lisp
From: Kaz Kylheku <k...@ashi.footprints.net>
Date: Tue, 27 Aug 2002 05:17:20 +0000 (UTC)
Local: Tues, Aug 27 2002 1:17 am
Subject: Re: Why learn Lisp
In article <pan.2002.08.25.18.02.50.608289.14...@charter.net>, Mr. Neutron
wrote:

> glass, steering controls, landing gear, wings, and fuel. I have a
> complete toolbox in C. In Lisp, I just have a screwdriver.

What toolbox would that be?
The one with strcat and strcpy?
Or the one with malloc and free?
sort and bsearch?
setjmp and longjmp?

Are you aware that Lisp has an object oriented programming system, dynamic
typing, complex numbers, bignum integers, rational numbers, packages,
structural macros, lexical closures, restartable conditions, a sequence
processing library, strings, symbols, vectors, multidimensional arrays,
structs, packages, sophisticated stream I/O, built-in parser and evaluator, ...

Get real.

> That is my frustration with Lisp so far. I can build rockets. But in Lisp
> I am starting all over again. It is sort of intimidating. I am actually
> kind of interested in the challenge. But I need a guide to teach me.
> I just can't find a guide. It would be nice if there was a Lisp for C
> programmers book around.

> That's why I am griping. It's not that I think Lisp sucks. It is that I
> can not communicate in it at all. I am a stranger in a strange land in
> Lisp.

> Bye

--

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kaz Kylheku  
View profile  
 More options Aug 27 2002, 3:02 am
Newsgroups: comp.lang.lisp, comp.lang.scheme
From: Kaz Kylheku <k...@ashi.footprints.net>
Date: Tue, 27 Aug 2002 07:02:27 +0000 (UTC)
Local: Tues, Aug 27 2002 3:02 am
Subject: Re: Why learn Lisp
In article <cf333042.0208260739.379a2...@posting.google.com>, Kaz Kylheku
wrote:

> things can be fixed in an entirely backward compatible way, for
> example
> allowing arrays to be assigned and returned from functions, or
> allowing

Ewww. That's what you get for trying out Google news posting.  The preview
looks normal, then the lines break when you actually post.

Let me guess, Perl? ;)


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kaz Kylheku  
View profile  
 More options Aug 27 2002, 3:02 am
Newsgroups: comp.lang.lisp
From: Kaz Kylheku <k...@ashi.footprints.net>
Date: Tue, 27 Aug 2002 07:02:32 +0000 (UTC)
Local: Tues, Aug 27 2002 3:02 am
Subject: Re: Why learn Lisp

I have 13 years of C under my belt. 1.5 years of Lisp.  I find Lisp code easier
to read. And of course not to mention that reading 100 lines of Lisp can mean
absorbing the semantic equivalent of 10,000 lines of C.

> LISP uses only parentheses. This makes it very easy to parse by a
> computer, but not by (mant? most?) humans.

> In your example above you didn't go all the way. You should also have
> removed all semicolons and replace them with parentheses, etc.

Cruft like semicolons and commas is largely replaced by whitespace. C needs the
extra punctuation because of the infix syntax with unary operators. If you had
a function call like

  printf("%d %d\n" i ++ j)

what would that mean? Does the ++ go with the i or j? Okay in Lisp we would
have parentheses, (incf j). But in C you need the damn commas among the
argument expressions whether or not the ambiguity exists in the particular
expression you are writing.

> Making
> everything look the same has lots of advantages, but some
> disadvantages. The equivalent C code would look like:

> for ( i=0; i<10; i++ )
>   for ( j=0; i<10; j++ )
>     if (i==j)
>       printf( "i=j\n" );
>     else
>       printf( "i not j\n" );

In Lisp I can make a do-nested-times macro that will express the nested looping
idiom concisely:

  (do-nested-times ((i 10) (j 10))
    ...)

This would certainly be worth it if I had lots of such nested
loops in the code.

The macro would be smart enough to generate a loop with any number
of levels of nesting:

  (do-nested-times ((i-1 10) (i-2 10) (i-3 20) ... (i-n 9))
    ...)

You can do a few simple things with C macros, but they quickly run out of
steam. First you give up hygiene, then you just give up.

> This is a very mild example, BTW. In C++ and C99, for example,
> variable definitions (although properly nested) don't have to be
> defined at the beginning of scope.

Whoa, sheer progress! From 1969 all the way to, oh, 1975.

> The following C++ program would
> look like parentheses soup in LISP:

> {
>   File reader( ... parameters... );
>   ...do something with reader...
>   File writer( ... parameters... );
>   ...do something with both reader and writer...
> }

Now try this:

  File reader (...)
  goto label;
  File writer (...)
label:
  ...

Oops, can't skip declarations, better make it:

  File reader (...);
  goto label;
  {
    File writer (...);
  }
label:

> In LISP, you either have to group all these declarations in a single
> let-like expression (assuming the semantics of your algorithm allow

In Lisp, you don't ``have to'' anything. You can compile C++
notation, if you are sufficiently disturbed to actually want it.

It's languages like C++ that force you into ``have to'' situations,
so you have learned that programming languages are operated
by submission.

> it), or open more and more explicit scopes, which make reading more
> and more difficult.

  (with-open-file (in-stream pathname :direction :input)
    .. do something with stream ..
    (with-open-file (out-stream pathname :direction :output)
    ... do something with both streams
      ...))

These scopes make reading easier, because you know exactly what is subordinate
to what.

Anyway, you can make a binding construct which does this kind of flattening:

  (special-let ((var1 init-form-1 ... forms working with var1)
                (var2 init-form-2 ... forms working with var1 and var 2)
                ...))

Perhaps the third parameter of each binding could specify
some finalization form that is evaluated no matter how the
whole block terminates, in reverse order of the definitions:

  (special-let ((in-stream (open ...) (close in-stream) ...)
                (out-stream (open ...) (close out-stream) ...))
    ...)

In this way you could work with any number of streams without
increasing the level of nesting.

Actually a better design would be to get rid of the final forms
body, since you don't need it. Then you can get rid of one
level of parenthesizing:

  (special-bind
    (in-stream (open ...) (close in-stream) ...)
    (out-stream (open ...) (close out-stream) ...))

I might put back some nesting to reduce errors, and make
the initialization and finalization expressions optional:

  (special-bind
    ((in-stream (open ...) (close in-stream)) ...)
    ((out-stream (open ...) (close out-stream)) ...))

Note how this vaguely resembles the syntax of the COND form.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ziv Caspi  
View profile  
 More options Aug 27 2002, 3:18 am
Newsgroups: comp.lang.lisp
From: zi...@netvision.net.il (Ziv Caspi)
Date: Tue, 27 Aug 2002 08:17:09 GMT
Local: Tues, Aug 27 2002 4:17 am
Subject: Re: Why learn Lisp
On 26 Aug 2002 10:19:39 -0700, Fred Gilham

<gil...@snapdragon.csl.sri.com> wrote:
>> It's not weird at all. In C (and many similar languages), there are
>> a lot of different "syntax embellishments" to actually help reading.
>> LISP uses only parentheses. This makes it very easy to parse by a
>> computer, but not by (mant? most?) humans.

>Well, the argument is that in Lisp, eventually you don't `see' the
>parentheses --- the mind filters them out as irrelevant to
>understanding what's going on.  Then you just start reading code in a
>literal sense.  The syntax embellishments aren't necessary.

I don't buy that argument. I both wrote LISP apps and read LISP apps
for quite some time. In many cases, having just written a function,
I'd read it back (always a good practice for catching bugs early),
only to find out that reading was more difficult then writing. I have
experience in other languages as well (Fortran, C/C++, x86 assembler,
and Pascal). The only other language I had a similar experience is RPL
(what you find in some HP calculators, such as their 28 series).

Your experience (and everybody else's on this newsgroup, apparently)
might certainly be different. But for me, LISP was not the "last
language" (to quote someone on this newsgroup) -- I switched to C++
and later to C#. For me, LISP always had almost everything I wanted in
a programming language (real macros, CG, edit-and-continue-debugging,
natural reflection and serialization, multi-dispatch). What it doesn't
have, unfortunately, is a syntax I can live with.

Ziv


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Alain Picard  
View profile  
 More options Aug 27 2002, 4:05 am
Newsgroups: comp.lang.lisp
From: Alain Picard <apicard+die-spammer-...@optushome.com.au>
Date: 27 Aug 2002 18:02:38 +1000
Local: Tues, Aug 27 2002 4:02 am
Subject: Re: Why learn Lisp

"Adam Warner" <use...@consulting.net.nz> writes:
> As I understand it symbols have a number of properties associated with
> them. It would be nice if one of those properties was information about
> the original case of the symbol

Such information _is_ kept; it is in the symbol's name.

e.g.

Starting /usr/bin/lisp ...
CMU Common Lisp release x86-linux 3.0.8 18c+ 31 December 2001 build 3030, running on gondolin

* (symbol-name '|Foo|)
"Foo"
*


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Aug 27 2002, 4:14 am
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.no>
Date: 27 Aug 2002 08:14:34 +0000
Local: Tues, Aug 27 2002 4:14 am
Subject: Re: Why learn Lisp
* zi...@netvision.net.il (Ziv Caspi)
| But for me, LISP was not the "last language" (to quote someone on this
| newsgroup) -- I switched to C++ and later to C#.

  Why is it important to you to argue against this?  Did I somehow fail to make
  it clear that it applied to /many/ people, as opposed to /all/ that would
  make it legitimate to object?  Do you have any new information other than
  what we already know?  What do you wish to accomplish with your posts?

| What it doesn't have, unfortunately, is a syntax I can live with.

  So write your own parser that produces s-expressions.  But you have not even
  tried to adapt to the language or adapt it to yourself, have you?  Why is it
  so important to you write about your unhappiness with both languages and
  other people's opinions and statements?  Perhaps you should try to find
  something you /can/ live with if you are so unhappy with Lisp and this forum?

--
Erik Naggum, Oslo, Norway

Act from reason, and failure makes you rethink and study harder.
Act from faith, and failure makes you blame someone and push harder.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Discussion subject changed to "OT: No active projects at J13 ?? (was Re: Why learn Lisp)" by Andreas Hinze
Andreas Hinze  
View profile  
 More options Aug 27 2002, 6:47 am
Newsgroups: comp.lang.lisp
From: Andreas Hinze <a...@smi.de>
Date: Tue, 27 Aug 2002 12:47:24 +0200
Local: Tues, Aug 27 2002 6:47 am
Subject: Re: OT: No active projects at J13 ?? (was Re: Why learn Lisp)
Kent M Pitman wrote:

> I personaly think ANSI is a large, too-slow, not-very-useful entity to
> be accomodating all but the most low-level basic standards.  It was
> probably appropriate to standardize CL itself this way, but even then
> it's quite clear that the long time-line caused by ANSI resulted in
> some companies going bankrupt in the meanwhile.  Was ANSI the cause?
> Probably not.  But did producing an ANSI standard cost a serious lot of
> money on the part of all Lisp vendors?  Yes.

I didn't know that it is so slow and expensive. That explains a lot.

> Users love to point to things like this because they want everything on a
> silver platter if they can get it, but the cost of getting this silver platter
> is high enough that the rough edges present will buy you more in terms of
> other things vendors could provide.

Right. I was only looking for the advantages of further standardisation
without thinking about the costs.

Your explaination give me a new sight to the hole topic. I didn't realize the
problems behind that hole process. Thanks for your patient explanations.

Sincerly
AHz


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Discussion subject changed to "Why learn Lisp" by Tim Bradshaw
Tim Bradshaw  
View profile  
 More options Aug 27 2002, 7:37 am
Newsgroups: comp.lang.lisp
From: Tim Bradshaw <t...@cley.com>
Date: 27 Aug 2002 12:01:52 +0100
Local: Tues, Aug 27 2002 7:01 am
Subject: Re: Why learn Lisp

* Alain Picard wrote:
> Such information _is_ kept; it is in the symbol's name.

No, it isn't.  What he wants is something like:

(symbol-original-name 'Foo) -> "Foo"

--tim


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Messages 51 - 75 of 118 < Older  Newer >
« Back to Discussions « Newer topic     Older topic »