From: Vladimir Zolotykh
Subject: :use and :shadowing-import-from
Date: 
Message-ID: <opsj6o6t068k218c@news.eurocom.od.ua>
Could you please explain me the difference between
	(defpackage :test
	  (:use #:cl #:excl #:clim))
	(in-package :test)
	(define-application-frame test ()
	........
and
	(defpackage :test
	  (:use #:cl #:excl)
	  (:shadowing-import-from #:clim))
	(in-package :test)
	(define-application-frame test ()
	.....
In the second case I get  the error
	Error: attempt to call `define-application-frame' which is an undefined
	       function.
which I unable to explain because I thoght both forms of defpackage should 
produce
the same result. Where was I wrong?
[Using ACL70]
-- 
Vladimir Zolotykh 

From: Peter Seibel
Subject: Re: :use and :shadowing-import-from
Date: 
Message-ID: <m34qhu1ljz.fsf@javamonkey.com>
Vladimir Zolotykh <······@eurocom.od.ua> writes:

> Could you please explain me the difference between
> 	(defpackage :test
> 	  (:use #:cl #:excl #:clim))
> 	(in-package :test)
> 	(define-application-frame test ()
> 	........
> and
> 	(defpackage :test
> 	  (:use #:cl #:excl)
> 	  (:shadowing-import-from #:clim))
> 	(in-package :test)
> 	(define-application-frame test ()
> 	.....
> In the second case I get  the error
> 	Error: attempt to call `define-application-frame' which is an undefined
> 	       function.
> which I unable to explain because I thoght both forms of defpackage
> should produce
> the same result. Where was I wrong?
> [Using ACL70]

The :shadowing-import-from clause takes a list of names you want to
import from the given package. You need to import at least
define-application-frame. See:

  <http://www.gigamonkeys.com/book/programming-in-the-large-packages-and-symbols.html>

for a longer explanation.

-Peter

-- 
Peter Seibel                                      ·····@javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp
From: Vladimir Zolotykh
Subject: Re: :use and :shadowing-import-from
Date: 
Message-ID: <opsj7zpiwt8k218c@news.eurocom.od.ua>
Thank you both
What a shameful blunder of mine!

On Thu, 06 Jan 2005 18:04:22 GMT, Peter Seibel <·····@javamonkey.com> 
wrote:

> Vladimir Zolotykh <······@eurocom.od.ua> writes:
>
>> Could you please explain me the difference between
>> 	(defpackage :test
>> 	  (:use #:cl #:excl #:clim))
>> 	(in-package :test)
>> 	(define-application-frame test ()
>> 	........
>> and
>> 	(defpackage :test
>> 	  (:use #:cl #:excl)
>> 	  (:shadowing-import-from #:clim))
>> 	(in-package :test)
>> 	(define-application-frame test ()
>> 	.....
>> In the second case I get  the error
>> 	Error: attempt to call `define-application-frame' which is an undefined
>> 	       function.
>> which I unable to explain because I thoght both forms of defpackage
>> should produce
>> the same result. Where was I wrong?
>> [Using ACL70]
>
> The :shadowing-import-from clause takes a list of names you want to
> import from the given package. You need to import at least
> define-application-frame. See:
>
>   <http://www.gigamonkeys.com/book/programming-in-the-large-packages-and-symbols.html>
>
> for a longer explanation.
>
> -Peter
>



-- 
Vladimir Zolotykh 
From: Kalle Olavi Niemitalo
Subject: Re: :use and :shadowing-import-from
Date: 
Message-ID: <87u0pufn9g.fsf@Astalo.kon.iki.fi>
Vladimir Zolotykh <······@eurocom.od.ua> writes:

> 	(defpackage :test
> 	  (:use #:cl #:excl)
> 	  (:shadowing-import-from #:clim))

The :shadowing-import-from option never causes a package (test)
to use another package (clim).  It merely imports a set of
symbols from the specified package (clim) and makes them shadow
any inherited symbols.  However, in your defpackage form, this
set of symbols is empty, because you did not list any symbols at
the right side of #:clim.