I'm going to have another look at Ruby Readline implementations (#49) first.

The simplest other language approach would probably be a C extension to extend the built-in Ruby Readline module, or possibly to replace it entirely. I'm reticent to do a full rewrite, although with this, the process name thing (#41), and the sh-bang problems (#7), we're racking up quite a few things that we can't do in Ruby.