On 10/15/06, Kevin Olemoh <darkintent / gmail.com> wrote:
> I wanted to add that it may not be so advantageous to have so many
> programming languages;unlike spoken languages which actually benefit
> from their diversity since they are allow humans to create entirely
> new concepts.  Programming languages are somewhat restricted by how
> hardware actually works and hence perform the same functions with
> different ways of getting to the same result.  Perhaps one method of
> dealing with the current trend of programmers being schooled in two or
> more languages just to be marketable is to try to standardize the
> behavior of various constructs across languages so things work more
> the same across the board.  Granted this does happen somewhat
> naturally already what I am postulating is that it may be advantageous
> to actively try to direct this phenomena.
>
> It would keep things like this from happenning:
>
> a bunch of languages support += as a shorthand for incrementing accumulators
>
> A SQL implementation comes along and does not support this relatively
> common short hand..WTH Why???
>
> Anyway that is a discussion unto itself.

Oh, please. Your thoughts here are na?ve, at best. Let's pick on one
of the syntax things that Ruby doesn't support: ++. There are very
good reasons that Ruby doesn't support this syntactic increment
shorthand -- and there's no way to make Ruby support it in a way that
doesn't break a lot of other things or is thread safe. (It's also only
possible to support the prefix form, not the postfix form.)

Language -- whether it's computer language or human language --
changes the way that you think. When I work in C, i think in much
lower-level terms. This is the *purpose* of C -- a portable assembly,
if you will. When I work in C++, I add a bit of object oriented and
template magic to C. My concepts in C++ are still pretty low-level.
When I move to shell scripting, I think in different terms yet -- I
think in terms of "what tools do I have that will help me do what I
must do?" And when I'm in Ruby, I think in terms that are much more
complex than I do with almost any other language.

You say that a bunch of languages support += -- I can think of at
least as many that *don't* support += at all, and even among those
that do support it, there are some that are just whacked out.

The problem we have isn't that programmers must know two or more
languages; it's that there's too many programmers out there who barely
know one. I personally know at least fifteen, although I haven't used
half of them in years. But I use at least four on a regular basis at
work.

I have learned a lot from every single language -- and look forward to
learning even more so that I can advance the state of *my* art.

-austin
-- 
Austin Ziegler * halostatue / gmail.com * http://www.halostatue.ca/
               * austin / halostatue.ca * http://www.halostatue.ca/feed/
               * austin / zieglers.ca