About‎ > ‎

Programming Environment


Open Cobalt uses Squeak, a modern open source development environment for the classic Smalltalk-80 programming language.  Squeak was initially developed by a group at Apple Computer and  then picked up by Walt Disney Imagineering where it was further refined for use in internal Disney projects.  Today, Squeak is a powerful open source, object-oriented, class-based, and reflective programming language where everything is an object, and where anything can change at run-time. Squeak is available for many platforms, and programs produced on one platform run bit-identically on all other platforms. The Squeak system includes code for generating a new version of the virtual machine (VM) on which it runs. It also includes a VM simulator written in itself (Squeak). For this reason, it is easily ported.

Squeak's development environment enables programmers to enjoy the capabilities of a true late bound, message sending language. Open Cobalt is therefore also a purely object-oriented system that allows for significant flexibility in its design and implementation. Open Cobalt programmers can do things like edit the source code of the 3D world from within the world itself and immediately see the result while the world is still running. The running simulation does not have to be ended, and there is no compile-link-run-debug development loop. Moreover, any part of the program can be edited while running - even down to the VM and OpenGL calls!  Open Cobalt's reliance on Squeak's generalized storage allocator and garbage collector makes it highly efficient in real-time and allows reshaping of objects to be done safely. As with Squeak, Open Cobalt supports many non-English languages and fonts such as German, Spanish, French, and Japanese.

Learning to Program in Squeak

Squeak is arguably the easiest to learn programming language out there.  The best way to begin learning it is to download the free and open book entitled Squeak by Example, which is intended for both students and developers.  The book will guide you gently through the Squeak language and environment by means of a series of examples and exercises.

The book helps you get started with A Quick Tour of Squeak and guides you through A First Application. The Smalltalk language is introduced in three chapters on Syntax in a Nutshell, Understanding Message Syntax and The Smalltalk Object Model. Development with Squeak is covered in The Squeak Programming Environment and SUnit. Several of the key classes are presented in chapters on Basic Classes, Collections, Streams and Morphic. The book concludes with chapters on Classes and Metaclasses and Frequently Asked Questions.

You can learn much more about Squeak here and here.


Open Cobalt is community-supported software.  You can connect with our community here.