skip to main content
10.1145/2811237.2811301acmotherconferencesArticle/Chapter ViewAbstractPublication PagesiwstConference Proceedingsconference-collections
research-article

Performance from Aligning Smalltalk & Javascript Classes

Published: 15 July 2015 Publication History

Abstract

Amber is a wonderful Smalltalk programming environment that runs on top of Javascript, including a browser-based IDE and compiler, as well as command-line support. The only challenge is that execution performance can be 1--2 orders of magnitude slower than native Javascript code. Amber-Direct is a series of modest changes to the compiler and some infrastructure classes and methods that bring most generated programs to within a factor of two of native Javascript.
The challenge we faced was maintaining a seamless integration into existing Javascript classes while maximizing fidelity to Smalltalk execution semantics.

References

[1]
Cincom VisualWorks Smalltalk. url: http://www.cincomsmalltalk.com/main/products/visualworks/.
[2]
ECMAScript 6 Rev 38 Final Draft. Apr. 2015. URL: http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts.
[3]
Gemstone/S. URL: http://gemtalksystems.com.
[4]
Adele Goldberg and David Robson. Smalltalk-80: The Language and its Implementation. Don Mills, Ontario: Addison-Wesley, 1983. ISBN: 0-201-11371-6.
[5]
Kangax Browser Compatibility. URL: https://kangax.github.io/compat-table/es6/.
[6]
Ilya Kantor. Prototypal inheritance. 2011. URL: http://javascript.info/tutorial/inheritance.
[7]
Ilya Kantor. Pseudo-classical pattern. 2011. URL: http://javascript.info/tutorial/pseudo-classical-pattern.
[8]
List of languages that compile to JS. URL: https://github.com/jashkenas/coffeescript/wiki/List-of-languages-that-compile-to-JS.
[9]
Nicholas Petton, Herbert Vojčík, et al. Amber Smalltalk. URL: http://amber-lang.net.
[10]
Pharo Smalltalk. URL: http://pharo.org.
[11]
Squeak Smalltalk. URL: http://www.squeak.org.
[12]
David Ungar and Randall B. Smith. "Self: The power of simplicity". In: SIGPLAN Not. 22.12 (Dec. 1987), pp. 227--242. ISSN: 0362-1340. URL: http://doi.acm.org/10.1145/38807.38828.
[13]
VisualAge Smalltalk. URL: http://www.instantiations.com/products/vasmalltalk/.

Cited By

View all
  • (2016)Mocks, Proxies, and Transpilation as Development Strategies for Web DevelopmentProceedings of the 11th edition of the International Workshop on Smalltalk Technologies10.1145/2991041.2991051(1-6)Online publication date: 23-Aug-2016
  1. Performance from Aligning Smalltalk & Javascript Classes

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    IWST '15: Proceedings of the International Workshop on Smalltalk Technologies
    July 2015
    79 pages
    ISBN:9781450338578
    DOI:10.1145/2811237
    • Program Chairs:
    • Jannik Laval,
    • Anne Etien
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    In-Cooperation

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 15 July 2015

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Research-article
    • Research
    • Refereed limited

    Conference

    IWST '15

    Acceptance Rates

    Overall Acceptance Rate 25 of 27 submissions, 93%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 12 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2016)Mocks, Proxies, and Transpilation as Development Strategies for Web DevelopmentProceedings of the 11th edition of the International Workshop on Smalltalk Technologies10.1145/2991041.2991051(1-6)Online publication date: 23-Aug-2016

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media