2010-11-18 16 views

Respuesta

25
  • ? medios: Esta variable puede ser instanciada o no. Ambas formas son posibles.
  • + medios: Esta variable es una entrada al predicado. Como tal, debe ser instanciado.
  • - medios: Esta variable es salida al predicado. Por lo general, no se crea una instancia, pero puede ser si desea verificar un "valor de retorno" específico.

Fuente: Capítulo 4 de la documentación de SWI Prolog.

3

+ significa que se espera Variable2 estar obligado (a un término, o tal vez sólo algunas variables) - se puede pensar en esto como de entrada a predicate/3, que el predicado no intentará modificar en la ejecución.

- significa que se espera Variable3 estar obligado por predicate/3 en ella de ejecución - se puede pensar en esto como salida de predicate/3. Esto no significa que no puede estar obligado, sin embargo, particularmente si usted sabe qué esperar y está buscando el éxito, pero predicate/3 se describe como potencialmente vinculante (unificación) Variable3 a algo.

? significa que Variable1 puede ser ya sea obligarse (+, de entrada) o no (-, de salida) - predicate/3 debería ocuparse de los dos casos, si acepta tampoco.

Cuestiones relacionadas