Hey, just saw this ticket. I wanted to share as a curiosity that Perl has this: You can store coderefs in `@INC`. That gives you plenty of flexibility. For example, the Perl Archive Toolkit provides a way to ship projects in one si...fxn (Xavier Noria)
Just in case it matters, let me also add that it is assumed that `Module#autoload` invokes `Kernel#require` as introduced in [cd465d5](https://github.com/ruby/ruby/commit/cd465d552c3a00341f4cb7f1d7a793d0ebcb6cde). Zeitwerk relies on thi...fxn (Xavier Noria)
If you enable `Ruby::Box`, decorations to `Kernel#require` do not work. For example, given _foo.rb_: ```ruby module M def require(_path) puts 'decorated' super end end Kernel.prepend(M) p require 'tsort' ``...fxn (Xavier Noria)
Hi there! @byroot knows this, but for anyone reading, Zeitwerk essentially scans the file system and sets autoloads for the expected constants. This feature is going to be great. As in the general case described in the issue descriptio...fxn (Xavier Noria)
BTW, I do not know if you know it, but while I started working on Zeitwerk to fix autoloading in Rails, I changed my mind in the mid of it and decided to do something more generic that supports multiple autoloaders in the same process ma...fxn (Xavier Noria)
Thanks for the example @mame. In my view, this is more a problem of circularity than a problem of autoload vs require. When you are loading a file, a require is executed and loads a file that needs a constant that was still not defined....fxn (Xavier Noria)