Phil Cooper-king wrote:
> 1. What does a double colon do in terms of class inheritance.

Nothing.

> ie. GameWindow < Gosu::Window ?

This means that GameWindow inherits from the class Gosu::Window, which is the 
class Window in the namespace Gosu.


> 2. Why would you want to use nested classes?

To avoid name collision or just to group things together that belong together 
or keep classes that won't be directly used by the user out of the main 
namespace. Like if you have a class Card that uses the class Rank, but the 
user won't ever create an instance of class Rank himself (he just will get 
Rank object when he does my_card.rank), you'd nest Rank inside Card (and Card 
probably inside MyGame, for the previous reasons).


> 3. Is it bad practice to define constance out of classes?

Not as such, but it's generally a good idea - at least for libraries that will 
be used by other ruby files, to have all your stuff in a namespace to avoid 
name collision as in point 2.


> 4. How/Can you delete instance variables

Just set them to nil or use remove_instance_variable (the former won't 
actually delete the variable, but why do you need to do that anyway?)

> or objects? 

An objects gets GCed when it's no longer referenced by any variables.

HTH,
Sebastian
-- 
Jabber: sepp2k / jabber.org
ICQ: 205544826