We have long-term inchoate plans for how SpiderMonkey will technically evolve. Historically these plans have been "tribal" knowledge, communicated during the design process of other patches, or during reviews. Now we're trying to actually document them. Documentation of these plans says nothing about the schedule for when these changes will happen. It could be sooner, it could be later. It will depend on the particular plan, its invasiveness, whether it is a natural step (or slight tangent) in the fixing of some other issue of importance, and so on.
We also track a variety of (typically) shorter-term projects. These projects are likely to be fixed sooner than the rather-vaguer plans referenced above. They typically 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.
- 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.
- Web Browser Grand Prix: Optimize for Tom's Hardware Guide's "Web Browser Grand Prix" (WBGP) benchmarks.
- Exact Stack Rooting: Conservative rooting has a number of well known downsides.
- Baseline Compiler: New Baseline JIT to replace Interpreter+JM.
- IonMonkey: upgrade current JIT compiler with classic SSA-based compiler techniques to allow better optimization of JIT code
- JS engine modularization: incremental long-term project to modularize JS engine source code.
- 2013 Projects: Projects for the year 2013
- Expose ECMA 262 Regular Expression API to C/C++ clients.
- A new SpiderMonkey API for building and inspecting parse trees.
- 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.
- ECMAScript language specifications
- "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.
- Bug Triage Tags