Diferencia entre revisiones de «Lenguaje de programación»

Contenido eliminado Contenido añadido
→‎Implementación: ejemplo de multiplicación de matrices y su posible mejorable dependiendo de la implementación
Deshecha la edición 116528162 de TechnoPerk (disc.): referencia incumple las normas básicas 1, 2 y 3 de Wikipedia:Fuentes fiables, de hecho el enlace podría ser considerado spam (ya que apunta a una página de caracter comercial); aparte, no tiene encaje con la sección donde se incorporó la información
Etiqueta: Deshecho
Línea 253:
 
La mayoría de lenguajes de alto nivel permiten la programación multipropósito, aunque muchos de ellos fueron diseñados para permitir programación dedicada, como lo fue el [[Lenguaje de programación Pascal|Pascal]] con las matemáticas en su comienzo. También se han implementado lenguajes educativos infantiles como [[Logo (lenguaje de programación)|Logo]] mediante una serie de simples instrucciones. En la actualidad son muy populares algunos lenguajes especialmente indicados para [[Aplicación web|aplicaciones web]], como [[Perl]], [[PHP]], [[Ruby]], [[Python]] o [[JavaScript]].
 
A día de hoy la implementación en lenguajes de alto nivel puede representar serios problemas en cuanto a rendimiento. Charles E. Leiserson, científico informático que trabaja y enseña en el MIT, hizo un estudio junto con sus colegas del MIT en el que compararon la mejora en velocidad respecto a Python al escribir el mismo algoritmo para multiplicación de matrices pero optimizando la programación paso a paso, las mejoras fueron como sigue:
 
* Solo por escribirlo en C (lenguaje de programación de menor nivel que Phyton) supone mejorar la velocidad respecto a Phyton 47 veces.
 
* Optimizando el código para correr en lazos paralelos para utilizar los Cores del procesador en paralelo, la mejora en velocidad aumentó 7 veces.
 
* Optimizando el uso de la memoria caché, mejoró 20 veces más el rendimiento.
 
* Finalmente utilizando las instrucciones SIMD nativas del procesador, consiguieron una mejora de 9 veces..
 
Es decir, optimizando el software para este ejemplo en concreto se pudo obtener una mejora en rendimiento 63.000 veces mayor. Este ejemplo ejemplo, muestra todas las ineficiencias que existen y la enorme capacidad de mejora que existe a coste de un mayor plazo de desarrollo de la programación.<ref>{{Cita web|url=https://www.reketec.com/blog/reketec-1/post/que-impacto-tiene-tu-pc-en-el-medio-ambiente-20#futuro|título=¿Qué posibilidades de mejora existen en el futuro?}}</ref>
 
== Técnica ==