Emacs Extensions for
GE Smallworld Magik Development
Screen-casts, tutorials, and productivity tools for Magik programmers who use Emacs. From tab-mode and code folding to the Magik Debugger and object inspector — explore features built by a developer, for developers.
Learn MoreNine screen-casts published between November 2010 and January 2011 — covering everything from ECB mode to the Tree Item GUI control. Read the story behind the project →
Get in Touch
Blog
Magik developers working on GE Smallworld projects spend a great deal of their day moving between code, object inspectors, and live database sessions. The…
Magik developers working with GE Smallworld often live inside Emacs for the better part of their day, and a well-tuned environment can shave hours off routine…
Magik programmers who live inside the Smallworld ecosystem spend a large slice of their day chasing exceptions. A routine load on a sw_gis!rope_world or a…
In the world of GIS development with GE Smallworld, debugging Magik sessions often means navigating a sprawling codebase where one method call can cascade…
Large Magik methods become difficult to maintain long before they become impossible to run. A method that mixes database queries, collection processing,…
A method in a Magik session at a Sydney utilities provider can easily stretch to forty or fifty lines, with parameters passed into deeply nested _if statements…
Magik development often involves a live Smallworld environment: load a method, inspect an object, query a collection, adjust a database setting, and test the…
Magik development becomes considerably faster when repetitive editor work is turned into a reliable macro. In an Emacs environment, that may mean a keyboard…
Magik code often contains repeated method declarations, slot assignments, inheritance lists, and aligned data that are tedious to edit one line at a time.…
A custom Magik completion backend can make Emacs feel considerably more capable when working with GE Smallworld code. Instead of relying on a generic word…
Core Features
Tab Mode & ECB
Quick tab switching and Emacs Code Browsing mode for navigating Magik codebases efficiently.
Magik Smeller
Code analysis tool that helps identify potential issues in Magik source files.
Code Folding
Hide/Show mode for collapsing and expanding Magik code blocks to focus on what matters.
Visual Bookmarks
Quick visual bookmarks for jumping between key locations in your Smallworld session buffers.
Object Inspector
Inspect Magik objects and display them in an Emacs Deep Print buffer for detailed examination.
Magik Debugger
Set breakpoints and monitor slots and variables directly from within Emacs.
Development Tools
Direct links between Emacs and the Smallworld Development Tools application, including Click Monitor.
Screen-casts & Tutorials
Screen-cast 1: Tab Mode, ECB & More
Covers tab-mode, ECB, Magik Smeller, code folding, visual bookmarks, pragma toggling, moving code, external editor, and MS Explorer.
Screen-cast 5: Object Inspection & Deep Print
Inspect a Magik object, prompt for an expression evaluated within a Smallworld session, and display results in a Deep Print buffer.
Screen-cast 7: Magik Debugger
Useful tools for application developers: Object Inspector and Magik Debugger with breakpoints and slot/variable monitoring.
Screen-cast 9: Tree Item GUI Control
Tree Item is a GUI control providing extensive facilities for displaying lists with rows, columns, trees, and in-place editing.