Archive for 'Python'

Dive in Python 3

El reconocido libro Dive Into Python de Mark Pilgrim, que fué traducido al castellano en por lo menos una de sus ediciones anteriores, se actualizó radicalmente para incluir las novedades de la última versión 3 de Python y sus diferencias con respecto a su anterior versión 2. El nuevo libro se llama ahora Dive Into Python 3, incluye un 80% de manterial nuevo y todos sus contenidos están disponibles en varios formatos en su nuevo sitio DiveIntoPython3.org bajo una licencia Creative Commons.

Su versión impresa la publica la editorial Apress y el libro de 500 páginas ya puede pre-ordenarse en Amazon, aunque los usuarios más avezados pueden descargarlo directamente desde su repositorio Mercurial con el siguiente comando:

$ hg clone http://hg.diveintopython3.org/ diveintopython3

Python y C en Android

La plataforma de aplicaciones de Android es una máquina virtual de Java propia de Google, llamada Dalvik, por lo tanto las aplicaciones que corren en esta plataforma se deben escribir en el lenguaje Java de Sun Microsystems.

Para la mayoría de la situaciones, un lenguaje de alto nivel y portable como Java es suficiente, pero hay casos en los que no estaría mal tener la opción de ejecutar código nativo del procesador para implementar funcionalidades muy específicas sin pasar por la máquina virtual.

Este mes, Google ha anunciado el primer release de Android Native Development Kit (NDK). Se trata de un kit de desarrollo para Android que permite usar los lenguajes C y C++ desde aplicaciones en Java.

Android NDK provee:

* Un conjunto de herramientas para generar bibliotecas que corren en forma nativa a partir de código fuente en C y C++.
* Una forma de integrar las bibliotecas nativas en paquetes distribuibles para dispositivos Android (.apks).
* Un conjunto de bibliotecas que serán soportadas en todos los siguientes releases de Android, comenzando por la versión 1.5.

En este primer release del NDK se da soporte para compilar en código de máquina para ARMv5TE, y se incluyen las siguientes bibliotecas:

* La interfaz JNI para usar el código nativo desde Java (Java Native Interface)
* libc : Biblioteca estándar de C
* libm : Biblioteca estándar para operaciones matemáticas
* libz : Biblioteca de compresión Zlib
* liblog : Acceso al subsistema de registro (logging)

El NDK no está pensado para construir aplicaciones completas en C/C++, sino que para escribir aplicaciones en Java como es usual y en casos muy específicos usar bibliotecas en C/C++ que se ejecutan en código de máquina nativo de ARM.

Hay que considerar que no se puede acceder a las API’s de Android a través de código nativo, por lo tanto estas bibliotecas pueden ser usadas para implementar funcionalidades que realizan una función muy acotada. Además que hay un sacrificio respecto a la portabilidad de las aplicaciones, ya que en el caso de Java el código compilado es portable, no así el caso de C/C++.

Por ejemplo, situaciones que ameritan el uso de código nativo son las de procesamiento intensivo de datos como : Simulación de física y procesamiento de señales (DSP), entre otros.

Python 2.5 liberado

Leo el aviso de la liberación de la versión 2.5 de Python…

From: Anthony Baxter
To: python-list-AT-python.org, python-dev-AT-python.org, python-announce-AT-python.org
Subject: RELEASED Python 2.5 (FINAL)
Date: Tue, 19 Sep 2006 22:39:48 +1000

It’s been nearly 20 months since the last major release
of Python (2.4), and 5 months since the first alpha
release of this cycle, so I’m absolutely thrilled to be
able to say:

On behalf of the Python development team
and the Python community, I’m happy to
announce the FINAL release of Python 2.5.

This is a *production* release of Python 2.5. Yes, that’s
right, it’s finally here.

Python 2.5 is probably the most significant new release
of Python since 2.2, way back in the dark ages of 2001.
There’s been a wide variety of changes and additions,
both user-visible and underneath the hood. In addition,
we’ve switched to SVN for development and now use Buildbot
to do continuous testing of the Python codebase.

Much more information (as well as source distributions
and Windows and Universal Mac OSX installers) are available
from the 2.5 website:

http://www.python.org/2.5/

The new features in Python 2.5 are described in Andrew
Kuchling’s What’s New In Python 2.5. It’s available
from the 2.5 web page.

Amongst the new features of Python 2.5 are conditional
expressions, the with statement, the merge of try/except
and try/finally into try/except/finally, enhancements
to generators to produce coroutine functionality, and
a brand new AST-based compiler implementation underneath
the hood. There’s a variety of smaller new features as
well.

New to the standard library are hashlib, ElementTree,
sqlite3, wsgiref, uuid and ctypes. As well, a new
higher-performance profiling module (cProfile) was
added.

Extra-special thanks on behalf of the entire Python
community should go out to Neal Norwitz, who’s done
absolutely sterling work in shepherding Python 2.5
through to it’s final release.

Enjoy this new release, (and Woo-HOO! It’s done!)
Anthony

Anthony Baxter
anthony@python.org
Python Release Manager
(on behalf of the entire python-dev team)


http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations.html