ECMAScript: member of Ecma International since 2021
WebAssembly: recently joined the Community Group
✅ We appreciate participation in standards and open-source work.
UiB: Implementation Work
Project Course: specialized for a small group of 2—5 students, who are mentored by industry professionals over ~12 weeks
Array Grouping
Upsert
Joint Iteration
Temporal
Signals
Thank you to the mentors!
Aapo Alasuutari,
Eemeli Aro,
Shane F. Carr,
Luca Casonato,
Philip Chimento,
Ashley Claymore,
Daniel Ehrenberg,
Jonathan Kuperman,
Kevin Ness,
Daniel Minor,
Nicolò Ribaudo,
Justin Ridgewell,
Yulia Startsev,
Bryan Thrall,
Rich Waldron
Elsewhere
Web Browser Engineering (by Pavel Panchekha & Chris Harrelson)
University of Utah
University of Washington
HAW Hamburg
Learning objectives are different.
UiB: Skills Acquired
Deep technical understanding of fragments of non-trivial codebases
Insight into collaborative and iterative nature of PL design
Teamwork, coordination in a distributed environment
Professional communication (JavaZone, Web Engines Hack Fest, local meetups in Norway)
Knowledge transfer
UiB: Contributions
Tests
Implementations in engines
Tutorials & talks
Co-authoring changes to a proposal spec using ecmarkup
Co-authoring changes to a proposal design
Scientific research on proposals
Still to explore
Reviewing proposals/spec
Presenting at committee meetings
Contributions to non-API proposals
Designing/authoring a proposal
...
UiB: Other Projects Around TC39
TC39 Minutes Explorer
Structural Search and Replace for showcasing syntactic proposals
Analysis of Process Documents
Categorization of TC39 proposals
Sources of feedback that TC39 uses
...
Most of these done under the auspices of TC39-TG5
UiB: Scientific Research on TC39
Meta-tool for specifying design spaces (case study: Records & Tuples)
Rocq mechanization of a fragment of Temporal → found minor inconsistencies
Rocq mechanization of Signals → establishing invariants
Agda mechanization of JS Modules semantics → establishing invariants
Language workbench for the ECMA-262 spec
...
TC39-TG5
Task Group on Experiments in Programming Language Standardization
Scope: To provide a forum for the discussion, development and dissemination of research work on the standardization of ECMAScript and related technologies.
https://github.com/tc39/tg5
TG5 & UCSD
Evaluating usability and effectiveness of MessageFormat 2.0 through a think-aloud study with software engineers and translators
Discussion
How does one connect students with standards groups?
How much involvement is needed from mentors, and how do we make that sustainable?
What are the incentives for standards groups and universities to participate?
What kind of contributions can we expect students to make, and how scalable this could be?
What kind of course structure supports this kind of work?
Summary & Next Steps
➡️ A document describing possible types of student contributions?