JavaScript:Home Page: Difference between revisions
Jump to navigation
Jump to search
m (→Active Projects: Replace bugzilla link by project page.) |
(Reorder and rename Guidelines) |
||
Line 10: | Line 10: | ||
* [[JavaScript:Hackers|JavaScript engine hackers and areas of expertise]] | * [[JavaScript:Hackers|JavaScript engine hackers and areas of expertise]] | ||
== Guidelines == | |||
* [[JavaScript:SpiderMonkey:Coding_Style|SpiderMonkey code guidelines]] | |||
* [[JavaScript:SpiderMonkey:Regression_Policy|SpiderMonkey performance regression policy]] | |||
== Benchmarks == | |||
* [[Benchmark Intro]] | |||
* [[Sunspider Info]] | |||
* [[V8bench Info]] | |||
* [[Kraken Info]] | |||
== Tracked Projects == | == Tracked Projects == | ||
Line 46: | Line 58: | ||
* [[JavaScript:JS3 Requirements|JS3 Requirements]], or what lies beyond [http://developer.mozilla.org/es4/ JS2/ES4]. | * [[JavaScript:JS3 Requirements|JS3 Requirements]], or what lies beyond [http://developer.mozilla.org/es4/ JS2/ES4]. | ||
== References == | == References == |
Revision as of 15:48, 15 July 2013
JavaScript language and implementation plans go here. For background, see:
- "So you're new to SpiderMonkey" is a guide for new contributors to the JavaScript engine.
- The Mozilla JS language page.
- The ECMAScript (ES) language site.
- SpiderMonkey pages at the Mozilla Developer Network.
- JavaScript pages at the Mozilla Developer Network.
Hackers
Guidelines
Benchmarks
Tracked Projects
Projects here have a project plan with milestones, tasks, and owners.
- Generational Garbage Collection: General Garbage Collection project plan and milestone.
- OdinMonkey: OdinMonkey project plan and milestone.
- Property Element Storage: Property and Element Storage project plan and milestone.
- Debugging: Debugging JavaScript, in web content (both desktop and mobile) and in chrome (add-ons and Firefox itself)
- Stack Snapshots: Lightweight records of where errors occurred, where event handlers were registered, and so on.
- Heap Profiling: Integrated tools for tracking memory use, finding leaks, and so on.
Active Projects
- Exact Stack Rooting: Conservative rooting has a number of well known downsides.
- Type Inference: perform hybrid dynamic/static analysis of JavaScript code to provide better type/invariant information to the JIT compiler
- Baseline Compiler: New Baseline JIT to replace Interperter+JM.
- IonMonkey: upgrade current JIT compiler with classic SSA-based compiler techniques to allow better optimization of JIT code
- Expose ECMA 262 Regular Expression API to C/C++ clients.
- A new SpiderMonkey API for building and inspecting parse trees.
- Narcissus (source code).
- JS engine modularization: incremental long-term project to modularize JS engine source code.
- 2013 Projects: Projects for the year 2013
Previous Active Projects
- TraceMonkey, the addition of native-code compilation to SpiderMonkey
- JägerMonkey, a new baseline JIT compiler for SpiderMonkey
- Tamarin, the new virtual machine for ActionScript that's already in Flash.
- Context-thread the SpiderMonkey interpreter.
- Make mostly-dense arrays blazingly fast. Latest bug: type-specialized Arrays.
- Rhino documentation at MDC. Rhino is an implementation of JavaScript in Java.
Blue Sky
- JS3 Requirements, or what lies beyond JS2/ES4.
References
- "Garbage Collection: algorithms for automatic dynamic memory management", by Richard Jones, is a comprehensive reference book about different garbage collection algorithms.
- Also Richard Jones's webpage has a collection of references.
- Several conferences where most memory management papers go: ISMM, PLDI, OOPSLA, VEE.