Schreibbefehle write(+Term) schreibt Term auf die Standardausgabe (normalerweise Bildschirm) writeq(+Term) schreibt Term schön auf die Standardausgabe portray_clause(+Term) schreibt Term noch schöner auf die Standardausgabe tell(+SrdDst) macht Datei SrdDst zur Standardausgabe, d.h. die write und writeq wird dorthin umgeleitet told hebt die Umleitung von tell/1 wieder auf tab(Anzahl) schreibt Anzahl Leerzeichen AtomModifizierung concat(A,B,C) konkateniert Atome A+B=C, Beispiel: concat(X,en,gehen) => X = geh atom_concat(A,B,C) wie concat concat_atom(Liste, Atom) generiert ein Atom aus einer Liste, Beispiel : concat_atom([g,e,h,e,n],X) => X = gehen Prädikat =.. [Funktor|Argumente] konvertiert das Prädikat in eine Liste, wobei der Funktor das Kopfelement der Liste ist und die Argumente die weiteren Elemente. Beispiel: append(a,b,X) =.. [Funktor|Argumente] => Funktor = append, Argumente = [a,b,X] Steuerung der Auswertung var(X) liefert true, falls X eine Variable ist fail lässt das Prädikat scheitern true lässt das Prädikat gelingen Bedingung > DannFall; SonstFall lässt sich Bedingung beweisen, beweise DannFall, andernfalls beweise SonstFall call(Goal) ruft Goal so in der Datei auf als ob auf ? Prompt geschrieben assert(Prädikat) fügt auf dem ? Prompt aufgerufen Prädikat zur Datenbank hinzu (so als wenn es in Datei geschrieben worden wäre und mittels consult/1 geladen) setof siehe Folie 221 findall siehe Folie 222 Listen sort(+List,Sortiert) sortiert die Liste, dabei werden Duplikate entfernt msort(+Liste,Sortiert) sortiert Liste ohne Duplikate zu entfernen length(Liste,Laenge) liefert die Länge der Liste in Laenge append(A,B,C) konkateniert Liste A mit B und speichert das Ergebnis in C reverse(A,B) dreht Liste A um und speichert das Ergebnis in B Module : module("name",["exportierte Prädikate"]) muss am Kopf eines Moduls stehen : use_module(Moduldateiname) lädt das Modul, dass sich in Moduldateiname befindet
© Copyright 2024 ExpyDoc