|
AutoCAD... AutoLISP... VisualLISP... |
|
[16] car... cdr... |
Dziś dwie(?) krótkie funkcje LISP-a, podstawowe ze względu na operacje na listach: car - zwracająca pierwszy element list (zwany "głową" listy), oraz cdr zwracająca "resztę" listy (wszystkie jej elementy bez pierwszego - czyli "ogon" listy).
Pomocnicze funkcje złożone z funkcji car i cdr (jest ich 28) występują do czwartego stopnia złożoności. Najczęściej z nich spotykane w programach, to funkcje służące do wyodrębniania współrzędnych punktów: car - wspórzędna X, cadr Y, oraz caddr - Z. Poniżej wszystkie funkcje oparte na ca...dr:
|
|
Jak to działa? Symbolowi % przypiszmy wartość, którą niech będzie lista trójpoziomowa (czteroelemetowa lista, trzyelemtowych różnych dwuelemetowych list):
|
|
| ... i teraz wywołania lispowe: |
|
...itd. Kombinacje zagnieżdżania czterech poziomów dla car i czterech dla cdr, pozwala na dostęp do ósmego elemetu listy, co najlepiej widać poniżej. Dla symbolu % którym jest prosta lista:
|
|
|
Powyższe przykłady ilustrują prostotę, jasność i zwięzłość kodu, czyli wszystko to co w LISP-ie jest najlepsze... :)
|
|
|
|