473,387 Members | 1,529 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

Nice presentation of Dana Moore on Oscon

A colleage attended me on the presentation of Dana Moore on Oscon:
"The Seven Habits of Highly Effective Technology Disruption
Python Survival in a Java & .Net World"
http://www.infoether.com/~rich/pycon2003.pdf

A very nice presentation. I do have one small comment: Python is
characterized as "weakly typed", which should be "dynamic types", or
what people often mean to say "not static typed".

The difference has been discussed many times in this newsgroup. Dynamic
typing requires a different approach than static typing. Programmers
from the static world have to make a mental adjustment to become
effective in this different paradigm.

kind regards, Gerrit Muller
--
Gaudi systems architecting:
http://www.extra.research.philips.com/natlab/sysarch/

Jul 18 '05 #1
4 2071
In article <3F**************@embeddedsystems.nl>,
Gerrit Muller <ge***********@embeddedsystems.nl> wrote:

A very nice presentation. I do have one small comment: Python is
characterized as "weakly typed", which should be "dynamic types", or
what people often mean to say "not static typed".


Unfortunately, Bruce Eckel has been perpetuating that terminology. I'm
in the process of writing a rebuttal.

http://www.artima.com/intv/typing.html
--
Aahz (aa**@pythoncraft.com) <*> http://www.pythoncraft.com/

"Not everything in life has a clue in front of it...." --JMS
Jul 18 '05 #2
Aahz <aa**@pythoncraft.com> wrote:
Unfortunately, Bruce Eckel has been perpetuating that terminology. I'm
in the process of writing a rebuttal. http://www.artima.com/intv/typing.html


In this it sounds as though Mr. Eckel is coming around to the right view.
In the first part he seems to be using "latent", and only says at one
point "...latent typing, sometimes called weak typing...". And he
repeatedly uses the phrase "strong static type checking" for what is
supposed to be the strength of C++ and Java, and notes that "Strong
static type checking forces the programmer to do a lot of extra work."

So I get the impression that he is making that journey of discovery
that we know so well. Or, anyway, I know it - maybe you didn't go
through the same wringer that made B&D static type checking seem like a
pretty good idea in contrast to what came before? I used to think C++
was the best thing since the symbolic assembler, or maybe object [code]
linking...

I don't know that I care much for "latent typing", although it has a
certain attraction. If nothing else, it's shorter than "strong dynamic
typing", the first word of which seems necessary these days. :-(

But whether or not Mr. Eckel is still contributing to it, I can attest
that there is a general confusion about this among programmers, perhaps
especially java programmers. Just the other day I whacked one upside
the head (virtually; we were chatting on IRC) with the distinction
between "strong" and "static" typing and had the pleasure of watching
his eyes light up. Well, I imagine they lit up. But that was only
one, so if you'd get cracking on that paper... :-)

--
Passport brilliantly combines the kludgey and unstable nature of NIS+
with the insecurity of the trusted hosts concept to produce
a nine-step process with obvious opportunities for
security and other abuses. -- Paul Murphy
Jul 18 '05 #3
In article <be**********@panix3.panix.com>, Aahz <aa**@pythoncraft.com> wrote:
In article <3F**************@embeddedsystems.nl>,
Gerrit Muller <ge***********@embeddedsystems.nl> wrote:

A very nice presentation. I do have one small comment: Python is
characterized as "weakly typed", which should be "dynamic types", or
what people often mean to say "not static typed".


Unfortunately, Bruce Eckel has been perpetuating that terminology. I'm
in the process of writing a rebuttal.

http://www.artima.com/intv/typing.html


All right, my rebuttal is now at
http://www.artima.com/weblogs/viewpost.jsp?thread=7590
--
Aahz (aa**@pythoncraft.com) <*> http://www.pythoncraft.com/

"Not everything in life has a clue in front of it...." --JMS
Jul 18 '05 #4
Many thanks for your rebuttal.

My picture of the situation is this: the Python interpreter is in effect
placing assert statements after (inside) every Python statement. This makes
Python in practice much more safe and convenient than any static language.

No, this doesn't directly relate to types. However, IMO the real issues
aren't about types, they are about safety and convenience. Python crushes
any static language as far as convenience goes. This much is obvious.

Theoretically all languages are unsafe. Python programs can throw uncaught
exceptions just like C++ asserts can fail. In practice, though, the Python
interpreter makes development so much safer that one can just "blast away"
without worrying too much about the kinds of things compilers typically
worry about. And my Python programs have been much more robust than the
equivalent C++ programs, even without pychecker's help.

This is probably all obvious to Pythonists, and incomprehensible to others.
Oh well... :-)

Edward
--------------------------------------------------------------------
Edward K. Ream email: ed*******@charter.net
Leo: Literate Editor with Outlines
Leo: http://webpages.charter.net/edreamleo/front.html
--------------------------------------------------------------------


Jul 18 '05 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Guido van Rossum | last post by:
Just a quick reminder: you have another week to submit a proposal for the Python 12 Conference at OSCON: The O'Reilly Open Source Convention (OSCON) will be held July 26-30, 2004 at the Portland...
0
by: Guido van Rossum | last post by:
This is the FINAL reminder: you still have all day today to submit a proposal for the Python 12 Conference at OSCON: The O'Reilly Open Source Convention (OSCON) will be held July 26-30, 2004 at...
0
by: Kevin Altis | last post by:
Please submit your tutorial and session proposals for the Python track by February 13th. The information and relevant URLs are below. ka --- The Call for Proposals has just opened for the...
0
by: Aahz | last post by:
I'm trying to organize a group of people to run a Python booth at OSCON so that people will see an alternative to Perl. ;-) I'd like at least ten or twelve volunteers so that nobody has to pull a...
0
by: Kevin Altis | last post by:
OSCON 2007 http://conferences.oreillynet.com/os2007/ Save the date for the 9th annual O'Reilly Open Source Convention, happening July 23-27, 2007 at the Oregon Convention Center in beautiful...
0
by: Kevin Altis | last post by:
Be Heard at OSCON 2007 -- Submit Your Proposal to Lead Sessions and Tutorials by February 5! The O'Reilly Open Source Convention July 23-27, 2007 Portland, Oregon...
0
by: Aahz | last post by:
The O'Reilly Open Source Convention (OSCON) is accepting proposals for tutorials and presentations. The submission period ends Feb 4. OSCON 2008 will be in Portland, Oregon July 21-25. For more...
0
by: Aahz | last post by:
The O'Reilly Open Source Convention (OSCON) is accepting proposals for tutorials and presentations. The submission period ends Feb 4. OSCON 2008 will be in Portland, Oregon July 21-25. For more...
0
by: Aahz | last post by:
The O'Reilly Open Source Convention (OSCON) is accepting proposals for tutorials and presentations. The submission period ends Feb 4. OSCON 2008 will be in Portland, Oregon July 21-25. For more...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.