Toronto Smalltalk User Group
  • Home
  • Links
  • Meeting Notes
Meeting notes are added when we have presentation material. Open topic meetings are not included.
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 TorontoSmalltalk.slack.com). 
​
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.

Links... 
Teapot - http://smalltalkhub.com/#!/~zeroflag/Teapot
Mustache - http://norbert.hartl.name/blog/2013/10/03/mustache-templates-for-smalltalk/


For Voyage/MongoDB information you could look at:
- http://tulipemoutarde.be/2012/05/24/mongodb-with-voyage-in-pharo.html

For the single-sign-on (SSO) have a look at:
- https://github.com/svenvc/docs/blob/master/zinc/zinc-sso-paper.md

(the FlowerStore demo will be made available soon)

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 http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo30/main ConfigurationOfVoyageMongo --install=stable pharo tmvm-base.image config http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo30/main ConfigurationOfMustache --install=stable pharo tmvm-base.image config http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo30/main ConfigurationOfTeapot --install=stable pharo tmvm-base.image config http://mc.stfx.eu/ZincHTTPComponents 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:
http://smalltalkhub.com/#!/~TorontoSmalltalk/Immutable/

The Value of Values, by Rich Hickey (the Clojure guy) 
Explains why you would want to program with immutable stuff?
http://www.infoq.com/presentations/Value-Values

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.
http://www.infoq.com/presentations/elm-reactive-programming

November 10, 2014
From Milan...

I plan to start with an overview of Newspeak goals and high level features:  Network Serviced, Class Based, Message Based, Secure, Reflective, Modular, Concurrent, Optionally Typed.

Some of those features will be stated without a proof, some we will illustrate on simple examples. We will attempt to document Newspeak's lineage as a Smalltalk descendant, but also discuss the elements of Smalltalk Newspeak was designed to improve on, again on simple examples where possible. 

Time permitting, we can go into more details of improvements in the area of constructors and (removal of) global state in Newspeak as compared to Java and Smalltalk.

There are no prerequisites - but reading Gilad Bracha's Room 101 Blog history at http://gbracha.blogspot.ca/ is always a great education. Newspeak starting page is http://www.newspeaklanguage.org/

September 8, 2014
Dave Mason talked about creating Smalltalk-equivalent classes in Javascript (it's trickier than it seems). He is also just getting into Lively Kernel, which we looked at some of the internals of.
July 14, 2014
This was our annual patio night at Pauper's Pub on Bloor just east of Bathurst, and our first one organized with Meetup. Eight people attended on a nice sunny evening. 
May 12, 2014
From Adam Spitz...

Just polished up and posted the stuff we worked on at Monday's meeting:

www.smalltalkhub.com >> Immutable

Clojure-style immutable data structures for Smalltalk: HashMap, HashSet, Seq, List, Vector, Queue. Also a few simple abstractions for handling mutation in sane ways: atoms, promises, channels.

There's plenty more work left to be done, but I think it's a good start. (And it was a pleasure implementing this stuff in the Smalltalk environment! Last time I did this, it was in flat text files in a crummy language with a terrible debugger.)

Next step: hack Smalltalk's syntax to add Map and Vector literals and destructuring. Then we can ditch objects altogether. ;)

Also, Dave, you mentioned something about STM - that'd be a good addition to this library. (I implemented Atoms, but it'd be cool to have Refs with proper transactions.)

I doubt I'll have time for this stuff myself, though. If anybody wants to take over maintenance of this library, let me know - I'd be glad to hand over the password to the smalltalkhub.com repository.

I wrote this in Pharo and tried it in Squeak and it seemed to work. I'd be curious to know whether it works in other Smalltalks.
March 17, 2014
Irfan Khan presented. He talked about... 
1. Scratch/Phratch environment a little bit of background information about it. 
2. Brief talk about the course (Computational Thinking in our world) which is offered at Ryerson this term. 
3. Extensions made to Scratch/Phratch environment in order to communicate computer science behind each of these topics
    (Communications, social networks, Transportation and Medical, Robotics, location and Gps,   )
There are almost 8 labs designed for the course and he will be demonstrating them all, if time permits.

Also, Chris talked about his work to convert SqueakSource2 into a repository for TinyWiki objects to make the whole thing a kind of website builder/wiki thing.
January 13, 2014
We had planned to run a Coding Kata, where, as a group, we'd work on a trivial Smalltalk programming example. Instead we ended up having a good conversation about programming in general; more or less what a kata meeting was supposed to do.
November 11, 2013
Adam Spitz talked about Clojure, (PDF of his presentation) a dynamic programming language that targets the Java Virtual Machine, which led to discussions about function vs. object oriented programming. 

From Adam... here are a few links to talks by Rich Hickey. Three of these are the ones that I already sent to the mailing list a few months ago; the last one is about Datomic (his immutable-database-that-preserves-all-the-history). Though it’s just a high-level overview of the design rationale, plus a demo; InfoQ has other videos where he talks about the internal architecture.

  http://www.infoq.com/presentations/Value-Values
  http://www.infoq.com/presentations/Are-We-There-Yet-Rich-Hickey
  http://www.infoq.com/presentations/Simple-Made-Easy-QCon-London-2012
  http://www.infoq.com/presentations/datomic-functional-database

September 9, 2013

Chris Cunnington presented Smalltalk-72 and talked about The Early History Of Smalltalk by Alan Kay.  You can get the details from Chris' blog post.   

We also discussed GemStone's tODE, the book Structure and Interpretation of Computer Programs (why it matter), and JOSS. 

The Toronto Smalltalk User Group started in 1992. These notes start from when this web site was created.
Powered by Create your own unique website with customizable templates.