[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Scheme acceptance [no flames]



Hi Matthias,

your comments are as usual precise and up to the point.  But the point still
stands -- there is something in the Scheme which holds it back. Like natural
languages a computer language gets mature and sophisticated only when many
people use it.  I am not bashing at Scheme, I am just tired to be a Scheme
advocate in the industry which turned deaf ear to it.

Let me give you one example. Suppose a project needs to write some scripts for
data post processing. This work amounts to 5% or less of the entire
project. Certainly, noone is going to hire a dedicated expert to do just that. A
coin is tossed and one of the team members (can be an electrical engineer or
even a physicist) gets the assignment. What language he picks? Perl, of course!
For the sole reason that there is a wonderful "Perl Cookbook" by Tom
Christiansen which solves 90% of your everyday tasks. Next time he needs to
write scripts he will pick Perl again for the very same reason. That's how many
Perl scripts start. Later on, though, as script grows it suddenly becomes
unmaintainable but it is too late to change the "horse". 

Regarding your remark on  XML syntax. It is not a good comparison. XML files are
not intended for "everyday human consumption". You look into XML file only for
debugging. On the other hand watching source code is everyone's favorite way to
kill the time:-)

I am not sure that I was right staring this thread but I am really pissed off by
the rampand proliferation of redundant ad hoc languages while a great one is
being slowly starved.


--thanks,
Leo

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+  Leonid Razoumov,               +  E-mail: lrazoumov@qualcomm.com   +
+  Qualcomm Inc.,                 +  http://www.qualcomm.com          +
+  5775 Morehouse Drive,          +                                   +
+  San Diego, CA 92121-1714,      +  VOICE:  +1-858/651-5163          +
+        USA                      +    FAX:  +1-858/658-2113          +
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

>>>>> "MF" == Matthias Felleisen <matthias@cs.rice.edu> writes:

    MF> Here are a couple of comments from someone who has been with the Scheme
    MF> "community" since 1985, though I have to admit that for quite some time
    MF> I was so frustrated that I didn't bother to attend any workshops. 

    MF> 1. I bet you noticed the quotes around community. Someone said that we are
    MF>    splintered. That's correct. If we don't watch out, we will reinvent
    MF>    nuclear fission :-)

    MF>    At the last Scheme workshop in Montreal, I saw some hope during the
    MF>    discussion at the end of the day. We may yet see some progess toward 
    MF>    a higher degree of community. 

    MF>    There may even be a volunteer to drive the IEEE standardization effort. 

    MF> 2. As the guy who until recently carried PLT, I must also say "who cares."

    MF>    We havd and we will build PLT Scheme, which is a derivative and it will
    MF>    be one heck of a language. We borrow from Scheme what we can, and that's
    MF>    that. In reality, Scheme is a family of languages, and we just to
    MF>    exchange ideas with the others.

    MF>    Once PLT is truly distributed (and that has been my goal for years), we
    MF>    will coordinate and function as the Scheme undergound that others failed
    MF>    to establishh. 

    MF> 3. There are two things that matter to a language: syntax and semantics. 

    MF>    a: we could duplicate Java and design a { ; } version of Scheme. Do we
    MF>       really want that? Are people really so blind that they don't see how
    MF>       XML is a parenthesized syntax and that it's better than { ; -> . * & }

    MF>    Suppose we change the syntax. There is the other problem: 

    MF>    b: semantics and/or how it affects programming style. Why don't we have
    MF>       while for do until repeat loop ... pool out when over thru? Doesn't
    MF>       anyone remember the loop wars from the 70s? 

    MF>       Scheme's semantics and tail-opt constraint enable us to write code
    MF>       that matches data definitions. That matters for program
    MF>       maintenance. Why do you think maintenance sucks? Why is it so costly?
    MF>       Because they don't have enough looping constructs? Argh ... 

    MF>    We want to effect a change of thinking about programming. If we fail
    MF>    with that, let others steal our best ideas and let the world go to bits
    MF>    and Perl. 

    MF> Back to work -- Matthias