Skip to main content


Showing posts from 2021

One year of presentations

With the latest uploads, we have now reached one full year of published UKSTUG presentations. These cover most of the Smalltalk dialects and a wide range of topics. You can check out all the presentations on Vimeo . Many thanks to all the presenters, and to everyone who attended the meetings!

Variables in Pharo - Wednesday, August 25th

The next meeting of the UK Smalltalk User Group will be on Wednesday, August 25th. Marcus Denker will talk about Variables in Pharo. We like to say that “Everything is an Object” in Smalltalk. This is true in many cases: Classes, methods, even the execution stack are reflectively available as objects. This talk shows how this idea can be extended to Variables and how Pharo implements first-class Variables for Globals, instance Variables, Class Variables, and even temporary variables. This presentation explores the Variable hierarchy, shows how variables simplify the compiler and how the reflective API provided by variables is used by the debugger. In a hands-on tutorial, we extend the language by defining new kinds of Variables. Marcus is a permanent researcher at INRIA Lille - Nord Europe . Before, he was a postdoc at the PLEIAD lab/DCC University of Chile and the Software Composition Group, University of Bern. His research focuses on reflection and meta-programming for dynamic langu

Self - Wednesday 28th July 2021

The next meeting of the UK Smalltalk User Group will be on Wednesday, July 30th. Russell Allen will talk to us about Self . Dating back to the late 1980s, Self is a prototype based programming language and environment in the broader Smalltalk family. Although Self has always been a niche research system, its influence can still be seen in areas as diverse as the fast VMs of Java and Javascript, in the prototype semantics of Javascript, and in the Morphic user interface used by Squeak, Pharo and Cuis. Russell Allen has a background in law and computers and first came across Self in the late 1990s. Around 2008 he helped get Self running on Linux x86, set up the Self website and GitHub account, and for the last decade or so he has been helping keep Self as a project alive. In this talk, Russell will demonstrate Self as a running system, including the object semantics, language, and the multi-user Morphic development environment. he’ll talk about the current status of the project and the

LiveTyping - Wednesday, June 30th

 The next meeting of the UK Smalltalk User Group will be on Wednesday, June 30th.   Hernan Wilkinson will talk about his LiveTyping project. Currently, almost all mainstream dynamically typed languages support type annotation a la Strongtalk. Python calls it "type hints", TypeScript is JavaScript+type annotations, PHP calls it "type declarations" and Ruby does it through a tool called Sorbet. All of them annotate the types in the source code and it is the programmer who must write and maintain the annotation. In all cases, it is not mandatory for the system to correctly type check for it to run. LiveTyping is a type system proposal for Smalltalk, that seeks similar objectives but implemented in a different way. First, it is the environment itself that collects and maintains the types based on the execution of the system, not the programmer. Second, the types are not interleaved in the source code, thus maintaining the syntax and simplicity of the language. And fin

Craig Latta on Caffeine - Wednesday, May 26th

  The next meeting of the UK Smalltalk User Group will be on Wednesday, May 26th. Caffeine is a livecoded integration of the SqueakJS Smalltalkvirtual machine with the Web platform and its many frameworks. Craig Latta will show the current state of Caffeine development through live manipulation and combination of those frameworks. The primary vehicle is a Caffeine app called Worldly, combining the A-Frame VR framework, screen-sharing, and the Chrome Debugging Protocol into an immersive virtual-reality workspace. Craig Latta is a livecoding composer from California. He studied music at Berkeley, where he learned Smalltalk as an improvisation practice. He has worked as a research computer scientist at Atari Games, IBM's Watson lab, and Lam Research. In 2016 he began combining Smalltalk technologies with the Web platform, with an emphasis on spatial computing. He is currently exploring spatial audio for immersive workspaces. Given the current COVID-19 restrictions, this will be an o

Pharo 9: A giant leap - Wednesday, April 28th

The next meeting of the UK Smalltalk User Group will be on Wednesday, April 28th. Esteban Lorenzano will give us an update on Pharo : What's new? What is updated? What remains? This talk will present (and show working!) the Pharo 9 roadmap and principal changes made to Pharo since the release of the previous version. Esteban studied Computer Sciences at Universidad de Buenos Aires, and worked since 1994 in many object-oriented and low-level technologies in different software companies, serving in various positions from junior programmer to senior architect. In 2007 he co-founded Smallworks to offer Pharo-based agile development projects. Since 2012 he dedicated full time to developing the Pharo code and community. He works for the Pharo Consortium in Lille, France, as lead developer for Pharo and being responsible with the coordination of new releases and the implementation and maintenance of several Pharo libraries. Given the current COVID-19 restrictions, this will be an online

Vector Graphics in Cuis Smalltalk - Wednesday 31st March

The next meeting of the UK Smalltalk User Group will be on Wednesday, March 31st.   In this meeting, Juan Vuletich will present a Vector Graphic implementation in Cuis Smalltalk. Graphics for interactive software have traditionally been constrained for performance reasons. The consequence is that most software has serious trouble adapting to higher resolution screens, requires platform specific widget kits, provides limited functionality, and has sub optimal visual quality. But improvements in computing power over the last couple of decades enable a brighter future: Cuis Smalltalk provides a VectorGraphics based implementation of the Morphic UI framework that addresses all these issues. Juan Vuletich is a long standing member of the Open Source Smalltalk community. He started Cuis Smalltalk 12 years ago and has led it ever since. He has been contributing kernel code to Squeak and the Squeak VM for over 20 years. He holds an Ms.Sc. in Computer Science from the University of Buenos Air

Amber with Silk - Wednesday, February 24th

 The next meeting of the UK Smalltalk User Group will be on Wednesday, February 24th.   Christian Haider will guide us in a tour of the Amber dialect of Smalltalk and its Silk web framework. In his own words... Amber , created by Nicolas Petton, is a Smalltalk implemented in JavaScript running in a web browser. Silk , written by the Amber maintainer Herby Vojčík, is a web framework in Amber.    I was looking for a good solution for the web for a long time. At the last ESUG, I was bugging everybody about a Smalltalk in the browser, because I decided to redo the frontend of my current project in Smalltalk instead of JavaScript. There were some developments, but only Amber was available. So I tried it for real on a little side project ( sources ) to see if this route is viable - spoiler: it is!   Silk, the web framework, caught my attention and I fell in love with it. Silk is very simple, straight forward and powerful, just the properties I love Smalltalk for. A Silk is basically a faca

A Bare-Metal Smalltalk-80 System for the Raspberry Pi - Wednesday, January 27th

The next meeting of the UK Smalltalk User Group will be on Wednesday, January 27th. For this presentation, guest speaker Michael Engel will bring us back to basics with a bare-metal Smalltalk-80 system for the Raspberry Pi. In 2020, the Xerox PARC research laboratory celebrated its 50th anniversary. One of the most important developments coming out of PARC is the Smalltalk system, which integrates a programming language, operating system and graphical user interface. Today, most of the Smalltalk systems run in hosted mode on a conventional operating system. This contradicts Dan Ingalls' idea that "an operating system is a collection of things that don't fit inside a language; there shouldn't be one". Accordingly, original Smalltalk systems, e.g. for the Alto workstation, ran on the bare metal of the computer. In this talk, we will discuss an approach to create a bare-metal Smalltalk-80 implementation for the Raspberry Pi , a popular family of ARM-based systems. In