On Oct 29, 11:25 am, "ara.t.howard" <ara.t.how... / gmail.com> wrote:
> On Oct 28, 2007, at 9:25 PM, Trans wrote:
>
>
>
> > I run into a bit of a snag. I've augmented the #require and #load
> > methods and noticed that #autoload doesn't pick up on it --though the
> > docs say #autoload uses #require. Apparently it uses it's own internal
> > code though, separate from any defined in the script. So there seems
> > to be no way to override #autoload to tie in these augmentations.
>
> > This also has an effect on Rubygems, btw. Notice:
>
> >    require 'rubygems'
> >    autoload(:RedCloth, 'redcloth')
> >    p RedCloth
>
> > produces
>
> >    no such file to load -- redcloth (LoadError)
>
> > even though the redcloth gem is in fact installed.
>
> > I suspect there's no way around this. If so, can we get that fixed in
> > the next release of Ruby?
>
> > Thanks,
> > -T.
>
> > (I know, this should probably go to ruby-core list. But I
> > (purposefully) do not subscribe to that list any more.)
>
> it works for me:
>
> cfp:~ > ruby -e'  autoload "Dike", "dike.rb"; p Dike  '
> Dike
>
> cfp:~ > ruby -e'  require "rubygems"; autoload "Dike", "dike.rb"; p
> Dike  '
> Dike
>
> are you sure that autoload line works in isolation?

Isolation from? Where do you have dike.rb installed? Is it a gem?

  $ ruby -e'require "rubygems"; require "redcloth.rb"; p RedCloth'
  RedCloth
  $ ruby -e'require "rubygems"; autoload "RedCloth", "redcloth.rb"; p
RedCloth'
  -e:1: no such file to load -- redcloth.rb (LoadError)

  $ ruby --version
  ruby 1.8.6 (2007-06-07 patchlevel 36) [i486-linux]

  $ gem --version
  0.9.4

T.