Bulent Murtezaoglu <[EMAIL PROTECTED]> writes:

>>>>>> "ES" == Emre Sevinc <[EMAIL PROTECTED]> writes:
> [...]
>     ES> Kafam şeye gitti, yani işte CL var CL-USER var, CL-USER
>     ES> aslında CL'deki sembolleri de alıyor filan. Ama bunun
>     ES> konumuzla bir ilgisi var mı tam bilmiyorum. LOOP makrosu
>     ES> içindeki o present-symbols tam olarak hangi kritere göre
>     ES> getiriyor sembolleri pek anlaşılmıyor HyperSpec'e bakınca
>     ES> çünkü "the symbols that are present in a package" lafı ile
>     ES> "the symbols accessible in package" tam olarak
>     ES> ayrıştıramıyorum.  Bir şeyler sezer gibi oluyorum ama kafam
>     ES> büsbütün karışıyor.
>
> Lisp'e sor:
>
> CL-USER> (set-difference 
>         (let (tmp) 
>           (do-symbols (s *package* tmp) 
>             (when (eq (symbol-package s) *package*) (push s tmp))) tmp) 
>         (loop for sym being the present-symbols of *package* collect sym))
> NIL
> CL-USER> 

Müsaadenizle şöyle demek istiyorum, "it's really set theory, and all 
mathematicians 
love set theory!" [1].


> Dogru anlamissin bence, ama biraz daha minciklaman lazim sezdiginin 
> tam oturmesi icin.  Mesela yukarki ornek, sane hyperpec glossary'sinde
> gorebilecegin birseyi cikartmaya yardimci olmak icin faydali olabilir:
>

Demek ki anahtar fonksiyonlardan biri symbol-package imiş!

Syntax:

symbol-package symbol => contents

Arguments and Values:

symbol---a symbol.

contents---a package object or nil.

Description:

Returns the home package of symbol.

Examples:

 (in-package "CL-USER") =>  #<PACKAGE "COMMON-LISP-USER">
 (symbol-package 'car) =>  #<PACKAGE "COMMON-LISP">
 (symbol-package 'bus) =>  #<PACKAGE "COMMON-LISP-USER">
 (symbol-package :optional) =>  #<PACKAGE "KEYWORD">

> -----------
> present n. 1. (of a feature in a Lisp image) a state of being that is in
> effect if and only if the symbol naming the feature is an element of the 
> features list. 2. (of a symbol in a package) being accessible in that package
> directly, rather than being inherited from another package.
> -----------

Şimdi daha net anlaşılıyor bazı şeyler...

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


-- 
Emre Sevinc

eMBA Software Developer         Actively engaged in:
http:www.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
[email protected]
http://church.cs.bilgi.edu.tr/lcg
http://cs.bilgi.edu.tr/mailman/listinfo/cs-lisp

Cevap