From: Mauricio Fernandez Date: 2008-02-18T20:53:34+09:00 Subject: Re: [ANN] FastRI 0.3.1: faster, Leopard compatibility, etc. On Thu, Feb 07, 2008 at 07:52:20AM +0900, Eric Hodel wrote: > On Feb 3, 2008, at 07:40 AM, botp wrote: > >On Feb 3, 2008 1:07 AM, Mauricio Fernandez wrote: > >>FastRI is an alternative to the ri documentation browser for Ruby. > > > >forgive the dumb question, but how can i make fastri work for ruby1.9? > >thanks for fri/qri, mauricio. 'm very much dependent on it now :) I haven't ported it to 1.9 yet, mainly because 1.9.0 is still too unstable. It shouldn't be hard, though. > Are you really concerned about 1/10 of a second? (All times with hot > cache.) > > $ time ri -f plain Array#fetch > /dev/null > real 0m0.589s [...] > $ time qri -f plain Array#fetch > /dev/null > real 0m0.110s [...] > $ time ri19 -f plain Array#fetch > /dev/null > real 0m0.208s [...] 1/10th of a second does matter in some cases (e.g. if qri is being called by an editor to display "live" documentation), but the behavior when the cache isn't hot matters much more to me: (worst case, cold cache) $ time qri -f plain Array#fetch > /dev/null real 0m3.690s ... $ time ri -f plain Array#fetch > /dev/null real 0m32.235s ... $ time ri19 -f plain Array#fetch > /dev/null [...] [BUG] Segmentation fault ruby 1.9.0 (2007-12-20) [i686-linux] Aborted real 0m6.141s I rarely refer to the RI documentation nowadays, but I definitely don't want to wait for several seconds (the average case observed in practice, with a "temperate cache") when I do, to have ri tell me something like this: $ ri -T collect_file More than one method matched your request. You can refine your search by asking for information on one of: Test::Unit::Collector::Dir#collect_file, Test::Unit::Collector::Dir#collect_file, Test::Unit::Collector::Dir#collect_file, Test::Unit::Collector::Dir#collect_file, Test::Unit::Collector::Dir#collect_file Unfortunately, ri is so slow and buggy that many (me included) find it unusable. FastRI is just an usable ri with some extra features (working RubyGems support, full-text search, configurable lookup order, better search strategies, etc.). -- Mauricio Fernandez - http://eigenclass.org