[ANN] SqueakJS 1.0

VF
Vanessa Freudenberg
Tue, Dec 22, 2020 5:32 AM

Hi All,

yesterday I released version 1.0 of SqueakJS, exactly 7 years after my
first public announcement on December 20, 2013.

https://squeak.js.org/

Arguably I should have done this back in 2016 when it could run Spur
images. What got it over the last hump was Fabio's interpreter for Sista
bytecodes and Erik's refactoring for Node.js.

SqueakJS is now the most compatible Squeak VM: it can run pre-release
images from 1996 as well as the latest Squeak 6.0 trunk image.

For production, you should still use non-Sista images, because no JIT has
been implemented yet.

A big Thank You to all the contributors over the years, and to Dan Ingalls
for the inspiration, and funding the initial development.

There are still many things to work on:

  • a simple JIT for Sista bytecode to bring its speed at least up to par
    with its pre-Sista speed
  • a "real" JIT with context mapping (keeping temps in JS vars rather than
    on the stack) and send optimizations (mapping sends to JS function
    invocations)
  • 64 bit support for pre-Spur images
  • big-endian support for 64 bit images

Help is very welcome at https://github.com/codefrau/SqueakJS

Happy Holidays to Everyone!
Vanessa

Hi All, yesterday I released version 1.0 of SqueakJS, exactly 7 years after my first public announcement on December 20, 2013. https://squeak.js.org/ Arguably I should have done this back in 2016 when it could run Spur images. What got it over the last hump was Fabio's interpreter for Sista bytecodes and Erik's refactoring for Node.js. SqueakJS is now the most compatible Squeak VM: it can run pre-release images from 1996 as well as the latest Squeak 6.0 trunk image. For production, you should still use non-Sista images, because no JIT has been implemented yet. A big Thank You to all the contributors over the years, and to Dan Ingalls for the inspiration, and funding the initial development. There are still many things to work on: - a simple JIT for Sista bytecode to bring its speed at least up to par with its pre-Sista speed - a "real" JIT with context mapping (keeping temps in JS vars rather than on the stack) and send optimizations (mapping sends to JS function invocations) - 64 bit support for pre-Spur images - big-endian support for 64 bit images Help is very welcome at https://github.com/codefrau/SqueakJS Happy Holidays to Everyone! Vanessa