Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Lenguaje de Programacion PDF
Lenguaje de Programacion PDF
Qu es un lenguaje?
De programacin?
Un lenguaje de programacin viene definido por un lxico, una sintaxis y una semntica
2.1.1.- Lxico
Estos smbolos o elementos bsicos del lenguaje, podrn ser de los siguientes:
2.1.2.- Sintaxis
Existen diversas formas de especificar las reglas, pero nicamente vamos a ver dos de
ellas:
Los elementos terminales, o sea, que pertenecen al vocabulario, se escriben tal cual.
Los elementos no terminales se escriben entre los smbolos <>.
2.1.3.- Semntica
Ejemplo:
if (a>b) max := a else max := b;
Las instrucciones del lenguaje son las instrucciones del microprocesador del
ordenador, que normalmente son demasiado simples.
Lenguaje mquina:
Se codifican en binario.
Lenguaje ensamblador:
Necesita un traductor.
No depende del procesador, por lo que el mismo programa sirve para diferentes
ordenadores.
- Imperativos
Procedurales, describen los pasos a seguir para
encontrar la solucin
- Orientados a objetos
- Funcionales
Declarativos, describen el problema a solucionar
- Logicos
Estticos: Los requisitos de memoria del programa se pueden calcular antes de ejecutar
el programa. No permiten recursividad. Fortran, Cobol.
1945- En 1945, el matemtico y qumico Jonh (Janos) von Neumann presenta los principios
generales que debe seguir una mquina de propsito general.
El primer lenguaje en el que se programaron los ordenadores fue el propio del
procesador, es decir, instrucciones anlogas a las presentes en la mquina de Von
Neumann. Sin embargo era necesario tener en cuenta los detalles propios de la mquina
para poder realizar cualquier clculo y adems era muy tedioso introducir el programa
en el ordenador.
1951 En 1951, apenas siete aos despus de que Von Neumann introdujera el concepto de
programa almacenado en memoria, Wilkes, Wheeler y Gill describen un cargador de
programas que realiza la conversin de valores decimales a binarios para permitir una
mayor comodidad en la codificacin de instrucciones y direcciones. Con objeto de
simplificar la programacin, los ensambladores fueron enriquecindose
paulatinamente, hasta convertirse en traductores de representaciones simblicas
(mnemotcnicas) del lenguaje mquina (lenguajes ensambladores) al propio lenguaje
mquina.
Los lenguajes ensambladores siguen siendo prximos a los lenguajes de mquina y, si
bien simplifican considerablemente el proceso de la programacin, mantienen dos de
sus principales inconvenientes: requieren un excesivo nivel de detalle en la escritura de
programas y son dependientes del sistema computador concreto, de cuyas instrucciones
elementales hace representacin simblica.
Es por ello que se intent crear un nuevo lenguaje que no estuviese basado directamente
en las instrucciones propias de la mquina (que no dependiese de la mquina concreta),
sino en una abstraccin de stas y que fuese ms cmoda para el programador. De la
misma forma, no se utilizaran directamente los dispositivos fsicos (registros, celdas de
memoria, etc.) sino abstracciones de stos (variables.) De esta forma surge un nuevo
concepto de lenguaje de programacin, donde cada lenguaje lleva asociado una
mquina abstracta sobre el que se puede ejecutar su cdigo.
Si deseamos ejecutar sobre un ordenador concreto los programas escritos en un lenguaje
de alto nivel, debemos traducirlos a otros equivalentes en un cdigo mquina concreto
(manualmente o mediante un proceso denominado compilacin) o disponer de una
herramienta que lea el programa e interprete paso a paso el significado de cada
sentencia del programa (proceso de interpretacin).
1957- Trabajando en esta direccin, entre 1954 y 1958, John Backus lider un grupo de
trabajo que tena por objeto la realizacin de un traductor a cdigo mquina de frmulas
matemticas que expresaran clculos. El resultado fue tanto la especificacin de un
lenguaje de alto nivel, el Fortran, como la realizacin de un compilador que traduca
dicho lenguaje al cdigo mquina de un ordenador concreto (IBM 704).
Alrededor del ao 1960 se crearon tres lenguajes decisivos: el Algol 60, el Cobol y el
Lisp.
1958- El Lisp, diseado por John McCarthy, fue tambin un lenguaje muy innovador en el
sentido de que se aleja mucho del concepto de la mquina de Von Neumann. Se basa
casi exclusivamente en el uso de funciones y en el clculo lambda y su objetivo
principal era el clculo simblico. Fue el precursor de los denominados lenguajes
funcionales. Este lenguaje ha sido ampliamente utilizado en el mbito de la inteligencia
artificial.
1959- El Cobol fue encargado por el Departamento de Defensa de EUA. Su objetivo era
claramente prctico y aunque se realiz sin tener en cuenta algunos de los avances
realizados en el momento en el diseo de lenguajes de programacin, fue innovador en
Resumiendo:
(1957) - FORTRAN (FORmula TRANslation)
Para clculo cientfico. Se contina utilizando aunque est ya muy superado.
(1958) - LISP (LISt Processing)
Se utiliza en Inteligencia Artificial. Funcional. Common Lisp en 1984.
(1959) - COBOL
Aplicaciones de gestin, contabilidad y bases de datos.
(1960) - ALGOL 60
Precursor de la programacin estructurada.
(1964) - BASIC
Muy simple, para principiantes. Actualmente existen versiones muy mejoradas.
(1967) - Simula
Primer lenguaje que introduce el concepto de clases y objetos.
(1972) - PASCAL
Programacin estructurada. Est pensado para la enseanza.
(1972) - C
Similar al Pascal, pero no tan estricto. Muy adecuado para la programacin de
sistemas operativos (UNIX) y en general para la programacin a bajo nivel.
(1975) - PROLOG (PROgramacin LOGica)
(1980) - Smalltalk
Programacin orientada a objetos.
(1983) - Ada
Programacin concurrente, manejo de excepciones,
(1983) - C++
Lenguaje C con orientacin a objetos
(1994) - JAVA
2.5.1.- Interpretacin:
2.5.2.- Traduccin:
Actualmente casi todos los lenguajes son compilados o una mezcla entre los dos
(Prolog, Java.)