On Sat, Jun 5, 2010 at 12:27 PM, Charles Oliver Nutter
<[email protected]> wrote:

> I also see something else I find interesting: EObject apparently
> implements dec() and is_ge()...I'm guessing you have implemented a
> full set of numeric operators on EObject so that when they're
> explicitly provided by a subtype it can be no more than an interface
> or abstract dispatch? We've thought of doing the same for JRuby, but
> were unsure whether it would be too cumbersome. The essential idea
> would be that the default implementations would proceed to doing a
> dynamic dispatch while the overridden versions would provide the
> implementation in-place, perhaps with a guard in case someone
> monkey-patched them. It would reduce most math operators against core
> types to static calls (+ a two-field object comparison for the guard)
> and greatly improve their inlinability.

That's what Jcon does.  There are about 150 methods defined on the
root class vDescriptor, most of which do nothing or throw errors.
Jcon is a very interesting early JVM implementation of the Icon
language, which is dynamically typed and has non-LIFO flow control; it
was written back in 1999, and doesn't provide (AFAIK) any escape to
Java: the JVM is treated as a pure implementation target.

-- 
GMail doesn't have rotating .sigs, but you can see mine at
http://www.ccil.org/~cowan/signatures

-- 
You received this message because you are subscribed to the Google Groups "JVM 
Languages" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/jvm-languages?hl=en.

Reply via email to