In order to welcome Michael Lucas-Smith and Helge Nowak, who will be visiting London this month, we've moved our November monthly meeting one week earlier to Monday, November 22. Michael has offered to give us an in-depth presentation on Xtreams , a streaming framework with a new and refreshingly consistent API. From the project page: Xtreams is a generalized stream/iterator framework providing [a] simple, unified API for reading from different kinds of sources and writing into different kinds of destinations (Collections, Sockets, Files, Pipes, etc). Streams themselves can be sources or destinations as well. This allows to stack streams on top of each other. It is the stacking nature of the streams that give this framework its real power and, from what Michael and Martin (Kobetic) have shown me, you can do some pretty impressive stuff. Martin's presentation at ESUG only scratched the surface, apparently, and Michael intends to delve even deeper. There will also be plenty of ti...
WebAssembly (WASM) is an instruction format for portable high-performance code, run by a stack-based virtual machine. To Smalltalkers, this sounds very familiar. WASM is supported by the three most popular web browsers, and by other host platforms as well. Perhaps we can translate certain Smalltalk compiled methods to WASM, augmenting our support for physical processors and for livecoding the Web. For our February meeting, Craig Latta will describe his initial experiments, using the Epigram compilation framework. Craig Latta is a research computer scientist in Berkeley and Amsterdam, with interests including livecoding, music performance, and interactive visualization. The discovery of a mysteriously-placed copy of the Blue Book at university led to stints at several exploratory labs, and a pursuit of improvisation wherever code is found. This will be an online meeting from home. If you'd like to join us, please sign up in advance on the meeting's Meetup page to receive t...
Egg is a new Smalltalk dialect that was designed from scratch to incorporate some interesting features: A module system with namespaces that replaces the old-good Smalltalk global. Dynamic identifiers, which are bound lazily similarly to how methods are lazily bound. A multi-VM architecture, with different VM implementations written in C++, Pharo, JavaScript and Egg. The Egg-in-Egg VM is special in that the VM component is just another module of the system, creating what we have named Live Metacircular Runtimes (LMRs) [1]. The most interesting characteristic of LMRs in Smalltalk is that they can be developed using standard Smalltalk tools, which shorten feedback loops when doing VM development. During the talk I'll show a little bit about Egg and its LMR, and how not only VM developers get more productive when writing VMs, but also application developers can better understand what the VM does behind the scenes. [1] https://arxiv.org/abs/2312.16973 - Live Objects All Th...
Comments