GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - bldl/array-grouping-impl-tutorial: Making a "guide" on how to implement GroupBy in Spidermonkey following TC39 spec

BranchesTags
Open more actions menu

Latest commit

 

History

82 Commits
82 Commits

Folders and files

NameName
Last commit message
Last commit date
Modules
Modules
 
 
Specification
Specification
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 

Repository files navigation

Implementing a JavaScript feature in SpiderMonkey

This is a tutorial on how to implement a TC39 proposal Array Grouping in the SpiderMonkey JavaScript engine. We explain here how to read the proposal specification and create the implementation which is compliant to the specification. The implementation will be mostly written in self-hosted JavaScript, with a tiny bit of C++.

This tutorial presents an implementation of the proposal as of October 2021. Though somewhat significant changes have been made to the proposal since then, the ideas and concepts presented in the current tutorial are still valid, and can be applied to implement other JavaScript proposals which deal with (simple) API changes.

What you will learn

This tutorial will give an introduction on how to:

  • read the ECMA-262 language specification
  • implement a TC39 proposal in SpiderMonkey
  • test a TC39 proposal with the Test262 test suite

Table of Contents

1. Onboarding and Getting to Know the Tools

2. Introduction to EcmaScript!

3. Starting the implementation

4. Testing during implementation

5. Separating space & Monkey-Patching!

6. Implementing Array Grouping

7. Continuation and optimization

8. Test262

9. Polish and Cleanup

For teachers

This tutorial can be taught as a university course. More details coming soon.

Authors

This tutorial is a result of a project originally implemented in Fall 2021 by Rolf Martin Glomsrud and Sigurd Setså within a project course at the University of Bergen, Norway, supervised by Yulia Startsev (Mozilla), Mikhail Barash (University of Bergen), and Noeska Smit (University of Bergen).

In Fall 2022, Rolf Martin Glomsrud (University of Bergen), together with Mikhail Barash (University of Bergen), have written this tutorial, and Daniel Liland (University of Bergen) has followed the tutorial to implement the feature and provided feedback on the tutorial structure and contents.

The tutorial can be cited as:

R. M. Glomsrud, D. Liland, M. Barash. Implementing a JavaScript feature in SpiderMonkey (a tutorial). 2022.

Feedback

Do not hesitate to contact us, or leave a pull request, if you have any feedback, corrections, or other comments.

About

Making a "guide" on how to implement GroupBy in Spidermonkey following TC39 spec

Resources

Readme
GPL-3.0 license
Activity
Custom properties

Stars

17 stars

Watchers

4 watching

Forks

1 fork
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.