Vybrané vstavané funkcie Common Lispu

Práca so zoznamami

(FIRST list) prvý prvok zoznamu list
(CAR list) prvý prvok zoznamu list
(REST list) zvyšok zoznamu list bez prvého prvku
(CDR list) zvyšok zoznamu list bez prvého prvku
(CONS arg1 arg2) nový s-výraz, ktorého CAR časť je arg1 a CDR časť je arg2
(LIST [arg1 ...]) zoznam, ktorého prvkami sú argi
(APPEND list1 list2) zoznam obsahujúci prvky zoznamu list1, za ktorým sú vsunuté prvky zoznamu list2

to Homepage to Teaching to FLP to the Top

Predikáty

(ATOM arg) T, ak arg je atóm
(LISTP arg) T, ak arg je zoznam
(NULL arg) T, ak arg je NIL (prázdny zoznam)
(NUMBERP arg) T, ak arg je číslo
(SYMBOLP arg) T, ak arg je symbol
(EQ arg1 arg2) T, ak arg1 a arg2 sú presne tie isté lispovské objekty
(EQUAL arg1 arg2) T, ak pre arg1 a arg2 platí:
  • arg1 a arg2 sú presne tie isté lispovské objekty (EQ) alebo
  • arg1 a arg2 sú čísla s rovnakou hodnotou alebo
  • arg1 a arg2 sú reťazce a sú identické alebo
  • arg1 a arg2 sú zoznamy a ich CAR a CDR časti sú zhodné (EQUAL)
(EVENP arg) T, ak arg je párne číslo
(ODDP arg) T, ak arg je nepárne číslo
(ZEROP arg) T, ak arg je číslo rovnajúce sa nule
(PLUSP arg) T, ak arg je číslo väčšie ako nula
(MINUSP arg) T, ak arg je záporné číslo
(< [arg1 ...]) T, ak argumenty sú zoradené vzostupne
(> [arg1 ...]) T, ak argumenty sú zoradené zostupne

to Homepage to Teaching to FLP to the Top

Špeciálne funkcie

(SET arg1 arg2) hodnota arg2; hodnota symbolu arg1 sa nastaví na hodnotu arg2
(SETQ symb arg) hodnota arg; hodnota výrazu arg sa priradí nevyhodnotenému symbolu symb
(QUOTE arg) nevyhodnotený argument arg
(FUNCTION arg) funkčná väzba nevyhodnoteného arg
(DEFUN meno args forma) definícia funkcie
(COND vetva1 ...) vetvenie
(PROG args f1 ... fn) postupnosť
(EXIT) ukončenie práce s lispom

to Homepage to Teaching to FLP to the Top

Aritmetické a logické funkcie

(+ [arg1 ...]) suma argumentov
(- [arg1 arg2...argn]) výsledok odčítania arg2 ... argn od arg1
(* [arg1 ...]) súčin všetkých argumentov
(ABS arg) absolútna hodnota argumentu (čísla)
(/ arg1 arg2) delenie
(AND [arg1 ...]) logický súčin argumentov
(OR [arg1 ...]) logický súčet argumentov
(NOT arg) negácia argumentu

to Homepage to Teaching to FLP to the Top

Funkcionály

(FUNCALL #'fn arg1 ... argn) výsledok aplikácie funkcie fn na argumenty arg1 ... argn
(APPLY #'fn list) výsledok aplikácie funkcie fn na argumenty, ktoré predstavujú prvky zoznamu list
(MAPCAR #'fn l1...ln) zoznam výsledkov aplikácie funkcie fn na prvé prvky zoznamov, potom druhé prvky zoznamov, ...

to Homepage to Teaching to FLP to the Top

Vstupno/výstupné funkcie

(LOAD subor) presmeruje vstup z klávesnice do špecifikovaného súboru a vyhodnotí všetky v ňom zapísané formy
(CLOSE prud) T, uzavrie špecifikovaný prúd, ak neexituje, vráti NIL
(OPEN subor &KEY
DIRECTION ELEMENT-TYPE)
otvorí špecifikovaný súbor a spojí ho s novým prúdom, ktorý vráti ako hodnotu. Kľúče môžu mať tieto hodnoty:
  • :DIRECTION
  • :INPUT, :OUTPUT
  • :ELEMENT-TYPE
  • STRING-CHAR, UNSIGNED-BYTE
(PRINC arg [prud]) hodnota argumentu arg; vypíše hodnotu bez úvodzoviek a ďalších špeciálnych symbolov na obrazovku alebo do súboru
(PRINT arg [prud]) hodnota argumentu arg; vypíše hodnotu na nový riadok (aj s prípadnými úvodzovkami)
(PRIN1 arg [prud]) ako PRINT, ale nevypisuje na nový riadok
(PPRINT arg [prud]) NIL, hodnotu argumentu arg "pekne" vypíše
(READ-LINE [prud]) načítaný reťazec až po koniec riadku
(READ [prud]) načítaný lispovský objekt
(READ-CHAR [prud]) ASCII hodnota načítaného znaku
(TERPRI [prud]) NIL; zapíše nový riadok

to Homepage to Teaching to FLP to the Top

Ladenie

(DRIBBLE [subor]) NIL; vstup aj výstup z/na terminál sa bude zapisovať do špecifikovaného súboru. Volanie funkcie bez argumentov spôsobí ukončenie zápisu a uzatvorenie špecifikovaného súboru
(BREAK) prerušenie výpočtu
(TRACE fn) nastavenie trasovacieho bodu na funkciu fn
(UNTRACE fn) zrušenie trasovacieho bodu z funkcie fn
(STEP forma) hodnota formy, postup vyhodnocovania sa zobrazuje

to Homepage to Teaching to FLP to the Top

Home
Research
Projects
Publications
Books
SCM
Teaching
Links
Last updated:
Mária Bieliková bielik [zavináč] fiit-dot-stuba-dot-sk
Design © 2oo1 KoXo