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

RE: another take on hackers and painters



Dan Sugalski wrote:

> You forgot the fact that we're responsible for global warming,

That one's a given, given all the CPU cycles Perl programs have burned.  In
fact, running Perl programs on multi-GHz machines should probably have been
banned by the Kyoto Treaty!  :oP

> imperialism, the decline in the moral fibre of today's youth, and
> dadaism. Oh, and pop art is our fault too. Sorry about that one.
...
> Seriously, this isn't our (or, rather, perl's) concern. Perl isn't a
> teaching language, it doesn't much care what anyone's pet theories
> are, and we're a cranky lot anyway.

Most languages, including Perl, are teaching languages, whether their
authors want them to be or not.  Languages shape the way people think,
especially for people who primarily use a single language.  Perl has
certainly had a strong effect on the way many people think about
programming.

Of course, I'm not suggesting that language authors should be somehow held
liable for the features they choose to implement.  (Although that could make
for some fascinating court cases, and open up whole new career avenues for
language designers and theorists as expert witnesses...)

> If you don't like what we're doing or how we're doing it, that's
> fine. Do it better so people do it your way instead. Heck, if you do
> it better then *we'll* do it your way too. (That whole 'practical'
> thing)

We (for some definition of we) *are* doing it better, we just haven't
convinced you of that, yet.  But since you've been lusting after
continuations, I'd say the transformation process hasn't got long to go -
any day now, you'll be wishing you could do away with those pesky mutable
variables...

> Perl lexically scopes the warnings and/or errors for conversion
> error checking, which works nicely for us.

IOW, you can lexically change the meaning of your operators.  Hmm...  I
think that makes perfect sense for controlling warnings for things like
deprecated features, but makes less sense as a way to modify the semantics
of your program & language.

Anton