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