Meeting Notes

Meeting notes are added when we have presentation material. Open topic meetings are not included. 

April 15, 2024 

Yanni Chiu presented a talk on "Look Ma, no database" - deploying a Seaside+Soil app in the cloud. For those keen on scaling their "super-duper" app, he covered sticky sessions via haproxy, and monitoring via a Grafana dashboard. 

Dave Mason and his students presented a progress report on Zag Smalltalk.

May 14, 2018

Matthew Ralston showed show us his work on context-less methods in Pharo/Squeak Smalltalk. 

March 12, 2018

David Buck talked about his Smalltalk game HexSolve. The HexSolve Puzzle Game is available on the Google Play Store for Android and the Apple App Store for iPhones and iPads. HexSolve allows you to slide tiles in a hexagonal board to make chains of consecutive numbers.  

May 15, 2017

Matthew Ralston talked about Slang and VMMaker, and described his project to add context-less methods to Pharo/Squeak Smalltalk.

Kruti Dave talked about programming environments for naive programmers, and described the experiment she is doing to compare block-based and flow-based programming environments on Amazon's Mechanical Turk. 

March 13, 2017

​A look at the design challenges of moving a Seaside interface into GemStone as part of a production ERP system.

Mostly discussed how the packaging of content that the old interface did had to be duplicated, and how the new multi-gem configuration works with HAProxy.  

January 9, 2017

Deeper look at PharoJS and an intro to GWT.  

November 14, 2016 

Matthew Ralston talked about his paper (PDF) on implementation challenges of various Smalltalk dialects. 

COG VM, GNU Smalltalk, Redline Smalltalk and Amber/PharoJS. And Dave Mason gave us an update of this work on PharoJS.  

September 12, 2016

This was a planning for TSUG. We discussed ways to better coordinate, like using Slack (the team name is 'TSUG', but that url was taken, so we have  

May 9, 2016

From Dave Mason: "TSUG isn't always about Smalltalk. Last night Joey talked about how his organization controls Amazon Web Services with Clojure code - I learned a lot. Then I talked about how I'm trying to get PharoJS to integrate seamlessly with Seaside to make a clean, all-Smalltalk web stack" 

March 14, 2016

We covered a number of topics: the RSA conference, Erlang, PharoJS, and the interesting future of AI. 

January 11, 2016

Dave Mason continued his talk about PharoJS, including server-side with NodeJS as well as browser-side. 

November 9, 2015

We'll took a look at Rust and Elm. And review conferences we've attended: Strange Loop and SPLASH. 

Here is a list of SPLASH videos. 


September 14, 2015

Dave Mason talked about PharoJS, which he has been working on.  It's an alternative to Amber, in 2 different ways.

Deploy javascript, debug in Smalltalk. 

July 13, 2015

Our annual patio night. As always, great weather and good conversation. 

May 11, 2015 

Dave Mason discussed his work on Amber code generation, called  Amber-Direct. 

March 9, 2015

Yanni Chiu will talked about a lightweight web development stack (TMVM), which consists of:

Teapot - a micro web framework [1]

Moustache - a popular templating engine [2]

Voyage - a small persistence framework for "mapping" to an object database

Mongo - a key/value store (a.k.a. noSQL database)

He used Pharo, and walked through some examples of each framework and end up with some kind of simple web application.


Teapot -!/~zeroflag/Teapot

Mustache -

For Voyage/MongoDB information you could look at:


For the single-sign-on (SSO) have a look at:


Here’s the shell script used to build the base image (i.e. everything needed to build my FlowerStore demo):

cp -p vm/Pharo.image .

cp -p vm/Pharo.changes .

pharo Pharo.image save tmvm-base

pharo tmvm-base.image config ConfigurationOfVoyageMongo --install=stable pharo tmvm-base.image config ConfigurationOfMustache --install=stable pharo tmvm-base.image config ConfigurationOfTeapot --install=stable pharo tmvm-base.image config ConfigurationOfZincHTTPComponents --install=stable --group=SSO pharo tmvm-base.image save tmvm #pharo tmvm.image eval Gofer new directory: "'`pwd`/repo/'; package: 'FlowerStore'; load. Smalltalk snapshot: true andQuit: true." 

January 12, 2105

Adam Spitz talked the immutable-data-structure (and other Clojure/Haskell-ish kinds of things) library that he wrote for Smalltalk.

See links for more details...

The library:!/~TorontoSmalltalk/Immutable/

The Value of Values, by Rich Hickey (the Clojure guy) 

Explains why you would want to program with immutable stuff?

Functional Reactive Programming in Elm, by Evan Czaplicki 

Shows a system for doing live reactive programs in a functional way - only peripherally related to the stuff I demoed, but it's really cool. 

The Toronto Smalltalk User Group started in 1992. Older notes are outdated.