28 de noviembre de 2022

Python es el lenguaje más popular, y Microsoft está trabajando para hacerlo más rápido

Python es el lenguaje de programación más popular pero su gran debilidad es el rendimiento, aunque los desarrolladores del lenguaje tratan de ponerle remedio. Aun así, para ejecutarse, necesita hardware de gama alta, suele apoyarse en tarjetas gráficas, no se ejecuta en el navegador, como JavaScript, y casi no tiene historia en los móviles, como recuerda ZDnet.

Durante los últimos años, Microsoft ha contribuido a un Python más rápido. Este es un proyecto iniciado por el creador de Python, Guido van Rossum, en 2021, y es que hay que recordar que Microsoft lo contrató como ingeniero distinguido.

Ahora, Microsoft ha contratado a un equipo de seis ingenieros junto con Van Rossum para que se encarguen de las mejoras de rendimiento a través de CPython. Hay que recordar que Mark Shannon, uno de los principales colaboradores de CPython (o Core Python), redactó en 2020 un plan de implementación para acelerar CPython cinco veces.

-¿Qué hace Microsoft con Python?

Core Python es la implementación de referencia de Python en la que se basan otras variantes, como Anaconda, centrada en la ciencia de datos.

Ahora hay información más detallada sobre cómo las inversiones del gigante de Redmond se traducen en beneficios para CPython, cuyos colaboradores son en su mayoría voluntarios, normalmente ingenieros cualificados que tienen otros trabajos, aunque que ahora tendrán el apoyo de las contrataciones de Python de Microsoft.

Microsoft destaca el trabajo de seis empleados, que han contribuido a mejorar el rendimiento de Python 3.10 y 3.11, lo que, según Microsoft, ha supuesto un aumento de la velocidad de entre el 10% y el 60% en algunas áreas del lenguaje. A pesar de las informaciones compartidas desde Resmond, Microsoft parece cauteloso para evitar la percepción de que tiene una agenda para Python.

Uno de estos desarrolladores dice que «unirme al equipo de Faster CPython sí cambió mi enfoque hacia el rendimiento» y como resultados afirma que «simplificando la representación interna del intérprete de las excepciones planteadas, reduje el tiempo que se tarda en plantear y capturar una excepción en aproximadamente un 10%. En otro proyecto, hice que el compilador emitiera el código de los bloques de excepción en una zona separada, para que no haya que saltarlos en caso de que no se plantee ninguna excepción».

Van Rossum ha detallado que «los seis nos reunimos todos los lunes» y dice que esto es más que suficiente para hablar. Además, este equipo de programadores ha comentado que «lo que estamos haciendo es algo arriesgado. Probablemente ha habido una mayor frecuencia de consecuencias no deseadas y de errores que han surgido porque estamos cambiando el funcionamiento del núcleo. Es muy importante que el equipo apoye a la comunidad para mantener la calidad».