Stas Bekman wrote:

I don't have much to comment on these issues. I'm not going to repeat again and again why the separation into multiple modules is important.


I don't think anyone would have a problem with the multiple files, if we can just hide that unexpected complexity from end users.

It may be unimportant to many users, but we aren't going to take it away from those who need the ultimate performance.


My suggestion about autoloading would not take away anyone's ability to preload things. It would help people who are not sure what they need yet though, and avoid worrying about what to preload until you are ready to do performance tuning.

Granted we want to make simple things easy and complicated possible. And that's exactly why I've suggested to create another easy layer for those users who don't care about saving a few msecs here and there and don't care about a few hundreds extra k's of memory wasted. Why don't you like that suggestion?


Because it's not transparent. People still have to think about what they are going to load in a very early stage, and they still need to know which files (or import sets) the methods they call on $r are defined in. If they get it wrong, their program will die. It also doesn't address the docs issue.

With an autoload scheme, we can have a little app that tells you what to add to your startup.pl when tuning or we can have a flag that prints that info to the error log when it autoloads something. People can feel comfortable with the fact that their app will still work if they forget to preload something.

You want to preload all modules, go for it.


I think that would be a better default than the current scenario, at least for $r (load everything by default, and have import options that load specific things instead), but autoload seems like a better compromise. And this doesn't address the docs issue either.

Is there a technical reason why autoloading the $r methods wouldn't work?

- Perrin

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to