Mike;<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;">Yes, like instanceOf() in other languages.<br>
</blockquote><div><br>Exactly. Maybe we should stick to conventions where they exist, even if .isA() is good for lazy typists.<br><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>
Taking a class per se as an argument would necessitate looking that<br>
token up in some list of classes available at runtime, no? </blockquote><div><br>Well, yes, I suppose, but that gets done anyway as ChucK has to make sure all objects we define are of a known type so ChucK already has to go over all previously defined types as well as the ones in the current file anyway. Clearly such a list exists somewhere in the system already (that need not mean it&#39;ll be easy to find for you or me, of course....).<br>
&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">&nbsp;Also, it<br>
seems that these things would have to be defined separately for UGen<br>
and Object--as far as I can tell. &nbsp;My C++ skills are next-to-absent,<br>
to be honest.<br>
</blockquote><div><br>Hmmmm, but UGens are Objects too, and UGens do know their type, at least this shows us that their type is known.<br><br>Gain shoe;<br>&lt;&lt;&lt;shoe&gt;&gt;&gt;;<br>&lt;&lt;&lt;shoe.toString()&gt;&gt;&gt;;<br>
<br>I&#39;m not sure I see the difference with other objects though there may be a big one in the C++ code?<br>&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
In the meantime, taking a string representation of a class, like<br>
&quot;Object&quot;, for an argument would be much easier to implement (for me,<br>
anyway). &nbsp;We could do this just to prototype the feature, see if it&#39;s<br>
useful, etc.<br>
<br>
myObject.isA( &quot;Object&quot; )<br>
<br>
Could return true or false. &nbsp;This I think we could have up and running<br>
quickly to try it out. &nbsp;Perhaps then someone smarter than me would be<br>
interested in looking into making it so that it could be done without<br>
the quotes (i.e. as a class and not a string), which, I assume, would<br>
be safer.<br>
<font color="#888888"></font></blockquote><div><br>Sure! Still, there are cases like STKInstrument where it would be very useful to know what type a certain object inherits from. In certain cases that might be even more interesting than the type of the object itself. <br>
<br>Anyway, I like this plan. It&#39;s based on stuff we already have and it will make things like the type casting we talked about a short while ago much safer and more practical. Actually I think that we should make info that&#39;s available in the system already available within the language as much as possible.<br>
<br>It will also be useful to be able to get the type of a object, like you sugest above, in adition to my idea because my proposal doesn&#39;t allow for comparing whether two objects are of the same type. I could imagine that making sure two objects are of the same type could come handy at times.<br>
</div></div><br>Would it be possible to have a type &quot;type&quot;? It seems that that is something we are heading towards here if we&#39;d like to avoid strings in this situation. Would that cause terrible paradoxes that might destabilise the nature of the universe?<br>
<br>Yours,<br>Kas.<br>