473,320 Members | 2,189 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,320 software developers and data experts.

Python future performance and speed

It seems there are quite a few projects aimed to improve Python's
speed and, therefore, eliminate its main limitation for mainstream
acceptance.
I just wonder what do you all think?
Will Python (and dynamic languages in general) be someday close to
compiled languages speed?
What will be the future of Psyco, Pypy, Starkiller, Ironpython and all
the other projects currently on development?
Jul 18 '05
52 3768
be*******@aol.com writes:

(2) The Python approach to OOP is very different -- looser -- than
that of C++ and has less support for data hiding. For example, one can
add an attribute to an object anywhere, which seems like a dubious
freedom to me.
Seems like a damn useful freedom to me. But then I've worked with
people who refused to take the obvious clean, efficent, clear design
decision only because it violated some principle they were told about
in some OOA&D class ... only to insist on creating a program which was
slow, ugly, difficult to understand, difficult to maintain, and had a
few less useful features.
(3) The beginning of a Python function only tells you about the
arguments, not the result. I prefer not to scan the entire body of a
function to see what it returns. Compiled languages like C++, Fortran,
and Pascal put the argument and result info in one place.
And compiled lanugages like Lisp[1] and Python[2] don't. Oh, you meant
"explicitly statically typed", rather than "compiled", I see :-)

But caring about the type to this extent is not a very productive way
of programming in Python. You should understand the purpose of the
function, and thereby understand the duck types it accepts and returns
.... and duck types are not expressible in a way that wouldn't make a
explicitly static compiler smoke.

Of course, those coming from the bondage school of programming (C++,
Java ...) will run screaming when confronted with duck typing, but
that's their loss.
(4) Python does not look like C++. Some programmers think that any
alternative to C++ must still look like it. I think this argument is
weak, but Java's cosmetic similarity to C++ probably has boosted its
popularity.


This is one of the greatest tragedies: C++ is accepted as the starting
point. We're doomed.

[1] Compiled to native machine code (usually).

[2] Compiled to bytecode (usually).
Jul 18 '05 #51
Jacek Generowicz <ja**************@cern.ch> wrote:
(2) The Python approach to OOP is very different -- looser -- than
that of C++ and has less support for data hiding. For example, one can
add an attribute to an object anywhere, which seems like a dubious
freedom to me.


Seems like a damn useful freedom to me. But then I've worked with
people who refused to take the obvious clean, efficent, clear design
decision only because it violated some principle they were told about
in some OOA&D class


Yeah, tell me about it. We had a really smart young guy who grew up on
C++ and was convinced that C++ was the be-all and end-all of OOP. He
told me flat out that Python was not an OOPL because it didn't have
private data. Of course, he never actually tried Python, because he
"just couldn't get past the whole indenting thing".

Then he quit and took a higher paying job with a big financial company
maintaining legacy Fortran code. Go figure.
Jul 18 '05 #52
Jacek Generowicz wrote:
Peter Hansen <pe***@engcorp.com> writes:
The last time I checked, Java and C++ (even C) were widely
considered to be high level languages.

The fact many people hold an erroneous belief, does not make said
belief any less erroneous.


Though if you are the only one who holds the "correct" belief,
and everyone else has the erroneous belief, it should suggest
a possible direction for you to look in resolving the conflict. ;-)
Has someone been raising the bar while I wasn't looking?

The developers of all the truly high-level languages ?

There was a time when assembler was high-level.


For those of us who still use assember from time to time,
C is definitely still a high level language...

-Peter
Jul 18 '05 #53

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

Similar topics

467
by: mike420 | last post by:
THE GOOD: 1. pickle 2. simplicity and uniformity 3. big library (bigger would be even better) THE BAD:
47
by: Michael Scarlett | last post by:
There is an amazing article by paul graham about python, and an even better discussion about it on slashdot. The reason I point this out, is the more I read both articles, the more I realised how...
53
by: Michael Tobis | last post by:
Someone asked me to write a brief essay regarding the value-add proposition for Python in the Fortran community. Slightly modified to remove a few climatology-related specifics, here it is. I...
118
by: 63q2o4i02 | last post by:
Hi, I've been thinking about Python vs. Lisp. I've been learning Python the past few months and like it very much. A few years ago I had an AI class where we had to use Lisp, and I absolutely...
0
by: Kurt B. Kaiser | last post by:
Patch / Bug Summary ___________________ Patches : 375 open ( -3) / 3264 closed (+26) / 3639 total (+23) Bugs : 910 open ( +3) / 5851 closed (+20) / 6761 total (+23) RFE : 217 open...
206
by: WaterWalk | last post by:
I've just read an article "Building Robust System" by Gerald Jay Sussman. The article is here: http://swiss.csail.mit.edu/classes/symbolic/spring07/readings/robust-systems.pdf In it there is a...
71
by: Jack | last post by:
I understand that the standard Python distribution is considered the C-Python. Howerver, the current C-Python is really a combination of C and Python implementation. There are about 2000 Python...
0
by: DolphinDB | last post by:
The formulas of 101 quantitative trading alphas used by WorldQuant were presented in the paper 101 Formulaic Alphas. However, some formulas are complex, leading to challenges in calculation. Take...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you

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.