There's more information about it on the blog entry. This is a very early
build, but the unit tests that I have all pass. If you have the .NET
Frameworks 2.0 installed on your computer you could give it a test drive.
If folks could provide any feedback at this point it would be greatly
appreciated. If someone wants a simple challenge extending the bits, you
could add static field support which is currently missing from this drop,
unlike what I claimed on my blog entry :)
Thanks
-John
http://www.iunknown.com
What's the overall idea of the bridge: to allow Ruby to be called from,
say, C# code, or to write Ruby code and compile it into a .net assembly?
I thought it would be the latter, but when you mention it does not yet
support generics, etc. I got confused (I wouldn't use generics if I'm
writing Ruby code).
Jeff
--
Posted via http://www.ruby-forum.com/.
The bridge allows you to manipulate C# objects from Ruby, which is different
form the scenarios that you present. It also supports callbacks - that is
you can write event handlers for CLR events in Ruby. So it is a two-way
bridge in this sense. It's currently a non-goal for the bridge to support
creating CLR objects using Ruby, although I can imagine how that could be
done.
I thought it would be the latter, but when you mention it does not yet
> support generics, etc. I got confused (I wouldn't use generics if I'm
> writing Ruby code).
>
>
If you want to consume CLR objects, you need to support generics. The WinFX
libraries use generics heavily.
I downloaded your bits, installed .NET 2.0, rebooted and ran 'ruby
tests2.rb'. I got this error:
./RbDynamicMethod.dll: 14001: This application has failed to start
because the application configuration is incorrect. Reinstalling the
application may fix this problem. - ./RbDynamicMethod.dll (LoadError)
from ./rubyclr.rb:1
from tests2.rb:1:in `require'
from tests2.rb:1
I also have .NET 1.0 and 1.1 installed. 1.1 and 1.0 have been
coexisting for awhile now with no problems. I suspect I need an
RbDynamicMethod.dll.config file to point it at the right location. What
do you think may be going on?
p.s. I'm real excited about this code - it looks sweet!
Justin
Ah! Makes sense now. Kind of like how the COM Callable Wrappers let
COM objects talk to .Net components, one could consider the bridge to be
a kind of "Ruby Callable Wrapper", I guess?
Sounds exciting. I will definitely take a look at it when I get the
chance.
How crazy would I have to be to try making a Windows Forms GUI app using this?
Looks like fun, either way.
Actually, I already managed to call .NET ArrayLists via Win32OLE. It
doesn't get (much) crazier.
Why would you want to use WinForms anyway? It's such a horrible terrible
clumsy GUI toolkit anyway.
David Vallner
> On 1/15/06, David Vallner <da...@vallner.net> wrote:
>> On Mon, 16 Jan 2006 00:42:11 +0100, Wilson Bilkovich <wil...@gmail.com>
>> wrote:
>>
>> > On 1/13/06, John Lam <drj...@gmail.com> wrote:
>> >
>> > How crazy would I have to be to try making a Windows Forms GUI app
>> using
>> > this?
>> >
>> > Looks like fun, either way.
>> >
>>
>>
>> Actually, I already managed to call .NET ArrayLists via Win32OLE. It
>> doesn't get (much) crazier.
>>
>> Why would you want to use WinForms anyway? It's such a horrible terrible
>> clumsy GUI toolkit anyway.
>>
> I'm looking for the ability to write GUI apps in Ruby, without any of
> the deployment difficulties associated with 'non-standard' toolkits.
> I probably just need to get better at packaging working subsets of the
> full Ruby install on Windows, though. I was starting to think that
> .NET was an easier prerequisite than "Ruby, GTK+, and these particular
> environment variables."
> Your post reminded me how bad parts of WinForms are, though. Heh.
>
Well, someone did point my attention at a binary ruby-gtk, so if that has
GTK bundled along, things might get less insane in first-time deployment.
David Vallner
Using the earlier non-released build of my bridge, I created a lap around
WinFX app:
http://www.iunknown.com/articles/2005/11/29/matthews-birthday-present. There
was Avalon and Indigo stuff there (it was a flash card app that used Indigo
to pull images out of flickr and used Avalon to render a 3D flash card that
would rotate about its z-axis).
The Indigo stuff wasn't all that well baked as Ruby since I didn't support
generics in that version of my bridge. I still don't in this version, but
it's a super high priority item to get working.
I think the real fun will be to use Ruby to gen Avalon UI's on the fly.