Squeak is a highly portable, open-source Smalltalk with powerful multimedia facilities. Squeak is the vehicle for a wide range of projects from educational platforms to commercial web application development.
Noteworthy aspects of Squeak include:
Every release includes the complete source code for everything, including development tools.
Major computing platforms supported include most versions of Windows including CE/PocketPC, MacOS, Linux/Unix, OS/2 Warp, Acorn RiscOS, and even a bare chip (the Mitsubishi M32R/D).
Squeak is used to enhance and amplify learning by utilizing new ways to teach children powerful ideas about math and science. One successful environment, Etoys, enables children to learn by building, playing and simulating the physical world. Etoys extends the experience via a simple and powerful user interface that allows children to author and access everything around them.
What is Squeak?
Squeak is based on Smalltalk which was created more than 35 years ago. Smalltalk defined the term object orientation and is the first language in which everything is built from objects. Smalltalk is deeply inspired by ideas from Simula, Sketchpad and Lisp.
Even today, Smalltalk sets the bar for object oriented dynamically strongly typed interactive languages and environments. Unlike the standard static, file-based approach of other languages such as Ruby or Python, Squeak offers a true uniform fully reflective environment - real live objects. In this environment, when a change is made to an object, its behavior changes immediately without having to restart the system. You can even modify or create objects while the application is running.
Squeak includes class libraries and virtual machine plugins for advanced multimedia including anti-aliased 2D, accelerated 3D, real-time sound and music synthesis, MPEG2 video and much more. In addition, Squeak has one of the most advanced fully reflective development environments ever created with over 600 addon packages available for single click download and installation.
What is Cool about Squeak
Squeak stands alone as a practical environment in which a developer, researcher, professor, or motivated student can examine source code for every part of the system, including graphics primitives and the virtual machine itself. One can make changes immediately and without needing to see or deal with any language other than Smalltalk.
Our diverse and very active community includes teachers, students, business application developers, researchers, music performers, interactive media artists, web developers and many others. Those individuals use Squeak for a wide variety of computing tasks, ranging from child education to innovative research in computer science, or the creation of advanced dynamic web sites using the highly acclaimed continuation based Seaside framework.
Squeak runs bit-identical images across its entire portability base, greatly facilitating collaboration in diverse environments. Any image file will run on any interpreter even if it was saved on completely different hardware, with a completely different OS (or no OS at all!).
A Brief History of Squeak
Squeak began, very simply, with the needs of a research group at Apple. The goal was to build a system using a language as expressive and immediate as Smalltalk to pursue various application goals such as prototypical educational software, user interface experiments and another run at the Dynabook concept. The core team behind Squeak includes Dan Ingalls, Alan Kay, Ted Kaehler, and Scott Wallace. Their work has attracted many of the best and most experienced Smalltalk programmers and implementers in the world.
Smalltalk is simple, terse and consistent. Everything is an object, and things get done by sending messages to objects. Everything in the class library is available right at your finger tips. You can execute code and inspect the results right away. Smalltalk gives you complete freedom to explore and learn. Once you break away from the static file-based programming heritage, Smalltalk is much easier to read, enhance and maintain.
The Dynabook was conceived by Alan Kay as "a portable interactive personal computer, as accessible as a book." The Dynabook would be linked to the internet and offer users a personal dynamic media environment. Dynabook can be viewed as a potential tool that can amplify learning and thinking for children of all ages. Dan Ingalls has envisioned "a system as immediate and tactile as a sketch pad, in which you can effortlessly mingle writing, drawing, painting, and all the structured leverage of computer science. Moverover, imagine that every aspect of that system is described in itself and equally amenable to examination and composition." In short, a personal computing environment that could be programmed by "the rest of us."
The Squeak community is dedicated, diverse and highly experienced. If you have questions or want to exchange information and ideas, you are invited to join the the Squeak community and have fun!
What it is not
The Squeak Smalltalk system bears no relation to the "Squeak" language designed by Rob Pike and Luca Cardelli in 1985, nor to its successor, "Newsqueak".