Professional Documents
Culture Documents
LENGUAJES DE PROGRAMACIN.
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.
Tambin Basic, era un lenguaje utilizado, no en pocas ocasiones en forma profesional, aunque
con ciertas limitaciones; su reinado estuvo en los aos 80.
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.
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)
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).
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
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.
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.