Sage/streamlinejs — pull request #76 by bigeasy (2012-03-16 19:34:22+00:00)
Title: Terse exectuable names and file extensions.

Created two new executables, the underscored executables, with the names `_node` and `_coffee`. These executables invoke the `run` method in `lib/compiler/command.js`, just like the existing executables. The underscored executable behavior is invoked if the executable name does not end in `-streamline`.

The new underscored executables are both compiler and interpeter. The new interpreter behavior can be found in `underscored.js`.

Options passed to the interpreter when it is run are passed to all Streamline.js files that are compiled at runtime. There is no way to set special options for a specific included file. If this is needed, then the file ought to be compiled to JavaScript and included that way.

The interpreter mode is runs all command line options, including setting a custom callback variable name. That might be a problem since files compiled at runtime by require might use the standard callback character.

Lot's of little edge cases, always, eh? Can't get around the fact that projects that span multiple files need conventions. (That or mode lines.)

Created a compiler that compiles `._js` extension to `.js` in the same directory. Put it off to the side from the `.loadFile` logic, since this is used for compliation only, within a build environment, and not for runtime transformation.

Also compiling `._coffee` files. Regardless of whether the compiler is invoked
with the `_coffee` or the `_node` executables, the compiler will still attempt
to parse `._coffee` files.