A new version of the open source version of Smalltalk, Pharo has been released, representing a major improvement as the result of the efforts of over 80 contributors. Pharo is also migrating to a new website.
Pharo, describes itself as "a clean, innovative, open-source Smalltalk-inspired environment" comprising a programming language and a core library. Its initial release was in 2008 and Pharo 3.0 was released on April 30, 2014.
Pharo is based on Smalltalk and shares its characteristics.
Everything in the language is an object, in the sense of object-oriented programming. It is reflexive in that a program can modify its internal properties and behaviors at runtime. It is dynamically typed; inheritance is simple; memory management is automatic via a garbage collector and its syntax is very simple and small.
There are two support organizations for Pharo. It has a consortium for companies, the goal of which is to build an umbrella structure to foster sustainable business around Pharo; and an association for individuals, the idea behind which is that even a single person can make an impact when they group together. In thanking members of the community for their contributions, the announcement of Pharo 3.0 lists around 80 names.
This this video Kilon Alios introduces Pharo as a modern implementation of the highly object-oriented Smalltalk - a programming language together with a development environment and a general environment akin to a virtual machine. He presents a Hello World to show how simple is - you create an object and you send a message - and points out that it has a lot of objects and a lot of methods:
The announcement of the new release uses a visualization to indicate just how much work has gone into it:
Pharo is improving on many fronts. Just take a look at the code city of Pharo (built with Pharo for Pharo). Every building is a class, and the red bricks represent the modified methods in Pharo 3.0.
In thanking members of the community for their contributions to the release it lists around 80 names.
For anyone who already uses Pharo the highlights of Version 3.0 are as follows:
The new modular Opal compiler is now the default compiler used in the system.
The Athens vector graphics canvas is now integrated and it supports Cairo rendering on all platforms.
Many tools have been rewritten using Spec, a new framework for building user interfaces.
Versionner and Kommiter are two of the new development tools.
RPackage, a new package mechanism got enhanced with tags and is fully integrated in the system.
The debugger model was rewritten to become modular, the inspector received a bump to support multiple views, and the Nautilus code browser supports tags, search and lot more improvements.
Morphic has seen many cleanings and improvements and the visual theme has been revamped.
The announcement concludes:
Pharo 3.0 is the largest step we took since we started. Yet, it’s just a step. Expect more. Much more.