Rob;<br><br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">How absolute the knave is!  We must speak by the card, or equivocation will undo us!<br>

</blockquote><div><br>I don&#39;t know, equivocation may well still undo us...<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>

Thanks.<br>
</blockquote><div><br>That&#39;s ok, I had good fun. Cleaner would likely be defining a class &quot;proto_engine&quot; and one &quot;proto_controller&quot;, adding those, then extending both, this avoids needing a rather clumsy class that has some members of both Engine and Conttroller; that&#39;s bound to lead to confusion later on.<br>
<br>It turns out you are right, BTW and that you can create references to classes without instantiating them, from there on you can only use static members of those;<br><br>class Foo<br>    {<br>    static int bar;<br>    <br>
    fun static void printA() {&lt;&lt;&lt;&quot;bang&quot;&gt;&gt;&gt;;}<br>    fun  void printB() {&lt;&lt;&lt;&quot;bang&quot;&gt;&gt;&gt;;}<br>    }<br><br>Foo @ baz;<br>&lt;&lt;&lt;baz.bar&gt;&gt;&gt;;<br>baz.printA();<br>
<br>//this creates a nullpointer<br>baz.printB();<br></div></div><br>Could get useful, I suppose, but I don&#39;t anticipate I&#39;ll use this a lot.<br><br>Kas.<br>