Improved error handling if IronRuby.Libraries is not referenced

Hi,

This might sound like an odd request, but it has just caught me out.
Basically, I wanted to host IronRuby within a Console Application (for
a demo), however I didn’t reference IronRuby.Libraries, as a result I
was getting the exception - System.MissingMethodException was
unhandled Message="1::+ (the code was “puts 1+1”).

This was my thought process:

  1. Created a new project. Reference DLR assemblies.
  2. Create new Runtime and Engine (using rb). Exception - missing
    IronRuby reference. Forgot, lets reference that.
  3. Execute, method missing exception thrown.
  4. Confused. Looked back at my IronEditor code - realised I was
    missing IronRuby.Librarires.
  5. Added reference - everything worked.

Maybe it’s not required, but is there any way of better error handling
in this situation?

Thanks
Ben

I think you’ll find that in the future, the IronRuby.Libraries assembly
will
be merged into the IronRuby language assembly and so will not need to be
referenced.
By the way, can you get your program to work without referencing the
assembly in the project but by just copying the assembly into the folder
containing your executable?
Pete

In another one of my applications, I am loading the assemblies
dynamically (they are not referenced). With IP Beta 3, I changed the
way I load assemblies (Using LanguageSetup? Look in the IronPython
mailing list for details, it was posted there). Can’t remember how I
deal with both assemblies (thats what 2am coding gets you), or if they
just work because they are in the same directory - which wasn’t the
case in this example. Happy to provide more details when I have the
code in front of me if you want…

On Mon, Jun 23, 2008 at 2:22 PM, Peter Bacon D.

Sounds like something that belongs in the bug tracker… :).

Someone seems to run into this issue every few weeks for Python as well,
so there’s definitely a compelling story for making a change.