00042819
Páginas: 58 (14329 palabras)
Publicado: 8 de abril de 2015
1.1. EVOLUCIÓN DE CONCEPTOS
Abstracción de Datos
" Tipos elementales
" Tipos estructurados
" Tipos abstractos
Abstracción de Control
" Sentencias
" Unidades de programa
1.2. CLASIFICACIÓN DE LENGUAJES
Los lenguajes, en general, admiten la siguiente posible clasificación:
Lenguajes
Naturales (idiomas)
De programación
De máquina
Simbólicos
De bajo nivel (ensambladores)
De altonivel
Imperativos (Fortran, Pascal, C, Ada)
Funcionales (Lisp, Apl, Forth)
Lógicos (Prolog)
Orientados a objetos (C++, Eiffel, Java, Smalltalk)
Los lenguajes de programación, según su nivel de abstracción, admiten la siguiente categorización gráfica:
1.3. CRITERIOS DE DEFINICIÓN Y DISEÑO DE LENGUAJES
Ortogonalidad
1
Contemplar todas las combinaciones posibles de un conjunto de características deun lenguaje, dotándolo de
un grado de generalidad tal que excluya las restricciones o los casos especiales. Como una muestra de
carencia de ortogonalidad en Pascal, el tipo de un parámetro formal no puede ser anónimo, es decir, no es
posible declararlo explícitamente como, por ejemplo,
procedure noort(var a : array[1..10] of real);
debiéndose declarar
procedure noort(var a : A);
después de ladeclaración global
type A = array[1..10] of real;
Claridad sintáctica
Permitir que las diferencias semánticas se manifiesten en diferencias sintácticas.
Orientación
Proveer una sintaxis comprometida con la orientación del lenguaje.
Extensión
Facilitar la implementación de estructuras inexistentes en función de las existentes.
Portabilidad
Proveer una definición del lenguaje independiente de lascaracterísticas de una máquina en particular.
Eficiencia
" En traducción
" En ejecución
" En construcción
1.4. SINTAXIS
Definición
La sintaxis de un lenguaje es un conjunto de reglas que determinan si las sentencias de un programa están bien
formadas o no.
Objetivo
Proveer una notación que permita la comunicación entre el programador y el procesador del lenguaje.
Criterios sintácticos
2
"Legibilidad
" Facilidad de escritura
" Facilidad de traducción
" Ausencia de ambigüedad.
Por ejemplo, M(i) puede significar un elemento del arreglo M ó una llamada a la función M.
Elementos Sintácticos
" Set de caracteres
" Identificadores
" Símbolos para operadores
" Palabras claves y reservadas.
Una palabra clave es un identificador que constituye la parte no cambiante de una instrucción. Una palabrareservada es una palabra clave no declarable como identificador de usuario.
" Comentarios
" Abreviaciones
" Espacios
" Delimitadores
" Formatos fijo y libre
" Expresiones
" Sentencias
" Estructura de unidades de programa
" Definición separada: Cada unidad representa un bloque sintáctico independiente (Fortran).
" Definición anidada: Las unidades aparecen como declaraciones y pueden contener suspropias definiciones
de unidades (Pascal).
" Definición centralizada de datos: Las declaraciones de datos para todas las unidades se centralizan en una
única división ( Cobol).
Gramáticas
Una gramática representa la definición formal de la sintaxis de un lenguaje. Consta de un conjunto de reglas
que especifican las secuencias de símbolos (ítems de léxico) que forman estructuras sintácticas en ellenguaje
definido.
3
Metalenguajes
Un metalenguaje es una gramática formal destinada a la descripción de un lenguaje. Existen tres
metalenguajes comúnmente utilizados.
" BNF (Backus−Naur−Form)
Notación desarrollada por los especialistas Backus y Naur para definir lenguaje Algol60
Ejemplo de BNF para lenguaje Pascal:
Leer documento completo
Regístrate para leer el documento completo.