Yup, we will need a mix of both approaches. Reimplementing in C# gives more flexibility in being able to run on any CLR, but is also expensive. Being able to use FFI can give access to more extensions quickly and cheaply, but will not have the same reach as a managed reimplementation.
-----Original Message----- From: ironruby-core-boun...@rubyforge.org [mailto:ironruby-core-boun...@rubyforge.org] On Behalf Of Tomas Matousek Sent: Wednesday, October 07, 2009 11:37 AM To: ironruby-core@rubyforge.org Subject: Re: [Ironruby-core] Native Extensions On the other hand, using a native extension is worse than using a pure C#/Ruby equivalent. Native interop doesn't work in partial trust (Silverlight, web servers, etc) and supporting more platforms (Windows, Linux, MacOS, etc) would need more work. So if there is some useful Ruby native extension with stable API it makes sense to implement it in Ruby with .NET interop or directly in C#. Tomas -----Original Message----- From: ironruby-core-boun...@rubyforge.org [mailto:ironruby-core-boun...@rubyforge.org] On Behalf Of Shri Borde Sent: Wednesday, October 07, 2009 11:11 AM To: ironruby-core@rubyforge.org Subject: Re: [Ironruby-core] Native Extensions It's is a large workitem, so it would be post 1.0. Tomas thinks some of the code can be reused from the IronPython equivalent (the ctypes library), but it would still be a fair amount of work. I think Win32API is a weak equivalent, and someone could start playing with it for accessing native extension. There would be work on the native extensions to expose the functionality as dllexports, and this can be pushed on right now without waiting for IronRuby to support FFI... -----Original Message----- From: ironruby-core-boun...@rubyforge.org [mailto:ironruby-core-boun...@rubyforge.org] On Behalf Of Thibaut Barrère Sent: Wednesday, October 07, 2009 5:16 AM To: ironruby-core@rubyforge.org Subject: Re: [Ironruby-core] Native Extensions > IronRuby supports neither FFI nor Ruby/dl. So you would have to use pinvokes > from C# for now. just wondering: is there a remotely vague intention of having FFI support at some point for IronRuby ? just curious if someone actually thought about implementing this, -- Thibaut _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core