There are several approaches you can take. Nokogiri has been a b**** to get going on windows, and even now it only compiles on mingw based MRI AFAIK. To come close to the quality of the Nokogiri gem I think you would need to find a very fast .NET based xml library (it's not XLinq :)), that also has a SAX parser, knows about CSS3 for parsing documents in addition to XPATH, and then provide an adapter to make it look like the nokogiri API. You could potentially use P/Invoke to call to libxml2 but then you take on a dependency on a native library. I'm also not sure if libxml2 actually performs in the same way on windows as it does on *nix.
If we would have an implementation of FFI then we could use the FFI based nokogiri gem. I looked at it a few times but it would be a serious amount of work, too much for my taste :). --- Met vriendelijke groeten - Best regards - Salutations Ivan Porto Carrero Web: http://whiterabbitconsulting.eu - http://flanders.co.nz Twitter: http://twitter.com/casualjim Author of IronRuby in Action (http://manning.com/carrero) Microsoft IronRuby/C# MVP On Tue, Apr 20, 2010 at 12:22 AM, Chris Bilson <cbil...@pobox.com> wrote: > Just out of curiosity: What's the process for making an ironruby port of > something like Nokogiri? > > I looked at a blog > post<http://blog.headius.com/2010/04/nokogiri-java-port-help-us-finish-it.html>by > one of the people working on the JRuby port and it looks pretty involved, > but essentially, to port it you would just implement all the > "attach_functions" in libxml.rb in .NET? > > > --c > > > > On Sun, Apr 18, 2010 at 18:46, Tomas Matousek < > tomas.matou...@microsoft.com> wrote: > >> Using native code in your app also requires full trust (implying it won't >> work in Silverlight) and is potentially a security issue. Any exploit in the >> library would make IronRuby vulnerable to attacks. >> >> Tomas >> >> -----Original Message----- >> From: ironruby-core-boun...@rubyforge.org [mailto: >> ironruby-core-boun...@rubyforge.org] On Behalf Of Wayne Meissner >> Sent: Sunday, April 18, 2010 4:57 PM >> To: ironruby-core@rubyforge.org >> Subject: Re: [Ironruby-core] How could I get RPC in iron ruby? >> >> Performance is one negative - since most of the logic that would normally >> be implemented in C, Java or C# is implemented in Ruby, it will be slower. >> Libxml is callback heavy, and depending on how well the FFI impl handles >> these, the rather large number of transitions between ruby and the native >> lib costs a lot. >> >> Portability is another - with a pure-ruby or C# impl, you don't need to >> worry about having the appropriate native lib on the system - its plug and >> play. libxml is also a pretty nasty api to bind using something like FFI, >> and nokogiri really pushes FFI, so until you have a really complete FFI >> impl, you'll have stability problems. >> >> In hindsight, I think JRuby would have been better served by just going >> for a java impl of nokogiri upfront rather than the nokogiri-over-FFI >> stopgap. >> >> On 19 April 2010 07:10, Ryan Riley <ryan.ri...@panesofglass.org> wrote: >> > Speaking of FFI, what's the tradeoff here? FFI let's us use the >> > existing libraries without porting, but a managed alternative should >> > be more performant, right? Seems like FFI is the winner here, but I >> > may be missing something. >> > >> > Ryan Riley >> > >> > Email: ryan.ri...@panesofglass.org >> > LinkedIn: http://www.linkedin.com/in/ryanriley >> > Blog: http://wizardsofsmart.net/ >> > Twitter: @panesofglass >> > Website: http://panesofglass.org/ >> > >> > >> > On Sun, Apr 18, 2010 at 12:49 AM, Jimmy Schementi >> > <jimmy.scheme...@microsoft.com> wrote: >> >> >> >> So whose going to port it? :) or even implement FFI? >> >> >> >> ~Jimmy >> >> On Apr 18, 2010, at 12:02 AM, "Ivan Porto Carrero" >> >> <i...@cloudslide.net> >> >> wrote: >> >> >> >> nokogiri works on windows but not on IronRuby ... it needs a >> >> C-extension >> >> --- >> >> Met vriendelijke groeten - Best regards - Salutations Ivan Porto >> >> Carrero >> >> Web: http://whiterabbitconsulting.eu - http://flanders.co.nz >> >> Twitter: http://twitter.com/casualjim Author of IronRuby in Action >> >> (http://manning.com/carrero) Microsoft IronRuby/C# MVP >> >> >> >> >> >> On Sat, Apr 17, 2010 at 9:14 PM, Ryan Riley >> >> <ryan.ri...@panesofglass.org> >> >> wrote: >> >>> >> >>> Maybe I spoke too soon, but I thought it did. I was switching back >> >>> and forth a lot at the time. I will try again once I get everything >> >>> re-installed. >> >>> >> >>> Sent from my iPhone >> >>> >> >>> On Apr 17, 2010, at 1:47 AM, Seo Sanghyeon <sanx...@gmail.com> wrote: >> >>> >> >>>> 2010/4/17 Ryan Riley <ryan.ri...@panesofglass.org>: >> >>>>> >> >>>>> Or use hpricot or nokogiri Ruby libraries. You will find several >> >>>>> libs to choose from. >> >>>> >> >>>> Does nokogiri work on IronRuby?! >> >>>> >> >>>> -- >> >>>> Seo Sanghyeon >> >>>> _______________________________________________ >> >>>> 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 >> >> >> > >> > >> > _______________________________________________ >> > 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 > >
_______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core