"The World's Most Maintainable Programming Language"

J

John Salerno

There is an article on oreilly.net's OnLamp site called "The World's
Most Maintainable Programming Language"
(http://www.oreillynet.com/onlamp/blog/2006/03/the_worlds_most_maintainable_p.html).


It's not about a specific language, but about the qualities that would
make up the title language (learnability, consistency, simplicity,
power, enforcing good programming practices). I thought this might be of
interest to some of you, and I thought I'd point out the two places
where Python was mentioned:

from Part 4, Power:
"Of course (second point), a language that requires users to extend it
to be productive has already failed, unless it can enforce that there is
one obvious solution to any problem and autonomously subsume the first
working solution into the core language or library. Python is a good
example of this practice. There is a strong polycultural subcommunity in
the world of free and open source, and the members of this group
consider the lack of competing projects in Python (one XML parser, one
logging library, one networking toolkit) to be counterintuitive and even
counter to the goal of language progress. They’re wrong; this is
actually a strong force for cohesion in the language and community,
where the correct answer to a novice’s question of “How can I parse
XML?”, “How can I publish a database-driven web site?”, or even “How can
I integrate the legacy system of an acquired company from a different
industry with our existing legacy system?” (to prove that this principle
does not only apply to small or toy problems) is usually “Someone else
has already implemented the correct solution to that problem — it is
part of the standard library.”"

from Part 5, Enforcing Good Programming Practices:
"Having a comprehensive standard library helps alleviate this problem to
some degree for many languages. Consider how PHP and Java have both
avoided the trouble of conflicting addons by aggressively integrating
new features into the language. (Of course, Python has done a similar
job through a rigorous set of community procedures, but that’s difficult
— though not impossible — to emulate in a parser and compiler.)"
 
M

Mirco Wahab

John said:
There is an article on oreilly.net's OnLamp site called "The World's
Most Maintainable Programming Language"
(http://www.oreillynet.com/onlamp/blog/2006/03/the_worlds_most_maintainable_p.html).

There is one really interessting (imho) point
in the last part that struck me down:

<blockquote>
Aside from a formal specification, which I hope to
produce in the near future, the language needs a name.
Here is where many modern languages have done well.
Perl, named after Pearl Biggar (Larry Wall’s fiancée),
Ruby (named after Ruby Kusanagi Matsumoto, Yukihiro
Matsumoto’s youngest daughter), Ada (named after
Charles Babbage’s first programming student,
Ada Lovelace), and COBOL (named after Colleen
Bolero, the heroine of a Ravel operetta) have
set a high standard for naming techniques.
</blockquote>

OMG!

Did you people know that already ;-)

Regards

M.
 
T

Tim Parkin

John said:
There is an article on oreilly.net's OnLamp site called "The World's
Most Maintainable Programming Language"
(http://www.oreillynet.com/onlamp/blog/2006/03/the_worlds_most_maintainable_p.html).


It's not about a specific language, but about the qualities that would
make up the title language (learnability, consistency, simplicity,
power, enforcing good programming practices). I thought this might be of
interest to some of you, and I thought I'd point out the two places
where Python was mentioned:

It's interesting to see a slightly different take on type checking..

"In the real world it is an error to put five pounds of potatoes in a
ten pound sack"

"The same might be true of computer games, where a type checker so
careful that it might refuse to allow an operation where a 180-pound
character can carry 10,000 gold pieces might actually remove the aspect
of fun from the game."

Isn't this data validation and if it is, should the compiler be checking
this?

Tim Parkin
 
P

Paul McGuire

Mirco Wahab said:
(http://www.oreillynet.com/onlamp/blog/2006/03/the_worlds_most_maintainable_
p.html).

There is one really interessting (imho) point
in the last part that struck me down:

<blockquote>
Aside from a formal specification, which I hope to
produce in the near future, the language needs a name.
Here is where many modern languages have done well.
Perl, named after Pearl Biggar (Larry Wall’s fiancée),
Ruby (named after Ruby Kusanagi Matsumoto, Yukihiro
Matsumoto’s youngest daughter), Ada (named after
Charles Babbage’s first programming student,
Ada Lovelace), and COBOL (named after Colleen
Bolero, the heroine of a Ravel operetta) have
set a high standard for naming techniques.
</blockquote>

OMG!

Did you people know that already ;-)

Regards

M.

COBOL = COmmon Business-Oriented Language

I think the author was just testing to see who was reading. Also, is there
any significance to the publication date of the Conclusion (or the name
selected for the "ultimate" language)?

Seems like a lot of work for an Avril Fool's prank...

-- Paul
 
A

Azolex

John said:
There is an article on oreilly.net's OnLamp site called "The World's
Most Maintainable Programming Language"
(http://www.oreillynet.com/onlamp/blog/2006/03/the_worlds_most_maintainable_p.html).


It's not about a specific language, but about the qualities that would
make up the title language (learnability, consistency, simplicity,
power, enforcing good programming practices). I thought this might be of
interest to some of you, and I thought I'd point out the two places
where Python was mentioned:

from Part 4, Power:
"Of course (second point), a language that requires users to extend it
to be productive has already failed, unless it can enforce that there is
one obvious solution to any problem and autonomously subsume the first
working solution into the core language or library. Python is a good
example of this practice. There is a strong polycultural subcommunity in
the world of free and open source, and the members of this group
consider the lack of competing projects in Python (one XML parser, one
logging library, one networking toolkit) to be counterintuitive and even
counter to the goal of language progress. They’re wrong; this is
actually a strong force for cohesion in the language and community,
where the correct answer to a novice’s question of “How can I parse
XML?”, “How can I publish a database-driven web site?”, or even “How can
I integrate the legacy system of an acquired company from a different
industry with our existing legacy system?” (to prove that this principle
does not only apply to small or toy problems) is usually “Someone else
has already implemented the correct solution to that problem — it is
part of the standard library.”"

xml templates ? ORM ?
 
R

Ralf Muschall

Mirco said:
Perl, named after Pearl Biggar (Larry Wall’s fiancée),

His wife was Gloria since at least 1979, perl was published
in 1987. This seems to be an insider joke (he wanted to call
the language "Gloria" first, then "pearl", then "perl").
set a high standard for naming techniques.

So we should rename Python into Cottonmouth to get more attention.

Ralf
 
M

Mirco Wahab

Hi Ralf
His wife was Gloria since at least 1979, perl was published
in 1987. This seems to be an insider joke (he wanted to call
the language "Gloria" first, then "pearl", then "perl").

Thanks for pointing this out ;-)

This makes perfectly sense - then. I mean, its
'chromatic' who wrote about that, so at least
something has to hide in each of the jokes ;-)
So we should rename Python into Cottonmouth
to get more attention.

No, always take some word that relates to
something more or less 'feminine', its about
96% of young males who sit hours on programming
over their beloved 'languages' ;-)

Pythia? (http://en.wikipedia.org/wiki/Pythia)

Regards,

M.
 
P

Peter Hansen

Mirco said:
Hi Ralf

No, always take some word that relates to
something more or less 'feminine', its about
96% of young males who sit hours on programming
over their beloved 'languages' ;-)

Pythia? (http://en.wikipedia.org/wiki/Pythia)

I guess that would make our motto "Pythia: now you're programming with
ethylene."

-Peter
 
B

bruno at modulix

Peter said:
I guess that would make our motto "Pythia: now you're programming with
ethylene."

Who said programming in Python was a r'P[y|i]t(hi)?a' ?-)

(oops, sorry --->[])
 
T

Thomas Nelson

I thought the paragraph about provability was interesting. Presumably
the author refers to proofs in the spirit of "A Discipline of
Programming" from Djikstra, 1976. Unfortunately, I don't think anyone
has writting much about this since the 70s. I'd be interested to learn
if anyone's tried to write "weakest precondition" style specifications
for python (builtin functions, for, lambda, etc). Or perhaps there's
some easier to understand medium?

It's worth noting that the author makes proving correctness sound like
a trivial task, which of course it's not. Consider

def collatz(n,i=0):
if n==1:
return i
elif (n%2)==0:
return collatz(n/2,i+1)
else:
return collatz((3*n+1)/2,i+1)

It is currently unknown whether this even terminates in all cases.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,754
Messages
2,569,527
Members
45,000
Latest member
MurrayKeync

Latest Threads

Top