# Autoload ain't down with the program

**URL:** <https://www.ruby-forum.com/t/autoload-aint-down-with-the-program/118576>\
**Category:** Ruby\
**Created:** [October 29, 2007, 4:27am UTC](https://www.ruby-forum.com/t/autoload-aint-down-with-the-program/118576 "2007-10-29T04:27:54Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Trans](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/dfb087/32.png) [@Trans](https://www.ruby-forum.com/u/Trans)\
**Post date:** [October 29, 2007, 4:27am UTC](https://www.ruby-forum.com/t/autoload-aint-down-with-the-program/118576/1 "2007-10-29T04:27:54Z")

</div>

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.)

---

<div class="post-metadata">

**Author:** ![Trans](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/dfb087/32.png) [@Trans](https://www.ruby-forum.com/u/Trans)\
**Post date:** [October 29, 2007, 4:26pm UTC](https://www.ruby-forum.com/t/autoload-aint-down-with-the-program/118576/2 "2007-10-29T16:26:01Z")

</div>

On Oct 28, 2007, at 9:25 PM, Trans wrote:

> p RedCloth  
> 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?

a @ [http://codeforpeople.com/](http://codeforpeople.com/)

---

<div class="post-metadata">

**Author:** ![Trans](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/dfb087/32.png) [@Trans](https://www.ruby-forum.com/u/Trans)\
**Post date:** [October 29, 2007, 5:34pm UTC](https://www.ruby-forum.com/t/autoload-aint-down-with-the-program/118576/3 "2007-10-29T17:34:29Z")

</div>

On Oct 28, 2007, at 9:25 PM, Trans wrote:

> p RedCloth  
> 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?

a @ [http://codeforpeople.com/](http://codeforpeople.com/)

---

<div class="post-metadata">

**Author:** ![Trans](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/dfb087/32.png) [@Trans](https://www.ruby-forum.com/u/Trans)\
**Post date:** [October 29, 2007, 6:40pm UTC](https://www.ruby-forum.com/t/autoload-aint-down-with-the-program/118576/4 "2007-10-29T18:40:05Z")

</div>

On Oct 29, 11:25 am, “ara.t.howard” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> > This also has an effect on Rubygems, btw. Notice:
> 
> 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.
