[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

ANN: Third Drop of RubyCLR

John Lam

3/17/2006 2:18:00 AM

This is the biggest release so far of the RubyCLR bridge:

http://www.iu.../articles/2006/03/16/third-drop-...

Here's a brief summary of the current feature set of the bridge:

- Reference .NET assemblies by assembly name or by filename
- Create and manipulate .NET reference and value types
- Automatically marshal .NET reference and value types to / from Ruby
- Dynamic generation of interop code using CIL instructions
- Create and manipulate generic .NET reference types
- Discover and consume .NET interfaces on a .NET object
- Implement .NET event handlers using Ruby blocks
- Map .NET member names to Ruby names (e.g. WordCount becomes
word_count)
- Mix in Ruby Enumerable support for .NET IEnumerable types
- Dynamically access .NET XML documentation from irb (requires
text/format – to make it work uncomment require in rubyclr.rb)

There is now a pretty cool Avalon (Windows Presentation Foundation) sample
in this release. It renders math equations from a quick and dirty Ruby DSL
that I hacked up yesterday. I think it really shows off some of the cool
things you can do when you have a powerful client-side rendering engine. You
can see a screenshot here:
http://www.iu.../articles/2006/03/15/rubyclr-...

I did a lot of perf tuning in this release, so dynamic compilation time of
the interop shims should be much faster. Runtime performance is pretty good
- I can parse a 7.5MB XML doc using XmlTextReader (a pull-mode XML parser)
which results in over a million calls across the interop boundary in about
2s.

Comments / flames / suggestions / contributions are always welcome.

Cheers,
-John
http://www.iu...
14 Answers

Trans

3/17/2006 2:25:00 AM

0

Sound like this is really coming along. I wonder does the project have
a web page of its own?

An aside... but I was wondering if you could tell me exactly what a
..NET assembly is.

Thanks,
T.

John Lam

3/17/2006 2:42:00 AM

0

Jeff

3/17/2006 3:15:00 AM

0

John Lam wrote:
> This is the biggest release so far of the RubyCLR bridge:
>
> http://www.iunknown.com/articles/2006/03/16/third-drop-...
>

Sounds great, John. I can't wait to start playing with it this weekend.

Jeff
www.softiesonrails.com

--
Posted via http://www.ruby-....


Robert Feldt

3/17/2006 7:29:00 AM

0

On 3/17/06, Jeff Cohen <cohen.jeff@gmail.com> wrote:
> John Lam wrote:
> > This is the biggest release so far of the RubyCLR bridge:
> >
> > http://www.iunknown.com/articles/2006/03/16/third-drop-...
> >
John, does this address my earlier comments about being able to create
your own assemblies with the RubyCLR "embedded cil assembler"?

Regards,

Robert


Thibaut Barrère

3/17/2006 8:55:00 AM

0

Hi Trans

> An aside... but I was wondering if you could tell me exactly what a
> .NET assembly is.

a .NET assembly is what you get when you compile a .NET (C#, VB.Net...)
language into binary form.

cheers

Thibaut

Trans

3/17/2006 11:33:00 AM

0

Thanks Thibaut. So they are like DLLs.

double cheers

T-

Robert Feldt

3/17/2006 2:15:00 PM

0

On 3/17/06, John Lam <drjflam@gmail.com> wrote:
> >John, does this address my earlier comments about being able to create
> >your own assemblies with the RubyCLR "embedded cil assembler"?
>
> Unfortunately, no. There should be enough features to support creating a new
> type using Reflection (although I haven't tried yet), but I don't have a way
> to use my CIL assembler (aka RbDynamicMethod) code to generate a
> non-DynamicMethod-yet. Now that said, you could hack that in by adding some
> code to core.h; it shouldn't be too difficult to do.
>
Ok, I will take a look. Any you are using Komodo for all this dev?
Only Windows yet though or could this work also on the Mono/Linux
side?

> The next drop of RubyCLR will likely have what you need. In that release I'm
> planning to let you implement arbitrary CLR interfaces on your Ruby objects.
> So I'll need to generate a .NET shadow class for the Ruby class, so I'll
> need to add support into the core to support that.
>
Sounds great. But at least a month away?

Thanks,

Robert


John Lam

3/17/2006 2:46:00 PM

0

Daniel Völkerts

3/17/2006 3:14:00 PM

0

John Lam schrieb:
> Comments / flames / suggestions / contributions are always welcome.

As .NET should be portable (I never tried it), are there any chances to
use your cool assembly to write Ruby Programs on Pocket PC based systems
(which should run a NET framework on)?

--
Daniel Völkerts
Protected by Anti Pesto.


John Lam

3/17/2006 4:51:00 PM

0

I really haven't looked at what features the compact framework stuff
supports. DynamicMethod support would be an absolute minimum. Does Ruby run
on any compact framework systems?

-John
http://www.iu...


On 3/17/06, Daniel Völkerts < daniel@voelkerts.de> wrote:
>
> John Lam schrieb:
> > Comments / flames / suggestions / contributions are always welcome.
>
> As .NET should be portable (I never tried it), are there any chances to
> use your cool assembly to write Ruby Programs on Pocket PC based systems
> (which should run a NET framework on)?
>
> --
> Daniel Völkerts
> Protected by Anti Pesto.
>
>