Prologo de lenguaje

Solo disponible en BuenasTareas
  • Páginas : 7 (1728 palabras )
  • Descarga(s) : 0
  • Publicado : 29 de marzo de 2011
Leer documento completo
Vista previa del texto
* VISUAL PROLOG
(MODO TEXTO)
* Magíster Víctor Andrade
* Lenguaje Prolog
* Prolog es el resultado de muchos años de trabajo de la investigación. La versión oficial de Prolog se desarrolló en la Universidad de Marsella, Francia por Alain Colmerauer en los tempranos 1970s como una herramienta para Programación en la Lógica. El resultado fue el desarrollo de un nuevo paradigma deprogramación.
* Existen varias versiones o dialectos comerciales de Prolog: desde Turbo Prolog de Borland y el Arity Prolog hasta el PDC Visual Prolog.
* En un idioma procedural, el programador debe proporcionar instrucciones que dicen exactamente a la computadora cómo resolver un problema dado paso a paso. En otros términos, el programador debe saber resolver el problema antes de que lacomputadora pueda hacerlo.
* Lenguaje Prolog
* El programador de Prolog, por otro lado, sólo necesita proporcionar una descripción del problema y aterrizar las reglas para resolverlo. De allí, Prolog determina cómo encontrar una solución.
* El Prolog de PDC satisface particularmente bien para tipos de tareas similares a las bases de datos tradicionales, porque el Visual Prolog tiene entresus capacidades, la programación de un motor de inferencia de la base de datos de fácil uso. Los programas creados por Visual Prolog, son muy rápidos debido al compilador favorablemente perfeccionando, casi tan rápido como las aplicaciones basadas en C++.
Un programa en Visual Prolog consta de cuatro secciones:
“domains”, “predicates”, ”goal” y ”clauses”. Cabe aclarar que todas estas sonpalabras reservadas, y que toda otra palabra menos las variables deben escribirse en minúsculas.
DOMAINS (dominio) : Aquí se definen los objetos y los tipos de datos correspondientes que usaremos en las definiciones posteriores:
domains
objeto = tipo de dato
Por ejemplo :
domains
persona = symbol %“persona” es un objeto de tipo symbol.
Tipos de datos : Existen cinco tipos predefinidos :
symbol :Hay dos tipos de símbolos :
1. Una secuencia de letras, números o caracteres de subrayado en la cual la primera letra es minúscula. Ej. : tiene_lindas_piernas.
2. Una secuencia de caracteres encerrados por comillas dobles (“) usada en el caso que el símbolo contenga espacios o no comience con minúsculas. Ej. :
“Una persona es trabajadora”.
char : Acepta cualquier carácter, se representaencerrado entre comillas simples (‘) y consta de un solo carácter, por ejemplo ‘A’, ‘2’, ‘/’.
integer : Acepta números enteros en el rango de -32768 al 32767.
* Dominios
real : Acepta números reales, pueden contener signo, punto decimal y varios
dígitos decimales. También pueden tener una parte exponencial, pudiendo abarcar números desde +1e-307 a +1e+308, por ejemplo : 427054, -25000,86.25, - 8.525e-203 o - 8411.25658545.
string : Acepta una secuencia de caracteres encerrados entre comillas dobles (“), por ejemplo : “esto también es un string”. La diferencia entre el tipo symbol en 2, y los strings es la forma de representación interna de cada uno. El almacenamiento de los símbolos está implementado de tal manera que su búsqueda en las tablas de memoria es más rápida. Además,los símbolos, tienen problemas para hacer inserciones en tiempo de ejecución. Su uso estará determinado por el tipo de aplicación que se realice.
* Secciones: Predicados
PREDICATES (predicados) : En esta sección se definen como serán las relaciones entre los objetos del dominio (domains) y el valor que se les asignará en las cláusulas (clauses).
En una relación no se puede poner nada que nosea del tipo definido para ella, pues el compilador Turbo Prolog dará error al comprobar tipos distintos. Por ejemplo :
predicates
sabe (persona)
Aquí especificamos que el predicado “sabe” tiene un argumento: “persona”, que a su vez en el dominio está declarado como “symbol”.
inteligente (persona)
trabaja (persona)
* Predicados
En este ejemplo hemos definido un objeto como símbolo y...
tracking img