Lenguaje de
[pic]Definiciones:
• "Un programa es la especificación de una tarea de computación. Un lenguaje de programación es una notación para escribir programas" (Sethi, 1992).
• Un programa instruye al computador sobre lo que debe hacer y/o como debe ejecutar una tarea de computación.
• Los programas se escriben usandolos constructos de un LP y siguiendo sus reglas sintácticas.
• Cada programa es traducido al código de máquina y ejecutado en base a las reglas semánticas del LP.
• Un LP es, entonces, un lenguaje artificial (sistema de símbolos o constructos con función semiótica) empleado para instruir al computador sobre la ejecución de tareas de computación.
• Permite unacomunicación unidireccional: Usuario -> Computador
• Tiene una capacidad semántica:
» sus constructos expresan un significado que el compilador puede derivar y traducir a instrucciones de máquina.
• Un LP puede concebirse como una extensión de una máquina - computador- . Una máquina típica (p.ej. la máquina von Neumann) ofrece las siguientes capacidades:• Cálculo: operaciones aritméticas, lógicas, de desplazamiento y de rotación de datos binarios o representaciones de datos alfanuméricos.
• Control: operaciones de comparación y repetición.
• Movimiento: lectura y escritura de datos binarios
• Un LP extiende una máquina agregándole un poder computacional mayor, esto es, una capacidad pararepresentar y manipular directamente otros tipos de datos:
• datos booleanos, complejos, cadenas de caracteres, etc.
• datos estructurados: arreglos, registros, colecciones, etc.
• datos multimedia: texto, imágenes, audio, animación y video.
• Un LP dota a una máquina de:
• Un modelo computacional similar o diferente al de la máquina.• Tipos de datos y operaciones
• Recursos de abstracción: ADT, funciones, procedimientos, etc.
• Principales Modelos Computacionales:
|Modelo |Características Básicas |
|Imteractivo |Asignación, Flujo de datos, Estructuras de datos yFunciones/Procedimientos. |
|Funcional |Expresión invariante (una expresión tiene el mismo valor cada vez que se evalúa), Programación sin |
| |asignación, Manejo de almacenamiento implícito (recolección automática de basura) y Funciones como valores|
| |de primera clase (usados en expresiones,como argumentos y en estructuras de datos). |
|Orientado a Objetos |Encapsulamiento y Tipos abstractos de datos (TAD), C lases y objetos, Identidad del objeto, Herencia, Pase |
| |de Mensajes, Polimorfismo,... |
|Programación Logica |Basado en el cálculode predicado y las relaciones matemáticas, Usa hechos y reglas para representar el |
| |problema y usa deducciones para responder a las consultas. |
|Concurrente |Orientado a la comunicación y sincronización entre procesos y el acceso exclusivo a datos compartidos. |
||Emplea las nociones de eventos, secciones críticas, exclusión m. |
Clasificación de los LP:
|CRITERIO DE CLASIFICACION | TIPO DE LP | EJEMPLO |
|Según su nivel de acción a la |• L. Declarativo |SQL, Quel, FOCUS, Prolog ...
Regístrate para leer el documento completo.