Está en la página 1de 2

Lenguajes de programacin: una visin general

Hay, al menos, dos formas fundamentales desde las que pueden verse o clasificarse los
lenguajes de programacin: por su nivel y por sus principales aplicaciones.
Adems, estas visiones estn condicionadas por la evolucin histrica por la que ha
transcurrido el lenguaje. Adems, hay cuatro niveles distintos de lenguajes de
programacin, como indicamos en la figura.
Lenguajes declarativos
Lenguajes de alto nivel
Lenguajes ensambladores
Lenguajes mquina
Los lenguajes declarativos son los ms parecidos al castellano o ingls en su potencia
expresiva y funcionalidad y estn en el nivel ms alto respecto a los otros. Son
fundamentalmente lenguajes de rdenes, dominados por sentencias que expresan lo que
hay que hacer en vez de cmo hacerlo. Ejemplos de estos lenguajes son los lenguajes
estadsticos como SAS y SPSS y los lenguajes de bsqueda en bases de datos, como
NATURAL e IMS. Estos lenguajes se desarrollaron con la idea de que los profesionales
pudieran asimilar ms rpidamente el lenguaje y usarlo en su trabajo, sin necesidad de
programadores o prcticas de programacin.
Los lenguajes de alto nivel son los ms utilizados como lenguajes de programacin.
Aunque no son fundamentalmente declarativos, estos lenguajes permiten que los algoritmos
se expresen en un nivel y estilo de escritura fcilmente legible y comprensible por otros
programadores. Adems, los lenguajes de alto nivel suelen tener la caracterstica de
transportabilidad. Es decir, estn implementados sobre varias mquinas, de forma que un
programa puede ser fcilmente transportado (transferido) de una mquina a otra sin una
revisin sustancial. En este sentido, se llaman independientes de la mquina. Ejemplos de
estos lenguajes de alto nivel son PASCAL, APL y FORTRAN (lenguajes de programacin
utilizados para aplicaciones cientficas), COBOL (para aplicaciones de procesamiento de
datos), SNOBOL (para aplicaciones de procesamiento de textos), LISP y PROLOG (para
aplicaciones de inteligencia artificial), C y ADA (para aplicaciones de programacin de
sistemas) y PL/I (para aplicaciones de propsito general). Todos estos lenguajes de alto
nivel los desarrollaremos ms detenidamente en otro apartado de la presentacin.
Los lenguajes ensambladores y los lenguajes mquina son dependientes de la mquina.
Cada tipo de mquina tiene su propio lenguaje mquina distinta y su lenguaje ensamblador
asociado. El lenguaje ensamblador es simplemente una representacin simblica del
lenguaje mquina asociado, lo cual permite una programacin menos tediosa que con el

anterior. Sin embargo, es necesario un conocimiento de la arquitectura mecnica subyacente


para realizar una programacin efectiva en cualquiera de estos niveles de lenguajes.
Perspectiva histrica de los lenguajes de programacin
Perspectiva histrica de los lenguajes de programacin El programador, diseador e
implementador de un lenguaje de programacin deben comprender la evolucin histrica
para poder apreciar por qu presentan caractersticas diferentes. La misma historia nos
permite ver la evolucin de familias de lenguajes de programacin, ver la influencia que
ejercen las arquitecturas y aplicaciones de las computadoras sobre el diseo de lenguajes y
evitar futuros defectos de diseo aprendiendo las lecciones del pasado. En el siguiente
diagrama que presentamos resumimos algunos de los ms importantes avances en el diseo
de lenguajes de alto nivel desde sus comienzos hasta finales de la dcada de los 80. Este
diagrama representa slo una pequea muestra de todos los lenguajes de programacin.
Existen en uso, hoy en da, ms de 150 lenguajes de programacin diferentes, con nombres
tan diversos como AMBIT, BASEBALL, LOGO y MAD. Muchos son dialectos de los que
se muestran en el diagrama. Los que describimos en nuestra presentacin los hemos elegido
debido a su mayor influencia y amplio uso entre los programadores, as como por sus
distintivas caractersticas de diseo e implementacin.
El diagrama tambin contiene las lneas que relacionan a varios lenguajes. Las lneas
continuas muestran ascendencia directa, mientras que las lneas discontinuas muestran una
fuerte influencia. Por ejemplo, vemos que FORTRAN I es un ascendente directo de
FORTRAN II, mientras que FORTRAN, COBOL, ALGOL 60, LISP, SNOBOL y los
lenguajes ensambladores, influyeron en el diseo de PL/I. Varios lenguajes representados
en el diagrama estn prefijados por las letras ANS. Con esto queremos decir que el
American National Standards Institute ha adoptado esa versin del lenguaje como el
estndar nacional.
Finalmente, creemos importante denotar algunas influencias anteriores a 1.960 en el diseo
de los lenguajes de programacin. Incluimos como importantes la notacin algebraica
ordinaria, por ejemplo, que influy fuertemente en el diseo de FORTRAN y ALGOL; el
ingls como principal influencia en el desarrollo de COBOL; el lambda clculo de Church,
que dio los fundamentos de la notacin funcional de LISP, mientras que el algoritmo de
Markov motiv el estilo de reconocimiento de formas de SNOBOL. En ltimo lugar, la
arquitectura de computadores de von Neumann, la cual fue una evolucin de la mquina
ms antigua de Turing, es el modelo bsico de la mayora de los diseos de computadoras
hasta hoy en da. Estas mquinas no slo influyeron en los primeros lenguajes sino que
tambin suministraron el esqueleto operacional sobre el que evolucion la mayora de la
programacin de sistemas.

También podría gustarte