Lisp (List Processing – Liste İşleme) Kaynak: clisp_book.pdf ve VB.NET2008, GCL 2.6.7
Matematik işlemler |
+ – * / abs sqrt eval (eval (+ 2 3)) ;eval=evaluate |
+ – * / Math.Abs Math.Sqrt a=2+3 |
Mantıksal sembol |
T Nil |
True False |
Belirleyici |
NumberP SymbolP ZeroP OddP EvenP ListP |
isNumeric isArray isNot |
Karşılaştırma |
< > = EqualP Not (> (* 2 5) 9) ;T döner |
< > = Not ((2*5) > 9) ‘True döner |
Açıklama yazmak için |
; (noktalı virgül) |
‘ (tek tırnak) |
Yazı yazmak |
(format t “Merhaba Lisp”) (princ “Selam”) |
Console.WriteLine(“Merhaba VB”) |
Diziler veya listeler |
(değer1 değer2 değer3) ;değerlerin aynı türde olması gerekli değildir |
Dim a(2) as değişkenTürü |
İç içe listeler |
((1 mehmet) (2 zehra) (3 ahmet)) (setq listemiz ‘(2 3 4)) ;setq = sequential assignment |
Dim b(,) as String = {{“1”, “mehmet”},{“2”, “zehra”},{“3”, “ahmet”}} |
Liste Uzunluğu |
(Length listemiz) ;3 yazar |
b.Length |
Listeyi Silmek |
() Nil (setq listemiz Nil) |
b.Clear() |
Liste elemanlarına ulaşmak |
First Second Third Rest Last Car Cdr Caddr (first listemiz) ;(1 mehmet) yazar |
Array.IndexOf ‘tek boyutlu dizilerde Array.LastIndexOf(b, "zehra") b(1,1) ‘zehra yazar |
Listeleri birleştirmek |
Cons ;construct List |
Array.Copy |
Fonksiyon yazmak |
(defun ortalama (a b) (/ (+ a b) 2.0) ) ;defun = define function
(ortalama 3 4) ; 3.5 yazar |
Function ortalama ( a as integer, b as integer) as double Return (a+b)/2 End Function
Sonuc= ortalama (3, 4) |