Complex Values in Smalltalk

Christian Haider, Thomas J. Schrader


Distinguishing between stateful Objects and Values has long been recognized as fruitful. Values are universal context-free abstractions that prevent side-effects and allow for a functional programming style. Though programming languages provide simple Values like Integer and String, more complex Values are usually not supported. We show how to model complex structures as Values in Smalltalk, which allows for a simple and versatile implementation. The resulting Smalltalk systems are simple, clear and easily testable.


Christian Haider is using Smalltalk since 1992 and never had to leave it since. He experienced large projects as employee and consultant. Since 2002 he works in his one-man company on "smallCharts", a charting tool for newspapers. Interested in Graphics, User interfaces and systems design.

Co-author is Thomas J. Schrader (Authors of the talk: "Christian Haider and Thomas J. Schrader"): Bio: Thomas J. Schrader is a passionate software tester and polyglott developer mostly active in renovating and enhancing old software. He firstly used Smalltalk in 1994 and never wanted to stop again.