Ayende @ Rahien

Refunds available at head office

Wanted: MethodMissing

I am listening to this webcast, talking about dynamic dispatch on the JVM, and 19:30 it starts to get really interesting. The JVM is getting support for MethodMissing. As far as I understand, this is most relevant for compiler writers, but it is something that I really would like to have on the CLR (and exposed for C# & VB).

The reason for wanting this is very simple, it lets me handle advance scenarios very easily. Take a look at Boo's duck typing capabilities to see some of the stuff that can be done with it.

Comments

shawn hinsey
03/30/2007 04:55 PM by
shawn hinsey

One of the main reasons I am interested in method_missing style features in the CLR is that you can emulate the way that ActionScript 3 handles XML documents, which is, I think, pretty awesome.

hammett
03/30/2007 06:43 PM by
hammett

Wow! JVM rules!

Kevin Williams
03/30/2007 06:46 PM by
Kevin Williams

It can be abused, though. In Ruby land, many projects like Camping and RSpec (and even Rails) were reaching a point of collisions and nearly impossible debugging. RSpec is being redesigned to have only a couple of method_missing handlers rather that hundreds.

Ayende Rahien
03/30/2007 06:51 PM by
Ayende Rahien

Do you really want to see the code where the whole application is nothing but anonymous delegates and operations on anonymous delegates?

There is not doubt that it can be abuse. Hell, just recently Rhino Mocks, NUnit and MbUnit had to do some name space shuffling because all of us wanted the "Is" class for fluent interfaces (but I was there first :-) ).

I still want this feature.

Kevin Williams
03/30/2007 07:01 PM by
Kevin Williams

You mean like Functional Programming? Yeah, it's hard to look at but very powerful. Not for the meek.

I want methodmissing too! Better to empower the developer than disable them. I'm just saying that methodmissing is "the nuclear option" - use sparingly if you want to stay sane. How you have stayed sane in all the the ├╝ber-coding you do is amazing. :)

Ayende Rahien
03/30/2007 07:08 PM by
Ayende Rahien

No, I am not talking about functional programming, I am talking about functional programming using anonymous delegates, there is a big difference.

I don't agree that it is the nuclear option, I consider run time code generate to the 2nd degree that.

And I don't think that I ever claimed to be sane :-)

Comments have been closed on this topic.