The Next Generation of Lisp Programmers

422 visualizzazioni
Passa al primo messaggio da leggere

c hore

da leggere,
23 ago 2002, 07:44:4223/08/02
a
"The Linux Developer Lifestyle, Exposed"
http://news.com.com/2100-1001-954929.html?tag=fd_top

A survey on demographics of open source developers.
98.9% male, 41.4% single, mostly in 20s, largest
number aged 21, majority (48%) use Debian with Red Hat
a distance second (13.8%), majority got involved in
open source in second half of 1990s, 70% living in Europe.

This made me wonder...

How many of these people are Lisp programmers.
What does the next generation of Lisp programmers
look like, assuming there is even such a thing.
Are the schools producing them, or is it now
mostly learn-it-yourselfers, a few refugees/stragglers
from the mainstream languages.
Where, if any, will they take Lisp in the future?

Or, despite Lisp being a programmable programming language,
supposedly a DNA-like language and all that, could it
just stagnate and fade into irrelevance from lack of users
and evolvers.

Another thought I had was, back in late 1980s there
was a SLUG conference in I think Univ. of Pennsylvania,
Philadelphia, where the new Symbolics head (J. or Jay
something, what was his name, anyone remember?) gave a
speech saying that "there are only so many lines of Lisp
code in your body"? Anyone remember the number that he
cited?

How many lines of Lisp code can you produce before you
conk out, and have to leave it (for better or worse)
to the next generation?

J.St.

da leggere,
23 ago 2002, 12:15:4523/08/02
a
car...@yahoo.com (c hore) writes:

> "The Linux Developer Lifestyle, Exposed"
> http://news.com.com/2100-1001-954929.html?tag=fd_top
>
> A survey on demographics of open source developers.
> 98.9% male, 41.4% single, mostly in 20s, largest
> number aged 21, majority (48%) use Debian with Red Hat
> a distance second (13.8%), majority got involved in
> open source in second half of 1990s, 70% living in Europe.
>
> This made me wonder...
>
> How many of these people are Lisp programmers.
> What does the next generation of Lisp programmers
> look like, assuming there is even such a thing.

As I consider myself "the next generation":

100% male, single, almost in the 20s, using FreeBSD, living in
Joymany, I mean Germany :)

So I guess, I am quite average (except being a BSD user perhaps). Any
other members of the new generation here?

Regards,
Julian

Pascal Costanza

da leggere,
23 ago 2002, 12:32:3623/08/02
a

I don't know if I qualify for membership in the new generation. However,
here is my data.

Male, single *sigh*, 32 (am I a young lisper or not? ;), using Mac OS X
(and Windows at work), also living in Germany.

I have started to take a close look at Common Lisp in the past few
months (since March) - so I am certainly quite new. ;-)

Pascal

--
Pascal Costanza University of Bonn
mailto:cost...@web.de Institute of Computer Science III
http://www.pascalcostanza.de Römerstr. 164, D-53117 Bonn (Germany)

Jock Cooper

da leggere,
23 ago 2002, 13:39:1123/08/02
a
der_j...@web.de (J.St.) writes:
>
> As I consider myself "the next generation":
>
> 100% male, single, almost in the 20s, using FreeBSD, living in
> Joymany, I mean Germany :)
>
> So I guess, I am quite average (except being a BSD user perhaps). Any
> other members of the new generation here?
>
> Regards,
> Julian
Next generation here.

Male, married, mid 30s, in the USA, using Allegro and CMUCL on Windows and
Linux respectively for my job. I am primarily writing web based applications
(a database editor, and a reporting system) using aserve and portableaserve,
with the occasional data mining or data feed type program.

I came from 15 years of C/Perl on Unix. I was fed up with the lack of
expressiveness and ugliness of those languages when I investigated CL.
Now I'm almost to the point where if I couldn't use CL I'd stop programming.

Greg Menke

da leggere,
23 ago 2002, 14:40:1023/08/02
a
Jock Cooper <jo...@mail.com> writes:

Male, married, mid 30's, Baltimore USA. Using Lispworks on Linux,
CLISP on others- mostly for auxillary tools and my own projects.
Embedded system C/C++/Assembly pays the bills right now. I'm working
towards & waiting for the day when I get to do a full-blown Lisp
project.

I'm also a 10 year DOS/Windows, Visual C, Visual Basic refugee- I quit
that ratrace in 1997 because it was literally making me depressed.

Gregm

Richard Krush

da leggere,
23 ago 2002, 21:30:4223/08/02
a
der_j...@web.de (J.St.) writes:

> car...@yahoo.com (c hore) writes:
>
> As I consider myself "the next generation":
>
> 100% male, single, almost in the 20s, using FreeBSD, living in Joymany,
> I mean Germany :)
>
> So I guess, I am quite average (except being a BSD user perhaps). Any
> other members of the new generation here?
>

Male, single, almost in the 20s, using FreeBSD, living in Oregon, USA.

I'm young by age, but am also very young by my computer age and more
specifically programming and CL. I have started using computers in 1997
(because of my financial situation, I could not afford to buy a computer
until I moved to USA in 1997); has been using FreeBSD since 1998, took up
programming around that time as well and has been teaching myself to
program in CL since 2000. Despite the fact that I have supposedly spent 4
years learning to program, I haven't done anything significant (read
"anything besides book exercises"), so in that respect it's like I've
been born a few months ago.

Regards,
Richard

--
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

cr88192

da leggere,
23 ago 2002, 22:26:3923/08/02
a
>
> So I guess, I am quite average (except being a BSD user perhaps). Any
> other members of the new generation here?
>
well I am not particularly supporting lisp right now (mostly because I am
designing my own language, but don't know if I will go anywhere with it...).

I am 18, single, and presently alone. I have mostly used scheme to a more
minor extent in some of my projects, largely I use a mix of c and scheme
(with a vm I wrote).
most of my larger (where I actually bother to put code on my site) projects
are almost entirely in c though.

I have many practices and wants which I did not feel were being totally
fulfilled by scheme, I had wanted to use a single language once again. I
could have just implemented most of what I wanted in scheme, but I had
figured this was my chance to get creative. my language design currently
borrows a lot from cl, but I am also adding in details from other languages
I have seen.

probably by most people's standards are am a relative newbie to the lisp
experience, so far I have been exposed to lisp for about 4 or 5 months... I
am still much more comfortable writing things in c than either cl or scheme
though...

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

Erik Naggum

da leggere,
24 ago 2002, 00:05:2524/08/02
a
* car...@yahoo.com (c hore)

| How many of these people are Lisp programmers.

I do not consider myself "next generation" anything, but I have contributed
to GNU Emacs just short of a decade, was a world-renown expert on SGML and
related standards until I wrote a book about it and realized that 97.5% of
SGML is braindamaged and I could not gloss over it, anymore. First serious
programming job in 1978 in MACRO-10 on TOPS-10 on PDP-10 -- still in love
with its design. Claims to fame include the four-digit year in Internet
mail (it used to be two, until RFC 1123 in 1989). Began writing in C under
Unix in 1980, discovered Lisp same year. Have written more than 1 million
lines of code in various languages since then. Most of it has been shared
but predates Open Source. Oldest still running application was written in
1982. Hardware history includes Altos and Xenix from 1984, SPARC and SunOS
from 1993, Intel and Debian from 1997. Current systems have 1G and 512M
RAM, dual 600 and 733 MHz PIII, 368G and 40G disk -- literally unthinkable
when I started out, and I still marvel at the low prices for hardware and
the low cost of most software and that I can make a living having fun. Yet
I got sick and tired of C++ after 1993 (SGML project) and spent 1994 through
1996 becoming an expert in Common Lisp, supporting myself as a writer and
journalist. Franz Inc have supported me with Allegro CL on SunOS then Linux
since late 1996. Have also used Scheme actively for a number of years, but
don't tell the Schemers. Other languages include Ada (83, 95), ML (sml-nj,
ocaml), Java, Perl, Python, SQL, SDL, Erlang, Dylan, Smalltalk. Education
in mathematics, phycics, computer science and telecom, philosophy, law,
medicine. Have contributed to international standards in numerous areas
(the authoritative version of Open Source) within ISO, ANSI, IETF and ETSI.

However, I no longer share code with other people by default. My experience
and problem-solving abilities have become the bread and butter of my life,
not just "fun" until something rewarding comes along. Like many older fans
of Free Software and Open Source, I have discovered that it is really only
free in the sense that the time you spend on it is worthless. When people
refuse to help pay for the roof over your head and your meals when you help
them do their well-paying jobs, sooner or later you get seriously pissed.
So since I refuse to help people /significantly/ for free, I get paid well,
instead. I think many Open Source adherents will discover the same over
time and that it does not pay to help young people of today the same way it
was mutually rewarding for old-timers to help young people in the past.

I have remarked here on comp.lang.lisp that Common Lisp is the language you
graduate into. When you have done all the compulsory exercises and you have
acquired the discipline needed to write C++ code that actually works all the
time, you appreciate the better languages. Undisciplined people who write
code that works only some of the time will not understand the point with a
much more powerful language and relinquishing control over the hardware.
(Like, I have not upgraded the CPUs and motherboard on my system because I
would gain nothing from a faster CPU. 100MB/s disks and a 100Mb/s network
connection are still the major bottlenecks for my work, not to mention the
/amazingly/ slow bandwidth to and from the human brain.)

| Where, if any, will they take Lisp in the future?

I think that people will remain focused on making things work with their
current tools as long as these tools require constant upgrading and yet more
expenditure of brain time to learn them. You have to make a conscious
decision to jump /off/ the bandwagon to realize that it was neither going
very fast nor anywhere. XML, for instance, I have called "a giant leap in
no direction at all" and I really do have the credentials to say that.

| Or, despite Lisp being a programmable programming language, supposedly a
| DNA-like language and all that, could it just stagnate and fade into
| irrelevance from lack of users and evolvers.

Nope. When you realize that the tools are getting in the way of getting the
job done (of which Perl is a downright /marvelous/ example), you embrace
Common Lisp or its descendants because they do not get in the way.

| How many lines of Lisp code can you produce before you conk out, and have to
| leave it (for better or worse) to the next generation?

Several million, I should say. If there is anything to this argument, the
number is smaller for other languages. I found that about 10,000 lines of
C++ was enough for my lifetime. I can write SQL only as part of a much
larger solution in another language. If I were to write SQL all day, I
would burn out completely in less than three months. The reason Perl is
used mostly for small programs is that the immune system kicks in if you
overdose on it and although Perl looks like bat barf, most people will just
stop coding before they actually Herl.

I think Common Lisp is a very safe choice. I also think Common Lisp is many
people's last programming language. Perhaps the line you allude to means
that you would never run dry if you wrote in C because the truly unsolved
problems are out of reach, but your creative genius has limits that Common
Lisp may help you exhaust.

--
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.

news.verizon.net

da leggere,
24 ago 2002, 00:12:0224/08/02
a
100% male, married, 29 years old, using redhat, live in usa.

I discovered lisp a few years ago when I picked up EOPL at the
recommendation of a python programmer. At first I was wondering what I was
looking at and now I'm totally addicted. My mind is forever bent.

I code in Perl and C by day, and Lisp by night.. Until I find that elusive
Lisp programming job at least.

Currently toying with a dialect of Scheme for "enterprise" programming.

"J.St." <der_j...@web.de> wrote in message
news:87k7mhe...@jmmr.no-ip.com...

Andy Reiter

da leggere,
24 ago 2002, 02:24:2224/08/02
a
Well, here are 2 new lispers. I am male, 21 years old, single, self
taught and
a college drop out. My brother is 15, and he is already a better coder
than I (except for mathematical aspects, and debugging.)

I started programming when I was 15, but didn't have much time to
study as I
ended up in dotcom as soon as I was elligible to work. My brother
OTOH, had all
the time in the world pursuing what he loves, he is a game programmer
for the
Nintendo Gamboy advance.

When I got laid off from dotcom and I returned home, I got back with
him and now
we are cooperating. He learnt Lisp first, he was playing with scheme
because he
wanted to make a resident gui-scheme sorts of thing for the gameboy,
and I was
learning functional programming on haskell and ML.

I got into Common Lisp after reading Kent Pitman's slashdot interview,
then I
asked by brother around to see if he has any Lisp stuff .. he only had
scheme.
Now I code in CL almost for everything, and he looks over my shoulder
all the
time to see what I am doing. He knows scheme well, so he thinks he
knows CL.

We plan to cooperate and write something substantial together. I want
that thing
to be in CL, he is language agnostic but leans towards C.

He is as crazy as I was about computing; he has 9 computers, none of
them have
the same family CPUs and loves assembler. He collects every kind of
old system
software (OSes, and programming tools) He learns almost everything
new, as soon
as it is out, and hence more susceptible to FUD and hype, just like I
was :-(

I plan to keep a close eye on him and steer him towards the
foundations, instead
of wasting his brain cells on yet another implementation detail.
Better yet, I
will see if he develops any other interests (he has already shown
artistic
abilities) then I know he will grow into a man with broad intersts and
skills,
instead of becoming linear like me.

Thien-Thi Nguyen

da leggere,
24 ago 2002, 04:01:5924/08/02
a
and...@flop.co.uk (Andy Reiter) writes:

> instead of becoming linear like me.

the fantastical tree reaches towards the sun,
but only when the plain earth supports it.

virii and hacks spread about (some undone),
but only when the network purports it.

every string can be re-knotted!
every line can be re-slotted!

when brothers grow old, yet still share the fun,
it's nice to hear when someone reports it.

thi

Wojciech Sobczuk

da leggere,
24 ago 2002, 07:07:1824/08/02
a
Male, single, 21, Poland.

I'm building tons of websites using CMUCL, Portable AllegroServe and
UncommonSQL. And having fun in the meantime, since Lisp is the only
language that makes working with the web a pleasure.

Greetings,
Wojtek

Jochen Schmidt

da leggere,
24 ago 2002, 11:26:1624/08/02
a
c hore wrote:

> "The Linux Developer Lifestyle, Exposed"
> http://news.com.com/2100-1001-954929.html?tag=fd_top
>
> A survey on demographics of open source developers.
> 98.9% male, 41.4% single, mostly in 20s, largest
> number aged 21, majority (48%) use Debian with Red Hat
> a distance second (13.8%), majority got involved in
> open source in second half of 1990s, 70% living in Europe.
>
> This made me wonder...
>
> How many of these people are Lisp programmers.
> What does the next generation of Lisp programmers
> look like, assuming there is even such a thing.
> Are the schools producing them, or is it now
> mostly learn-it-yourselfers, a few refugees/stragglers
> from the mainstream languages.
> Where, if any, will they take Lisp in the future?

I consider myself to belong to "the next generation".

Male, 24, single (well... sometimes not sooo single ;-) ). Using mainly
Linux and living in Nuremberg, Germany.

When I'm not hacking I spend my time with Gothic/Industrial/Independent
Music, reading, watching movies and playing Roleplaying Games (Shadowrun,
AD&D, Freestyle).

It seems that what some here wrote they are doing is parially my fault...
at least if they use for example Portable AllegroServe. Not so well known
here in c.l.l is another freetime project of me "WeirdIRC" a little IRC
client with CLIM GUI which is one of the first applications which runs on
the continuously growing McCLIM. I personally use it with LispWorks CLIM as
my main IRC client.

On http://www.dataheaven.de/weird-irc/ you can get the source a Linux x86
binary and you can see some screenshots of WeirdIRC running on
LispWorks(Linux), MCL(Mac), Symbolics CL (Genera) and CMUCL(Linux).

ciao,
Jochen

--
http://www.dataheaven.de

Nonzero

da leggere,
24 ago 2002, 14:50:5424/08/02
a
car...@yahoo.com (c hore) wrote in message
news:<ca167c61.02082...@posting.google.com>... > "The Linux

Male, 21, Dating around with no plans of marrage. I'm using Red Hat
Linux and LISP to do some on-my-own research in A.I. Never heard of
LISP until I learned about Genetic Programming, but it has become my
language of choice now.

Carl Shapiro

da leggere,
24 ago 2002, 17:10:0824/08/02
a
car...@yahoo.com (c hore) writes:

> Another thought I had was, back in late 1980s there
> was a SLUG conference in I think Univ. of Pennsylvania,
> Philadelphia, where the new Symbolics head (J. or Jay
> something, what was his name, anyone remember?)

I believe that was Jay Wurts.

Gary Klimowicz

da leggere,
25 ago 2002, 01:34:2725/08/02
a
c hore wrote:
> What does the next generation of Lisp programmers
> look like?

47, married, ABD Computer Science eons ago.
Clisp on MS and cmucl on Linux.

I first learned Interlisp at the feet of Mark Stefik
many many years ago (late 70's). During the rest
of graduate school, though, I spent much more time
with UNIX and C. Since then, I've done a lot of
software development in C and C++ and a smattering
of Smalltalk. About 20 years worth of UNIX-based
development, all told. Probably a half million lines of code.

The past two years I've bounced from one startup
to another (as they collapse...). The development tools
in one were mostly C and Visual Basic. The next used Java.
The next used Python. The current company is an MS shop,
relying primarily on C++ (for the legacy apps) and C#
for the new work.

About a year ago, the president of the company-at-the-time
asked a couple of us, "If you could only program in one language
the rest of your life, what would it be?"

My immediate answer was "Lisp", based on my fond memories
of the power and fun of the Interlisp environment.

In the past 15 years, I hadn't followed the development
of Common Lisp much. But after the recent revolving door
of jobs and technologies, I decided it was time to get off
the treadmill and take another look at the language and
environment I believed was probably going to be most fun
for me going forward. Which meant going "backwards" to Lisp.

I read CLtL2 and as much of the HyperSpec as I could fathom
at the time, Graham's ACL, and many of the Common Lisp
tutorials and style guides on the Internet. Took up emacs.

I couldn't believe how much more the language had become
since I last wrote in it. Generic functions, macros, conditions,
CLOS, the deeper numerics, etc., were just awe inspiring.
I couldn't believe my eyes.

It felt much like when I first played with Smalltalk,
but it goes much deeper. It's like coming home
after a long journey.

I know some of these other languages I've mentioned
have their own little things that make them interesting.
But the raw power and beauty of Common Lisp stands alone.

So I count myself, too, among the new generation
of Lisp programmers. I haven't written much Lisp yet,
but it's all I will be writing in from now on.

Trying to learn at the feet of the masters here,

gak

--
Gary Klimowicz, Portland OR
"When I am working on a problem I never think about beauty.
I only think about how to solve the problem. But when I have finished,
if the solution is not beautiful, I know it is wrong." -- Buckminster Fuller


Paolo Amoroso

da leggere,
25 ago 2002, 09:08:3025/08/02
a
On 24 Aug 2002 04:05:25 +0000, Erik Naggum <er...@naggum.no> wrote:

> I do not consider myself "next generation" anything, but I have contributed
> to GNU Emacs just short of a decade, was a world-renown expert on SGML and
> related standards until I wrote a book about it and realized that 97.5% of
> SGML is braindamaged and I could not gloss over it, anymore. First serious

Could you elaborate on the 2.5% of SGML that is not braindamaged? What
ideas are worth saving? Do such ideas also live somewhere else (e.g. in
XML)?


Paolo
--
EncyCMUCLopedia * Extensive collection of CMU Common Lisp documentation
http://www.paoloamoroso.it/ency/README

Paolo Amoroso

da leggere,
25 ago 2002, 09:08:2925/08/02
a
On 23 Aug 2002 04:44:42 -0700, car...@yahoo.com (c hore) wrote:

> Or, despite Lisp being a programmable programming language,
> supposedly a DNA-like language and all that, could it
> just stagnate and fade into irrelevance from lack of users
> and evolvers.

I think that Common Lisp is not fading into irrelevance, and that its usage
is actually increasing. There is some evidence of this, but it takes some
experience with fact finding, both online and offline, to realize this.

Most of those who claim that Lisp is dying probably don't do enough
research, or base such research on inappropriate assumptions, such as
applying to Lisp the success and popularity metrics of consumer products.

Peter Santoro

da leggere,
25 ago 2002, 10:06:5425/08/02
a
c hore wrote:
> "The Linux Developer Lifestyle, Exposed"
> http://news.com.com/2100-1001-954929.html?tag=fd_top
>
> A survey on demographics of open source developers.
> 98.9% male, 41.4% single, mostly in 20s, largest
> number aged 21, majority (48%) use Debian with Red Hat
> a distance second (13.8%), majority got involved in
> open source in second half of 1990s, 70% living in Europe.
>
> This made me wonder...
>
> How many of these people are Lisp programmers.
> What does the next generation of Lisp programmers
> look like, assuming there is even such a thing.

I'm 46 and have 20 years programming experience (mostly C/C++/Java on
the UNIX and Windows platforms), so I'm not sure if I qualify as a next
generation anything.

I prefer technologies that are inherently flexible, stable, and mature.

I primarily use Linux and FreeBSD now. I stopped chasing the MS upgrade
train many years ago, as I got tired of learning a "new and improved"
way of doing the same old thing I already knew how to do 10 different ways.

Given the near death of the American IT services industry, I'm using
some of my "free time" to rediscover "programmable" programming
languages such as forth, CL, and Scheme. I had previously used both
Lisp and Scheme in graduate school.

I was an early user of C++ and at first appreciated the OOP syntactic
sugar over C. As time went on, C++ increased in complexity. Java
seemed nice at first, but it is and has been one big moving target.

CL and Scheme appear to better fit my criteria (inherently flexible,
stable, and mature). I'll know for sure after I use them to implement a
few projects.

Peter
--
Peter Santoro, LLC Member
Peter Santoro Computing LLC
(860) 648-2091
Internet e-mail address: pe...@pscomp.com
Web address: http://www.pscomp.com

Change for change sake is a waste of brain cycles, time, and money.

Erik Naggum

da leggere,
25 ago 2002, 12:34:4225/08/02
a
* Paolo Amoroso

| Could you elaborate on the 2.5% of SGML that is not braindamaged? What
| ideas are worth saving? Do such ideas also live somewhere else (e.g., in
| XML)?

To start from the end, the ideas survived unchanged in XML, neither improved
nor weakened. The first core idea is hierarchical structuring of information.
Lisp has had this forever. The second is textual representation. Lisp has
had this forever. The third is validatability of the structure. Lisp has no
notion of this separate from the semantics of special operators or the usual
evaluation rules. The fourth is an entity structure that allow documents to
share components. Lisp does this by loading things into the image and the
`requireด/`provideด pair of deprecated operators. From there on it is all
downhill for the SGML family.

The really grave mistakes include the element-attribute dichotomy, the new
syntax for every meta-level, such as the attribute-value syntax, the qouting
conventions, character entities and references, document type definitions,
and ultimately the sgml declaration, the primitive language for content
models, the changing syntax according as features are supported or not, the
redundant end-tag, and failure to use a simple escaping mechanism for
characters that could be confused as markup with the character references as
data adding additional complexity. The sheer complexity of parsing SGML and
XML and presenting it to the caller lies mainly in the syntactic mess and
the utter lack of an intelligent model for in-memory representation. (DOM
is completely braindamaged with no redeeming qualities.)

Furthermore, the more you think about things in SGML terms, the more you
realize that fully explicit hierarchical structure is not /enough/. You need
macros that take parameters and that expand into commonly used forms and you
need a content model language that is amenable to changes and support layered
transition from one version to another. The straitjacket that SGML presents
to your information structuring is actually a serious limitation and not at
all the freedom from implementation-dependence that it set out to be.

In brief, you are better off just grasping that you need a uniform syntax, a
hierarchical structure, and a macro mechanism that produces a different
structure in memory when processing it -- and the implement this in Common
Lisp, instead. Simplicity and elegance are found in getting rid of the junk
and moving the complexity to the processor instead of the source language.
What SGML has that is not braindamaged and that was not taken from other
languages before it is basically limited to the validatability and the entity
structure. The latter is underrated and large misunderstood and misused, so
it takes some effort to understand how to use it properly, but it should grow
to become a fully-fledged macro system before it becomes fully useful.

Tim Bradshaw

da leggere,
25 ago 2002, 12:58:1725/08/02
a
* Erik Naggum wrote:

> What SGML has that is not braindamaged and that was not taken from
> other languages before it is basically limited to the
> validatability and the entity structure.

One thing that I've always found with validatability in SGML and XML
is that it ends up being almost impossible to express what you need to
express to ensure something is valid in a precise enough sense.

It's a very long time since I've thought hard about SGML, but I
remember that there were all sorts of things that you could do in DTDs
which would help you express things (`inclusions' and `exclusions' are
the only placeholders my memory has left but I'm not at all sure if
these were actually to do with this). I also remember that these
features were so hard to use that no-one actually did use them.

XML DTDs seem to have been simplified to the point where you can't
actually express anything useful at all, and instead you are meant to
start climbing some spiral of standards and semi-standards and just
plain non-standards like schemas (of which there seem to be many
kinds) and so on, which might actually end up by allowing you to
express the constraints that matter, but probably actually don't. The
end result is something even more complex than SGML was, and rapidly
evolving to boot.

Maybe I've missed the point of what you are saying, or of what SGML
could do, but my impression is that while validatability is clearly
very desirable goal, SGML/XML don't actually provide it in a way that
makes it useful. Of course, there are examples where what they provide
*is* useful (maybe the HTML DTD are examples of mostly-useful one).

--tim

Christopher Browne

da leggere,
25 ago 2002, 14:33:1325/08/02
a
In an attempt to throw the authorities off his trail, Tim Bradshaw <t...@cley.com> transmitted:

> Of course, there are examples where what they provide *is* useful
> (maybe the HTML DTD are examples of mostly-useful one).

That would only be true if HTML was used as an SGML application where
documents could realistically be expected to conform to the HTML DTD.

When I generate HTML, I normally _do_ expect _MY_ HTML to in fact be
conformant (or at least very nearly so).

But in practice, HTML is nothing more than a "tag soup," where you
throw in a <B> somewhere near where you want bold text to start, and a
</B> somewhere later.

If part of that needs to be <it> italicized, </it> people typically do
not much want to care if they are doing totally illegitimate things
like having <b> badly <it> nested </b> structures </it>.

If you try to point out that that is <em> wrong </em>, you'll just get
<blink> flamed </blink> because you're being a foolish pedant.

Netscape and Internet Exploder are expected to do "the right thing"
even with 'tag soups' that have gone seriously off.
--
(reverse (concatenate 'string "moc.enworbbc@" "sirhc"))
http://cbbrowne.com/info/
"Huh? Windows was designed to keep the idiots away from Unix so we
could hack in peace. Let's not break that." -- Tom Christiansen

Erik Naggum

da leggere,
25 ago 2002, 15:06:4325/08/02
a
* Tim Bradshaw

| Maybe I've missed the point of what you are saying, or of what SGML could
| do, but my impression is that while validatability is clearly very desirable
| goal, SGML/XML don't actually provide it in a way that makes it useful.

Please note that I listed "the primitive language for content models" as one
of the grave mistakes. Validatability is a /good idea/ in SGML that is not
achieved with SGML. XML did not go anywhere useful with any of this. I am
continually amazed that people do not see through the crap.

Raymond Tam

da leggere,
25 ago 2002, 15:08:4925/08/02
a
car...@yahoo.com (c hore) wrote in message news:<ca167c61.02082...@posting.google.com>...
>
> This made me wonder...
>

male, single, 27

learn the technology that all dot-com use (ie, jsp and other perl cpi)
for web application, and thought there must be a better way to build
that category of application.
Then came across Graham's 'beating the average' article,
following the light and digging lisp since.

raymond

Tim Bradshaw

da leggere,
25 ago 2002, 14:37:5225/08/02
a
* Christopher Browne wrote:

> That would only be true if HTML was used as an SGML application where
> documents could realistically be expected to conform to the HTML
> DTD.

> [...]

> But in practice, HTML is nothing more than a "tag soup," where you
> throw in a <B> somewhere near where you want bold text to start, and a
> </B> somewhere later.

Yup. I particularly like the cross-serial stuff you mention
(<x><y></x></y>), as well as the lovely little droppings that visual
systems leave, like tiny bits of bold whitespace all over the place.

Anyway, I think what I *meant* to say was that HTML could have been a
case where the DTD actually is a reasonable description of the
structures that made sense. In practice, as you say, it's tag soup
all the way.

--tim

Tim Bradshaw

da leggere,
25 ago 2002, 15:51:3725/08/02
a
* Erik Naggum wrote:

> Please note that I listed "the primitive language for content
> models" as one of the grave mistakes. Validatability is a /good
> idea/ in SGML that is not achieved with SGML.

My apologies.

> XML did not go anywhere useful with any of this. I am continually
> amazed that people do not see through the crap.

XML seems to have made it enormously worse by the standard `simplify
too far and then add back in the power you need as a series of hacks'
trick, based on something that was already both too weak and too
complicated. The end result is something that is still probably too
weak, but very, very complicated.

This is kind of reminiscent of LDAP, which was once a simplification
of X.500, but is now probably much more complicated.

--tim

foomaster1200

da leggere,
25 ago 2002, 16:20:2325/08/02
a
car...@yahoo.com (c hore) writes:

> "The Linux Developer Lifestyle, Exposed"
> http://news.com.com/2100-1001-954929.html?tag=fd_top
>
> A survey on demographics of open source developers.
> 98.9% male, 41.4% single, mostly in 20s, largest
> number aged 21, majority (48%) use Debian with Red Hat
> a distance second (13.8%), majority got involved in
> open source in second half of 1990s, 70% living in Europe.
>
> This made me wonder...
>
> How many of these people are Lisp programmers.
> What does the next generation of Lisp programmers
> look like, assuming there is even such a thing.

> Are the schools producing them, or is it now
> mostly learn-it-yourselfers, a few refugees/stragglers
> from the mainstream languages.
> Where, if any, will they take Lisp in the future?
>

I got hooked because of the editor I use. ie. Emacs. I've developed
Java, C, Perl applications in Emacs for years now, but this year I
started to take a keen interest in Emacs LISP. I started creating mode
extensions, reading my news/mail and chatting in Emacs and started
needing a full understanding of LISP in general. BTW, I recommend the
Emacs LISP References Manual as a great document on LISP.

I imagine many people make their entry into the LISP world via Emacs.

--
JAPAN is a WONDERFUL planet -- I wonder if we'll ever reach
their level of COMPARATIVE SHOPPING...

Oleg

da leggere,
25 ago 2002, 18:37:0525/08/02
a
Christopher Browne wrote:

> If part of that needs to be <it> italicized, </it> people typically do
> not much want to care if they are doing totally illegitimate things
> like having <b> badly <it> nested </b> structures </it>.

Who said proper nesting is intrinsically a good thing, silly rules made up
by mortals notwithstanding?

Oleg
--
"It's because they're stupid, that's why. That's why
everybody does everything." -- Homer Simpson.

Joe Marshall

da leggere,
25 ago 2002, 18:47:2525/08/02
a

"Erik Naggum" <er...@naggum.no> wrote in message news:32391507...@naggum.no...

>
> Have also used Scheme actively for a number of years, but
> don't tell the Schemers.

I saw that.

Pierre R. Mai

da leggere,
25 ago 2002, 19:02:1725/08/02
a
Oleg <oleg_i...@myrealbox.com> writes:

> Christopher Browne wrote:
>
>> If part of that needs to be <it> italicized, </it> people typically do
>> not much want to care if they are doing totally illegitimate things
>> like having <b> badly <it> nested </b> structures </it>.
>
> Who said proper nesting is intrinsically a good thing, silly rules made up
> by mortals notwithstanding?

Who said driving on the right was intrinsically a good thing, silly
rules made up by mortals notwithstanding? Yet adhering to this silly
rule, one it was made up, makes a whole lot of sense.

Regs, Pierre.

PS: Of course everyone who has driven both ways knows that driving on
the left is intriniscally better ;)

--
Pierre R. Mai <pm...@acm.org> http://www.pmsf.de/pmai/
The most likely way for the world to be destroyed, most experts agree,
is by accident. That's where we come in; we're computer professionals.
We cause accidents. -- Nathaniel Borenstein

Oleg

da leggere,
25 ago 2002, 19:33:0325/08/02
a
Erik Naggum wrote:

> I also think Common Lisp is
> many people's last programming language.

Are you saying that using Lisp is positively correlated with death
likelihood, all other factors (such as age) being equal? Links, references?

Or are you saying that people knowing Lisp are less likely to learn a new
language than, say, people knowing C++, all other factors being equal?

I'd say, if you don't emphasize "all other factors being equal", any
ancient language (FORTRAN or Lisp that is) is likely to be your last :)

Erik Naggum

da leggere,
25 ago 2002, 22:08:0825/08/02
a
* Oleg <oleg_i...@myrealbox.com>

| Who said proper nesting is intrinsically a good thing, silly rules made up
| by mortals notwithstanding?

It is not the proper nesting that is the problem. It is the infinitely stupid
separation of start- and end-tags. If you wrote @bold{foo} instead of
<bold>foo</bold>, you would not even /want/ to say @bold{foo @italic{bar}
zot} if you expected to get foo in bold, zot in italic, and bar in both.
The stupidity of <bold>foo<italic>bar</bold>zot</italic> is not in nesting,
it is in the moronic syntax. I related my discovery that syntax matters
when I had worked with SGML for half a decade. It is because of the stupid
syntax of SGML that things turn bad when people try to use it. It is not
because of some highly abstract concept such as proper nesting, which people
do not, in fact, understand without serious mental effort. (The reason many
people do not understand Lisp but prefer multiple layers of different colors
and shapes as they move up the abstraction ladder is very closely releated
to this. In nature, things that really are the same look different to us
because we have a really hard time abstracting away physical size, and it
sometimes takes genius to discover the counter-intuitive role that /scaling/
has in human understanding.)

The otherwise pretty smart people who dreamt up generalized markup (which is
itself an important abstraction that few people have made independently)
made a very serious mistake in making "tags" independent constructs of the
element. Yes, abstract elements have starts and ends, but it is a serious
mistake to make both sides verbose and explicit. (The reason many people do
not understand Lisp but prefer murky syntaxes where the edges are intuited
instead of made explicit is also related to this lack of natural ability to
deal with explicit edges. We seem to prefer the wrong kind of simplicity
naturally, or find the wrong kind of simplicity too rewarding at too early
an age, and people who refuse to think about things tend to go very wrong.
For instance, people generally think that 2+2 is 4. But it is not. It is
only when this expression is explicitly delimited from side-effects that
the simple folk understanding holds. (+ 2 2) is always 4. In 3*2+2, 2+2 is
definitely not 4, and it would be wrong to think about 2+2 to begin with.
Most people wil recognize that the edges have moved in this expression, but
fail to understand the power of explicit edges because they think they can
always see them, just like stupid people for /ages/ (not just after computers
arrived on the scene) have thought that they could omit the century in dates
because nothing would ever last longer than 100 years. Old and ancient works
of art often contain the day, month, and year of the century, but you have
to make some highly educated guesses as to which century because stupid
people have thought the edges of the century needed not be specified. It is
wrong to give stupid people the means to hurt themselves. Verbose, explicit
start- and end-tags can only cause harm when stupid people use them, and
when it comes to entering text for text processing applications, otherwise
smart people often turn into vegetables because they think the problems that
text processing presents are /stupid problems/ that are below them.)

When you give people verbose, explicit edges of elements, they will think of
them the wrong way. It is not proper nesting that they do not understand.
It is the fact that they see a kind of different edges than the syntax wants
to represent. This is not a problem unless you are anal-retentive about a
different kind of edges. If you wanted to make proper nesting work, you
would make it very, very hard to make mistakes, such as by using the exact
same terminator of all elements and make sure that you could not possibly
mistake a start or end for anything else. If you want people who see the
wrong kind of edges to learn to deal with it, you must present them with an
incentive to do so, not an incentive to break your rules. This is how syntax
matters. This is why people do amazingly stupid things in languages with
ugly syntaxes and behave rationally and write more elegant code when the
syntax is more elegant.

I find it ridiculous and evidence of a massive lack of understanding of the
world they live in when someone argues /in a newsgroup for Lisp/ against
proper nesting as intrinsically a good thing. Of /course/ proper nesting is
intrinsically a good thing! It is simply how things are structured in this
world. If you fail to understand this, what /are/ you doing with Lisp?

However, when it comes to font changes in documents, there is no point in
making the edges visible to the user exactly as found in the /underlying/
structure. I write *bold* and /italic/ and _underline_ and `fixed´ in Gnus,
for instance, and I think this is the right thing. Whatever the underlying
representation, the user interface can do me the favor of showing me bold
and italic and special characters properly. There is no point in forcing
this on people, just as one would normally store a paragraph as one line of
text, but show it as broken at the right margin by word boundaries. Then,
whatever the proper way to represent bold and italic internally, the user
would not need to be aware of it. WYSIWYG works great for the lowest level
of information structuring, where we have become used to visual clues.
Punctuation, capitalization, italics, paragraph breaks, etc, all live at the
same conceptual level -- different from almost everything else. It is wrong
for a markup language to force people to do weird things at this level.

If you /understand/ proper nesting, there is no problem. If you do not want
to understand it further than you already have, that will be evidenced in
the choice of a verbose end-tag and tags that close at the wrong point as
seen by the user. Whether you use \i{foo} or @i{foo} or <i foo> does not
matter much, but using <i>foo</i> is a major disaster as far as teaching the
users the value of structuring information is concerned.

In many important ways, SGML is its own worst enemy. It has managed to
teach information structuring completely backwards. Instead of making the
edges explicit but non-intrusive as in Common Lisp, the edges are much too
visible and verbose with the stupid tags that very quickly consume more of
the large volume of characters in SGML/XML documents than the contents. I
am sure it was thought of as useful back when people needed to be converted,
but once converted, it gets in the way more than anything else and leads
people to make mistakes if they do not think very carefully about what they
try to do. Most people would rather die than think, in fact, many do, so if
one wishes to teach information structuring, it must be made conducive to
accomplish people's fairly immediate goals. SGML fails miserably in this
regard. Once you understand the concepts, SGML is harder than any of the
alternatives. And if you do not understand the concepts, SGML is harder
than any of the alternatives. Only when you are beginning to cross the
border between not understanding and understanding does SGML offer something
of significant value -- that is, as long as you think all these tags are
kind of cool and typing markup is great idea. This interim stage should
pass fairly quickly unless you are working specifically with the languages.
(That was my excuse...)

Erik Naggum

da leggere,
25 ago 2002, 22:09:2425/08/02
a
* Oleg <oleg_i...@myrealbox.com>

| Are you saying that using Lisp is positively correlated with death
| likelihood, all other factors (such as age) being equal?

No.

| Or are you saying that people knowing Lisp are less likely to learn a new
| language than, say, people knowing C++, all other factors being equal?

No.

| I'd say, if you don't emphasize "all other factors being equal", any ancient
| language (FORTRAN or Lisp that is) is likely to be your last :)

You tire me.

Oleg

da leggere,
25 ago 2002, 22:18:2625/08/02
a
Pierre R. Mai wrote:

>> Who said proper nesting is intrinsically a good thing, silly rules made
>> up by mortals notwithstanding?
>
> Who said driving on the right was intrinsically a good thing, silly
> rules made up by mortals notwithstanding?

Funny, but flawed analogy. There is a perfectly good reason for everyone to
agree to drive on one side of the road (to avoid collisions). What's the
reason to enforce proper nesting? Not having to do proper nesting can save
space.

Oleg
P.S. I just thought of something: only countries with roads not leading to
other countries drive on the left.

Oleg

da leggere,
25 ago 2002, 22:37:4725/08/02
a
Erik Naggum wrote:

> You tire me.

Erik, your being logorrheic is no excuse to also be rude.

Erik Naggum

da leggere,
25 ago 2002, 23:20:1425/08/02
a
* Oleg <oleg_i...@myrealbox.com>

| Erik, your being logorrheic is no excuse to also be rude.

Behave yourself. Personal messages of this caliber should not be posted to
a public newsgroup. I did not attack you, so there is absolutely no excuse
for your out-of-control emotions to bother anyone else. When you receive
criticism, listen to it and pull yourself together if your emotions run amuck.
Realize that you may tire people and do something constructive about it
instead of behaving even /more/ like a fucking moron, even if it makes you
feel better for having taken revenge for your inability to deal with what
another person has told you. Such primitive behavior does not belong in
public. If you still feel like displaying your lack of intelligent coping
strategies, write a scathing message so you feel better, then do not post it.

Anton N. Mescheryakov

da leggere,
26 ago 2002, 02:48:2226/08/02
a
car...@yahoo.com (c hore) wrote in message news:<ca167c61.02082...@posting.google.com>...
> "The Linux Developer Lifestyle, Exposed"
> http://news.com.com/2100-1001-954929.html?tag=fd_top
>
> A survey on demographics of open source developers.
> 98.9% male, 41.4% single, mostly in 20s, largest
> number aged 21, majority (48%) use Debian with Red Hat
> a distance second (13.8%), majority got involved in
> open source in second half of 1990s, 70% living in Europe.
>
> This made me wonder...
>
> How many of these people are Lisp programmers.
> What does the next generation of Lisp programmers
> look like, assuming there is even such a thing.
> Are the schools producing them, or is it now
> mostly learn-it-yourselfers, a few refugees/stragglers
> from the mainstream languages.
> Where, if any, will they take Lisp in the future?

Male, single, 22 yrs. old, using free OS since early 1999 (march or
so), currently Debian 3.0 (but with major trend to compiling sources
myself, so destribution is just a backbone). Live in Russia, Moscow
region. Student (officaly "research assistant" if I translated
correctly) in shock wave physics (academic, not military), perform
experiments. At work, I did't write code too often, but this job tends
to increase steadly. Programming is my hobby, along with computer
graphics (2D/3D) and many others, but possible favorite one. I was
scared by rigours of C++/STL and Java, idols of modern IT. After long
trip, found Lisp. Currently using CLISP and CMUCL under GNU/Linux for
any new programs. My favorite lisp textbook is famous "Gentle
introdution...", favorite handbooks are HyperSpec and CLtL2 (they do't
differ too much, anyway, despite HyperSpec is overhyperreferenced) and
"On Lisp". AFAIK, Lisp is't especialy popular in Russia by historical
reasons, so finding printed books is major problem. Currently I try to
write strategic game completely _on_lisp_ - just a hobby project in
spare time. BTW, summer holydays are about to end, so spare time will
be thin substance.

Hope it helps somewhat with your poll. Sorry about any English
mistakes I [mis]wrote.
With best regards,
Anton

Ray Blaak

da leggere,
26 ago 2002, 02:50:0726/08/02
a
"Gary Klimowicz" <g...@pobox.com> writes:
> So I count myself, too, among the new generation
> of Lisp programmers. I haven't written much Lisp yet,
> but it's all I will be writing in from now on.

More power to you. How will you be making your money?

--
Cheers, The Rhythm is around me,
The Rhythm has control.
Ray Blaak The Rhythm is inside me,
bl...@telus.net The Rhythm has my soul.

Fredrik Sandstrom

da leggere,
26 ago 2002, 04:46:0126/08/02
a
In article <ca167c61.02082...@posting.google.com>, c hore wrote:
> What does the next generation of Lisp programmers
> look like, assuming there is even such a thing.

Male, single, 24.

Took up programming in 1986 (age 8). BASIC, Pascal, Z-80 assembler.
Later C.

Computer Science student since 1997. Discovered Common Lisp (via elisp) the
same year.

Using CMUCL and CLISP on Debian GNU/Linux, for educating myself and for
smallish personal projects.


--
Fredrik Sandström
fre...@infa.abo.fi

Ziv Caspi

da leggere,
26 ago 2002, 06:18:3126/08/02
a
On 26 Aug 2002 02:08:08 +0000, Erik Naggum <er...@naggum.no> wrote:
[...]

>
> If you /understand/ proper nesting, there is no problem. If you do not want
> to understand it further than you already have, that will be evidenced in
> the choice of a verbose end-tag and tags that close at the wrong point as
> seen by the user. Whether you use \i{foo} or @i{foo} or <i foo> does not
> matter much, but using <i>foo</i> is a major disaster as far as teaching the
> users the value of structuring information is concerned.
>

And yet the question of proper nesting is different than the question
of redundant information in end-tags. XML has proper nesting,
redundant end-tags information, and I've yet to see an XML document
where the author got it wrong.

It is not obvious that use of \i{foo} (or {i foo}) is always better
than use of <i>foo</i>. In TeX and LaTeX, for example, once the scope
gets "too big", a switch is made to the \start{}...\stop{} way of
doing things. While redundant, it helps in catching the types of
mistakes people (as opposed to computers and geeks) tend to make.

You make some misleading remarks with your (+ 2 2) vs. 2 + 2 example.
(+ 2 2) can certainly appear in a scope that modifies it to mean any
number of things other than 4. The difference between LISP and
Algol-like languages (say, C) here is that in C it is usually quite
easy to determine where the enclosing context that might affect the
expression starts and stops (assuming this is not a string/remark/etc,
you can limit your reading to the area between the previous and next
semicolons, for example). This cannot be said about LISP.

Redundancy in visual appearence has been shown to help people identify
things quickly. This is why, for example, UPPERCASE is less easy to
read than lowercase (lowercase letters differentiate not only by form,
but also by whether they extend above and below the x-height region).
In a similar manner, usage of () for expressions, {} for compounds,
and semicolons to terminate statements helps people when reading code.
I was once in a project that took a LISP prototype and implemented it
in C for an embedded computer. Reading the LISP sources from printouts
was incredibly painful when compared with C, despite the fact that it
was shorter by a factor of three.


Takehiko Abe

da leggere,
26 ago 2002, 05:46:0826/08/02
a
In article <3d69f031.166956420@newsvr>, zi...@netvision.net.il (Ziv Caspi) wrote:

> Reading the LISP sources from printouts was incredibly painful
> when compared with C,

when it is not properly formatted.

--
This message was not sent to you unsolicited.

c hore

da leggere,
26 ago 2002, 09:30:5326/08/02
a
Erik Naggum <er...@naggum.no> wrote:

> I have remarked here on comp.lang.lisp that Common Lisp is the language you
> graduate into. When you have done all the compulsory exercises and you have
> acquired the discipline needed to write C++ code that actually works all the
> time, you appreciate the better languages. Undisciplined people who write
> code that works only some of the time will not understand the point with a
> much more powerful language and relinquishing control over the hardware.
> ...


> I also think Common Lisp is many
> people's last programming language.

The opposite trajectory, Lisp as first (or second) language,
is one thing I wonder about nowadays. What if Lisp is imposed
(or chosen) at an early stage. Certainly, less "appreciation" at
first because young, inexperienced student/trainee did not
pass through as much other-language programming beforehand.
But I think and hope that in the end, a good programmer
could still result. Actually, I probably shouldn't have to
worry. After all, for most of the AI-boomers, Lisp was
their first (or second or third) language as undergraduates
or beginning graduate students, and that generation turned
out alright (and produced Common Lisp), didn't it.

> Perhaps the line you allude to means
> that you would never run dry if you wrote in C because the truly unsolved
> problems are out of reach, but your creative genius has limits that Common
> Lisp may help you exhaust.

Interesting conjecture as to the context of the new Symbolics
CEO's statement. I'm not sure it was that clever
though---a point about language---otherwise I think that I
would have remembered the context.

Maybe it was something more mundane, like..."You have less
than 100,000 lines of Lisp code in your body, therefore
you should be as productive as possible given that lifetime
quota, therefore buy Symbolics"...or something along
those lines.

Gary Klimowicz

da leggere,
26 ago 2002, 09:35:4526/08/02
a
Ray Blaak wrote:
> "Gary Klimowicz" <g...@pobox.com> writes:
>> So I count myself, too, among the new generation
>> of Lisp programmers. I haven't written much Lisp yet,
>> but it's all I will be writing in from now on.
>
> More power to you. How will you be making your money?

I manage software developers who are on the treadmill (actually,
manage the managers.)

I probably won't be able to extricate myself from such a dual existence
for a while. In the meantime, there is always study.

--
gak


Raymond Toy

da leggere,
26 ago 2002, 09:40:4926/08/02
a
>>>>> "Oleg" == Oleg <oleg_i...@myrealbox.com> writes:

Oleg> Pierre R. Mai wrote:
>>> Who said proper nesting is intrinsically a good thing, silly rules made
>>> up by mortals notwithstanding?
>>
>> Who said driving on the right was intrinsically a good thing, silly
>> rules made up by mortals notwithstanding?

Oleg> Funny, but flawed analogy. There is a perfectly good reason for everyone to
Oleg> agree to drive on one side of the road (to avoid collisions). What's the
Oleg> reason to enforce proper nesting? Not having to do proper nesting can save
Oleg> space.

Oleg> Oleg


Oleg> P.S. I just thought of something: only countries with roads not leading to

Oleg> other countries drive on the left.

I think there's a road going from England to France now.

Ray

Erik Naggum

da leggere,
26 ago 2002, 10:01:3026/08/02
a
* Ziv Caspi

| It is not obvious that use of \i{foo} (or {i foo}) is always better than use
| of <i>foo</i>. In TeX and LaTeX, for example, once the scope gets "too
| big", a switch is made to the \start{}...\stop{} way of doing things. While
| redundant, it helps in catching the types of mistakes people (as opposed to
| computers and geeks) tend to make.

This is a good point, but my counter-argument is that your editor should
make these things easier for you if the element contents becomes too large.

| You make some misleading remarks with your (+ 2 2) vs. 2 + 2 example. (+ 2
| 2) can certainly appear in a scope that modifies it to mean any number of
| things other than 4.

Sure, but you will prove my point when you demonstrate the magnitude of the
work involved in making alternative interpretations.

| The difference between LISP and Algol-like languages (say, C) here is that
| in C it is usually quite easy to determine where the enclosing context that
| might affect the expression starts and stops (assuming this is not a
| string/remark/etc, you can limit your reading to the area between the
| previous and next semicolons, for example). This cannot be said about LISP.

Sorry, but this is nonsense.

Takehiko Abe

da leggere,
26 ago 2002, 10:01:4126/08/02
a
In article <ca167c61.02082...@posting.google.com>,
car...@yahoo.com (c hore) wrote:

> The opposite trajectory, Lisp as first (or second) language,
> is one thing I wonder about nowadays. What if Lisp is imposed
> (or chosen) at an early stage. Certainly, less "appreciation" at
> first because young, inexperienced student/trainee did not
> pass through as much other-language programming beforehand.

Those who started early with Common Lisp are going to hit
many walls while using the language, only to discover the
solutions have been there within the language all the time.
That way, one can appreciate the wisdom put into the langage.
That is my experience and it is a humbling one.

> But I think and hope that in the end, a good programmer
> could still result.

I certainly hope so.

Tim Bradshaw

da leggere,
26 ago 2002, 09:48:5626/08/02
a
* Raymond Toy wrote:

> I think there's a road going from England to France now.

No, there's a railway line.

Christopher Browne

da leggere,
26 ago 2002, 10:47:0626/08/02
a
Quoth Raymond Toy <t...@rtp.ericsson.se>:

> Oleg> Oleg
> Oleg> P.S. I just thought of something: only countries with roads not leading to
> Oleg> other countries drive on the left.
>
> I think there's a road going from England to France now.

Curiosity dictates wondering what happens there.

The issue would most _certainly_ get pointedly political, as England
and France have been known to be adversarial empires, over the
centuries, and commonly get really snippety about the handling of this
sort of thing.

Hazarding a guess, I'd be totally unsurprised if the "Chunnel" traffic
were arranged in vertical layers, so that there wouldn't be any "left"
or "right" in the tunnel. If there were two lanes on a particular
layer, both would be travelling either towards France or towards
England. And the "parity" of the lanes would get managed at the ends,
with big irritating signs saying things like:

"Entering England: Fromage-Eaters be aware you will enter on the
LEFT side of the road. Don't get it wrong, you frogs..."
and
"Bienvenue a France! Ici on conduit les automobiles vers le droit!"

(It was quite entertaining when my parents visited relatives in
England; I always thought there were pretty "questionable"
French/English relations here in Canada, but, from what I hear, we
merely have a pale imitation of the hundreds of years of REAL anger on
the other side of the pond...)
--
(reverse (concatenate 'string "gro.gultn@" "enworbbc"))
http://www3.sympatico.ca/cbbrowne/x.html
"Be warned that typing ``killall name'' may not have the desired
effect on non-Linux systems, especially when done by a privileged
user." -- From the killall manual page

Eli Bendersky

da leggere,
26 ago 2002, 11:01:5626/08/02
a

Erik Naggum wrote:

> I think Common Lisp is a very safe choice. I also think Common Lisp is many


> people's last programming language.

This is very much true, at least for me. It seems that I
"evolved" into using lisp, finally finding a language that
can be used to solve very complex problems w/o getting
lost in my own code.

I will still use Perl for the small utilities & one-liners .Perl
developers have a treasure chest named CPAN, that
helps us do practically everything administrative-oriented
very fast.

It seems that a long time will pass until I lear to write
really efficient Lisp programs, so for performance-critic
applications, C++ is still my tool.

But I will do my best to write anything complex in Lisp,
as its beauty cannot be discarded. I wonder whether I
could acknowledge CL's enormous advantages if it was my
first language, and I hadn't seen how hard it is to do
the really complex things with traditional imperative
languages.

--
Eli Bendersky - http://www.geocities.com/spur4444/


Robert Hanlin

da leggere,
26 ago 2002, 11:36:2226/08/02
a
car...@yahoo.com (c hore) wrote...

> A survey on demographics of open source developers.
> 98.9% male, 41.4% single, mostly in 20s, largest
> number aged 21, majority (48%) use Debian with Red Hat
> a distance second (13.8%), majority got involved in
> open source in second half of 1990s, 70% living in Europe.

I fulfill all your stats, except that I use OSes fairly equally. I'm
an American in Europe, and my real name is nothing like "Robert
Hanlin." ;-)

I think Lisp is clearly increasing in popularity. Many of those who
turned down lisp (for perhaps good reasons) are fading away or
changing, and so are the dot-commers.

I'm self-taught; I went into the industry because I was able to help a
friend debug without knowing how to program, and things ballooned from
there. The problem was that the stress was intense -- I programmed
C-style languages, and it was so ugly and imprecise. I had the
feeling that there was some foundation underneath that made everything
simple, like Gödel Escher Bach alluded to, but I started believing
that it was just a dull, messy hodgepogdge of random ideas.

Then I started sniffing around Lispish languages, but found SICP to be
still a level above what I wanted. There was still too much hidden.
Then I happened upon the following simple article about lambda
calculus,
and I felt happy that I had a good base to foresee things that SICP
mentioned:
http://216.239.39.100/search?q=cache:SE1obPoknssC:www.mactech.com/articles/mactech/Vol.07/07.05/LambdaCalculus/+lambda+site:www.mactech.com&hl=en&ie=UTF-8

I'm still wondering BTW, if there's a further level below.

Oddly enough, I've stopped minding programming in languages like Java.
I accept their limitations; I program von Neumann machines with them.
Big deal; I can always make a macro or use Jython. I'm fast now.

BTW, this speech from Backus pushed me over the edge, along with KMP's
Slashdot interview and Paul Graham's (slightly insulting, but fun)
preaching:
http://www.stanford.edu/class/cs242/readings/backus.pdf


Cheers,
Robert

Johan Kullstam

da leggere,
26 ago 2002, 13:38:2126/08/02
a
zi...@netvision.net.il (Ziv Caspi) writes:

> On 26 Aug 2002 02:08:08 +0000, Erik Naggum <er...@naggum.no> wrote:
> [...]
> >
> > If you /understand/ proper nesting, there is no problem. If you do not want
> > to understand it further than you already have, that will be evidenced in
> > the choice of a verbose end-tag and tags that close at the wrong point as
> > seen by the user. Whether you use \i{foo} or @i{foo} or <i foo> does not
> > matter much, but using <i>foo</i> is a major disaster as far as teaching the
> > users the value of structuring information is concerned.
> >
>
> And yet the question of proper nesting is different than the question
> of redundant information in end-tags. XML has proper nesting,
> redundant end-tags information, and I've yet to see an XML document
> where the author got it wrong.

Yes, but this what is stupid. The rules of the language says you
*must* properly nest the tags. However, the syntax suggests that not
nesting is possible. Why else introduce the verbose closing tag
unless you could close something else than the last opened tag?

It is a case of the rules pointing in one direction and the syntax
pointing in the exact opposite way. Furthermore, the only thing the
verbose closer offers over a generic close is the chance to get it
wrong. This is simply not helpful in any way.

I do not need extra opportunities to lose.

The bloat is simply insult to the above injury.

> It is not obvious that use of \i{foo} (or {i foo}) is always better
> than use of <i>foo</i>. In TeX and LaTeX, for example, once the scope
> gets "too big", a switch is made to the \start{}...\stop{} way of
> doing things. While redundant, it helps in catching the types of
> mistakes people (as opposed to computers and geeks) tend to make.

Indentation helps in lisp. It also helps with largish quoted material
in printed matter. Why shouldn't indentation help here? What if TeX
used [] and a lispy style?

This equation
[equation
x = 42 y + 39 z]
will be useful to us later.

Nesting is easy
[quote
The slithy toves, did gyre and gimbal in
[equation
a = 2[pi]r^2]]
and indentation helps tremendously and perhaps some party colors could
help further depending upon taste.

> You make some misleading remarks with your (+ 2 2) vs. 2 + 2 example.
> (+ 2 2) can certainly appear in a scope that modifies it to mean any
> number of things other than 4. The difference between LISP and
> Algol-like languages (say, C) here is that in C it is usually quite
> easy to determine where the enclosing context that might affect the
> expression starts and stops (assuming this is not a string/remark/etc,
> you can limit your reading to the area between the previous and next
> semicolons, for example).

Curiously, I have exactly the opposite opinion.

Have you seen what C calls macros?

#define MIN(X,Y) ((X) < (Y) ? (X) : (Y))

#define ISWAP(X,Y) do { int Z; Z = (X); (X) = (Y); (Y) = (Z) } while (0)

Automatic code generation loses its way
immediately and infix is harder to properly parenthesize. And for
human written/readable code, once expressions get complicated, the C
way with its myriad of implicit rules becomes difficult to sort out.

> This cannot be said about LISP.
>
> Redundancy in visual appearence has been shown to help people identify
> things quickly. This is why, for example, UPPERCASE is less easy to
> read than lowercase (lowercase letters differentiate not only by form,
> but also by whether they extend above and below the x-height region).
> In a similar manner, usage of () for expressions, {} for compounds,
> and semicolons to terminate statements helps people when reading
> code.

I avoid the Lisp DO form because that one makes me count parentheses.
LOOP does somewhat of what you say by breaking out of the usual Lisp
look.

> I was once in a project that took a LISP prototype and implemented it
> in C for an embedded computer. Reading the LISP sources from printouts
> was incredibly painful when compared with C, despite the fact that it
> was shorter by a factor of three.

Yes, Lisp is very dense. As always, some high level comments can be
helpful.

--
Johan KULLSTAM <kulls...@attbi.com> sysengr

Gisle Sælensminde

da leggere,
26 ago 2002, 13:58:1826/08/02
a
In article <akb7t9$1grs3f$2...@ID-125932.news.dfncis.de>, Christopher Browne wrote:
> In an attempt to throw the authorities off his trail, Tim Bradshaw <t...@cley.com> transmitted:
>> Of course, there are examples where what they provide *is* useful
>> (maybe the HTML DTD are examples of mostly-useful one).
>
> That would only be true if HTML was used as an SGML application where
> documents could realistically be expected to conform to the HTML DTD.
>
> When I generate HTML, I normally _do_ expect _MY_ HTML to in fact be
> conformant (or at least very nearly so).

A student at the university of Bergen, Norway had a project where
he made a search robot, and analyzed the gathered web pages. The
result was depressing; 95-97 % of the web pages were non-conformant,
depending on the criteria chosen. To assume the SGML-DTD conformance
won't work in practice. A web browser that only browse conformant
HTML is useless.


> But in practice, HTML is nothing more than a "tag soup," where you
> throw in a <B> somewhere near where you want bold text to start, and a
></B> somewhere later.

>
> If part of that needs to be <it> italicized, </it> people typically do
> not much want to care if they are doing totally illegitimate things
> like having <b> badly <it> nested </b> structures </it>.
>

> If you try to point out that that is <em> wrong </em>, you'll just get
><blink> flamed </blink> because you're being a foolish pedant.
>
> Netscape and Internet Exploder are expected to do "the right thing"
> even with 'tag soups' that have gone seriously off.

True indeed.

--
Gisle Sælensminde ( gi...@ii.uib.no )

With sufficient thrust, pigs fly just fine. However, this is not
necessarily a good idea. It is hard to be sure where they are going
to land, and it could be dangerous sitting under them as they fly
overhead. (from RFC 1925)

Bulent Murtezaoglu

da leggere,
26 ago 2002, 14:28:0226/08/02
a
>>>>> "GS" == Gisle Sælensminde <gi...@apal.ii.uib.no> writes:
[...]
GS> A student at the university of Bergen, Norway had a project
GS> where he made a search robot, and analyzed the gathered web
GS> pages. The result was depressing; 95-97 % of the web pages
GS> were non-conformant, depending on the criteria chosen. [...]

Even more depressing is the hostility you get from webmasters when you
point out obviously broken stuff like menus that disappear without notice
when java/javascript is turned off and such. I found this to be the case
even when there was a clear case of the company losing a chance for a
hefty account. Is it just me getting old or were ingorant and
incompetent people more apologetic in the 80s?

BM

Thomas F. Burdick

da leggere,
26 ago 2002, 14:32:1726/08/02
a
Erik Naggum <er...@naggum.no> writes:

> * Tim Bradshaw
> | Maybe I've missed the point of what you are saying, or of what SGML could
> | do, but my impression is that while validatability is clearly very desirable
> | goal, SGML/XML don't actually provide it in a way that makes it useful.
>
> Please note that I listed "the primitive language for content models" as one
> of the grave mistakes. Validatability is a /good idea/ in SGML that is not
> achieved with SGML. XML did not go anywhere useful with any of this. I am
> continually amazed that people do not see through the crap.

When I first head about XML, I was told it was like SGML, but they'd
fixed the broken bits. I was quite excited, read up a whole bunch on
it, and finally concluded that it was no such thing. However, I threw
myself at it with quite a lot of excitement. If I hadn't been trained
in scientific though, including the ability to step back from
something and think about it in the large, I might have just continued
along the intertial path I created by throwing myself into XML. I'm
guessing most engineers just don't step back and look at what they're
doing very often -- this would also explain why so few people refactor
their code.

--
/|_ .-----------------------.
,' .\ / | No to Imperialist war |
,--' _,' | Wage class war! |
/ / `-----------------------'
( -. |
| ) |
(`-. '--.)
`. )----'

Thomas F. Burdick

da leggere,
26 ago 2002, 14:41:3026/08/02
a
Eli Bendersky <just....@in.the.newsgroup> writes:

> It seems that a long time will pass until I lear to write
> really efficient Lisp programs, so for performance-critic
> applications, C++ is still my tool.

I recommend weekly sessions of playing with the compiler. Seriously.
After a while of spending part of every Saturday playing with
Python[*] (compiling, disassembling, benchmarking, etc), I've got a
much better feel for how to write code it can compile well. This
means that it's not only easier for me to write high-performance Lisp
code, but said code is also more readable than it used to be, because
I've learned how to write in a readable style that Python can analyze
well. It's not that I'm a Python guru now, just that I'm confident
that I can write fast code when I need to.

[*] Python-the-CMUCL/SBCL-compiler, obviously.

Tim Bradshaw

da leggere,
26 ago 2002, 14:38:1926/08/02
a
* Johan Kullstam wrote:

> Yes, but this what is stupid. The rules of the language says you
> *must* properly nest the tags. However, the syntax suggests that not
> nesting is possible. Why else introduce the verbose closing tag
> unless you could close something else than the last opened tag?

Well, in SGML, you could. Or rather you couldn't, but with the right
DTD a lot of the closing tags (and opening tags I think) could be
inferred. So you might be able to say:

<foo><bar><zag>...</foo>

which would parse as (foo (bar (zag ...))).

You see this a fair amount in HTML, in fact: things like:

<p>...<p>...

parse as (p ...)(p ...).

This was all, I think, designed because they thought people would type
a lot more in by hand than they probably do, and so they wanted lots
of shorthands. The upshot of it is that, in SGML, you can't even tell
if a document is well-formed unless you have the DTD. XML doesn't
allow any of this.

Superbrackets in Lisp are sort-of related, and I think have died out
for the same reason:

(defun foo (...)
(let ((...))
(
(

(return fish]

--tim

Raymond Toy

da leggere,
26 ago 2002, 14:50:0126/08/02
a
>>>>> "Tim" == Tim Bradshaw <t...@cley.com> writes:

Tim> * Raymond Toy wrote:
>> I think there's a road going from England to France now.

Tim> No, there's a railway line.

Mea culpa.

Some one was telling me that in some country that drives on the left
has a road going to a country that drives on the right. At the border
there's this big area where people get to switch over from one side to
the other. I don't remember where though.

Ray

mar...@rosethorn.i-did-not-set--mail-host-address--so-shoot-me

da leggere,
26 ago 2002, 15:42:2726/08/02
a
Raymond Toy <t...@rtp.ericsson.se> writes:

What countries other than the UK use left-hand?
(Yes, I know who wrote this)


> I think there's a road going from England to France now.

(pointless-sarcasm :warn-offensive true "Yes,
use the humongous bridge, the largest human-built
structure ever. Or use the under-sea tunnel, just bring your
own oxygen to deal with the huge amount of fumes trapped
underground!")

Erann Gat

da leggere,
26 ago 2002, 15:16:5026/08/02
a
In article <3d69f031.166956420@newsvr>, zi...@netvision.net.il (Ziv Caspi)
wrote:

> The difference between LISP and


> Algol-like languages (say, C) here is that in C it is usually quite
> easy to determine where the enclosing context that might affect the
> expression starts and stops (assuming this is not a string/remark/etc,
> you can limit your reading to the area between the previous and next
> semicolons, for example). This cannot be said about LISP.

It cannot be said about C either. The "enclosing context" includes all
the #include files, where all manner of nastiness can (and often does)
reside.

E.

Tim Bradshaw

da leggere,
26 ago 2002, 16:09:0926/08/02