Historia De La Programacion
ivanamonsalbo21 de Agosto de 2014
3.577 Palabras (15 Páginas)211 Visitas
Introducción
Conocer la historia del desarrollo de cualquier campo del saber humano es de gran importancia para aquellos que planeen desenvolverse en dicho campo, ya que tiene cuando menos dos beneficios tangibles: Conocer el estado promedio del arte y evitar cometer errores ya cometidos. Así es mas fácil tomar las decisiones correctas y sobrevivir sin esfuerzo a muchas modas que estridentemente proclaman la reinvención del hilo negro. Como dijo el filósofo español Gorge Santayana “El que no conoce la historia esta condenado a repetirla”.
Es comúnmente aceptado que la historia de la computación moderna comienza con Charles Babbage, en 1822, sin embargo las primeras computadoras mecánicas y eléctricas no contaban con un lenguaje de programación tal como lo conocemos ahora, la mayoría de ellas era construida para llevar a cabo una tarea especifica; por lo tanto la forma de programarla era particular a cada computadora. Fue en el año de 1945 cuando el matemático Jhon Von Neumann[1] fascinado por las posibilidades de ENIAC[2], elaboró un estudio que demostró que una computadora podía tener una estructura física muy simple y fija, y aun así ser capaz de ejecutar cualquier tipo de programa mediante un control correcto, sin la necesidad de modificar la computadora para esto.
A partir de esta innovación de Von Neunmann, que en conjunto se conoce como la técnica de programa almacenado es que se inicia la era de los lenguajes de programación.
Los primeros lenguajes
Shortcode
En 1949,aparece el primer lenguaje que se usó en computadoras electrónicas: “Shortcode”, requería que el programador convirtiera (compilara) su programa a 0's y 1's de manera manual.
A-0
Fue hasta el año de 1951, que Grace Hopper[3] trabajando para Remington Rand, comienza a desarrollar el primer compilador, lo que trajo consigo una programación más rápida.
Fortran
Es en el año de 1957 cuando aparece el primero de los grandes lenguajes de programación de uso aún actualmente: FORTRAN, que proviene de FORmula TRANslating system.
Fue desarrollado por IBM para cómputo científico, el líder del proyecto fue John Backus, que después contribuiría en ALGOL.
El lenguaje original solo incluía FOR, DO y GOTO. También definió los tipos de datos básicos: TRUE, FALSE, integer, real, double presicion.
El lenguaje original era bueno manejando números, pero malo manejando entrada y salida, lo cual propicio la aparición de otros lenguajes orientados a negocios.
LISP
En el año de 1958, el profesor John McCarthy[4] del M.I.T. comenzó a desarrollar la teoría de un lenguaje de de procesamiento de listas. En 1959 aparece publicamente la primer implementación llamada LISP 1.5.
En 1960 McCarthy publica un histórico articulo[5] acerca de los fundamentos de LISP que hizo por la programación lo mismo que hizo Euclídes por la geometría, demostrar como con unos cuantos operadores y una notación para funciones es posible construir un lenguaje de programación completo[6].
Es importante hacer notar que McCarthy no solo marco un hito en la historia los lenguajes de programación sino que creo un modelo de programación que ha demostrado ser superior, tanto que podemos decir que en la actualidad existen dos grandes modelos de programación el de C y el de Lisp, y podemos notar que los lenguajes del modelo C tratan de parecerse cada vez mas a Lisp.
ALGOL
En el año de 1958 un comite crea la especificación del lenguaje ALGOL, la tenia la particularidad de no definir la manera de manejar entrada y salida, dejando esta parte libre a cada implementación.
Es en 1960 cuando aparece el lenguaje ALGOL 6.0 el primer lenguaje estructurado en bloques. Este lenguaje fue muy popular en el segundo lustro de los 60's.
Su principal contribución es ser la raiz del arbol que ha producido lenguajes tales como pascal, C, C++, y Java.
COBOL
En 1959, Conference on Data Systems and Languages (CODASYL) crea COBOL, un lenguaje para negocios; que fuera facil de aprender para gente que no tuviera formación en ciencias de la computación. Sus únicos tipos de datos fueron cadenas y números. Lo que le dio la característica de poder agruparlos en arreglos sencillos, de modo que los datos podian ser organizados y seguidos de una mejor manera. Las sentencias de COBOL se parecen mucho a las usadas por el idioma inglés, haciendo que fuera fácil de aprender. Todo esto con la finalidad de que los negocios promedio lo pudieran aprender y usar.
Otros de los primeros tiempos
Existieron otros lenguajes de programación en los primeros tiempos, sin embrago la tarea de describir las características de cada uno es demasiado ambiciosa para este pequeño trabajo asi que solo se mencionan brevemente:
• 1946 Plankalkul del aleman Conrad Zuse aplicado para jugar ajedrez.
• 1952 Autocode un compilador de Alick E. Glennie.
• 1960 APL de Kenneth Iverson.
• 1962 SNOBOL de la empresa sure-fire.
Para ver una lista mas completa de los lenguajes de programación existentes se sugiere visitar la página de Érick Lévénez: http://www.levenez.com/lang/ que mantiene un poster de la historia de los lenguajes de programación en una línea de tiempo.
Otra página recomendable es la de Bill Kinnersly: http://people.ku.edu/~nkinners/LangList/Extras/langlist.htm que mantiene una lista de los lenguajes de programación que han existido, y actualmente contiene aproximadamente 2,500 lenguajes de programación.
Desarrollo de los lenguajes de programación
Basados en los primeros lenguajes de programación han surgido muchos otros lenguajes que siempre tienen la intención de tomar lo mejor, desechar lo malo, y agregar alguna “novedad”, respecto a los existentes. Solo se hace referencia a los mas conocidos.
Basic
Inventado en 1964 por John George Kemeny y Thomas Eugene Kurtz en el Colegio Dartmounth.
Es un lenguaje muy limitado que fue diseñado para personas que no fueran del área de ciencias de la computación.
El nombre de BASIC, significa Beginners All-purpose Symbolic Instruction Code.
Los ocho principios de diseño de BASIC fueron:
1. Ser fácil de usar para los principiantes.
2. Ser un lenguaje de propósito general.
3. Permitir que los expertos añadieran características avanzadas, mientras que el lenguaje permanecía simple para los principiantes.
4. Ser interactivo.
5. Proveer mensajes de error claros y amigables.
6. Responder rápido a los programas pequeños.
7. No requerir un conocimiento del hardware de la computadora.
8.
El lenguaje se baso en Fortran y Algol 6.0
Pascal
Diseñado por Niklaus Wirth[7], como una herramienta de enseñanza de la programación. Sus desarrolladores se concentraron en desarrollar buenas herramientas que contribuyeran a la enseñanza, tal como un buen debugger, y un buen editor. Además tuvieron como meta el tener soporte para la mayoría de los microprocesadores populares en esa época en las instituciones de enseñanza.
Fue diseñado de una manera muy ordenada, reflejando la experiencia de su diseñador, tomo las mejores características de los lenguajes de su tiempo, COBOL, ALGOL, y FORTRAN, al mismo tiempo que busco evitar sus deficiencias, y hacerlo lo mas claro posible. La combinación de sus características de entrada/salida, y sus solidas características matemáticas pronto lo convirtieron en un lenguaje muy exitoso. También implemento el tipo apuntador y agrego el CASE, e hizo uso de variables dinámicas. Sin embargo no implemento arreglos dinámicos ni agrupamiento de variables lo cual contribuyo a su perdida de popularidad frente a nuevos lenguajes.
Delphi es una versión moderna y orientada a objetos de Pascal.
Prolog
Diseñado en 1970 en la universidad de Aix-Marseille por los profesores Alain Colmerauer y Phillipe Roussel, su nombre proviene del frances Programation et Logique, es popular en los circulos de interes en Inteligencia Artificial.
Inicialmente era un lenguaje interpretado, hasta que a mediados de la decada de los 70's David Warren desarrollo un compilador, que convertia el programa en Prolog a un conjunto de instrucciones de una máquina abstracta denominada Warren Abstract Machine, o WAM.
Su sintaxis y semantica son considerados simples y claros, su paradigma de programación es el declarativo y un programa en Prolog se compone de cláusulas que constituyen reglas del tipo modus ponens, es decir, "Si es verdad el antecendente, entonces es verdad el consecuente". No obstante, la forma de escribir las cláusulas es al contrario de lo habitual. Primero se escribe el consecuente y luego el antecedente.
“C”
Fue diseñado en 1971, por Dennis Ritchie[8] y Ken Thompson[9] mientras trabajaban para los Laboratorios Bell, y se baso en los lenguajes de programación B y BCPL.
Se basa en el paradigma imperativo y desde su creación estuvo pensado para programación de sistemas operativos, se creo para usarse en UNIX, y crecio de la mano del desarrollo de UNIX, lo que propicio la creación de características avanzadas tales como variables dinámicas, multitarea, manejo de interrupciones, forking y un poderoso manejo entrada/salida de bajo nivel. Debido a esto C es comunmente usado para programación de nivel de sistema en UNIX, Linux y Mac.
Se trata de un lenguaje no fuertemente tipeado de medio nivel pero con muchas características de bajo nivel. Dispone de las estructuras típicas de los lenguajes
...