You are on page 1of 9

EVOLUCION HISTORICA.

LENGUAJES DE PROGRAMACIN.

> 1985-1990 y el nacimiento del Xbase


dBase fue el gran desarrollo para base de datos de los aos 80. Bajo la batuta de la firma
Ashton Tate, empresa que dio origen a un interprete de bases de datos muy sencillo y
poderoso: dBbase II. Luego vinieron el dBase III+ que hizo furor, y la etapa de la decadencia
para dBase: el dBase IV, ya bajo la direccin de Borland.

As surgi el gran compilador Clipper, de Nantucket Corp., en su versin Autumm 86 que


permita generar ejecutables libres de royalties y sin runtimes, incluso tomando en forma
directa el cdigo dBase. Pero no solo era eso, proveia cientos de comandos y funciones para
potenciar al dBase.

Al ver el xito de dBase y Clipper, surgi la empresa Fox Software que desarrollo el FoxBase
(un clon de dBase III+) y supero al "maestro" con su versin Fox Plus, pero aun as, nunca
pudo superar a Clipper ya que siempre lidio con su poltica de necesitar de runtimes para su
ejecucin, cosa que Clipper nunca necesit.

> Los primeros aos, 1990-1995: Las bases de datos relacionales


A principios de la dcada pasada, se nota la evolucin de los lenguajes de programacin. En
forma profesional y aplicaciones de alto nivel, el lenguaje preferido era C.

Para el aprendizaje se usaba Pascal, que permita inculcar el concepto de programacin


estructurada.

Tambin Basic, era un lenguaje utilizado, no en pocas ocasiones en forma profesional, aunque
con ciertas limitaciones; su reinado estuvo en los aos 80.

En lenguaje C, fue y todava es el gran artfice de la computacin actual. A partir de el se


desarrollaron compiladores que realmente constituan otros lenguajes de programacin. Es
decir un lenguaje que crea otros lenguajes. Tal es el caso de la estrella de la primera mitad de
la dcada pasada: Clipper de Nantucket Corp., el gran compilador de lenguaje Xbase. Clipper
fue criticado por los profesionales de la programacin quienes aducan que no era un
lenguaje, sino un simple compilador nacido de la necesidad de aligerar la ejecucin de cdigo
del Interprete que le dio su origen, es decir el dBase. Pero realmente Clipper, gracias a llevar
dentro su cdigo un corazn de lenguaje C, fue muy fcil de utilizar y alcanz gran
popularidad.

Se desarrollaron librera externas, y con la programacin al estilo C a partir de su versin 5.0 y


la inclusin de objetos, se convirti en uno de los favoritos de la programacin administrativa,
junto con Pascal.

Todos los lenguajes Xbase se basaban en el concepto de bases de datos relacionales, es decir la
agrupacin de la informacin en forma de tablas, denominadas campos y registros, cada uno
de ellos preformateados para recibir cierto tipo de dato (ej: fechas, caracteres, nmeros,
valores lgicos, etc.); pudiendo "unir" diferentes bases por medio de campos comunes.
> La segunda mitad, 1995-2000: La orientacin a objetos
A medida que los aos van pasando el concepto de Bases relacionales empieza a decaer
relativamente, surge entonces una variante que se aplica a todos los lenguajes: La orientacin
a objetos. Ya no solo se habla de programacin estructurada, sino que los mdulos de
programacin son vistos como objetos, las estructuras representan objetos y/o funciones que
se adaptan en forma general a procesos especficos es la maximizacin de la programacin
modular.

El modelo de objetos engloba los conceptos de encapsulacin, herencia y poliformismo, el cual


se aplica a los datos y al tipo de bases de datos que almacena la informacin.

La orientacin a objetos significa la agrupacin de entidades de datos de forma global, de tal


manera que puedan ser interpretados de una forma comn por una misma estructura de
programacin.

> El fin de los lenguajes D.O.S.: Windows 95


Windows 95 marca el comienzo del fin de la programacin D.O.S. y por lo tanto de los
lenguajes basados en este. Este proceso no fue enrgico, todava hoy (2000), estamos viviendo
esta etapa. Todava hay numerosos y excelentes sistemas desarrollados bajo entorno D.O.S.
ejecutndose pero cada vez son los menos.

Veamos que hicieron los lenguajes D.O.S. para mantenerse en el mercado:

Clipper trato de evolucionar hacia Windows bajo la batuta de Computer Associates con el
nombre de Visual Objects, el cual fue un fracaso. Al igual que Visual Dbase 5.0 bajo la rbita de
Borland.

Los nicos "sobrevivientes" al menos en esencia son Visual Fox (Microsoft), Visual Basic
(Microsoft), Delphi (Borland) y Visual C (Microsoft)

> 2000 y ms all: lenguajes visuales


Con al llegada de Windows todo es Visual, todo es iconos, todo es botones, todo es Ventanas.
Para programar en lenguajes visuales, primero hay que comprender lo que es Windows. La
forma de programar los sistemas evolucion radicalmente. Con Windows es preciso
programar conservando las convenciones del mismo, guardando sus caractersticas y
funcionalidades. Los sistemas hechos para Windows, deben ser tan Windows como el propio
sistema operativo.

La forma de programar se basa en objetos, cada uno de los cuales tiene sus Propiedades y
funciones. Se basa en la programacin de eventos para dichos objetos. Otro detalle es que la
programacin se basa en componentes (OLE, OCX, ActiveX), los cuales reducen notablemente
el trabajo de la programacin al proporcionar herramientas antes impensadas en la
programacin D.O.S.

Todos los lenguajes visuales ofrecen RAD (Rapid Aplication Development) o Wizzards; con lo
cual comenzaron a prometer hacer aplicaciones en poco tiempo, incluso para inexpertos.
Lejos estaban ya los tiempos en que programar era solo usar un simple editor de textos. Ahora
las herramientas de programacin son poderosas. Es casi un sistema operativo, por asi
decirlo; con entornos de desarrollo avanzado y excelente Debuggers.
Los paradigmas de la programacin Windows son:
- Borland Delphi (la evolucin del Pascal)
- Visual Fox (la evolucin del Xbase)
- Visual Basic (la evolucin de Basic)
- Visual C (la evolucin del C)

Las incursiones cada ms innovadoras de Microsoft parecen imponer a la web como el centro
de desarrollo de aplicaciones: Microsoft .NET

> Una visin a la WEB y al futuro: HTML, Perl, PHP, Pithon, Java y otros
Internet ha sido el disparador de nuevos lenguajes tales como el HTML que es el lenguaje de
programacin de las pginas WEB para hipertexto. El mismo constituye una codificacin
bastante simple, basada en marcadores (TAGs).

De la misma manera, cuando se hace necesario proveer de funciones adicionales a un servicio


web se recurre a Perl o a Pithon que son lenguajes que nos permiten escribir scripts para ser
alojados en los servidores a efectos de proveer contadores, estadsticas, rankings, etc.

Por otra parte Java, bajo la direccin de SUN, constituye la idea de la programacin abierta y
universal para las aplicaciones de escritorio, pero todava los estndares visuales (C, Basic y
Delphi), son demasiado poderosos como para desplazarlos, a pesar de que Java promete
tambin ser un lenguaje de excelentes prestaciones.

Las nuevas tecnologas WEB inundan el mercado: PHP, ASP, XML, DHTML, lo cual enriquecen
la forma de manejar la informacin y su presentacin al usuario final.

Introduccin.
El presente trabajo trata de indagar en la evolucin a lo largo del tiempo en los lenguajes de
programacin.
Como consecuencia de la corta historia de la Informtica, los lenguajes que esta utiliza tiene
una existencia breve comparada con cualquier otra tecnologa. Esto que podra parecer una
ventaja a la hora de afrontar una revisin histrica, es un problema ya que no es frecuente
encontrar estudios histricos del pasado inmediato, a esto se une, que la progresin
geomtrica en la aparicin de los lenguajes, siendo la mayora de los lenguajes recogidos este
trabajo ms del presente que del pasado. No obstante he intentado siempre que he obtenido la
documentacin intentar no solo describir el lenguaje sino, intentar datarlo aunque fuera
aproximadamente y recoger las posibles versiones de este, aunque no siempre siguiendo una
serie completa.
Este trabajo se centra ms en cada uno de los lenguajes, dejando ms de lado la evolucin
general de los lenguajes, simplificada en las primeras pginas a modo de introduccin sino
breve si al menos concisa.
Relacin TraduccinEjecucin.
Bajo nivel.
1 Nivel
Se dice que el cdigo binario es de "bajo nivel" o "primer nivel" (porque al usar pocos signos
logra muy difcilmente expresar cosas complicadas), mientras un lenguaje humano es de "muy
alto nivel" (con una cantidad mayor de signos y con reglas combinatorias logra expresar con
facilidad cosas muy complicadas). Todo el esfuerzo, entonces, para facilitar la comunicacin
del hombre con la computadora, ha de centrarse en el desarrollo de lenguajes de mayor nivel.
El fabricante de un procesador fija los bloques de bits que llevarn a la CPU (unidad central de
procesos) a reconocer y realizar diferentes operaciones. Este el "cdigo de mquina", primer
lenguaje que la mquina puede interpretar y transformar en acciones. Pero es evidentemente
muy difcil de usar para un ser humano. Supongamos que quiera hacer imprimir y para ello
deba decir
"10011101 11100010": cmo recordar rdenes de este tipo y no equivocarse al escribirlas?
Prcticamente nadie trabaja hoy a este nivel, excepto los diseadores de "chips" procesadores.
Del mismo modo que es posible pasar de un sistema binario a un sistema decimal (ms
comprensible y ms desarrollado en trminos de signos legibles) es posible asociar a los
bloques de bits no solo valores decimales sino tambin otros signos. Esto lleva a un segundo
nivel de expresin.
2 Nivel
La creacin de un lenguaje ms comprensible por el hombre consiste por lo tanto en
establecer la equivalencia de bloques binarios con signos de nuestro lenguaje habitual. Para
permitir la programacin (secuencia de comandos), se usan pequeos conjuntos de signos
("palabras") de fcil memorizacin, con las cuales se redactan programas, por ejemplo "ADC"
significar "sumar con reserva" (en ingls: "ADd with Carry"). Este tipo de lenguaje se llama
"Ensamblador. La mquina misma har la tarea de traducirlo en cdigo binario, para seguir
las instrucciones, gracias a otro programa cuya funcin es traducir la expresin humana en
"lenguaje de mquina" (binario). Es
1 programa se llama "compilador".
Aunque el Ensamblador es un inmenso progreso con relacin al cdigo binario, su desventaja
reside en que permanece estrechamente ligado a los bloques binarios que reconoce la CPU (es
decir al
"hardware"). Para facilitar ms la tarea, se han inventado lenguajes de "alto nivel", es decir
ms cercanos al modo de expresar del hombre que de operacin de la mquina. Los primeros
y ms comunes son los llamados de "tercera generacin", ms fciles de manejar y ms
independientes de las caractersticas tcnicas de los procesadores. Ahora, hasta un aficionado
puede llegar a redactar un programa, sin tener que preocuparse por el cdigo binario o de
ensamble: si un programa traductor poda resolver la transformacin de bloques de signos en
bloques binarios, era cosa de extender las habilidades del traductor para "ensear" a la
mquina cmo "entender" un lenguaje ms complejo y agregar mecanismos automticos de
manejo de la memoria para poder utilizar lenguajes an ms comprensibles.
Alto nivel.
3 Nivel
El avance en el desarrollo de "compiladores" e "intrpretes" (los dos tipos de programas
traductores) ha sido por lo tanto fundamental en el desarrollo de los lenguajes de "3
generacin" cuyas ventajas adems de la facilidad de aprendizaje y lectura/escritura son las
facilidades de correccin, transformacin y conversin de un lenguaje a otro.
Los ms antiguos son el FORTRAN (para aplicaciones matemticas y cientficas) y el COBOL
(para aplicaciones de administracin y contabilidad).
Con los microcomputadores naci el BASIC y el PASCAL
Generadores de aplicaciones o 4 Nivel
Posteriormente, usando estos lenguajes, se han redactado programas destinados a facilitar un
nmero variado de operaciones en campos de aplicacin especficos como simulacin de
fenmenos fsicos, manipulacin de datos estadsticos, etc. Los ms avanzados y flexibles de
estos programas son las planillas electrnicas u hojas de clculo y los programas de
administracin de archivos o bases de datos
Dados que tales aplicaciones no "hacen nada" sin que el usuario defina ciertas estructuras y
ciertas operaciones, pueden ser consideradas como "generadores" de aplicaciones, aunque
este nombre se reserva habitualmente para niveles ms avanzados en que los usuarios
pueden generar sistemas muy diferentes unos de otros, con "herramientas" que se parecen a
lenguajes de programacin. Estas herramientas conforman los lenguajes de cuarto nivel que
son por esencia "programas para crear programas" con una finalidad especfica, como el
"CASE" destinado a facilitar el trabajo de los analistas de sistemas.
Tipos
En funcin de la forma de programar.
Lenguajes procedurales.
Establecen como debe ejecutarse una tarea, dividindola en partes que especifican como
realizar cada una de las subtareas asociadas. Estos lenguajes se fundamentan en el uso de
variables para almacenar valores y el uso de instrucciones que indican las operaciones a
realizar sobre los datos almacenados. La mayora de los lenguajes de alto nivel son de este
tipo: FORTRAN, BASIC, PASCAL, ADA, MODULA2
2 Lenguajes declarativos.
En este caso, el proceso por el cual se ejecuta el programa no aparece de forma explcita en el
programa, el programador no tiene que indicar el proceso detallado de cmo realizar la tarea.
De hecho en estos lenguajes los programas se construyen mediante descripciones de
funciones (lenguajes funcionales, como LIPS) o expresiones lgicas que indican las relaciones
entre determinadas estructuras de datos (lenguajes de programacin lgica, como
PROLOG).
Orientados a objetos.
El diseo de los programas se centra mas en los datos y su estructura. Los programas
consisten en descripciones de unidades denominadas objetos, que encapsulan los datos
(almacenados en variables) y las operaciones que actan sobre ellos (que indican el
comportamiento del objeto). El lenguaje ms usado dentro de este tipo es el C++.
Orientados al problema.
Estn diseados para problemas especficos, principalmente de gestin. En estos lenguajes,
los programas estn formados por sentencias que ordenan que se quiere hacer. Generalmente,
estos lenguajes suelen ser generadores de aplicaciones que permiten automatizar en la medida
de lo posible la tarea de desarrollo de software de aplicaciones de gestin

Segn su campo de aplicacin.


Aplicaciones cientficas.
En este tipo de aplicaciones predominan las operaciones numricas o matriciales propias de
algoritmos matemticos. Lenguajes adecuados son FORTAN y PASCAL
Aplicaciones en procesamiento de datos.
En estas aplicaciones son frecuentes las operaciones de creacin, mantenimiento y consulta
sobre ficheros y bases de datos. Dentro de este campo estaran aplicaciones de gestin
empresarial, como programas de nminas, contabilidad facturacin, control de inventario, etc.
Lenguajes aptos para este tipo de aplicaciones son COBOL y SQL.
Aplicaciones de tratamiento de textos.
Estas aplicaciones estn asociadas al manejo de textos en lenguaje natural. Un lenguaje muy
adecuado para este tipo de aplicaciones es el C.
Aplicaciones en inteligencia artificial.
Dentro de este campo, destacan las aplicaciones en sistemas expertos, juegos, visin artificial,
robtica. Los lenguajes ms populares dentro del campo de la inteligencia artificial son LISP y
PORLOG
Aplicaciones de programacin de sistemas.
En este campo se incluiran la programacin de software de interfaz entre el usuario y el
hardware, como son los mdulos de un sistema operativo y los traductores. Tradicionalmente
para estas aplicaciones se utilizaba el Ensamblador, no obstante en la actualidad se muestran

3 muy adecuados los lenguajes ADA, MODULA2 y C.


Lenguajes de internet.
Html, java, perl, php.
cronologa.
Fecha

Lenguaje

Acontecimiento

1953
Fortran
Job backus propone el desarrollo de un nuevo lenguaje

1954
Fortran
Un equipo de ibm comienza a trabajar en el fortran

1957
Fortran
Ibm desarrolla la primera versin

1959
Lisp
El profesor john mccarthy y sus alumnos desarrolla el lisp

1960
Algol
Se renen representantes europeos y de eeuu para la creacin de un nuevo lenguaje

1960
Cobol
Fue creado cobol

1962
Apl
Se publica el libro de kenneth iverson a programming language
Mediado de los 60
Apl
El apl es implantado por ibm en una versin conocida como apl/360

1965
Basic
Aparece basic
1966
Fortran
Aparece el fortra iv

1968
Algol
Se implement una nueva versin multiproposito
Finales de los 60
Apl
Est disponible para el mercado en general

1970
Pascal
Niklaus wirth disea pascal

1972
Prolog
Se desarrolla en la universidad de aixmarsailles en francia.
1972
C
Dennis ritchie crea el lenguaje c.
5

1977
Fortran
Aparece el fortran 77

Finales de los 70
Modula2
Niklaus wirth dirige el desarrollo de modula2

Principio de los 80
C++
Se desarrolla el lenguaje c++

1985
Clipper
Se crea clipper

1986
Clipper
Aparece clipper autumn'86

1987
Clipper
Clipper summer'87

1990
Fortran
Aparece el fortran 90
Principios 90
Java
James gosling y su equipo comienzan a desarrollar java

1993
Visual c++
6
Se desarrolla el lenguaje visual c++

1994
Delphi
Aparece la primera versin

1995
Java
Se lanza al mercado java

1999
Delphi
Aparece delphi 5.0 para windows 98 nt/2000

Para que la computadora entienda nuestras instrucciones debe usarse un lenguaje especfico
conocido como cdigo mquina, el cual la mquina comprende fcilmente, pero que lo hace
excesivamente complicado para las personas. De hecho slo consiste en cadenas extensas de
nmeros 0 y 1.

Para facilitar el trabajo, los primeros operadores de computadoras decidieron hacer un


traductor para reemplazar los 0 y 1 por palabras o abstraccin de palabras y letras
provenientes del ingls; ste se conoce como lenguaje ensamblador. Por ejemplo, para sumar
se usa la letra A de la palabra inglesa add (sumar). El lenguaje ensamblador sigue la misma
estructura del lenguaje mquina, pero las letras y palabras son ms fciles de recordar y
entender que los nmeros.

La necesidad de recordar secuencias de programacin para las acciones usuales llev a


denominarlas con nombres fciles de memorizar y asociar: ADD (sumar), SUB (restar), MUL
(multiplicar), CALL (ejecutar subrutina), etc. A esta secuencia de posiciones se le denomin
"instrucciones", y a este conjunto de instrucciones se le llam lenguaje ensamblador.
Posteriormente aparecieron diferentes lenguajes de programacin, los cuales reciben su
denominacin porque tienen una estructura sintctica similar a los lenguajes escritos por los
humanos, denominados tambin nivel. La primera programadora de computadora conocida
fue Ada Lovelace, hija de Anabella Milbanke Byron y Lord Byron. Anabella introdujo en las
matemticas a Ada quien, despus de conocer a Charles Babbage, tradujo y ampli una
descripcin de su mquina analtica. Incluso aunque Babbage nunca complet la construccin
de cualquiera de sus mquinas, el trabajo que Ada realiz con stas le hizo ganarse el ttulo de
primera programadora de computadoras del mundo. El nombre del lenguaje de programacin
Ada fue escogido como homenaje a esta programadora.
A finales de 1953, John Backus someti una propuesta a sus superiores en IBM para
desarrollar una alternativa ms prctica al lenguaje ensamblador para programar la
computadora central IBM 704. El histrico equipo Fortran de Backus consisti en los
programadores Richard Goldberg, Sheldon F. Best, Harlan Herrick, Peter Sheridan, Roy Nutt,
Robert Nelson, Irving Ziller, Lois Haibt y David Sayre.

El primer manual para el lenguaje Fortran apareci en octubre de 1956, con el primer
compilador Fortran entregado en abril de 1957. Esto era un compilador optimizado, porque
los clientes eran reacios a usar un lenguaje de alto nivel a menos que su compilador pudiera
generar cdigo cuyo desempeo fuera comparable al de un cdigo hecho a mano en lenguaje
ensamblador.

En 1960, se cre COBOL, uno de los lenguajes usados an en 2010 en informtica de gestin.

A medida que la complejidad de las tareas que realizaban las computadoras aumentaba, se
hizo necesario disponer de un mtodo ms eficiente para programarlas. Entonces, se crearon
los lenguajes de alto nivel, como lo fue BASIC en las versiones introducidas en los
microordenadores de la dcada de 1980. Mientras que una tarea tan sencilla como sumar dos
nmeros puede necesitar varias instrucciones en lenguaje ensamblador, en un lenguaje de
alto nivel bastar una sola sentencia.

You might also like