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

RE: succinctness = power



> So you're talking about other factors (extent of normalization) that are
> *reflected in*, not *caused by* succinctness.

Yes, I don't believe I ever suggested "caused by".  You inadvertently
prompted PG's essay by talking about "Python's goal", and PG talked about
"the aim of a language".  Confusing goals and causes will definitely lead to
trouble...

> It is the other factors that are the power. Succintness is a side-effect
of optimizing for them.

A side-effect, or perhaps an aim or goal?  A language can make it easy to be
succinct in all sorts of ways, or it can make it more difficult.  I'm
agreeing with PaulG (although perhaps on a slightly different, but
overlapping, set of criteria) that a language which encourages and fosters
succinctness is a more powerful language.

> The paper under discussion talks about parse tree tokens:

I took another look at the paper.  I agree with what PG says under
"Hypothesis", and I think the second paragraph in that section is a good
summary of the issue.

I think the "Metrics" section may miss an aspect of what I've been talking
about.  If a language encourages and supports what I earlier called
"semantic compression", then it will do very well on any metric of program
size.  However, I don't see the issue as primarily one of being whether
there are more tokens in, say, an infix expression vs. a prefix expression,
or other such micro-level comparisons.  I'm more concerned about macro-level
succinctness (pun intended), how possible a language makes it to express
complex concepts in a concise way.

> That's why I take exception to these paragraphs at the top
> of the essay:

I might take exception too, if it were my name up there, or the name of my
favorite language. :)  I've been attempting to discuss the technical issue,
and I had actually forgotten that the essay began with that.  As I mentioned
previously, I also haven't been treating this as a Python vs. Lisp issue.
I'm very familiar with dynamically-typed OO languages, and I imagine that
Python is at least similar in power to other such languages.  (I have also
used Jython to script Java objects, but not enough to learn much Python.)

> Python is designed to be powerful in that way (though not necessarily
> the MOST powerful). It is not designed to be succinct.

Absolutely not!  Otherwise, after all, "def" could be shortened to say "df",
or even "fn", for added forwards compatibility?!  Myself, I like verbose
languages like Scheme, which has at least 8 superfluous bytes (in Unicode)
on every "define"...

Anton