JavaScript Sealed Classes (Artifact)

Author Manuel Serrano



PDF
Thumbnail PDF

Artifact Description

DARTS.8.2.23.pdf
  • Filesize: 0.6 MB
  • 4 pages

Document Identifiers

Author Details

Manuel Serrano
  • Inria/UCA, Inria Sophia Méditerranée, 2004 route des Lucioles, Sophia Antipolis. France

Cite As Get BibTex

Manuel Serrano. JavaScript Sealed Classes (Artifact). In Special Issue of the 36th European Conference on Object-Oriented Programming (ECOOP 2022). Dagstuhl Artifacts Series (DARTS), Volume 8, Issue 2, pp. 23:1-23:4, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2022) https://doi.org/10.4230/DARTS.8.2.23

Artifact

  MD5 Sum: 8a9f211b93872e7a89f974603c7037c8 (Get MD5 Sum)

Artifact Evaluation Policy

The artifact has been evaluated as described in the ECOOP 2022 Call for Artifacts and the ACM Artifact Review and Badging Policy

Abstract

In this work, we study the JavaScript Sealed Classes, which differ from regular classes in a few ways that allow ahead-of-time (AoT) compilers to implement them more efficiently. Sealed classes are compatible with the rest of the language so that they can be combined with all other structures, including regular classes, and can be gradually integrated into existing code bases.
We present the design of the sealed classes and study their implementation in the hopc AoT compiler. We present an in-depth analysis of the speed of sealed classes compared to regular classes. To do so, we assembled a new suite of benchmarks that focuses on the efficiency of the class implementations. On this suite, we found that sealed classes provide an average speedup of 19%. The more classes and methods programs use, the greater the speedup. For the most favorable test that uses them intensively, we measured a speedup of 56%.

Subject Classification

ACM Subject Classification
  • Software and its engineering → Just-in-time compilers
  • Software and its engineering → Source code generation
  • Software and its engineering → Object oriented languages
  • Software and its engineering → Functional languages
Keywords
  • JavaScript
  • Compiler
  • Dynamic Languages
  • Classes
  • Inline caches

Metrics

  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    0
    PDF Downloads
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail