My company is working on a piece of software right now that is using
.NET. One of the features is a scripting console similar to IRB: the
user may type in one-off commands and see the effect in the application.
I want the scripting language to be Ruby. Right now, it’s IronPython.
I’ve been told that the reason is that with using Ruby under this
scenario, a new Assembly is created for each command that the user
enters. This is a Bad Thing, as it’s been described to me, for
performance and memory. IronPython doesn’t suffer this problem. (I was
also told that there is some nasty way to get around the problem that
involves tying objects together and marshalling data back and forth. Or
something. Hopefully I got the description right; I’m a Ruby scripter,
not a .NET programmer.)
Does this sound correct to people who know Ruby/.NET or
If it's not correct, could you elaborate on how one might
achieve the functionality I describe above?
If it is correct, how can it be fixed? If Python managed a
solution, I assume Ruby could as well.
I’d really like our software to use Ruby, and I could probably convince
the engineers to use it if we could overcome this hurdle. More Ruby
everywhere is better for the world.