Corpus ID: 61992121

Squeak by Example

  title={Squeak by Example},
  author={Oscar Nierstrasz and St{\'e}phane Ducasse and Damien Pollet},
Squeak is a modern open-source development environment for the classic Smalltalk-80 programming language. This book, intended for both students and developers, will guide you gently through the language and tools by means of a series of examples and exercises. We are making this book available to you under the Creative Commons Attribution-ShareAlike 3.0 license. You can either download the PDF for free from, or you can buy a softcover copy from (You can also pay… Expand

Figures, Tables, and Topics from this paper

Sourcetalk Smalltalk Code Repository
SqueakSource is a highly successful source code repository for Squeak based on the distributed source code management system Monticello, but it does not use Magritte and is not Web 2.0 conform. Expand
Self-contained development environments
This paper presents a framework named NopSys that allows side-stepping operating systems, and pushes functionality into the runtime of high-level programming languages, and Experimental results suggest that this approach is promising. Expand
Two decades of smalltalk VM development: live VM development through simulation tools
The VM simulation infrastructure is detailed and the experience developing and debugging the garbage collector and the just-in-time compiler (JIT) within it is reported. Expand
Hierarchical layer-based class extensions in Squeak/Smalltalk
This paper presents a hierarchical approach for dynamically scoping class extensions in dynamically-typed, class-based programming languages supporting class nesting and allows programmers to define the scope of class extensions and to reuseclass extensions in other programs. Expand
A trait based re-engineering technique for Java hierarchies
This paper tackles the problem of re-engineering a Java hierarchy into traits, by adapting to a Java setting a methodology developed by Lienhard, Ducasse, and Arévalo for a Smalltalk setting, based on Formal Concept Analysis. Expand
A Layer-based Approach to Hierarchical Dynamically-scoped Open Classes
This work presents Extension Classes, a hierarchical approach for dynamically scoping modifications in Ruby, built on top of ideas from Context-oriented Programming (COP). Expand
Bootstrapping reflective systems: The case of Pharo
A definition of bootstrap for object-oriented reflective systems is proposed, the architecture and components it should contain and the challenges it has to overcome are described, and a reference bootstrap process for a reflective system is presented. Expand
Minecraft Programable: una herramienta para aprender programación en nivel medio
The rise of smart devices which in one way or another have an internal software development (mobile phones, home appliances, cars, among others), has increased the need for programmers. Since formalExpand
Reflection as a tool for adaptability of software systems
From the viewpoint of adaptability, software systems are classified as being nonreflexive, introspective and adaptive, which means adaptive execution can be supported by adaptive language and by environment, which offers reflective possibilities. Expand
Design principles for internal domain-specific languages: a pattern catalog illustrated by Ruby
This work researchs the most important design principles of a DSL and shows how different patterns can be used to support these principles, which allows it to produce an extensive pattern catalog which is the foundation of principled approach for designing internal DSLs. Expand


Smalltalk-80: The Language and Its Implementation
This book is the first detailed account of the Smalltalk-80 system and is divided into four major parts: an overview of the concepts and syntax of the programming language, a specification of the system's functionality, and an example of the design and implementation of a moderate-size application. Expand
Test-driven Development - by example
  • K. Beck
  • Engineering, Computer Science
  • The Addison-Wesley signature series
  • 2003
Drive development with automated tests, a style of development called “Test-Driven Development” (TDD for short), which aims to dramatically reduce the defect density of code and make the subject of work crystal clear to all involved. Expand
Smalltalk best practice patterns
1. Learning a Pattern, Why Patterns Work, and the Role of Patterns Work: Reading and Development Example. Expand
Design patterns: elements of reuseable object-oriented software
The book is an introduction to the idea of design patterns in software engineering, and a catalog of twenty-three common patterns. The nice thing is, most experienced OOP designers will find outExpand
The Design Patterns Smalltalk Companion
Foreword. Preface. 1. Introduction. 2. Aha! 3. Creational Patterns. Abstract Factory (DP 87). Builder (DP 97). Factory Method (DP 107). Prototype (DP 117). Singleton (DP 127). 4. Structural Patterns.Expand
FAQ 17 Where can I find the Refactoring Browser? Bibliography Sherman R. Alpert, Kyle Brown and Bobby Woolf: The Design Patterns Smalltalk Companion
  • 1998
Inside Smalltalk (Volume 1)
Answer Put it in a method-category named * Money. Monticello gathers all methods that are in other categories named like *package and includes them in your package
    DieMorph class»new returns in the class method DieMorph class»faces:, which calls the instance method of the same name, DieMorph»faces:, setting the faces instance variable to nine
      FAQ 10 How do I generate a view of the AST of an expression? Answer Load AST from Then evaluate: (RBParser parseExpression: '3+4') explore select