Hi All,
yesterday I released version 1.0 of SqueakJS, exactly 7 years after my first public announcement on December 20, 2013. 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 |
_,,,^..^,,,_ (phone) On Dec 21, 2020, at 9:32 PM, Vanessa Freudenberg <[hidden email]> wrote:
|
In reply to this post by codefrau
Vanessa, On Mon, Dec 21, 2020 at 09:32:03PM -0800, Vanessa Freudenberg wrote: > > 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/ > What a nice surprise for the holidays. Thank you!!! > 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. > Shortcuts for switching back and forth in a trunk image: CompiledCode useSista: true CompiledCode useSista: false Dave > 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 |
In reply to this post by Eliot Miranda-2
On Tue, Dec 22, 2020 at 12:41:05AM -0800, Eliot Miranda wrote: > > > > Help is very welcome at https://github.com/codefrau/SqueakJS > > We have an effort crisis with the execution machinery. You are asking > did help. I am asking for help. We have at least four different Squeak > vm efforts. Little mutual support. Little community involvement. Nothing > new, but I do find this a serious problem. I would prefer to think that the glass is half full. Maybe we don't have enough people, but I believe that the various efforts are complimentary. It is quite remarkable to see the results as various projects push the limits of extreme performance and extreme portability. The only thing that makes me sad about this is that we do not have a way to pursue the Sista/Scorch opportunities. I understand this topic just barely enough to recognize that it is innovative and important. I don't have any competence in the area at all, but I really do hope that more can be done to move these ideas forward. > > Thank you for tolerating my gloom in this holiday season. > Gloom is something of a holiday tradtion ;-) Dave |
In reply to this post by Eliot Miranda-2
Hi Eliot-- > We have at least four different Squeak vm efforts. I think JS is a significant platform which, for now, doesn't fit the concept of platform, execution artifact, and how that artifact is built that we use with the other platforms. (I'm keen to make things converge a bit with WebAssembly.) It's a worthy additional front, even though the other fronts are understaffed. And JS is significant for both the reach it gives our applications, and the large audience of developers we can interest in JS/Smalltalk hybrids. > We have an effort crisis with the execution machinery. You are asking > for help. I am asking for help... Little mutual support. What additional mutual support do you think there could be? > Little community involvement. I can't let that pass without noting that I'm involved and enthusiastic. :) > Nothing new, but I do find this a serious problem. Thank you for > tolerating my gloom in this holiday season. It's okay, let's turn that gloom into a plan! -C -- Craig Latta :: research computer scientist Black Page Digital :: Berkeley, California 663137D7940BF5C0AFC 1349FB2ADA32C4D5314CE |
In reply to this post by Eliot Miranda-2
On Tue, Dec 22, 2020 at 12:41 AM Eliot Miranda <[hidden email]> wrote:
It's not a zero-sum game, and there's no one-size-fits-all. People are passionate about different things, especially if they do it in their spare time. The people helping me with the JavaScript stuff are not the same people interested in working on the main VM. And sometimes there is mutual support, like when Fabio implemented Sista bytecodes and FullClosures for SqueakJS right after he had done it in Java for TruffleSqueak. So, cheers to a diverse community! ❤️🧡💛💚💙💜🤎🖤 Vanessa |
(tangent) > The people helping me with the JavaScript stuff are not the same > people interested in working on the main VM. Must raise my hand again here... I'm an exception. I want to be able to demo my apps on all platforms, and teach the audience how to maintain the whole thing. Also, my apps use features that require me to dig into the VM on all platforms (e.g., remote messaging and instrumented garbage collection). -C -- Craig Latta :: research computer scientist Black Page Digital :: Berkeley, California 663137D7940BF5C0AFC 1349FB2ADA32C4D5314CE |
On Tue, Dec 22, 2020 at 4:53 PM Craig Latta <[hidden email]> wrote:
Which is awesome! As I wrote, "sometimes there is mutual support" :) Vanessa |
Free forum by Nabble | Edit this page |