In the hunt for documentation, I ran across this form that I find odd:
(in-package "SB!THREAD")
I would have expected (in-package "SB-THREAD"). Can someone explain
this to me? I seem to have missed a naming convention or something.
That isn't the only mystery. I could not find the make-package for
it:
·····@vega:~/usr/src/sbcl/src
$ find . -name *.lisp -exec grep -l '(make-package "SB-THREAD"' {} \;
·····@vega:~/usr/src/sbcl/src
$ find . -name *.lisp -exec grep -l with-mutex {} \;
./code/cross-thread.lisp
./code/gc.lisp
./code/target-thread.lisp
./code/thread.lisp
·····@vega:~/usr/src/sbcl/src
$ find . -name *.lisp -exec grep -l '(make-package "SB!THREAD"' {} \;
·····@vega:~/usr/src/sbcl/src
$ find . -name *.lisp -exec grep -l '(in-package "SB!THREAD")' {} \;
./code/cross-thread.lisp
./code/target-thread.lisp
./code/target-unithread.lisp
./code/thread.lisp
·····@vega:~/usr/src/sbcl/src
$
I'm now reading SBCL source to see if I can figure out how to use
these thread functions and macros. The documentation function was of
no help. Apropos just tells me what exists. Describe doesn't give me
the documentation string.
Thar be ffi calls in there.
--
I wouldn't mind the rat race so much if it wasn't for all the damn cats.
In article <··············@david-steuber.com>,
David Steuber <·····@david-steuber.com> wrote:
> In the hunt for documentation, I ran across this form that I find odd:
>
> (in-package "SB!THREAD")
>
> I would have expected (in-package "SB-THREAD"). Can someone explain
> this to me? I seem to have missed a naming convention or something.
> That isn't the only mystery. I could not find the make-package for
> it:
It's probably defined using defpackage rather than make-package. That's
the preferred way to define packages, isn't it?
--
Barry Margolin, ······@alum.mit.edu
Arlington, MA
*** PLEASE post questions in newsgroups, not directly to me ***
David Steuber <·····@david-steuber.com> writes:
> In the hunt for documentation, I ran across this form that I find odd:
>
> (in-package "SB!THREAD")
>
> I would have expected (in-package "SB-THREAD"). Can someone explain
> this to me? I seem to have missed a naming convention or something.
> That isn't the only mystery. I could not find the make-package for
> it:
[...]
> I'm now reading SBCL source
All SBCL packages are defined in package-data-list.lisp-expr and
generated in src/cold/set-up-cold-packages.lisp (search for the former
filename). During cross-compilation their names are of form SB!xxx in
order to not conflict with that of host compiler. In the start of
warm init (src/cold/warm.lisp) the packages are renamed to SB-xxx.
--
Regards,
Alexey Dejneka
"Alas, the spheres of truth are less transparent than those of
illusion." -- L.E.J. Brouwer