Class Search Browser for VA Smalltalk

The Classes Interface Browser is a small search tool to quickly find a Smalltalk class or one of its methods. The two inputs fields on top provide filters for class names and method names of that class. From a selected class or method, you can open a Class Browser by double-clicking. Using the list popup menus, you can navigate (superclass, subclasses…) in the class hierarchy, add a breakpoint and navigate (redefined, overridden) in the method implementation hierarchy.

Navigating Inspector for VA Smalltalk

This goodie is also known as the “Diving” inspector as it allows you to navigate through an object structure by following each variable on a double-click. The inspection depth is shown in the inspector just above the “self”. You climb up the structure by clicking on that list item. Once loaded into your image, it takes over the standard inspector but uses any dedicated inspector as its model (e.g. EtDictionaryInspector). To see that working, try inspecting “Array with: Smalltalk”.

FileBrowser for VA Smalltalk

FileBrowser is a new addition to the configuration map “Philemon Tools” , available at, for VA Smalltalk. This little but powerful tool has the following features: navigate through your local filesystem showing the contents of files (including images) file selection based on pattern matching support for custom templates for editing (see templateGroups:) configurable contents font navigation history spawn external programs associated with the selected file (e.g. starts Notepad on

Coding extensions for VisualAge for Smalltalk

The configuration map “Philemon Tools” , available at, now contains an application that enhances the source code browser in VisualAge for Smalltalk. In short, it provides the following features: code completion paste buffer (hold shift while selecting menu item “paste” to select from previous copied source) repeat edit action (like VisualWorks “again”) modifier+key combinations (see below) Control+t ifTrue:[ {selected source} ] Control+g ifFalse:[ {selected source} ] Control+Shift+( ( {selected source} ) Control+1 Browse hierachy or implementors Control+2 Browse references or senders Control+3 Show previous occurrence of selected text Control+4 Show next occurrence of selected text Control+5 Show containing Block Control+p Cycle forward through suggestions of completing method|variable|class name Control+Shift+p Cycle backward through suggestions of completing method|variable|class name F2 Format + Save F5 Save F6 Revert F7 Indent selected source F8 Un-indent selected source The code completion part is written by Erik Stel.

Importing directly from

A small but handy enhancement of the previous submitted VAStGoodies tooling, is the ability to import configuration maps from VAStGoodies directly into your library. This feature is available in the standard Configuration Maps Browser. It uses the same Envy dialog to select versions from available maps. As always as soon as one finishes a feature, a new idea pops up. What if the tool can automatically detect the recent changes available for downloaded material ?

Tracking Object instances in VisualAge for Smaltalk

InstanceCounter is a tool that can be used to watch the number of instances present in your image. It can be started from the Transcript Philemon menu or by evaluating: InstanceCountMonitor openOnClasses: #( ByteArray Process). The menu item named “Pointers 1st instance” opens the PointerFinder tool. This is a tool to find the path on which an object is referenced. It is based on an implementation in VisualWorks by Hans-Martin Mosner © 1995.

Interactive compilation for VisualAge for Smalltalk

One of my favorite features of the Cincom VisualWorks IDE is the interactive compiler error handler. When trying to save Smalltalk source that result in compilation errors, the IDE prompts the developer with a menu of suggestions to correct that error. Although the VA compiler can detect these errors obviously, the code browsers merely put the error message in the source. The application PhilemonToolCompilations has an interactive error handler that implements this behavior for the VisualAge for Smalltalk IDE.

Tooling available for VAStGoodies

Early this year, Adriaan van Os announced that wants to be the open source software repository for the VA Smalltalk community. To promote this great initiative, I proposed to create some tools that allow you to contribute to directly from your Smalltalk image. Initially, it includes an editor to edit project annotations and an uploader that takes a versioned ConfigurationMap to publish it. Future versions will enable you to download new and updated versions of projects directly into your repository.