Coffeehouse Thread

5 posts

Forum Read Only

This forum has been made read only by the site admins. No new threads or comments can be added.

Video - Neal Gafter shows off LINQ to the 'other side'

Back to Forum: Coffeehouse
  • User profile image
    felix9

    the videos from JVM language summit is online, 

     

    http://java.about.com/b/2010/09/01/jvm-language-summit-sessions-online.htm

     

     

    there are many interesting stuff like

     

    http://medianetwork.oracle.com/media/updateMedia/15487?n=playlist&nid=1

     

    http://medianetwork.oracle.com/media/updateMedia/15488?n=playlist&nid=1

     

     

    and among them, 'our' Neal Gafter was talking about LINQ, no new stuff for us to hear but interesting still, since he was and still is an important figure in 'the other side' of the world (or 'the other evil empire' maybe ??), and often explain things by comparing or refering to the jvm counterpart .

     

    but overall it looks like JVM is evolving towards a multilanguage vm,

     

    http://www.infoq.com/presentations/Towards-a-Universal-VM

     

     

    so what happened to this slogan ??

     

    One Runtime to Run Them All

  • User profile image
    W3bbo

    The JVM has been a multi-language VM for some time now; for example there's Groovy and a whole load of others, including a C compiler.

     

    I don't think Sun capitalised on expanding the JVM's language range as much as Microsoft has.

  • User profile image
    felix9

    W3bbo said:

    The JVM has been a multi-language VM for some time now; for example there's Groovy and a whole load of others, including a C compiler.

     

    I don't think Sun capitalised on expanding the JVM's language range as much as Microsoft has.

    yeah, I am aware of that actually Smiley  what I meant is that, instead of the language guys trying to adapt the vm, the vm guys are actively trying to adapt more different kinds of languages, with JSR292 (invokedynamic) and other stuff,and the effort is finally going to fruit with the coming Java 7 platform, while MS is backing off from the Iron-languages.

     

    but, the latest issue of MSDN magazine has articles about IronRuby and IronPython, what could that mean Expressionless ??

    http://msdn.microsoft.com/en-us/magazine/ff960707.aspx

  • User profile image
    W3bbo

    felix9 said:
    W3bbo said:
    *snip*

    yeah, I am aware of that actually Smiley  what I meant is that, instead of the language guys trying to adapt the vm, the vm guys are actively trying to adapt more different kinds of languages, with JSR292 (invokedynamic) and other stuff,and the effort is finally going to fruit with the coming Java 7 platform, while MS is backing off from the Iron-languages.

     

    but, the latest issue of MSDN magazine has articles about IronRuby and IronPython, what could that mean Expressionless ??

    http://msdn.microsoft.com/en-us/magazine/ff960707.aspx

    I don't get why they had to make so many changes to the CLR to support the DLR. What's wrong with existing late-binding and things like IDispatch?

  • User profile image
    rhm

    W3bbo said:
    felix9 said:
    *snip*

    I don't get why they had to make so many changes to the CLR to support the DLR. What's wrong with existing late-binding and things like IDispatch?

    It's friggin' slow. In every method call, instead of just calling the right subroutine or going through a vtable pointer or whatever, you are calling a subroutine that's going to either do a case statement or a table search before calling the right subroutine.

     

    You can make dynamic dispatch reasonably fast but you need to be a bit more low-level about it. The main way to speed it up is to cache the last type and member subroutine dispatched at the call-site.  Then you just have to check that the object instance you are dealing with is the same type as you saw before (which it will be most of the time) and then call the cached routine. If not you drop back to the standard dynamic dispatcher. You need the JIT to be able to inject this code into the call-sites for it to work efficiently though. 

     

Conversation locked

This conversation has been locked by the site admins. No new comments can be made.