>>>>> "vy" ==   <[EMAIL PROTECTED]> writes:

    vy> Merhaba, Şunu açıkça itiraf etmeliyim ki stream'ler şu ana
    vy> kadar SICP'den öğrendiğim en inanılmaz yöntem oldu. Daha 3.5.1
    vy> bölümün başını okudum ve Eratosthenes Eleği (Sieve of
    vy> Eratosthenes) algoritmasını öğrenmem ile "tüm asal sayıları
    vy> hesaplayan" kodu yazmam bir oldu. (Bilmiyorum belki ileride
    vy> egzersiz olarak verilmiştir bu problem, ama ben sonraki satırı
    vy> okumaya bile sabredemedim.) Liste üyelerinin de ilgisini
    vy> çekebileceğini düşündüm:

    vy> (define-syntax stream-cons (syntax-rules () ((_ item stream)
    vy> (cons item (delay stream)))))


Tembellik dünyasina hosgeldiniz, ne de olsa programciligin önemli erdemlerinden 
biri de temebellik öyle degil mi? ;-) [1, 2]

Tam da kisa bir süredir Haskell'e bakar iken bu örnek güzel oldu Debian 
GNU/Linux'a,
Haskell kurup ilk is olarak bu meshur örnek nasil yapiliyor tembelce ve 
sonsuzca bir 
bakayim dedim, suna benzedi ilk Haskell oturumum:

[EMAIL PROTECTED]:~/programming/haskell$ ghci

   ___         ___ _
  / _ \ /\  /\/ __(_)
 / /_\// /_/ / /  | |      GHC Interactive, version 6.6, for Haskell 98.
/ /_\\/ __  / /___| |      http://www.haskell.org/ghc/
\____/\/ /_/\____/|_|      Type :? for help.


Loading package base ... linking ... done.

Prelude> let primes = sieve [2..] where sieve (p:ns) = p : sieve [n | n <- ns, 
n `mod` p > 0]

Prelude> take 5 primes
[2,3,5,7,11]

Prelude> take 30 primes
[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113]


Ayni konu icinde kalip da bambaska bir programlama dili ile ancak bu 
kadar konu disina cikilabilir herhalde! :)

Common Lisp, Scheme, Haskell, vb. baglaminda bu "tembellik" isini biraz daha
kurcalamakta fayda var gibi görünüyor. 


1- http://en.wikipedia.org/wiki/Lazy_evaluation
2- http://en.wikiquote.org/wiki/Larry_Wall
(The three chief virtues of a programmer are: Laziness, Impatience and Hubris)

-- 
Emre Sevinc

eMBA Software Developer         Actively engaged in:
http://emba.bilgi.edu.tr        http://ileriseviye.org
http://www.bilgi.edu.tr         http://fazlamesai.net
Cognitive Science Student       http://cazci.com
http://www.cogsci.boun.edu.tr


_______________________________________________
cs-lisp mailing list
cs-lisp@cs.bilgi.edu.tr
http://church.cs.bilgi.edu.tr/lcg
http://cs.bilgi.edu.tr/mailman/listinfo/cs-lisp

Cevap