edición general

¿Puede la retroinformática darnos mejores programadores en el futuro? Este estudio cree que sí

#25 Depende... el for de C no tiene nada que ver con el for de python. El compilador tiene mucho que decir. Si te piensas que todos los for son como la instruccion que cuando el registro llega a cero, salta a una zona de memoria... vas listo.
#58 Pues depende. Si haces un for explícito en Python, funciona igual que el de C. El compilador (intérprete más bien) hará lo que le dices: desde 1 hasta 10, hacer esta operación sobre el elemento i.

Ahora bien, si lo que quieres hacer en realidad es aplicar una misma operación a todos los elementos de un array, puedes hacer directamente un map(), indicando el array y la operación que quieres hacer, y así el intérprete es libre de, si le parece, enviar cada una de las 10 operaciones a una CPU diferente, y ser tremendamente más rápido que la versión C.

Si el programador no sabe muy bien cómo funcionan las tripas de la máquina, a lo mejor piensa que las dos formas de hacerlo son iguales (semántica y funcionalmente lo son), pero el que alguna vez ha tocado las cañerías probablemente tenga en cuenta este tipo de matices.
#105 Ese supuesto procesamiento en paralelo podría ser más perjudicial que otra cosa porque lo ganado en paralelismo puedes perderlo con fallos de caché.
#141 Podría, podría... Claro que podría. Esa es la tarea del compilador, saber cuándo conviene y cuándo no. Pero haciendo los bucles explícitos, nunca podrás paralelizar, mientras que escribiéndolo de la otra forma dejas la puerta abierta para hacerlo cuando convenga.

Y al ritmo que va la informática, con CPUs de 8 y 16 cores en ordenadores de escritorio, lo de paralelizar hasta las chorradas más simples cada vez va a ser más importante.

menéame