I'm trying to remove our global options in favor of options passed by argument. The remaining obstacles are two uses of global options in the runtime, to support alternative outputs for Symbol.toString() and Symbol.valueOf():
To me it seems like these uses are not vital: if these functions are called at all in code that does not use --symbol, then the return value has no constraint and may as well be the same as the result when --symbol is true. (Changing this code is easy but we have a number of tests that would need to be fixed up).
I don't really see how this runtime option really works for any code other than Traceur itself. Outside of the command line or explicit calls to set options in user code, user code has no way of knowing what options were used to compile. Of course we could invent some way, but we don't have it now.
So: does anyone object if I remove the runtime option feature and its use in Symbol?