fork download
  1. :- set_prolog_flag(verbose,silent).
  2. :- prompt(_, '').
  3. :- use_module(library(readutil)).
  4.  
  5. main:-
  6. process
  7.  
  8. process:-
  9. % Se trata de un arbol genealogico muy simple
  10. %
  11. %
  12. % Primero defino los parentescos basicos
  13. % de la familia.
  14. % padre(A,B) significa que B es el padre de A...
  15.  
  16. padre(juan,alberto).
  17. padre(luis,alberto).
  18. padre(alberto,leoncio).
  19. padre(luisa,geronimo).
  20. % Ahora defino las condiciones para que
  21. % dos individuos sean hermanos
  22. % hermano(A,B) significa que A es hermano de B...
  23. hermano(A,B) :-
  24. padre(A,P),
  25. padre(B,P),
  26. A \== B.
  27. % Ahora defino el parentesco abuelo-nieto.
  28. % nieto(A,B) significa que A es nieto de B...
  29. nieto(A,B) :-
  30. padre(A,P),
  31. padre(P,B).
  32.  
  33. :- main.
Runtime error #stdin #stdout #stderr 0.03s 6204KB
stdin
nieto(luis, X).
stdout
Standard output is empty
stderr
ERROR: /home/Nj86sk/prog.pl:7:8: Syntax error: Operator expected
ERROR: /home/Nj86sk/prog.pl:33:
	No permission to modify static_procedure `true/0'
ERROR: /home/Nj86sk/prog.pl:35:
	call/2: Undefined procedure: main/1
	    However, there are definitions for:
	        main/0