On Monday, January 21, 2013 7:46:01 PM UTC-7, Isaac Schlueter wrote: > Who's a wall? You can either put your files in the root of your > package, or you can put "lib/" or whatever in your require() function > calls. You're saying that you want to add complexity to Node that *no > one else wants*, because you don't want to have to choose between a > bunch of files in the root of your project or an extra *4 characters* > in your require() statements. > > How much does this really hamper your productivity? With the > keystrokes spent on this email, you could have typed out "lib/" in > thousands of require() statements already. > > What is this really about? Is it just a reaction to the attitude that > Node is better than anything else? Does it seem cocky or arrogant to > reject features simply because they are not something we care about? > > What kind of project maintainer would I be if I cared more about silly > things like this than actual real problems that need fixing? > On the contrary, what sort of project could Node.js be if everyone actually cared about doing things the objectively correct way.
How require() works, and indeed similar to how most programming language module loading systems ought to work, is it takes an argument specifying which function (specifically, which module) to evaluate (if not already evaluated), and returns the result. It could already be compiled into the system - this is how the core Node.js modules work. Out of simplicity and extensibility, however, most of the time you're going to use the filesystem to define a module. And if you have to select your require() arguments based around how your filesystem is laid out, then you're Doing It Wrong. Cross-platform compatibility is a highly desirable feature. Therefore this is something worth investing time into and getting right. Yes, Node.js should do what is right for Node.js. But this is somewhat misleading per se. If what is right for Node.js means cross-platform compatibility, then this means cooperating with others and coming to a common agreement when the decision would otherwise be arbitrary. -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
