>>>>> "ES" == Emre Sevinc <[EMAIL PROTECTED]> writes:
[...]
    ES> Müsaadenizle şöyle demek istiyorum, "it's really set theory,
    ES> and all mathematicians love set theory!" [1].

Tabii onu derken benim deneme icin yazdigim kodun kirilganligini 
atliyor olabilirsin.  Aman dikkat.  Birinin otekinden buyuk olmasi seni 
rahatsiz ettigi icin set-difference demisim herhalde, daha uygun set 
fonksyonlari da var orada kullanilacak (belki bu vesileyle bakan cikar?).

[...]
    ES> Ayrıca Edi Weitz ve diğerlerinin verdiği cevaplara da baktım,
    ES> (apropos "special-p")'nin SBCL için ne döndürdüğünü de biraz
    ES> inceledim. env diye bir şeyi de parametre olarak isteyen
    ES> sb-walker:var-special-p diye bir şey döndürüyor.

Iste o 'env' evvelce bahsettigim environment oluyor.  Boyle apropos ile 
ic fonksyon bulmak oraya sordugum soruya uymuyor tabii, oyle yazilmis
kod tasinabilir (portable) degil cunku.  Sbcl'in icindeki code-walker'da 
kullanilan bir fonksyon bulmussun yukarida mesela.  

Bu arada niye specialp '-'siz ama var-special-p '-'li diye merak edenlere:

http://www.cliki.net/Naming%20conventions

sayfasindan alintilayayim:


------

A functions that test for something involving its arguments is called
a predicate and usually ends in p or -p. CLTL2 explains the rationale
for each suffix:

    By convention, the names of predicates usually end in the letter p
    (which stands for "predicate"). Common Lisp uses a uniform
    convention in hyphenating names of predicates. If the name of the
    predicate is formed by adding a p to an existing name, such as the
    name of a data type, a hyphen is placed before the final p if and
    only if there is a hyphen in the existing name. For example,
    number begets numberp but standard-char begets standard-char-p. On
    the other hand, if the name of a predicate is formed by adding a
    prefixing qualifier to the front of an existing predicate name,
    the two names are joined with a hyphen and the presence or absence
    of a hyphen before the final p is not changed. For example, the
    predicate string-lessp has no hyphen before the p because it is
    the string version of lessp (a MacLisp function that has been
    renamed < in Common Lisp). The name string-less-p would
    incorrectly imply that it is a predicate that tests for a kind of
    object called a string-less, and the name stringlessp would
    connote a predicate that tests whether something has no strings
    (is "stringless")!

------

BM


_______________________________________________
cs-lisp mailing list
[email protected]
http://church.cs.bilgi.edu.tr/lcg
http://cs.bilgi.edu.tr/mailman/listinfo/cs-lisp

Cevap