[pyar] Análisis sobre charla "Python más rápido que C"

Fernando Pelliccioni fpelliccioni en gmail.com
Mar Abr 29 13:12:12 ART 2014


Muchachos, es un tema extenso, así que voy a ir mencionando uno a uno
algunos temas en distintos emails así los podemos ir discutiendo.
Y ante todo, por favor, hagamos esto con respeto, tratando de no
convertirlo en una guerra religiosa, dejemos el fanatismo de lado y
pensemos objetivamente.
En definitiva, un lenguaje de programación es una herramienta. Tenemos que
usar la indicada para el trabajo indicado. Y al final del ejercicio, quizás
nos demos cuenta que el lenguaje de programación no importa, sino, lo que
importa es cómo programamos.

Volviendo a la charla, en primer lugar, el título creo que es incorrecto:
"Python más rápido que C"

¿Qué espera cada uno de ustedes de una charla/investigación con ese título?
¿Cuáles son las conclusiones?

Considero que las conclusiones no concuerdan con el título, ya según las
éstas "C es más rápido que Python o Python puede acercarse a los tiempos de
ejecución de C en ciertos casos". Por ende, "Python más rápido que C" no es
cierto (según las conclusiones).

Entiendo que existe el factor marketing, un título tiene que ser atractivo,
así invitamos al oyente/lector a que acceda a nuestro "producto".
Personalmente prefiero agregarle un poco de rigor científico y dejar el
marketing de lado.

Lo que todavía no entiendo bien es cuál es el objetivo de la charla (más
allá del slide de Objetivos), pienso en dos escenarios distintos:

1. Supongamos, yo soy programador Python, y como todo programador, quiero
que lo que estoy programando sea lo más eficiente posible. ¿Alguno de
ustedes no desea esto?
Entonces, por el solo hecho ganar más eficiencia (sin saber si es necesario
o no), decido programar ciertas partes de mi programa en C (quizás estoy
lejos de ser un experto en C) y termino dejando de lado otras cuestiones
importantes.
¿Cuánto gane en tiempo de ejecución?
¿Cuánto perdí en tiempo de programación?
¿Valió la pena?

La charla me termina enseñando:
No le saquemos el foco a cuestiones importantes por concentrarnos en la
eficiencia cuando no es necesario.

Si ese es el objetivo, lo comparto, pero no está del todo claro.

2. Por otro lado, creo que otro objetivo puede ser intentar, como dice el
slide 2, "Comparar tiempos de ejecución en Python y C".
Entonces, yo soy un programador "poliglota", seguramente poco
experimentado, donde veo una charla en la que me dicen que C es más
eficiente que Python, solo por que hice "pruebas ajustadas para 'favorecer'
a C".
Yo soy una persona que tomo por válido lo que me dicen y saco la conclusión
de que no solo "Python me permite codificar en menos tiempo", sino, que a
su vez los tiempos de ejecución entre C y Python son comparables.
No me cuestiono si lo que dicen es cierto o no, sino, lo doy como un hecho.
 No sé si este es el objetivo real, parecería serlo según el segundo slide,
pero...

En respuesta a la pregunta de Daniel "¿qué entendemos por eficiencia?".
Según el contexto del cual estamos hablando, le doy a eficiencia el mismo
significado que se le da en la charla: "Comparar tiempos de ejecución en
Python y C"

Un abrazo,
Fernando.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140429/57f397e3/attachment.html>


More information about the pyar mailing list