Professional Documents
Culture Documents
Algunos lenguajes que representan este tipo sin C, C#, Cobol, Fortran, Java, Perl, Visual
Basic.
Los datos: elemento de información que puede obtener un valor dentro de
un conjunto de valores.
En este caso no existe una descripción paso a paso de cómo se debe resolver, solo importa
el resultado, y habitualmente se suelen incluir características operacionales para mejorar la
eficiencia en la resolución de problemas.
Dentro de este paradigma se puede distinguir lenguajes como Prolog, SQL, Erlang, HTML.
Otros ejemplos de este tipo de lenguajes son las hojas de cálculo y lenguajes de consulta
3
para bases de datos relacionales.
Compilador
Interprete
Realiza la operación de compilación paso a paso. Para cada sentencia que compone el
texto de entrada, realiza la traducción y ejecuta la sentencia y vuelve a iniciar el proceso
con la siguiente sentencia. Lee línea por línea y lo traduce a un código intermedio para
poder ejecutarlo. Los programas que son interpretados suelen ser más lentos que los
compilados. En conclusión el intérprete no genera código o no lo traduce a otro lenguaje
sino que lo ejecuta.
Algunos ejemplos de Intérpretes son los navegadores de internet, las líneas de comandos
SQL.
Ensamblador
Está a un paso del lenguaje máquina. Traduce cada sentencia del lenguaje ensamblador a
una instrucción de máquina. Los programadores deben estar bien familiarizados con la
arquitectura del computador. Es dependiente del hardware, y varía de acuerdo a cada CPU.
Máquinas Virtuales
Nos permite ejecutar software que está disponible en otra plataforma. En Java la máquina 4
virtual es presentada como un intérprete de instrucciones.
Una máquina virtual es una computadora abstracta, una computadora o máquina emulada
a partir de software. Es por esto que a partir del uso de máquinas virtuales surge el
término de portabilidad.
Ejemplo de Máquinas Virtuales son la VM/370 (de Seawrigth y MacKinnon, [10]), donde las
máquina virtuales, que se ejecutan sobre la IBM 370, ofrecen una copia exacta de la IBM
370.
5
Se
pue
den
divid
ir en dos partes:
Front End (etapa inicial): Analiza el código fuente, comprueba su validez, genera el árbol de
derivación y rellena los valores de la tabla de símbolos. Es independiente de la plataforma
o sistema para el cual se vaya a compilar, y está compuesta por las fases comprendidas
entre el Análisis Léxico y la Generación de Código Intermedio.
Back-end: Es la parte que genera el código máquina, específico de una plataforma, a partir
de los resultados de la fase de análisis, realizada por el Front-End.