Your intelligent assistant for Squeak Smalltalk

Algernon is a productivity tool for Squeak Smalltalk programmers — your own personal intelligent assistant. Inspired by Quicksilver and LaunchBar, Algernon aims to make programming in Squeak faster and more keyboard centric. It provides lightning quick access to any class, method, morph, or global variable, and even gives you a quick way to evaluate Smalltalk expressions.

Press a system-wide hotkey to bring up the text box (shift-return by default). Start typing a class name, a morph's name, a category, or a global variable and a menu of matching items will show up and filter down as you type. Select an item from the list by navigating with the up/down arrows and hitting return. Algernon will perform a different action depending on the type of the item selected. For instance, if you selected a class or category, it will open it in a browser. If you selected a morph, a new instance of the morph will open. If you selected a global variable, an inspector will open. You can also perform actions other than the default by pressing tab and navigating a list of possible actions.

Algernon also lets you drill into categories and classes. Press the right arrow key when a class is selected and you will be presented with a list of methods in that class, which you can then filter down by typing. Similarly, press the right arrow key when a category is selected and you will be presented with a list of its classes. Press the left arrow key at any point to go back to global searching.

Algernon can even evaluate any one line Smalltalk expression, acting like a mini workspace. Just bring up Algernon and type = and you will enter the expression mode. Type your expression (e.g., 3+5) and hit return to print the result on the Transcript. You can see a list of other actions by pressing the tab key.

Algernon is also intelligent (it got its name for good reason). It will learn which items you open most often and will sort those higher in the list each time you use them. It will even learn which actions you like to associate with each item.

Algernon was written as a final project for CS 598, Object Oriented Programming and Design, taught by Ralph Johnson at the University of Illinois. It was co-developed by me and Joey Hagedorn. It can be loaded through SqueakMap.

Enjoy using Algernon, and we hope you love it as much as we do! ~C3


Algernon on SqueakSource
Weekly Squeak Announcement