Wednesday, April 30, 2014

Pharo 3.0 is out!

Finally Pharo 3.0 release is pushed out of the door.

The new shiny Pharo 3.0:
 - includes many new enhancements
 - includes many contributions and fixes as this visualization proves
 - together with a new website 

Also the config browser is filled with many projects to load, many more are available on SmalltalkHub, GitHub and SqueakSource

Try it out!

...and some cool Smalltalk history

on message names like select, reject and collect: explained by Göran.

MountainWest RubyConf 2014 - But Really, You Should Learn Smalltalk

This demo only scratched the surface of Smalltalk ... but may be Ruby developers get a glimpse of it:

VNA Format Exporter for Pharo (for visualizations)

Read more about this.

Running Squeak smalltalk on the BeagleBone

A quick introduction to running Squeak Smalltalk on the BeagleBone


BookOfTrees with CodeCity

The "The Book of Trees: Visualizing Branches of Knowledge" also includes also the CodeCity tool. Nice!


If you follow the Squeak and Pharo development yoou may know that there is a package called "FFI". This package provides a foreign function interface so you can call external modules on your operating system like Windows, Linux and Mac. So you were able to call external shared libraries, for instance a DLL written in C. FFI was originally written by Andreas Raab.

After FFI there was another package called "Alien", designed and implemented by Eliot Miranda which had additional support for callback.

After all that there was a new external interface implemented by Igor Stasenko for Pharo called NativeBoost, that not only allows to call external functions but if you like directly generate native assembler code using the AsmJIT port for Pharo.

While FFI was and still is a loadable and usable package in Squeak and Pharo, the newer NativeBoost (NB) package is now also part of the standard Pharo image. There will also be a chapter on NB in the upcoming Pharo Enterprise Book.

Most of this work is bound to x86 CPU architecture (I know was/is work going on to provide ARM support in AsmJit as well).

But this is just a summary of the history and current state. What is new is:

As you know new devices like the famous RaspberryPi run ARM processors. Now Douglas McPherson provided/announced initial FFI support for ARM architecture this week and the VM maintainers currently integrate.

All existing FFI tests now already pass for ARM (at least on Raspberry Pi). Really cool!

Amber Smalltalk and Enchant.js

Develop Browser games with Amber Smalltalk and the Enchant.js wrapper. You can develop/debug browser game super interactively in Amber Smalltalk.

Thursday, April 24, 2014

Inti in Pharo

Inti is a cool visualization to compare and handle instances of MessageTally.
Read more here or try the code which is on STHub.


Analysing tweets during a TV program with the help of  MapBuilder and GraphET:

Done by Arturo Zambrano via ObjectProfile.

Ansible playbook for Pharo 3.0

Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates.

There is now also an Ansible playbook to download and deploy Pharo 3 available. As Xavier Messner wrote: "Now you have no excuse to not test Pharo 3 ..."

Tuesday, April 22, 2014

Spur performance report...

Eliot progresses with Spur. Read more.


Marina - a CMS built on top of Pillar and Tide using Amber and Pharo. Not yet ready but I should look a little bit deeper.

Monday, April 21, 2014

James Robertson

This blog post is devoted to James Robertson - I was deeply saddened by the news of his passing last week.
My deepest condolences to his family and friends.

We both shared a common interest in spreading technical news on Smalltalk, dynamic languages and OOP technologies as we both devoted our technology blogs to it - often pointing to each others news items.

We first met personally in March 2000 in San Diego - as part of a group of crazy people coming together for hacking on various stuff to unify and harmonize the ST industry world with the first CampSmalltalk.

Following his example I started blogging in 2004 and over the years we exchanged a bunch of emails, comments and posts on technical topics.

I enjoyed reading his blog, was listening to every single episode of his "Industry Misinterpretations" podcast series, used his BottomFeeder aggregator, enjoyed his videos from conferences that I missed and I appreciated his short videos on how to use various technologies. James - thanks for all of that!

The amount of work and time you devoted to moving us all forward is just amazing. You will be missed!

Thursday, April 17, 2014


Mapless is a small framework for storing objects in a key->data fashion (i.e.: noSQL databases) without requiring any kind of object-data map. So far only MongoDB is supported. Read more here or on GitHub.


Aggregate is a small persistance framework with a clean API and full ACID features that uses OmniBase as backend and supports BTree-based indexing. Find more on GitHub

Versionner for Pharo 3.0

How to use the new Versionner tool in Pharo 3.0:

FontAwesome for Seaside

FontAwesome is (as you may know) an iconic font designed for the user with Twitter Bootstrap.

I now created a "FontAwesome for Seaside" project - which is a small Seaside wrapper for the FontAwesome project (using the latest version 4.0.3).

This is intended as an addition to the already available "Bootstrap for Seaside" project that I wrote and both should allow you to give your Smalltalk based web application a nice stylish look.

The project is located on STHub, there you will also find the documentation. A live demo can be found on

To try yourself load it from the Pharo 3.0 configuration browser or read the docu to see what is required.

Tuesday, April 15, 2014

AstroCloud - using Pharo Smalltalk and Roassal engine to visualize Stars and Molecular Clouds

AstroCloud is an application that uses Roassal engine (built on top of Pharo Smalltalk) to visualize astronomy images. Read more or have a look at the pictures here.

Code is on SmalltalkHub.

Thursday, April 10, 2014