Add a REPL Console to Your .NET Applications
Microsoft is starting to push IronPython and IronRuby as the way for end users to customize their applications. Once such example is Microsoft Dynamics, which is using IronPython to allow state and local governments to create complex fee schedules. These are used when the business rules governing a decision are too complex to be represented by normal lookup tables and change to frequently to justify a traditional development cycle.
Since Microsoft Dynamics is a closed-source application, Microsoft is turning elsewhere for examples of how dynamic languages can allow users to customize their experience. Once such example is Witty, an open source Twitter client.
A novel feature in Witty is that it includes a REPL console. Exposing the console is incredibly simple. Simply instantiate a ConsoleWindow object, pass in the objects you want your end-users to be able to access, and display it.
var console = new ConsoleWindow();
console.MainRepl.AddExternalObject("T", twitter);
console.MainRepl.AddExternalObject("U", this);
console.Show();
You can see a screen shot of Witty with the REPL console on Jimmy Schementi’s blog. The source code for Jim Deville's REPL console is available on github.
For more on Dynamic Languages on .NET, check out the Pumping Iron video on Channel 9.
Educational Content
Concurrency in Clojure
Stuart Halloway May 17, 2013
Confessions of an Agile Addict
Ole Friis Østergaard May 16, 2013
Web Development: You're Doing It Wrong
Stefan Tilkov May 16, 2013
Programming The Feynman Way
Ben Evans May 15, 2013





Hello stranger!
You need to Register an InfoQ account or Login to post comments. But there's so much more behind being registered.Get the most out of the InfoQ experience.
Tell us what you think