| Použití funkce cond míst funkce abs: | |||||
| (cond | |||||
| ((minusp a) (- a)) | |||||
| (t a) | |||||
| ) | |||||
| Je-li hodnota v proměnné a záporná je převedena na kladné číslo, jinak je vráceno rovnou kladné číslo. | |||||
| Použití funkce cond, aby simulovala výstup funkce case (jako v PASCALU): | |||||
| (cond | |||||
| ((= s "Y") 1) | |||||
| ((= s "y") 1) | |||||
| ((= s "N") 0) | |||||
| ((= s "n") 0) | |||||
| (t nil) | |||||
| ) | |||||
| Je-li řetězec s roven "Y" nebo "y" vrátí funkce 1, je-li řetězec roven "N" "n" vrátí funkce 0. Nenastane-li ani jeden z případů je výsledek rovný nil. | |||||
| Mějme definované proměné: | |||||
| (setq f1 '(a b c)) | |||||
| (setq f2 '(a b c)) | |||||
| (setq f3 f2) | |||||
| Porovnání f1 a f3: | |||||
| (eq f1 f3) | |||||
| funkce vrátí nil - protože f1 a f3, i když obsahují stejné hodnoty neukazují na stejný seznam | |||||
| Porovnání f3 a f2 | |||||
| (eq f3 f2) | |||||
| funkce vrátí T - protože f3 a f2 ukazují na stejný seznam | |||||
Podívej se na funkci equal pro porovnání funkce!
| Mějme definované proměné: | |||||
| (setq f1 '(a b c)) | |||||
| (setq f2 '(a b c)) | |||||
| (setq f3 f2) | |||||
| (setq a 1.123456) | |||||
| (setq b 1.123457) | |||||
| Porovnání f1 a f3: | |||||
| (eq f1 f3) | |||||
| funkce vrátí T | |||||
| Porovnání f3 a f2: | |||||
| (eq f3 f2) | |||||
| funkce vrátí T | |||||
| Porovnání a a b: | |||||
| (eq a b) | |||||
| funkce vrátí nil - hodnoty se liší o 0.000001 | |||||
| Porovnání a a b: | |||||
| (eq a b0.000001) | |||||
| funkce vrátí T - je definována tolerance 0.000001 | |||||
| (repeat int [expr...]) | ||
| Argumenty: | ||
|  
       int 
     | 
    - kladné celé číslo | |
|  
       expr 
     | 
    - jeden nebo více atomů nebo výrazů | |
| Popis: | ||
| - opakovaně vyhodnocuje výraz, počet opakování určuje argument int | ||
| Návratová hodnota: | ||
| - hodnota posledního výrazu nebo atomu | ||
|  
       - nil - pokud není specifikována expr  | 
  ||
| Příklady: | ||
|  
       (setq a 10 b 100)  | 
  ||
| vrací 100 | ||
| vrací 500 | ||
| po skončení je a=50, b=500 | ||
|  
       (repeat 100 "Me" "You")  | 
  ||
| vrací "You" | ||
| Následující úsek programu volá 10x funkci some-func, během volání je zvětšována hodnota pomocné proměné test: | |||||
| (setq test 1) | |||||
| (while (<= test 10) | |||||
| (some-func test) | |||||
| (setq test (1+ test)) | |||||
| ) | |||||