Traceur is a JavaScript.next-to-JavaScript-of-today compiler
cyco and arv Use universal method of finding the global object (#2132)
The module store, runtime and symbol polyfills need access to the global
object. This was done by checking the existence of window, global, self
and falling back to this if none were defined. This can fail for two
reasons. First, 'this' should be expected to be set to undefined during
module definitions (as is the case for symbols.js), thus rendering the
fallback useless. Secondly some JavaScript implementations (e.g. JavaScript
-Core Framework) might not even define a name for the global object that
could be accessed within modules.
By using the Function-Constructor we create a new function in non-strict
mode which has its thisArg set to the global object if no other thisArg
is provided.
Latest commit caa7b75 Sep 15, 2016
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build Use build/versionInfo.js for npm just-publish Jan 29, 2016
demo Update generators.js Aug 24, 2016
example Remove unnecessary options from example Feb 2, 2015
logo Add a logo Mar 9, 2014
src Use universal method of finding the global object (#2132) Sep 15, 2016
test Fix PropertyMethodAssignment test (#2134) Sep 11, 2016
third_party Use a context argument in System.register Jan 6, 2016
tools Add a simple tool for printing the dependencies Jun 9, 2015
.editorconfig Add EditorConfig Dec 11, 2014
.gitattributes Add text=auto to .gitattributes. Nov 11, 2014
.gitignore Remove make rules to publish to npm. Jan 30, 2016
.travis.yml Travis CI: Test on Node.js v4.x.x and v5.x.x Jan 19, 2016
AUTHORS Use universal method of finding the global object (#2132) Sep 15, 2016
CONTRIBUTING.md add http://editorconfig.org Dec 11, 2014
LICENSE Rename COPYING -> LICENSE Mar 28, 2013
Makefile Work around issue with typeof in commonjs output May 24, 2016
README.md Update README.md Jan 28, 2016
gh-pages.gitignore Fixup runner.html for the FreeVariableChecker.generated.js change Jul 23, 2014
index.html Change index.html redirect URL to add dash Jan 31, 2015
package.json 0.0.111 Jun 9, 2016
testRunner.html Update feature tests to es6. Jun 22, 2015
traceur Command line traceur will now invoke the interpreter if no out param … Mar 18, 2013
traceur-build Safer build: copy src/node to build/node. Dec 28, 2013
tval Fix test on Windows Apr 1, 2015

README.md

Join the chat at https://gitter.im/google/traceur-compiler Build Status

Traceur logo

What is Traceur?

Traceur is a JavaScript.next-to-JavaScript-of-today compiler that allows you to use features from the future today. Traceur supports ES6 as well as some experimental ES.next features.

Traceur's goal is to inform the design of new JavaScript features which are only valuable if they allow you to write better code. Traceur allows you to try out new and proposed language features today, helping you say what you mean in your code while informing the standards process.

JavaScript's evolution needs your input. Try out the new language features. Tell us how they work for you and what's still causing you to use more boilerplate and "design patterns" than you prefer.

What now? What can Traceur do for me?

Read the Getting Started page to get up and running. You can use some language features right now and even try it out in your browser here. Just type in some code and see what Traceur produces. For an idea of what is available and what we have in the pipeline, see the Language Features page.

The JSConf 2011 presentation of Traceur describes the goals of the project and what it can do today. Some documentation is on the wiki on this site. Extra demos are in the source repository.

We also presented Traceur at NodeConf 2011. The video is available on YouTube.

Questions, suggestions, and comments can be directed to the discussion group.