LISPouczek



STRONA SAMOUCZKA JĘZYKA LISP  



powered by FreeFind
główna

lekcje

odnośniki

pliki
<< lekcja 8 | lekcja 10 >>

9. Predykaty

Predykat jest funkcją zwracającą odpowiedź. Predykat zwraca symbol T kiedy ma na myśli tak i symbol NIL, kiedy odpowiedź znaczy nie. Predykat z poniższego przykładu orzeka, czy na jego wejściu jest numer.

9.1.
	(NUMBERP 2) 		=>	T
	(NUMBERP KOT )		=>	NIL

Oto inne przykłady predykatów: < zwraca T, jeśli jego pierwsze wejście jest mniej niż jego drugie wejście i analogicznie > zwraca T, jeśli jego pierwsze wejście jest większe niż jego drugie wejście. (To jest też pierwszy wyjątek od konwencji, że nazwy predykatów kończą się literą "'P".)

9.2.
	(< 2 3) 	=>	T
	(> 2 3) 	=>	 NIL

EQUAL to predykat porównujący dwie rzeczy, by zobaczyć, czy są one takie same. EQUAL zwraca T, jeśli jego dwa wejścia są równe; w przeciwnym wypadku zwraca NIL. Dialekt języka programowania Lisp też zawiera orzeczenia nazwane EQ, EQL i EQUALP, których zachowanie jest nieznacznie różne niż EQUAL; różnice nie będą dotyczyły nas tutaj. Dla początkujących, wystarczy znajomość EQUAL.

9.3.
	(EQUAL KOT MYSZ) 	=>	NIL
	(EQUAL KOT KOT) 	=>	T

Predykat LISTP zwraca T, jeśli jego wejście jest listą oraz zwraca NIL dla nie - listy.

9.4.
	(LISTP kotek) 				=>	NIL
	(LISTP (wlazl kotek na plotek)) 	=>	T



<< lekcja 8 | lekcja 10 >>