On 9 November 2010 18:46, Michael Heuer <heuermh@gmail.com> wrote:
Right, that's why I proposed className().

Check.
 

A real instanceof keyword would return true for all of

(myUgen instanceof SinOsc.class)
(myUgen instanceof UGen.class)
(myUgen instanceof Object.class)


I'm a bit lost about this notation. Is this in the C++ stuff? I'd be happy with "my_ugen.instanceOf( SinOsc )" returning true or false as well. This would probably make code smaller and it would make debug printing slightly more complicated, though we can simply print the object and get a (useless) memory address and it's type.
 
which would help with Kas' use case.  How about

fun String className()
fun String[] classNames()


where ".classname()" would be equivalent to ".classNames()[ .classnames().cap() - 1 ]", assuming we go from the most general to the most specific right? I'm not sure about that order yet. It will depend on whether we'd mostly be happy with some general info and would go into the details more rarely or whether we would tend to try something specific, then go up the tree until we encounter something that would hold. I suspect the first case to be more common. That's a bit of a detail though.

Yours,
Kas.