Python is readable
Steven D'Aprano
steve+comp.lang.python at pearwood.info
Thu Mar 22 04:56:17 EDT 2012
On Wed, 21 Mar 2012 18:35:16 -0700, Steve Howell wrote:
> On Mar 21, 11:06 am, Nathan Rice <nathan.alexander.r... at gmail.com>
> wrote:
>> As for syntax, we have a lot of "real" domain specific languages, such
>> as English, math and logic. They are vetted, understood and useful
>> outside the context of programming. We should approach the discussion
>> of language syntax from the perspective of trying to define a unified
>> syntactical structure for real these DSLs. Ideally it would allow
>> representation of things in a familiar way where possible, while
>> providing an elegant mechanism for descriptions that cut across domains
>> and eliminating redundancy/ambiguity. This is clearly possible, though
>> a truly successful attempt would probably be a work of art for the
>> ages.
>
> If I'm reading you correctly, you're expressing frustration with the
> state of language syntax unification in 2012. You mention language in a
> broad sense (not just programming languages, but also English, math,
> logic, etc.), but even in the narrow context of programming languages,
> the current state of the world is pretty chaotic.
And this is a good thing. Programming languages are chaotic because the
universe of programming problems is chaotic, and the strategies available
to solve those problems are many and varied.
Different programming languages are good for different things because
they have been designed to work in different problem/solution spaces.
Although I dislike C with a passion, I do recognise that it is good for
when the programmer needs fine control over the smallest details. It is,
after all, a high-level assembler. Likewise for Forth, which lets you
modify the compiler and language as you go.
Some languages are optimized for the compiler, some for the writer, and
some for the reader. So are optimized for numeric work, others for
database access. Some are Jack-Of-All-Trades. Each language encourages
its own idioms and ways of thinking about programming.
When it comes to programming, I say, let a thousand voices shout out.
Instead of imagining a single language so wonderful that every other
language is overshadowed and forgotten, imagine that the single language
is the next Java, or C, or even for that matter Python, but whatever it
is, it's not ideal for the problems you care about, or the way you think
about them. Not so attractive now, is it?
> The optimistic view is that there will be some kind of inflection point
> around 2020 or so. I could imagine a perfect storm of good things
> happening, like convergence on a single browser platform,
You call that a perfect storm of good things. I call that sort of
intellectual and software monoculture a nightmare.
I want a dozen browsers, not one of which is so common that web designers
can design for it and ignore the rest, not one browser so common that
nobody dares try anything new.
> nearly
> complete migration to Python 3, further maturity of JVM-based languages,
> etc., where the bar gets a little higher from what people expect from
> languages. Instead of fighting semicolons and braces, we start thinking
> bigger. It could also be some sort of hardware advance, like screen
> resolutions that are so amazing they let us completely rethink our views
> on terseness, punctuation, code organization, etc.
And what of those with poor eyesight, or the blind? Are they to be
excluded from your "bigger" brave new world?
--
Steven
More information about the Python-list
mailing list