Discussion:
sual 4; degiskensiz fonksiyon tanimlama?
ÿffffe7aÿfffff0layan
2007-11-05 23:20:20 UTC
Permalink
(define (akor-salla)
(let* ((t (random 116))
(m (+ t (random 3) 2))
(d (+ t (random 3) 5)))
(list t m d)))

Bunu "PLT Scheme ..module" de calistirabiliyorum.

Peki "define" yerine CL'de hangi macro'yu kullanabirim.

__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
Emre Sevinc
2007-11-06 00:28:42 UTC
Permalink
-----Original Message-----
From: cs-lisp-***@cs.bilgi.edu.tr on behalf of aykut "ÿffffe7aÿfffff0layan
Sent: Tue 11/6/2007 1:20 AM
To: lisp grup
Subject: [cs-lisp] sual 4; degiskensiz fonksiyon tanimlama?

Enteresan bir baslik olmus, fonksiyonun degisken alip almamasindan ziyade fonksiyonun bir isminin olup olmamasi (anonim fonksiyonlar) kafa karisikligina yol acar genelde (diger dillere alismis programcilarda yani, deneyimli bir muzisyenin farkli bakis acisini gormek zevkli).
Post by ÿffffe7aÿfffff0layan
(define (akor-salla)
(let* ((t (random 116))
(m (+ t (random 3) 2))
(d (+ t (random 3) 5)))
(list t m d)))
Bunu "PLT Scheme ..module" de calistirabiliyorum.
Peki "define" yerine CL'de hangi macro'yu kullanabirim.
Common Lisp'te defun'i kullanmalisin:

http://www.lisp.org/HyperSpec/Body/mac_defun.html
http://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node40.html#SECTION006130000000000000000

Yahut lispdoc'a basvurabiliriz, o da bize hem yukaridakileri hem de Practical Common Lisp ile Successful Lisp'ten bazi ornekleri soyler:

http://lispdoc.com/?q=defun&search=Basic+search


Dikkat: Scheme kodlarina bakip bunlari CL'ye cevirmek baslangicta bazen kafa karistirici olabilir, bu basit ornekte bu tur bir risk pek yok ama bunu aklinda bulundur.

--
Emre Sevinc

Loading...