> > It seems that getting over Scheme can be a difficult task.
> i am sceptical. it is only a programming language, and in a very large > majority of young programmers, not even close to being the first language;
In my experience, languages at MIT were taught as religions not as sciences.
I was told once by one instructor that it wasn't obvious how otherwise to grade these things if there were not "absolute" answers. The best example of this was a mid-term in compiler design where I was asked if gotos were (a) good or (b) bad. This surely made it easier to grade, but did not contribute toward nor measure a robust understanding.
I was also asked to take hardware courses that seemed tedious and pointless to me because I had planned a career in software, not hardware. Most professors having risen to power in the EE side of the recently-renamed EE&CS department, I was again told that it was important to take some hard sciences even if they were irrelevant so they could be sure they had graded me properly.
Then again, Sussman designed a series of courses on hardware taught using Scheme, but I was specifically excluded because I was "bad data" for his "experiment", in which he wanted to have only blank slate people that he could mold. If I succeeded (something I was paying MIT good money to ensure, by the way), that would not help him with what was effectively his research experiment in indoctrinating students. IMO, this particular decision, more than any single other, accounts for why I ultimately was forced out of the EE&CS department and ended up getting a degree in Philosophy. (As I understand it, this kind of "taking refuge" in another department happened to several other well known Lisp people, though usually it was the Math or Architecture department they ended up in. The reason cited to me was that these departments required few core courses and offered lots of elective room.) I suspect that at many other universities, the math department, not the EE department, is the genesis of the CS department, and that this accounts for the differences in leaning between the mathemeticians and engineers among us. But always, whether we are "of the department" or "escaping the department", politics and religion _is_ in play. It's just different what the politics are.
It's probably like the issue of speaking a language with an accent--everyone has an accent, but no one can hear their own. Politics works likewise. And anwyay, how can any teacher be passionate about something they teach without exposing more than just the topic domain. If you can make a topic relevant, you have driven connective tethers into the fabric of the real world, and in so doing you have made it hard to indulge change without at least the risk of picking up some of those stakes.
> that it itself may lessen its (claimed) impact. moreover, what is it that > is so important, so sticky and hard to relearn?
Why are some religions harder to unlearn than others? Have you ever had a family member taken in by a cult? Or can you imagine what it would be like to hear someone say "religion can be unlearned" or the fights that result if you even suggest it "should" be unlearned?
> what is the real claim > about learning? what is the claim about cognition? is the claim supportable?
Formally? Statistically? Religious claims are hard to make supportable because it's hard to care enough to take data without being strongly on one side of the religious gap or another, and by virtue of your own position you become scientifically distrusted. And it's hard to get someone on the other side of the gap to perform a similar experiment in good faith, if such were even meaningful. ("Is it symmetric to compare the difficulty of deprogramming a CL person into Scheme and vice versa? Who would consent to being the guinea pig? How would you get a large enough sample to be statistically representative, peoples' backgrounds being so hard to control?")
> is this sapir/worf rearing its head again? it is so much fun to bash basic, > perl, scheme or whatever we hate today, but the actual cognitive effects > of learning these languages are not properly studied, so far as i know.
I don't like to see these discussions get contentious and mean-spirited, but I also don't like to see things for which there are only anecdotal observations not get logged because it contributes to a false sense that just because an effect is not measurable, that there is nothing there to be measured. The social sciences (so-called "soft" sciences) are just plain harder to deal with than the so-called "hard" sciences (one might call them the "easy" sciences in this regard; dealing largely with reproducible data sets, often homogeneous data, etc.)
> one may as well claim that those who learn french or turkish are > forever damaged to ever do good lisp programming... :-/
Actually, a good argument can be made linguistically that learning certain languages hinders others. There is good standing evidence that certain concept formation happens through puberty and then reifies in brain structures that are far less maleable in adulthood. In language, for example, the number of what I call "hash buckets for sounds" gets fixed at some point, accounting for the well-known difficulties of speakers of some asian languages where r/l differentiation is unimportant (or less important) and probably "hashed to the same bucket" and the problems I had when dealing with trying to learn German a few years back where I don't have enough "ch"/"sch"/"sh" sounds to reliably get the sound right there.
It's not a documented issue that there are equivalent effects in computation that we will see more of as langauge instruction moves earlier into childhood learning, but that doesn't make it unworthy of discussion. Serious scientific discussion probably begins with heated proto-discussion just like this. One might wish that scientists just spontaneously knew which areas to study, but I bet the path to that point is rarely so clean and straightforward. Never underestimate the possible effect of exasperation and other such "low" emotions as having driven science along through the years...
> this stuff is all very muddled.
It may or may not help at this point to quote from the "AI Koans" (teaching parables, I think written by Danny Hillis):
In the days when Sussman was a novice, Minsky once came to him as he sat hacking at the PDP-6.
"What are you doing?", asked Minsky.
"I am training a randomly wired neural net to play Tic-Tac-Toe" Sussman replied.
"Why is the net wired randomly?", asked Minsky.
"I do not want it to have any preconceptions of how to play", Sussman said.
Minsky then shut his eyes.
"Why do you close your eyes?", Sussman asked his teacher.
Bijan Parsia <bpar...@email.unc.edu> writes: > whether it was Scheme subset
^^^^^^^^^^^^^
You got to be kidding :)
Cheers
-- Marco Antoniotti ======================================================== NYU Courant Bioinformatics Group tel. +1 - 212 - 998 3488 719 Broadway 12th Floor fax +1 - 212 - 995 4122 New York, NY 10003, USA http://bioinformatics.cat.nyu.edu "Hello New York! We'll do what we can!" Bill Murray in `Ghostbusters'.
In article <a975f2$cg...@news.gte.com>, d...@gte.com wrote: > It's clear you are not one who'd use internal DEFUN or > assume tail-call elimination or commit any of the other > boo-boos alleged of those who have learned Scheme > before CL. So if all you are saying is that you > like to use values directly instead of always > indirecting through symbols bound to them, I don't > think that marks you as someone who "writes Scheme in > CL".
Well, according to Erik, it marks me as doing things the "Scheme way". Of course, Erik, also distinguishes between "Scheme is a Lisp" and "Scheme is a member of the Lisp family of languages", so maybe "writing Scheme in CL" and "doing things the Scheme way [in CL]" don't mean the same thing either.
> I am sure CL usage is quite accepting and encouraging > even of the direct manipulation of values.
Erik disagrees. According to him, this is the Scheme Way.
> I'd be surprised if there were even a tacit stylistic > admonition against it.
Then you must not have read the recent thread on packages.
...and no. Common things to leave out of a...er...toy scheme implementation are, well, continuations and tail recursion. At least, everywhichway continuations and some forms of tail recursion. I understand that these are *very* hard to do well on some architectures (e.g., the JVM), at least, with decent performance. (http://www.gnu.org/software/kawa/Restrictions.html)
Schemes sometimes lag behind the R*RS document.
I did mean that he might be using a super and subset. If you don't count the extentions to a Scheme that are required to make an useful environment, then it's a superset. If you leave out call/cc, it's a subset.
In article <3227617474730...@naggum.net>, Erik Naggum <e...@naggum.net> wrote: > * g...@jpl.nasa.gov (Erann Gat) > | FWIW, my reason for writing Scheme in CL (if indeed that is what I'm > | doing) is that IMO it is much easier to write Scheme in CL than it is in > | Scheme.
> If true, this explains why Scheme freaks so seldom learn Common Lisp > well.
I wonder, am I a Scheme freak? I started learning Lisp in 1979 on an Apple II using P-lisp. (I know this only because I recently stumbled across my copy of P-lisp -- on a 5-inch floppy -- while rummaging through some old boxes.) I first encountered Scheme around 1983 or so (I don't recall exactly), and it kind of rubbed me the wrong way at first because I couldn't wrap my brain around call/cc. The only significant Scheme code I ever wrote was my master's thesis work, which was only about 100 lines of code (using MacScheme running on a Mac Plus). Shortly thereafter I met Macintosh Common Lisp, which instantly became my programming environment and language of choice, and remains so to this day. In the late 1980's I had a brief flirtation with T and Oaklisp, but eventually came back to Common Lisp. I've read (and enjoyed) CLTL1&2, Norvig, the Hyperspec, Quiennec, both Graham books, and pretty much everything posted to c.l.l. in the last fifteen years.
During this entire time I've followed a programming style that was more object-oriented than symbolic. Nonetheless, the majority of my work has been designing and writing interpreters for domain specific languages, an endeavor which I had always thought of as symbolic programming, but which doesn't seem (to my surprise) to be considered so around here.
Since subtlety often seems to be lost on you, Erik, let me say explicitly that this is a rhetorical question, that I don't care in the least whether you think I'm a Scheme freak or not, and that what I'm really trying to communicate (obliquely) is that I think your claim that relying on symbols is "the (Common) Lisp way" is rubbish. "Symbolic programming" as it has been defined here in recent discussions is but one of many programming paradigms that (Common) Lisp supports. But it's not the only one, and it's not the defining paradigm of the language. (It's not even clear to me that it's a particularly good idea.)
Erann Gat <g...@jpl.nasa.gov> wrote: >In article <a975f2$cg...@news.gte.com>, d...@gte.com wrote:
>> It's clear you are not one who'd use internal DEFUN or >> assume tail-call elimination or commit any of the other >> boo-boos alleged of those who have learned Scheme >> before CL. So if all you are saying is that you >> like to use values directly instead of always >> indirecting through symbols bound to them, I don't >> think that marks you as someone who "writes Scheme in >> CL".
>Well, according to Erik, it marks me as doing things the "Scheme way". Of >course, Erik, also distinguishes between "Scheme is a Lisp" and "Scheme is >a member of the Lisp family of languages", so maybe "writing Scheme in CL" >and "doing things the Scheme way [in CL]" don't mean the same thing >either.
>> I am sure CL usage is quite accepting and encouraging >> even of the direct manipulation of values.
>Erik disagrees. According to him, this is the Scheme Way.
Well, I can't speak for another, but clearly, direct manipulation of values obtains in Scheme also. I think the criticism of Scheme was that that was all that Scheme had -- that Scheme was, in effect, a one-trick pony. The differentiation of the languages, as I saw it, proceeded along these lines:
o In CL, one can do symbol-based indirection without any setup.
o It's a very natural thing for humans to do -- since we tend to traffic in symbols standing for something else all the time.
o It's an approach not immediately available in Scheme -- not without user- or library-created tables. (BTW, I don't find this charge too distressing, because as Kent said recently (but of CL), "that's why they call it a _programming_ language.")
>> I'd be surprised if there were even a tacit stylistic >> admonition against it.
>Then you must not have read the recent thread on packages.
It (the admonition) may have slipped my view. All I saw was a celebration of "symbol processing" as something extra or, if you will, "value-added".
> "Making TeX work" > Norman Walsh > O'Reilly, 1994 (first edition) > ISBN 1-56592-051-1
> It mentions LaTeX[2e] in a few chapters. There's also a Nutshell handbook > on Emacs Lisp.
... A handbook published back in 1997.
There hasn't been any Lisp material published by O'Reilly in, what, five years?
I expect that they got burned by one or another project, and concluded that they wanted nothing more to do with these technologies. -- (concatenate 'string "aa454" "@freenet.carleton.ca") http://www.ntlug.org/~cbbrowne/multiplexor.html "For systems, the analogue of a face-lift is to add to the control graph an edge that creates a cycle, not just an additional node." -- Alan Perlis
Christopher Browne <cbbro...@acm.org> writes: > >> Erik Naggum <e...@naggum.net> writes: > > [...] > >> > However, we're NOT looking for: Any books on LISP, LaTeX, or > >> > Web-based training.
> There hasn't been any Lisp material published by O'Reilly in, what, > five years?
I wonder whether employing L*rry W*ll might have something to do with this. maybe not.
-- You cannot really appreciate "Dilbert" unless you've read it in the original Klingon. -- Klingon Programmer
g...@jpl.nasa.gov (Erann Gat) writes: > During this entire time I've followed a programming style that was more > object-oriented than symbolic. Nonetheless, the majority of my work has > been designing and writing interpreters for domain specific languages, an > endeavor which I had always thought of as symbolic programming, but which > doesn't seem (to my surprise) to be considered so around here.
I think the idea of a Common Lisp style is meaningful with relation to a specific other language, say Scheme or Java. But not so much in isolation. When we all have the same facilities, we won't all program in the same style, even if we'd all learned to program along the same path. People are idiosyncratic, and we have odd, individual thought patterns. No one will play pictionary with me and my brother, because we have enough of the same idiosyncratic patterns of thought that we'll be able to know what the other one is drawing sometimes after 2 lines are on the paper -- and even the full explanation of why the picture means what it does, doesn't necessarily make sense to anyone else. We also have a similar programming style, but it's difficult sometimes to explain how it's similar. Strictly speaking, his code in C++ and my code in Lisp often look very different -- I might solve the problem using, say, mutually recursive functions and tagbody/go, and he might use a mixture of C++-style OOP and imperative style. But I can see that we both broke the problem up similarly, because we noticed the same patterns, even if we expressed them in different styles.
I think what I'm trying to say is that if your style is most easily expressed in CL, but looks different than most other people's CL, you're probably not writing in Scheme style or CL style, but Erann Gat style.
-- /|_ .-----------------------. ,' .\ / | No to Imperialist war | ,--' _,' | Wage class war! | / / `-----------------------' ( -. | | ) | (`-. '--.) `. )----'
* Erann Gat | Since subtlety often seems to be lost on you, Erik, let me say explicitly | that this is a rhetorical question, that I don't care in the least whether | you think I'm a Scheme freak or not, and that what I'm really trying to | communicate (obliquely) is that I think your claim that relying on symbols | is "the (Common) Lisp way" is rubbish.
Oh, great, still not recovering. Everything is so _personal_ to you. Seek professional help and get over whatever debilitating trauma you think you have been through and learn to deal _intelligently_ with the things you disagree with, will you? You are becoming a charicature.
/// -- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief.
* Erann Gat | Erik disagrees. According to him, this is the Scheme Way.
I can speak for myself, thank you. I wish you could figure out when to shut the fuck up. You are just an annoying idiot, and whether _you_ write in Scheme style or JCL style does not concern me, but whether there is a meaningful distinction that warrants intelligent discourse, does. Quit being so goddamn personal. If you have defend yourself all the time, at least talk to a shrink, and do not attack _me_ all the time.
/// -- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief.
Erik Naggum <e...@naggum.net> writes: > Oh, great, still not recovering. Everything is so _personal_ to you. > Seek professional help and get over whatever debilitating trauma you > think you have been through and learn to deal _intelligently_ with the > things you disagree with, will you? You are becoming a charicature.
Incidentally, I've followed this thread noticing one rather interesting thing.
Despite the claims of Erik and others that they hate to see language advocacy of Scheme on c.l.l--that they think Scheme is a thing which is better addressed elsewhere, it was those folks who brought it up, so that they might attack it. And even attack Erann in its name for "Schemelike thinking", when he isn't even particularly a Scheme fan.
Erik Naggum <e...@naggum.net> writes: > Quit being so goddamn personal. If you have defend yourself all the > time, at least talk to a shrink, and do not attack _me_ all the time.
It's a shame, the way everybody here is always making it personal. I mean, Erik just never posts nasty diatribes against other peoples' character, and for no particular reason, they just hate him so much. It's a shame that poor Erik is always getting attacked, and that people are unable to simply stay focused on the topic. I mean, Erik would never launch a personal attack unless someone first attacked him, right? It's other people who provoke him, after all.
* Michael Livshin | I wonder whether employing L*rry W*ll might have something to do with | this. maybe not.
According my off-the-record inside information, it has very much to do with the psychotic hatred L*rry W*ll has for Lisp, but it is precisely Scheme that he has such phenomenal problems with, and then he thinks that the whole family of languages that uses parentheses is similarly evil, like a good old southern racist who has met one bad black guy. Common Lisp does _not_ suffer from the same problems that Scheme does, and it is such a different language that nothing anybody know about Scheme should be presumed to apply to Common Lisp without checking thoroughly that it actually does. This is lost on people who have invested too much in their own culture to be able to think anything valuable can come from any other.
/// -- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief.
Erik Naggum <e...@naggum.net> writes: > * Thomas Bushnell, BSG > | It's a shame, the way everybody here is always making it personal.
> How come _you_ suddenly decide to open your sewer and dump here, again?
Oh no, I'm on your side Erik. I do think it's a shame they way you are a victim of such unwarranted abuse. After all, you are so nice to everyone, and people just make these unwarranted attacks on you. It's quite right for you to be bothered by the way people are so hostile.
In article <3227634435229...@naggum.net>, Erik Naggum <e...@naggum.net> wrote: > * Erann Gat > | Erik disagrees. According to him, this is the Scheme Way.
> I can speak for myself, thank you.
I wonder. You wrote:
But in general, using symbols to name things is the (Common) Lisp way, and using the values directly is the Scheme way.
And then you go on to say:
> You are just an annoying idiot, ... > do not attack _me_ all the time.
Hm, let's think about this again...
> You are just an annoying idiot, ... > do not attack _me_ all the time.
Hmmm...
> You are just an annoying idiot, > You are just an annoying idiot, > You are just an annoying idiot, > You are just an annoying idiot, > You are just an annoying idiot, > You are just an annoying idiot, > You are just an annoying idiot, > You are just an annoying idiot, > You are just an annoying idiot, > You are just an annoying idiot, > You are just an annoying idiot,
You are beginning to remind me of certain people I encountered while growing up in the Deep South (which for you international readers is an area known for its high concentration of fundamentalist Christians). I found it astonishing the extent to which I could offend people there simply by quoting certain parts of the Bible to them. (II Kings 18:27 worked particularly well.) It's very entertaining watching you work yourself into a lather simply because I cite your writings. But ultimately it's a waste of time, and I'd just as soon stop.
I'd like to post the "Intro to Lisp" stories that many of you have submitted recently to comp.lang.lisp, on the Franz web site. I've found them interesting, and I think other folks who may not always read comp.lang.lisp (especially newbies), would as well.
If you'd like to be included, please send me an email (l...@franz.com) containing the following information: * Let me know that it's okay to post your story. * The text of your story * A little bit of information about you -- where you work, types of apps you build, etc. (if you wish).
Erik Naggum <e...@naggum.net> writes: > * Thomas Bushnell, BSG > | Oh no, I'm on your side Erik.
> What does it take to make you regain your senses? Electroshock?
> This newsgroup is not group therapy for nutjobs like you and Erann Gat. > Quit bothering people with your coping problems and just _*THINK*_, OK?
Yes, that's quite right. And thank you for all your kind advice. I'm now thinking, and I'm so grateful for the jillion manifest kindnesses you give. It really is so unfair that you get treated harshly by people when you're really so terribly nice!
Geez, for a few days, now, we had an abuse-free zone here because you nutjobs seemed to be able to focus on something other than attacking me, but I guess it is impossible for lunatics like you and Thomas Bushnell to actually discuss anything at all unless I agree with your point of view. Why is this? Why is it so goddamn important to you that I agree with you that you stop thinking and stop discussing _anything_ if I say something contrary to your opinions? Talk about not handling disagreement, guys!
So can you guys _please_ seek some professional help to get over your disturbing dependency on having my approval on everything you say? If I think you are lunatics, accept that this is my well-founded opinion from observing your behavior towards me and just get on with your lives and do something _intelligent_ to make me change my mind if it bothers you so much, OK? If I should happen to think you are a Scheme freak, what _is_ it to you? Why does it even _matter_ than you fall in this category? I mean, I did not think about you at all (why should I? you are nothing more than an unimportant lunatic who are unable to listen to what I say), yet you feel somehow "labeled" and "hurt" out of some paranoid delusion that you were included in some negative attitude you saw. Dude. Chill.
Why _are_ you guys so upset about what I think? If it is true and you do not like it, fighting my _saying_ it does not help you at all, it only tells people that you are unwilling to _think_ about it and prefer to act all emotional about it and think that pouting or behaving like babies who have soiled themselves will change my mind. It won't. Deal with it.
GET BACK ON TRACK and discuss whatever has relevance to you _and_ this forum, will you? If I am the most important thing you have to discuss, there is something _seriously_ wrong with you. Get the hell over it!
/// -- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief.
l...@franz.com (Lisa Fettner) writes: > I'd like to post the "Intro to Lisp" stories that many of you have > submitted recently to comp.lang.lisp, on the Franz web site. I've > found them interesting, and I think other folks who may not always > read comp.lang.lisp (especially newbies), would as well.
> If you'd like to be included, please send me an email (l...@franz.com) > containing the following information: > * Let me know that it's okay to post your story. > * The text of your story > * A little bit of information about you -- where you work, types > of apps you build, etc. (if you wish).
That is a good idea. Getting them on the ALU site would also be good.
Cheers
-- Marco Antoniotti ======================================================== NYU Courant Bioinformatics Group tel. +1 - 212 - 998 3488 719 Broadway 12th Floor fax +1 - 212 - 995 4122 New York, NY 10003, USA http://bioinformatics.cat.nyu.edu "Hello New York! We'll do what we can!" Bill Murray in `Ghostbusters'.
In article <3227640107984...@naggum.net>, Erik Naggum <e...@naggum.net> wrote: > Geez, for a few days, now, we had an abuse-free zone here
No, we didn't. And the fact that you think we have is the heart of the problem.
> Why _are_ you guys so upset about what I think?
Why do you think I'm upset about what you think? I'm not.
> If it is true and you do > not like it, fighting my _saying_ it does not help you at all,
That's right. So consider the possibility that it might be something else that I'm upset about (assuming I'm upset about anything).
> GET BACK ON TRACK and discuss whatever has relevance to you _and_ this > forum, will you?
Here's the relevance it has to me: in exploring the surprising (to me) affinity that people have for packages, I discovered that there is a whole style of programming (which is called here "symbolic programming") of which I was only dimly aware, and which some people whose views are respected, notably you, believe is absolutely central to the entire notion of programming in Lisp. All this comes as a surprise to me, for reasons I've discussed in excruciating detail elsewhere and won't belabor here. So I'm now trying to decide if this idea has any merit. One way of doing this is to explore what other people think of it. Is this a widespread view? Or are you the only one who believes it? To conduct such an exploration one must necessarily ask of others in one way or another, "What do you think of this thing that Erik has said?" That's what's going on here. People I respect, for reasons passing understanding, have told me that it's worthwhile paying attention to what you say, and I believe them. So chill, dude.
> If I am the most important thing you have to discuss,