Project

General

Profile

Feature #18055

Updated by shalokshalom (Matthias Schuster) 3 months ago

Currently, ``autoload`` [auto_load](https://bugs.ruby-lang.org/issues/15592) provides the ability to load libraries on the fly, also called lazy loading, in order to avoid huge startup times. 

 This has some disadvantages, who already lead nearly to its [discontinuation](https://bugs.ruby-lang.org/issues/5653) 

 I suggest a proposal, that solves both these issues. 

 ``introduce`` 

 I imagine this keyword, respectively method keyword behaves like ```require``` at the top of the file and does act like ```autoload``` within a definition. 

 We can also introduce exceptions for cases like the above linked threads. 

 Its also a nice guideline, and easy to remember. 

 *Summary*: ``introduce`` can always behave predictable, optimal, and even work fine without the programmer knowing about its implementation.  


 Similar issues:  
  - https://bugs.ruby-lang.org/issues/15592  

Back