El shell de Prolog es una aplicaci�n que permite ejecutar objetivos y ver las ligaduras de las variables de manera interactiva. Pueden existir diferencias entre unos entornos de desarrollo y otros respecto a su uso. Para ilustrar su uso, nosotros utilizaremos el shell de Ciao/Prolog.
�Ejecutando el shell
El shell es una aplicaci�n m�s que podemos ejecutar en nuestro sistema operativo. En nuestro caso, la aplicaci�n se denomina ciaosh. Al ejecutarla aparece un t�pico mensaje de bienvenida:
Ciao-Prolog 1.4 #0: Sat Nov 27 19:27:11 1999 ?-
El s�mbolo ?- nos indica la zona donde podemos escribir los objetivos a ejecutar.
Para mejorar la legibilidad en los ejemplos, destacamos el texto que el usuario teclea para distinguirlo de la salida por pantalla del shell.
�Mi primer objetivo
Cuando arrancamos el shell, los �nicos objetivos que podemos ejecutar corresponden a predicados predefinidos en el sistema. Nuestro predicado predefinido favorito es la igualdad =/2. As� que vamos a probarlo:
Ciao-Prolog 1.4 #0: Sat Nov 27 19:27:11 1999 ?- t(X,3) = t(4,Z). X = 4, Z = 3 ?
Observese que los objetivos acaban en un punto (.), si pulsamos intro antes de escribir el punto ocurre un salto de l�nea, pero nada m�s. Cuando escribimos el punto y pulsamos INTRO es cuando se ejecuta el objetivo.
A continuaci�n, el shell nos dice si el objetivo tiene �xito o no, y cuales son las ligaduras de las variables. Despu�s aparece un signo de interrogaci�n (?). En este momento es cuando le podemos pedir que nos muestre otra soluci�n tecleando un punto y coma (;) y pulsando INTRO:
Ciao-Prolog 1.4 #0: Sat Nov 27 19:27:11 1999 ?- t(X,3) = t(4,Z). X = 4, Z = 3 ? ; no ?-
Como no hay m�s soluciones en nuestro ejemplo, el shell dice "no" y nos permite escribir otro objetivo. Si no hubiesemos deseado m�s soluciones simplemente habr�amos pulsado INTRO.
�Compilando y cargando codigo
Puesto que en el shell solamente podemos ejecutar objetivos, la forma de compilar y cargar c�digo es ejecutando un objetivo. Esto puede variar de un shell a otro, pero habitualmente se hace as�:
?- consult('prog1.pl'). yes ?-
Obs�rvese que el nombre del fichero fuente (y su ruta, si es necesario) se escribe en un t�rmino cero-ario entre comillas simples. Esta es la forma habitual de escribir nombres de fichero.
?- consult('c:/temp/prog1.pl'). yes ?-
�Quiero irme de aqu�
Cuando nos cansamos de jugar con el shell, podemos terminar la aplicaci�n ejecutando el predicado halt/0, o bien pulsando CTRL-D:
?- halt. Process Ciao/Prolog<1> finished