Squeak goes to Mars

8 January, 2009


Esteban Lorenzano gave Squeakers on Mac OS X a nice little Christmas present to see out 2008, with the release of Mars, an MVC framework for Squeak built using Cocoa. Mars is a plugin, and will run in any fork of Squeak, and as you can see above, is integrated with OmniBrowser.

Esteban notes that one of his main objectives in developing Mars is to keep it small and simple, in order to allow it to be executed in small environments such as the iPhone, (using John McIntosh’s new VM and Edgar de Cleene’s SqueakLightII minimal images).

Mars is MIT licensed, and can be downloaded from the Mars homepage, which also has posts following the progress of Esteban’s work. Esteban adds that Mars is still in the pre-alpha stage, and he looks forward to bug reports, feature requests, comments, and of course, code.


Chris Muller has released a thoroughly updated and documented version of his user interface framework Maui. Chris has described Maui as a “naked objects” Morphic-based UI builder that allows rapid UI creation based on object-message composition.

Maui includes a number of light satellite frameworks that supply various application services like documents, object-search, background process management with progress monitoring. It also provides a number of tools which allow applications to be synthesized quickly, without the need to write any user-interface code.

Chris has written a fifty page document describing Maui and giving examples of how to use it to build user interfaces for complex applications. In this document he also discusses future work for Maui, including the tantalising possibility of extending it to support the development of web applications.

Aliens coming to Squeak

8 December, 2008

Aliens approaching Squeak

John McIntosh has ported Newspeak‘s Aliens FFI implementation to Squeak. John notes that the port is in its early days, and more work and support will be needed to implement Aliens support across the full range of Squeak platforms.

As a result of this interest in Aliens, Gilad Bracha has written a post giving an overview of Aliens, the thinking that went into it, and how it works. FFI allows a programming language to make use of services written in another language, and Gilad suggests that the lack of a standard, fully-featured FFI has been an ongoing problem for Smalltalk developers. In particular, John writes that “Squeak VM’S existing FFI has been found to be buggy bloated and slow” (though see Andreas’ comments on this below).

John’s code, under the Apache licence, is available at http://www.squeaksource.com/Alien.html, and more information on his implementation can be found at the Alien swiki page.


Germán Arduino writes with news of a very interesting multimedia application his company has been developing for the Spanish state of Extremadura. The application consists of a number of units, each developed in Squeak using the multimedia-application framework FMA, originally developed by Diego Gómez Deck. The application will be available in Spanish, English and Portuguese, and is intended to be used by visitors to the region. It includes a variety of games, puzzles and quizzes to help the user test their understanding.

Germán notes that, as usual with all the Extremadura projects, the software is open sourced and is available to download from Squeaksource, under the name Albaplata project.

Germán’s post on the project has more information and screenshots.

Monticello 2 podcast

4 November, 2008

Monticello 2

As we mentioned recently, Colin Putney has been working on Monticello 2, a ground-up rewrite of the distributed optimistic concurrent versioning system for Squeak code written by Avi Bryant and Colin Putney with contributions from many members of the Squeak community. This version offers a new, more flexible and more performant versioning engine, as well as many improved features.

James Robertson of Cincom recently spoke to Colin on his Industry Misinterpretations podcast, where they discussed the changes in the new version, and how these would help developers to maintain and share code. The podcast is available here.

Smalltalk on Eclipse

31 October, 2008

Having seemingly started to lose interest in Smalltalk when it sold off its VisualAge for Smalltalk business to Instantiations, it looks like IBM is now keen to develop its own Smalltalk IDE. The IBM Smalltalk Tools Development Team is working to support Smalltalk in Eclipse. They’re working with a strong understanding of Eclipse and ENVY Smalltalk, and with support from the Instantiations team, and seem to be making great progress: the screenshot above shows a class browser perspective in Eclipse.

Although the product is still only available internally, the team are sharing their experiences in developing what they’re calling “WRATH”, having presented updates at EclipseCon and Smalltalk Solutions, and talking to James Robertson on the Industry Misinterpretations podcast.

Hernán Morales Durand recently announced a new tool he has developed, which allows developers to review the dependencies between the classes within their applications. His Dependency Browser includes an OmniBrowser interface (as shown above) allowing you to review and edit those dependencies.

Hernán is continuing to work on the tool, and is looking at extending the functionality, and the possibility of displaying the graph of the dependencies using tools such as GraphViz.

Anyone interested in this approach should also be aware of the MudPie and Moose projects.

Michael Perscheid and his colleagues in the Software Architecture Group of the Hasso-Plattner-Institut have just announced the release of SqueakSVN, a tool to give Squeak access to the version control capabilities offered by Subversion, the open-source revision control system. This will allow Squeak developers take advantage of the benefits of Subversion’s growing popularity and support, while remaining within the Squeak browser environment.

SqueakSVN supports repositories using the http, file and svn protocols, but there is currently no support for https. There are more details at the SqueakSVN project home page, including a video of SqueakSVN in use.

The new package was developed in co-operation with CollabNet, the primary corporate sponsor of Subversion.


Michael Rueger and John MacIntosh are proud to announce that their Squeak iPhone/Touch port is now available for download. The source code, along with installation instructions and other useful resources, is available at a new website: http://isqueak.org.

As had been discussed earlier, Michael notes that due to the legal requirements of the Apple Developer agreement at this time, they cannot distribute a fully functional Squeak VM via the Apple Store. However Licenced iPhone developers can deploy the VM as an Ad Hoc VM for testing to a limited number of devices.

In addition, anyone who has access to the Apple SDK can compile and run the port in the iPhone emulator. 

Michael and John would like to thank ESUG for sponsoring their work.

Trygve Reenskaug wrote to the Squeak dev mailing list to announce the release of BabyIDE, an IDE which which runs on Squeak Smalltalk, and is based on his exploration of a new development paradigm, called DCI. The aim of the DCI (Data-Context-Interaction) paradigm is to minimise any gaps between the programmer’s mental model of the program and the program that is actually stored and executed in the computer, by presenting system operations as networks of communicating objects.

Trygve, who is based at the Department of Informatics at the University of Oslo, has written a detailed overview (pdf) of the thinking behind his work on BabyIDE and BabyUML.