From: Zach Beane on
Ron Garret <rNOSPAMon(a)flownet.com> writes:

> Christophe Rhodes <csr21(a)cantab.net> wrote:
[snip]
>> By calling an appropriate constructor, either user-defined or provided
>> by your implementation. For one approach, see the work I presented at
>> ILC'07: "User-extensible sequences in Common Lisp". But the point is
>> that the CL standard explicitly says that LIST and VECTOR do not
>> necessarily form an exhaustive partition of SEQUENCE.
>
> That rather begs the question doesn't it? I know the standard says that
> there can be non-list non-vector sequences, but I don't know of any
> implementation that actually provides a non-list non-vector sequence
> type, and I don't of know any way to create a non-list non-vector
> sequence type without hacking the implementation.

For one aproach, see the work Christophe presented at ILC'07:
"User-extensible sequences in Common Lisp", then try a few APROPOS in
SBCL.

Zach
From: Ron Garret on
In article <m3tyuw50tg.fsf(a)moon.robolove.meer.net>,
Madhu <enometh(a)meer.net> wrote:

> Insults like "idiot" are rude, when the target is indeed a retard.

ROTFLMFAO!

rg
From: Pascal Costanza on
On 08/01/2010 20:07, Zach Beane wrote:
> Ron Garret<rNOSPAMon(a)flownet.com> writes:
>
>> Christophe Rhodes<csr21(a)cantab.net> wrote:
> [snip]
>>> By calling an appropriate constructor, either user-defined or provided
>>> by your implementation. For one approach, see the work I presented at
>>> ILC'07: "User-extensible sequences in Common Lisp". But the point is
>>> that the CL standard explicitly says that LIST and VECTOR do not
>>> necessarily form an exhaustive partition of SEQUENCE.
>>
>> That rather begs the question doesn't it? I know the standard says that
>> there can be non-list non-vector sequences, but I don't know of any
>> implementation that actually provides a non-list non-vector sequence
>> type, and I don't of know any way to create a non-list non-vector
>> sequence type without hacking the implementation.
>
> For one aproach, see the work Christophe presented at ILC'07:
> "User-extensible sequences in Common Lisp", then try a few APROPOS in
> SBCL.

To be more explicit, it is indeed possible to define subtypes of
CL:SEQUENCE in SBCL that are neither lists nor vectors. The referenced
paper discusses SBCL's extensions in that regard.


Pascal

--
My website: http://p-cos.net
Common Lisp Document Repository: http://cdr.eurolisp.org
Closer to MOP & ContextL: http://common-lisp.net/project/closer/
From: Duane Rettig on
On Jan 8, 10:30 am, Ron Garret <rNOSPA...(a)flownet.com> wrote:
> In article <87y6k87q3e....(a)ma-patru.mathematik.uni-karlsruhe.de>,
>  Nicolas Neuss <lastn...(a)math.uni-karlsruhe.de> wrote:
>
> > Ron Garret <rNOSPA...(a)flownet.com> writes:
>
> > > This is not really Peter's fault, by the way.  Lisp pedagogy is
> > > hobbled by the fact that Common Lisp has built-in support for
> > > particular implementations of associative maps, but not for abstract
> > > associative maps.  This, BTW, is consistent with another point of view
> > > that has a significant constituency within the Lisp community, to wit,
> > > that CL is a language for experts and the fact that it does not cater
================================^^^^^^^

Interesting that you should put it this way. If it truly were a
language for experts, only experts would use it, which would be self-
defeating (in order to become an expert, one has to use something to
gain experience, and thus nobody could use it, because they start out
as beginners). I prefer to think of CL (and Lisp in general) to have
a low threshold for general use, and a high threshold for expert use.

> > > to beginners is a feature, not a bug.
>
> > I would be interested in who is claiming such a thing.  Quite the
> > opposite, I think that most of us think
>
> > 1. CL is a language for everyone with good taste.

What about all of the CL users that don't have good taste?

:-)

> > 2. It does cater to beginners at least as much as the very popular
> >    languages C or Java, and surely much more than C++.  (Also the
> >    difference in accessibility to Scheme or Python is not large, IMO.)

This depends very much on what group of beginners you're talking
about. Lisp in general is not forgiving of anyone who approaches it
from a background of preconceptions about what constitutes a
programming language (preconceptions that are usually gained from
learning and perhaps even becoming an expert in other languages). For
this group of Lisp beginners, it requires a suspension of knowledge,
or even an un-learning, in order to learn Lisp as it was meant to be
learned.

> > 3. Where it does not, there are either important reasons, or you can
> >    easily adapt it to your needs.

I view the last part of this sentence to be the truest part. When I
think of "catering" I think of someone else serving me something ready-
to-go, and all I have to do is consume. Lisp/CL don't do this.
Unless of course your concept is that what is to be consumed are the
tools to built with, in which case I agree that Lisp caters in that
way. At any rate I view most of the Lisp programming experience as an
adaptation to needs.

> > Nicolas

> Erik Naggum was the leading (or at least the most visible) proponent of
> this point of view.

Possibly true, though he won't be defending his position if that is
wrong... I tend to think that Erik took a strong position in favor of
"un-learning" preconceptions before learning Lisp; at least, that is
what he voiced when he was arguing with whom he considered a troll.

>  I believe Kenny Tilton subscribes to it.

Can anybody know what Kenny subscribes to? Kenny, do you know?

 And I
> would say that even your comment that "CL is a language for everyone
> with good taste" is a minor variation on this theme, which is "Lisp is a
> language for people with characteristic X" where X is a characteristic
> that is both desirable and subjective.

I agree. My "X" strongly parallels music, where "Good Musicianship"
is a highly subjective and qualitative measurement. The barrier for
entry to being a good musician is very high, but it is not universal,
nor is it even prejudicial; anyone who either has a natural talent for
music, or who has the tenacity to stick with it, or who finds the
instrument most suited to them, can become a Good Musician. Even
someone with a tin ear can learn to play the drums, and barring other
physical or mental handicaps, it is actually the prospect of the
discipline of practice or ones lack of tenacity which is the highest
barrier to entry into the Good Musician group. There is a similar
analogy in Lisp. Entry into either of these disciplines is however
based on the assumption that are desirable disciplines to enter.
Otherwise, why bother?

 Whether X is "an expert" or
> "with good taste" or "cool" or whatever, it allows one to apply the
> no-true-scotsman fallacy to any criticism of the language: all negative
> views can be dismissed because the critic is obviously not an expert/has
> bad taste/not cool, etc.

This would be true if your general comment had been "CL is only a
language for everyone with X". Are you saying you get the impression
that people are saying that CL is only a language for experts?

> BTW, I am not saying this point of view is *correct*, only that it is a
> point of view that has a vocal constituency.
>
> rg

Duane
From: Pascal J. Bourguignon on
Ron Garret <rNOSPAMon(a)flownet.com> writes:

> In article <7qp2c5Fej0U1(a)mid.individual.net>,
> Pascal Costanza <pc(a)p-cos.net> wrote:
>
>> On 08/01/2010 09:46, Ron Garret wrote:
>> > Even the practical camp has a somewhat schizophrenic attitude towards
>> > macros. On the one hand, macros are often touted as the cool feature
>> > that makes Lisp superior to other languages. On the other hand,
>> > reactions to specific macros are often strongly negative. "Leave macro
>> > writing to the experts" is an often-heard refrain, and even macros
>> > written by experts are more often than not very badly received (e.g.
>> > John Foderaro's IF* macro, or more recently, Pascal Costanza's filtered
>> > functions). The LOOP macro has a dedicated band of detractors who
>> > regularly urge people not to use it because it isn't "Lispy" enough
>> > (whatever that could possibly mean). The *idea* of macros seems to be
>> > much more enthusiastically embraced than actual macros.
>>
>> I don't think that's correct. In the case of filtered functions, the
>> reactions were mostly positive (to my surprise, I didn't expect that
>> much positive feedback). Only one person was especially aggressive in
>> voicing his negative opinion about them. If I understand correctly, that
>> was the same with IF*. You can easily get wrong impressions when
>> listening only to the loudest voices.
>
> Could be.
>
>> LOOP has a lot of detractors, but also a lot of fans. If that is in any
>> way representative, at the first European Lisp Workshop (in Oslo in
>> 2004), there were 40 participants, and the overwhelming majority stated
>> to use LOOP for iterative tasks (to everybody's surprise).
>
> I heard a story once about how it was common knowledge that everyone in
> California was crazy. But if you actually go to California they will
> tell you that no, it's not all of California that's crazy, it's the
> folks in *southern* California that are crazy. And if you go to
> southern California they will tell you, no, it's not all of southern
> California, it's just LA. And if you go to LA they will tell you it's
> not LA, it's Hollywood. And if you go to Hollywood they'll tell you
> it's not all of Hollywood, it's just this one neighborhood. And if you
> go to that neighborhood they'll tell you it's not the whole
> neighborhood, it's just this one crazy guy at the end of the block.
>
> I had always thought this story was a joke, but maybe that's exactly
> what is happening here.

Robert A. Heinlein wrote it in 1940 in "And He Built a Crooked House",
which starts with:

Americans are considered crazy anywhere in the world.

They will usually concede a basis for the accusation but point to
California as the focus of the infection. Californians stoutly
maintain that their bad reputation is derived solely from the acts
of the inhabitants of Los Angeles County. Angelenos will, when
pressed, admit the charge but explain hastily, It's Hollywood.
It's not our fault we didn't ask for it; Hollywood just grew.

The people in Hollywood don't care; they glory in it. If you are
interested, they will drive you up Laurel Canyon where we keep
the violent cases. The Canyonites the brown-legged women, the
trunks-clad men constantly busy building and rebuilding their
slap-happy unfinished houses regard with faint contempt the dull
creatures who live down in the flats, and treasure in their hearts
the secret knowledge that they, and only they, know how to live.

Lookout Mountain Avenue is the name of a side canyon which twists
up from Laurel Canyon. The other Canyonites don't like to have it
mentioned; after all, one must draw the line somewhere!

High up on Lookout Mountain at number 8775, across the street from
the Hermit the original Hermit of Hollywood lived Quintus Teal,
graduate architect.

Even the architecture of southern California is different. Hot
dogs are sold from a structure build like and designated The Pup.
Ice cream cones come from a giant stucco ice cream cone, and neon
proclaims Get the Chili Bowl Habit! from the roofs of buildings
which are indisputably chili bowls. Gasoline, oil, and free road
maps are dispensed beneath the wings of tri-motored transport
planes, while the certified rest rooms, inspected hourly for your
comfort, are located in the cabin of the plane itself. These
things may surprise, or amuse, the tourist, but the local
residents, who walk bareheaded in the famous California noonday
sun, take them as a matter of course.

Quintus Teal regarded the efforts of his colleagues in
architecture as faint-hearted, fumbling and timid.


--
__Pascal Bourguignon__ http://www.informatimago.com/