Slashdot Mirror


Python Family Gets a Triplet Of Updates

The Python developers have been busy this weekend, releasing three new versions at different points on the Python continuum: 2.7.4 (a 2.7 series bugfix release), 3.2.4 (what's new), and production releases 3.3.1. Here's what's new in 3.3.1.

6 of 196 comments (clear)

  1. Where is the 64 bit dongle support by PhamNguyen · · Score: 5, Funny

    Python needs to support larger dongles.

  2. 2.7.4 by JanneM · · Score: 5, Interesting

    Happy to see another bugfix release for 2.7. Like it or not, 2.7 is going to remain the main or only version of Python for years to come at many installations. Which means tools that depend on Python at such places also only or mostly support the 2.7 series.

    The developers for the tool I use have just only begun discussing the possibility of perhaps beginning support for Python 3 in addition to the 2.5-2.7 versions for unspecified later versions; but only if it is possible to do without too much code duplication and maintenance efort.

    --
    Trust the Computer. The Computer is your friend.
  3. Re:The Python Launcher by Anonymous Coward · · Score: 5, Informative

    PEP 397 doesn't do what you think it does. It's a program that gets installed when you install Python. It parses a .py file's shebang line and uses that to determine which installed version of Python gets called. It's not designed to bundle Python programs into standalone executables. For that, you'll want to download something like http://cx-freeze.sourceforge.net/ (which works on Python 3, unlike Py2EXE)

  4. Re:Not that surprising by lattyware · · Score: 4, Insightful

    That's how you end up being PHP. Python 3 fixes core mistakes made in earlier versions of the language, and makes it harder to write bad code. That's a good thing, and the last thing you want is a language full of 20 ways to do something, 18 of which are deprecated. Removing backwards compatibility for the 3.x line was a good idea.

    --
    -- Lattyware (www.lattyware.co.uk)
  5. Re:Add curly braces and you have C by mrvan · · Score: 5, Informative

    [...]And such stupendous stupidities such as isoweekday() returning a range of 1..7 [...]

    Maybe, from a CS point of view, any index should always be zero-based. However, for weekday there are two compelling arguments why this should not be the case:

    1) Authoritative: The ISO specs clearly state that weekday number should be 1..7 [from wikipedia: A date is specified by the ISO week-numbering year in the format YYYY, a week number in the format ww prefixed by the letter W, and the weekday number, a digit d from 1 through 7, beginning with Monday and ending with Sunday."]. So, any library that returns an "ISO week day number" of 0 is simply non-compliant

    2) Customary: All human readable date components are 1-based (the first "CE" date is 0001-01-01, not 0000-00-00). So why should weekday (which is intended for human consumption) be different?

  6. Re:Not that surprising by dbrueck · · Score: 4, Insightful

    Try this: take a well-formatted C or Java program and remove all the curly braces, and try to objectively quantify how much this affects your ability to determine the program's structure. Now, take the same program and leave the curly braces but remove all the indentation and again make your best guess about how much this affects your ability to determine the program's structure.

    Now ask yourself two questions:
    1) Which of the two (indentation or curly braces) is the much stronger indicator of program structure to a human?
    2) Which of the two is the much stronger indicator of program structure to the computer?

    (hint: if you're completely honest, you'll almost certainly come up with different answers for #1 and #2 :) )

    Doesn't it seem just a little weird that the primary indicator of program structure to the human isn't the one that actually matters from the computer's perspective? I'm not saying it's this massive problem, but at the same time it seems odd to fault a language like Python for taking the main block structure indicator from modern languages and have both the human and the computer rely on it. No redundancy, and no chance for two competing block structure indicators to ever be out of sync.

    Again, if you want a language where curlies are required, that's fine, but hopefully you can at least see that what Python does is both sensical and pragmatic.