Monday, January 26, 2015


MapReduce, Hadoop, and Cincom Smalltalk

Arden Thomas knows more.


Squeak for DiamondTouch

Sebastian pointed me to  today. Have not seen this page before.

The page includes a Squeak app for DiamondTouch (DiamondTouch table is a multi-touch, interactive PC interface). From the people page it looks like Jochen “Jeff” Rick helped shaping it, I know him from his Swiki implementation and Squeak and Pharo contributions like QRCode.

He wrote several apps in Smalltalk as you can see on his page. Nice!


Microkanren for Pharo

An implementation of µKanren (an embedded Domain Specific Language for logic programming) for Pharo. The project is here (GitHub) and here (SmalltalkHub).


Pharo presentation in Mons

There is a Pharo presentation in Mons, 19.2.2015. Read more (french)


PharoCloud with PillarHub knowledge base

PharoCloud now uses own PillarHub to provide a knowledge base:

Also Pharo Launcher is part of their Pharocloud Image Store. Additionally the underlying cloud system provides support for Cairo graphics which makes it possible to run Pharo4 on it and access it via VNC.


Pharo Days 2015

will happen this week.

Friday, January 23, 2015


Dark Theme for Amber Helios IDE

The Amber Smalltalk Helios IDE also supports (similar to Pharo) a dark theme. Nice!


Smalltalk Research forum

Richard Eng (initiator of the Smalltalk Renaissance Program - SRP) will now use the Smalltalk-research forum!forum/smalltalk-research

to discuss all future SRP-related discussions. So if you want to participate in SRP go there.

Thursday, January 22, 2015



There is an online survey from Instantiations: what Smalltalk flavor do you use?

Wednesday, January 21, 2015



Grafoscopio is a mockup of a outliner interface made using Moose playgrounds. Is a learning exercise from a Smalltalk newbie but it aims to evolve to become a outliner interface for playgrounds that can be used for developing visual data narratives for open/garage/citizen science research.

A detailed description is here, video here and code here.


NBSQLite3 for Pharo, accessing RDBMS via Glorp and more Pharo persistence options

There is a new way/project to work with the SQLite3 embeddable database. While in the past there was already a SQLite wrapper project for Pharo based on FFI this new one is based on NativeBoost and also has some support for Glorp.

The project is called "NBSQLite3 for Pharo". Read more in my original announcement to get all the details.

Original binding for NativeBoost was written by Pierce Ng. After that I refactored the bits and pieces a little bit, repackages for better loading and added a ConfigurationOfNBSQLite3 to it (one can load the core independent from Glorp support, etc).
Additionally as the old version was hosted on SqueakSource3 it was also moved over to SmalltalkHub:!/~PharoExtras/NBSQLite3

The STHub project page includes some docu. Meanwhile I also fixed encoding issues between SQLite3 (UTF-8 storage format) and Pharo (Multibyte characters). The nice thing is that with SQLite as small embeddable database you just need a shared library (sqlite3.dll for Windows for example) and you can have a full relational database(s) in single files.

If you are already using Pharo 4 then you can directly install it right from the config browser. Guillermo Polito additionally now created a CI job for it on the DBXTalk CI Server.

You can use the NBSQLite3 package to directly access the relational database and send SQL commands to it. But this is very cumbersome. A better way is to use an object relational mapping framework and Smalltalk has the Glorp ORM framework for that.

If you want to use NBSQLite3 together with Glorp on Pharo4 then you should have a look at this short tutorial I wrote. Also have a look at Svens excellent article on how to use Glorp in Pharo with PostgreSQL and the various descriptions on the Glorp website.

As of today Debris (a company who also joined the Pharo consortium) made a project and code available to use different backends while still working with the Glorp interface. This project is called DebrisDB and is also hosted on SmalltalkHub. If you use it right, you can back your application by Fuel files, SIXX files, any serializer, Gemstone, or Glorp/SQL, without modifying your application code.

For sure database support for Pharo will move on in 2015 and open much more possibilities.

Side note: if you dislike relational databases you can even have a small embeddable NoSQL database with Pharo that also only requires a simple shared library to package with your app. It is called "UnQLite" and I already posted about the PUnQlite binding for Pharo. You can even use Mongo or others with Pharo. If this is an option for you do not forget to have a look at Voyage which makes persistency very easy. There is also SandstoneDB, Magma and SimplePersistence.

And not to forget that there is Gemstone allowing you to work with persistent object as if they were in the Smalltalk image.

Tuesday, January 20, 2015


invokedynamic.js and Smalltalk

Interesting talk from JSConf 2014 including Smalltalk.


RemoteAnnouncements in Pharo

There is an interesting project:!/~PharoExtras/RemoteAnnouncement to remote transfer Announcements in Pharo. Here is an extract from the docu:

RemoteAnnouncer makes it possible for RemoteAnnoucerProxy (in another image or on another machine across the network) to both publish and consume Announcements to and from the Announcer that I wrap. 

 I use the WebSocket protocol and STON serialization.

 I am remotely known by my port. I am either started as a publisher (#startPublisher) or as a consumer (#startReceiver)


Elegant Pharo code

Only a few examples how elegant Pharo code is. If you want to try yourself visit:


Smalltalk Reflections episode 8 is up - Garbage Collection

Episode 8 is on Garbage Collection.

Monday, January 19, 2015


Pong with Bret Victor like playback

See this video on Pharo and Pong


OpenStreetMap Integration

There is now an integration of OpenStreetMap in Roassal (the visualization engine for the Pharo platform). Read more.

Friday, January 16, 2015


Rewrite Tool updates

Read more or visit this blog.


Google Summer of code projects

Hernan has collected a list of Google Summer of code projects from recent years with Smalltalk:

This page is powered by Blogger. Isn't yours?