Lenguajes  de programación

 

Un programa es una secuencia de instrucciones que indican al hardware de una computadora qué operaciones debe realizar con los datos. Los programas pueden estar incorporados al propio hardware, o bien pueden existir de manera independiente en forma de software. En algunas computadoras especializadas las instrucciones operativas están incorporadas en el sistema de circuitos; entre los ejemplos más comunes pueden citarse los microordenadores de las calculadoras, relojes de pulsera, motores de coches y hornos microondas. Por otro lado, una computadora de uso general, contiene algunos programas incorporados (en la ROM) o instrucciones (en el chip del procesador), pero depende de programas externos para ejecutar tareas útiles. Una vez programado, podrá hacer tanto o tan poco como le permita el software que lo controla en determinado momento. El software de uso más generalizado incluye una amplia variedad de programas de aplicaciones, es decir, instrucciones a la computadora acerca de cómo realizar diversas tareas.


Las instrucciones deben darse en un lenguaje de programación, es decir, en una determinada configuración de información digital binaria. En las primeras computadoras, la programación era una tarea difícil y laboriosa ya que los conmutadores ON-OFF de las válvulas de vacío debían configurarse a mano. Programar tareas tan sencillas como ordenar una lista de nombres requería varios días de trabajo de equipos de programadores. Desde entonces se han inventado varios lenguajes informáticos, algunos orientados hacia funciones específicas y otros centrados en la facilidad de uso.

Lenguaje máquina  El lenguaje propio de una computadora, basado en el sistema binario o código máquina, resulta difícil de utilizar para las personas. El programador debe introducir todos y cada uno de los comandos y datos en forma binaria, y una operación sencilla como comparar el contenido de un registro con los datos situados en una ubicación del chip de memoria puede tener el siguiente formato: 11001010 00010111 11110101 00101011. La programación en lenguaje máquina es una tarea tan tediosa y consume tanto tiempo que muy raras veces lo que se ahorra en la ejecución del programa justifica los días o semanas que se han necesitado para escribir el mismo.

Lenguaje ensamblador  Uno de los métodos inventados por los programadores para reducir y simplificar el proceso es la denominada programación con lenguaje ensamblador. Al asignar un código mnemotécnico (por lo general de tres letras) a cada comando en lenguaje máquina, es posible escribir y depurar o eliminar los errores lógicos y de datos en los programas escritos en lenguaje ensamblador, empleando para ello sólo una fracción del tiempo necesario para programar en lenguaje máquina. En el lenguaje ensamblador, cada comando mnemotécnico y sus operadores simbólicos equivalen a una instrucción de máquina. Un programa ensamblador traduce el código fuente, una lista de códigos de operación mnemotécnicos y de operadores simbólicos, a código objeto (es decir, a lenguaje máquina) y, a continuación, ejecuta el programa.

Sin embargo, el lenguaje ensamblador puede utilizarse con un solo tipo de chip de CPU o microprocesador. Los programadores, que dedicaron tanto tiempo y esfuerzo al aprendizaje de la programación de un cierto tipo de computadora, se veían obligados a aprender un nuevo estilo de programación cada vez que trabajaban con otra máquina. Lo que se necesitaba era un método abreviado en el que un enunciado simbólico pudiera representar una secuencia de numerosas instrucciones en lenguaje máquina, y un método que permitiera que el mismo programa pudiera ejecutarse en varios tipos de máquinas. Estas necesidades llevaron al desarrollo de lenguajes de alto nivel.

 

Lenguajes de alto nivel

 
Los lenguajes de alto nivel suelen utilizar términos ingleses del tipo LIST, PRINT u OPEN como comandos que representan una secuencia de decenas o de centenas de instrucciones en lenguaje máquina. Los comandos se introducen desde el teclado, desde un programa residente en la memoria o desde un dispositivo de almacenamiento, y son interceptados por un programa que los traduce a instrucciones en lenguaje máquina.

Los programas traductores son de dos tipos: intérpretes y compiladores. Con un intérprete, los programas que repiten un ciclo para volver a ejecutar parte de sus instrucciones, reinterpretan la misma instrucción cada vez que aparece. Por consiguiente, los programas interpretados se ejecutan con mucha mayor lentitud que los programas en lenguaje máquina. Por el contrario, los compiladores traducen un programa íntegro a lenguaje máquina antes de su ejecución, por lo cual se ejecutan con tanta rapidez como si hubiesen sido escritos directamente en lenguaje máquina.

Se considera que fue la estadounidense Grace Hopper quien implementó el primer lenguaje de computadora para uso comercial. Después de programar un equipo experimental en la Universidad de Harvard, trabajó en los modelos UNIVAC I y UNIVAC II, desarrollando un lenguaje de alto nivel para uso comercial llamado FLOW-MATIC. Para facilitar el uso de los equipos para aplicaciones científicas, IBM desarrolló un lenguaje que simplificaría el trabajo que implicaba el tratamiento de fórmulas matemáticas complejas. Iniciado en 1954 y terminado en 1957, el FORTRAN (acrónimo de Formula Translator) fue el primer lenguaje exhaustivo de alto nivel de uso generalizado.


En 1957 una asociación estadounidense, la Association for Computing Machinery comenzó a desarrollar un lenguaje universal que corrigiera algunos de los defectos del FORTRAN. Un año más tarde fue lanzado el ALGOL (acrónimo de Algorithmic Language), otro lenguaje de orientación científica. De gran difusión en Europa durante las décadas de 1960 y 1970, desde entonces ha sido sustituido por nuevos lenguajes, mientras que el FORTRAN continúa siendo utilizado debido a las gigantescas inversiones que se hicieron en los programas existentes. El COBOL (acrónimo de Common Business Oriented Language) es un lenguaje de programación para uso comercial y empresarial especializado en la organización de datos y manipulación de archivos, y hoy día está muy difundido en el mundo empresarial.

El lenguaje BASIC (acrónimo de Código de Instrucciones Simbólicas de Uso General para Principiantes) fue desarrollado en el Dartmouth College a principios de la década de 1960 y está dirigido a los usuarios de ordenador no profesionales. Este lenguaje se universalizó gracias a la popularización de los microordenadores en las décadas de 1970 y 1980. Calificado de lento, ineficaz y poco estético por sus detractores, BASIC es sencillo de aprender y fácil de utilizar. Como muchos de los primeros microordenadores se vendieron con BASIC incorporado en el hardware (en la memoria ROM), se generalizó el uso de este lenguaje.

Aunque existen centenares de lenguajes informáticos y de variantes, hay algunos dignos de mención, como el PASCAL, diseñado en un principio como herramienta de enseñanza, hoy es uno de los lenguajes de microordenador más populares; el Logo fue desarrollado para que los niños pudieran acceder al mundo de la informática; el C, un lenguaje de Bell Laboratories diseñado en la década de 1970, se utiliza ampliamente en el desarrollo de programas de sistemas, al igual que su sucesor, el C++. El LISP y el PROLOG han alcanzado amplia difusión en el campo de la inteligencia artificial.

A la fecha, el desarrollo de programas orientados a objetos para interfaces gráficas ha traído la aparición de los lenguajes denominados Visuals, como son el Visual Basic, el Visual Fox Pro, el Visual C, Delphi, entre otros

 

Lenguajes de programación

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

LENGUAJE

ORIGEN DEL NOMBRE

AÑO

USOS/COMENTARIOS

 

 

 

 

ADA

Augusta ADA Byron
(Lady Lovelace)

1979

Derivado de Pascal, utilizado principalmente por los militares.

 

 

 

 

ALGOL

ALGOrithmic Language
(Lenguaje ALGOL algorítmico)

1960

Primer lenguaje de programación procedural estructurado, utilizado sobre todo para resolver problemas matemáticos.

 

 

 

 

APL

A Programming Language
(Un lenguaje de programación)

1961

Lenguaje interpretado que utiliza un amplio conjunto de símbolos especiales y que se caracteriza por su brevedad. Utilizado fundamentalmente por los matemáticos.

 

 

 

 

BASIC

Beginners All-Purpose Symbolic Instruction Code(Código de instrucciones simbólicas multipropósito para principiantes)

1965

Lenguaje de programación de alto nivel, utilizado con frecuencia por programadores principiantes.

 

 

 

 

C

Predecesor del lenguaje de programación B, fue desarrollado en Bell Laboratory, en 1972

1972

Lenguaje de programación compilado y estructurado, que suele utilizarse en numerosos lugares de trabajo porque sus programas pueden transferirse fácilmente entre distintos tipos de computadoras.

 

 

 

 

COBOL

COmmon Business-Oriented Language (Lenguaje simbólico de programación orientado a aplicaciones comerciales)

1959

Lenguaje de programación semejante al idioma inglés, que hace hincapié en las estructuras de datos. De amplia utilización, principalmente en empresas.

 

 

 

 

FORTH

Lenguaje de cuarta
(FOuRTH) generación

1970

Lenguaje estructurado e interpretado de fácil ampliación. Ofrece una alta funcionalidad en un espacio reducido.

 

 

 

 

FORTRAN

FORmula TRANslation
(Traducción de fórmulas)

1954

Diseñado en un principio para usos científicos y de ingeniería, se trata de un lenguaje compilado de alto nivel que hoy se utiliza en numerosos campos. Precursor de diversos conceptos, como las variables, las instrucciones condicionales y las subrutinas compiladas por separado.

 

 

 

 

LISP

LISt Processing
(Procesamiento de listas)

1960

Lenguaje de programación orientado a la generación de listas, utilizado principalmente para manipular listas de datos. Lenguaje interpretado que suele utilizarse en las investigaciones y está considerado como el lenguaje estándar en proyectos de inteligencia artificial.

 

 

 

 

LOGO

Derivado del griego logos, ‘palabra’.

1968

Lenguaje de programación que suele utilizarse con niños. Presenta un sencillo entorno de dibujo y varias prestaciones de mayor nivel del lenguaje LISP. Fundamentalmente educativo.

 

 

 

 

Modula-2

MODUlar LAnguage-2, diseñado como fase secundaria de Pascal
(diseñados ambos por Niklaus Wirth)

1980

Lenguaje que hace hincapié en la programación modular. Es un lenguaje de alto nivel basado en Pascal, que se caracteriza por la ausencia de funciones y procedimientos estandarizados.

 

 

 

 

Pascal

Blaise PASCAL, matemático e inventor del primer dispositivo de computación.

1971

Lenguaje compilado y estructurado basado en ALGOL. Agrega tipos y estructuras de datos simplificando la sintaxis. Al igual que el C, se trata de un lenguaje de programación estándar para microcomputadoras.

 

 

 

 

PILOT

Programmed Inquiry, Language Or Teaching
(Consulta, lenguaje o aprendizaje de investigación programada)

1969

Lenguaje de programación utilizado fundamentalmente para crear aplicaciones destinadas a instrucciones asistidas por computadora. Se caracteriza por utilizar un mínimo de sintaxis.

 

 

 

 

PL/1

Programming Language 1
(Lenguaje de programación uno)

1964

Diseñado para combinar las principales virtudes del FORTRAN, COBOL y ALGOL, se trata de un lenguaje de programación complejo. Compilado y estructurado, es capaz de gestionar errores y de procesar multitareas, y se emplea en entornos académicos y de investigación.