MODELOS DE LENGUAJES DE PROGRAMACION Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn INTRODUCCION Despus de que aparecieran las computadoras, los usuarios notaron que podran aplicarlas en las diferentes reas a las que pertenecan, lo nico que tenan que hacer es darle un conjunto de pasos o instrucciones para realizar una tarea determinada. Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Pero como describirle a la PC el conjunto de pasos a ejecutar para que realice tal tarea, si ella no entiende nuestro lenguaje? Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Un lenguaje en general, es el medio del que se vale cualquier individuo para comunicar ideas y experiencias a otros. Estas ideas y experiencias estn almacenadas de alguna manera el individuo emisor y almacenadas tal vez con otra representacin en el receptor. LENGUAJE Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Ingls Msj.: What is the way to Lima? Ingls Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Ingls Quechua Aprender a hablar Quechua Pasos o instrucciones para realizar una tarea Aprender el lenguaje mquina (0 y 1) Pasos o instrucciones para realizar una tarea (programa) Computadora Msj.: What is the way to Lima? Programador Msj.: leer un nmero Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn En las primeras computadoras programables la nica forma de darle las instrucciones (programa) fue volviendo a cablear sus circuitos (lenguaje mquina). Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn El lenguaje de programacin en general tiene la misma idea, solo que el receptor es una computadora, por ello es una de las principales herramientas en el proceso de desarrollo del software. LENGUAJE DE PROGRAMACION Aprender el lenguaje mquina (0 y 1) Pasos o instrucciones para realizar una tarea (programa) Computadora Programador Msj.: leer un nmero Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Un lenguaje de programacin es un conjunto de smbolos y reglas sintcticas y semnticas que definen su estructura y el significado de sus elementos y expresiones, y es utilizado para controlar el comportamiento fsico y lgico de una mquina. Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Segn DRAE Conjunto de signos y reglas que permite la comunicacin con un ordenador. Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Segn Maurizio Gabbrielli y Simone Martini: Un lenguaje de programacin es un formalismo artificial, con el que podemos expresar algoritmos. Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Segn Ghezzi-Jazayeri Un LP es una notacin formal para describir algoritmos para ejecutarse en una computadora. Como todas las notaciones formales, un LP tiene 2 componentes princi pales: sintaxis y semntica. Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Ingls Quechua Computadora Msj.: What is the way to Lima? Programador Msj.: leer un nmero Traductor Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn CLASIFICACION DE LOS L.G. SEGUN SU NIVEL - Lenguajes de bajo nivel - Lenguajes de alto nivel Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Segn DRAE ~ de alto nivel. 1. m. Inform. lenguaje que facilita la comunicacin con un computador mediante signos convencionales cercanos a los de un lenguaje natural. ~ ensamblador. 1. m. Inform. lenguaje muy similar al de mquina, con pequeas modificaciones mnemotcnicas que facilitan su uso. Es de nivel inmediatamente superior al de mquina. ~ mquina. 1. m. Inform. Conjunto de instrucciones codificadas que una computadora puede interpretar y ejecutar directamente. Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn SEGN LA RELACIN TRADUCCIN EJECUCIN - Lenguajes compilados (utiliza un compilador) - Lenguajes interpretados (utiliza un intrprete) * Hbridos (compila y tambin interpreta) Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Ingls Quechua Msj.: What is the way to Lima? Traductor Computadora Programador Msj.: leer un nmero Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Computadora Programador Msj.: leer un nmero Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Traduce los programas de alto nivel (lenguaje fuente) a cdigo objeto (lenguaje de mquina). Traduccin Lenta, Ejecucin rpida. COMPILADOR Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Algunos ejemplos de lenguajes compilados: Fortran, C, C++, Pascal, etc. UPNC / 2010-2 / LENGUAJES DE PROGRAMACION Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn INTERPRETE Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Fcil implementacin de programas (los errores en tiempo de ejecucin pueden ser fcilmente e inmediatamente mostrados). Ejecucin Lenta (de 10 a 100 veces ms lenta que los programas compilados). UPNC / 2010-2 / LENGUAJES DE PROGRAMACION Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Frecuentemente requieren de mayor espacio. Los programas escritos se suelen llamar scripts. Los lenguajes interpretados mas conocidos en la actualidad son: PHP, ASP, Python, TCL, Bash, Perl, Visual Basic Script, Java Script, Logo, Action Script, etc. UPNC / 2010-2 / LENGUAJES DE PROGRAMACION Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn HIBRIDO Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Un compromiso entre los compiladores e intrpretes puros. Un programa de un lenguaje de alto nivel es traducido a lenguaje intermedio que permite una fcil interpretacin. UPNC / 2010-2 / LENGUAJES DE PROGRAMACION Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn Ms rpido que una interpretacin pura. Ejemplo: Java; la forma intermedia, byte code, nos provee portabilidad para cualquier mquina que tenga un intrprete de byte code y un sistema de tiempo de ejecucin (juntos, stos son llamados: Mquina Virtual de Java - Java Virtual Machine). UPNC / 2010-2 / LENGUAJES DE PROGRAMACION Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn SEGN EL TIPO DE PROGRAMACIN - Lenguajes imperativos - Lenguajes declarativos SEGN SU CAMPO DE APLICACIN SEGN EL PARADIGMA DE APLICACIN SEGN LA GENERACIN Modelos de Lenguajes de Programacin- Ing. Jos Luis Peralta Lujn IDE (Entorno de Desarrollo Integrado) Cdigo Fuente ?