lenin herrera. concepto generales lenguajes especializados ◦ lisp ◦ prolog ◦ ops5 lenguajes...

22
Lenin Herrera

Upload: amaranta-parody

Post on 02-Apr-2015

117 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

Lenin Herrera

Page 2: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

Concepto generales Lenguajes especializados

◦ LISP◦ PROLOG◦ OPS5

Lenguajes Generales◦ Java◦ PHP

Page 3: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

1928. Neuman desarrolla un teorema utilizado posteriormente en juegos.

1950. Shannon propone el primer programa de ajedrez.

1956. Newell, Shaw, y Simon crean "IPL-11" el primer lenguaje de programación para IA.

1958. McCarthy introduce el lenguaje "LISP”. 1959. Rosenblatt introduce el Perceptron. 1959. EL programa de ajedrez de Samuel

gana juegos contra grandes jugadores.

Page 4: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

Un programa es una secuencia de instrucciones que indican al hardware de un ordenador qué operaciones debe realizar con los datos.

Los programas pueden estar incorporados al propio hardware, o bien pueden existir de manera independiente en forma de software.

Page 5: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

Acrónimo de List Processing. Un lenguaje de programación para ordenadores o computadoras orientado a la generación de listas, desarrollado en 1959-1960 por John McCarthy y usado principalmente para manipular listas de datos.

El LISP es un lenguaje interpretado, en el que cada expresión es una lista de llamadas a funciones. Este lenguaje se sigue utilizando con frecuencia en investigación y en círculos académicos, y fue considerado durante mucho tiempo el lenguaje modelo para la investigación de la inteligencia artificial (IA).

Page 6: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

(sort (list '(9 A) '(3 B) '(4 C)) #'< :key #'first) ; Ordena la lista de acuerdo al primer elemento de cada sublista. ; Returns ((3 B) (4 C) (9 A)).

(sort (list 5 2 6 3 1 4) #'>); Ordena la lista usando la función > como el operador relacional. ; Returns (6 5 4 3 2 1).

Page 7: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

http://www.informatimago.com/develop/lisp/

Page 8: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

Es un lenguaje de programación de computadoras que fue inventado alrededor de 1970 por Alain Colmerauer y sus colegas de la Universidad de Marcella.

El Prolog (o PROLOG), proveniente del francés PROgrammation en LOGique es un lenguaje de programación lógico e interpretado, bastante conocido en el medio de investigación en Inteligencia Artificial.

No existió mucho interés en el prolog, hasta que los científicos, japoneses lanzaron su famoso proyecto de la quinta generación con el objetivo de diseñar nuevas computadoras y software, los cuales no tendrían rivales en los años 1990 y posteriores.

Page 9: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

Ala principales implementaciones de prolog le falta la habilidad para mejorar problemas sobre “números” o “procesamiento de texto”, en su lugar, prolog está diseñado para manejar “problemas lógicos” (es decir problemas donde se necesita tomar decisiones de un a forma ordenada).

Prolog intenta hacer que la computadora razone la forma de encontrar una solución.

Page 10: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

esPato(lucas). esPato(donald). esPato(gilito). ?- esPato(lucas). Yes

sobrino(jorgito,donald). sobrino(jaimito,donald). sobrino(juanito,donald). esPato(S) :- sobrino(S,T), esPato(T). ?- esPato(jorgito). Yes

Page 11: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

http://www.gprolog.org/

Page 12: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

OPS5 ("Official Production System“ version 5) lenguaje de programación basado en reglas o sistema de producción.

Desarrollar en los 70 en la Universidad Carnegie-Mellon.

Allen Newell y su grupo de investigación de inteligencia artificial había estado trabajando en los sistemas de producción, pero la puesta en práctica de Charles Forgy, basado en el Algoritmo de Rete, era especialmente eficiente, suficientemente de modo que fuera posible escalar hasta problemas más grandes que implicaban centenares o millares de reglas.

Page 13: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

OPS5 utiliza a encadenamiento delantero como su motor de inferencia; los programas se ejecutan explorando de “elementos trabajo de la memoria”.

Las reglas tienen acciones que puedan modificarse o quitar los elemento emparejado, creen nuevos, realicen efectos secundarios tales como salida, y así sucesivamente. La ejecución continúa hasta que hay más de reglas que se puedan ejecutar o encontrar.

Page 14: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

; The Beer Song in OPS5 ;(p moreBeer (Count ^bottles {<beerLeft> > 0}) -

(SecondLine) --> (writeln <beerLeft>| bottle of beer on the wall, | <beerLeft> | bottle of beer.|) (modify 1 ^bottles (compute <beerLeft>-1)) (make SecondLine) )

(p moreBeerSecondLine (Count ^bottles > 1 ) (SecondLine) --> (writeln |Take one down and pass it around, | <beerLeft> | bottles of beer on the wall.|) (remove 2) )

(p oneMoreBeerSecondLine (Count ^bottles 1) (SecondLine) --> (writeln |Take one down and pass it around, | <beerLeft> | bottle of beer on the wall.|) (remove 2) )

(p lastBeerSecondLine (Count ^bottles 0) (SecondLine) --> (writeln |Take one down and pass it around, no more bottles of beer on the wall.|) (remove 2) )

Page 15: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

http://free-compilers.sharnoff.org/TOOL/OPS5-1.html

Page 16: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems(1991).

Fundamentado en C++, el lenguaje Java se diseño para ser pequeño , sencillo y portátil a través de plataformas y sistemas operativos, tanto a nivel de código fuente como binario, lo que significa que los programas en Java pueden ejecutarse en cualquier computadora que tenga instalada una maquina virtual de Java .

Es un lenguaje ideal para distribuir programas ejecutables vía World Wide Web, además de un lenguaje de programación de propósito general para desarrollar programas quesean fáciles de usar y portables en una gran variedad de plataformas.

Page 17: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

 import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader; public class CalculateCircleAreaExample { public static void main(String[] args) { int radius = 0;System.out.println("Please enter radius of a circle"); try{BufferedReader br = new BufferedReader(new

InputStreamReader(System.in));radius = Integer.parseInt(br.readLine());}catch(NumberFormatException ne){System.out.println("Invalid radius value" + ne);

Page 18: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

http://www.java.com/getjava/index.jsp

Page 19: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

Lenguaje de propósito general, orientado a objeto. Ampliamente utilizado en arquitectura cliente-

servidor. Desarrollado por Rasmus Lerdorf en 1994. Aunque todo en su diseño está orientado a facilitar

la creación de página web, es posible crear aplicaciones con una interfaz gráfica para el usuario, utilizando la extensión PHP-Qt o PHP-GTK.

También puede ser usado desde la línea de órdenes, de la misma manera como Perl o Python pueden hacerlo; a esta versión de PHP se la llama PHP-CLI (Command Line Interface).

Page 20: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

<?phpif ($a > $b) {  echo "a es mayor que b";  $b = $a;}

?>

Page 21: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

http://www.php.net

Page 22: Lenin Herrera.  Concepto generales  Lenguajes especializados ◦ LISP ◦ PROLOG ◦ OPS5  Lenguajes Generales ◦ Java ◦ PHP

http://es.wikipedia.org/wiki/PHP http://es.wikipedia.org/wiki/Prolog http://es.wikipedia.org/wiki/Lisp http://es.wikipedia.org/wiki/

Java_(lenguaje_de_programaci%C3%B3n) http://es.wikipedia.org/wiki/XCon