Я работаю над настольным приложением для OS X, используя Ruby-Tk, и я хотел бы предоставить интерфейс Apple Events для приложения. Это означает, что приложение будет определять словарь команд AppleScript, на которые оно будет реагировать (соответствующих событиям Apple, отправляемым в приложение), и пользователи/другие приложения могут создавать сценарии для приложения Ruby-Tk с помощью команд AppleScript. Другие языки сценариев поддерживают такую функциональность — Python через библиотеку py-aemreceive по адресу http://appscript.svn.sourceforge.net/viewvc/appscript/py-aemreceive/ и Tcl через библиотеку tclAE по адресу http://tclae.sourceforge.net/. Я искал аналогичную функциональность в Ruby и ничего не нашел.
Одним из возможных механизмов является мост rubyobjc, обеспечивающий низкоуровневый интерфейс между Ruby и Objective-C, но этот драгоценный камень, похоже, мало используется и в нем крайне не хватает примеров и документации, поэтому я не уверен, что это будет плодотворный путь.
NB: MacRuby может работать, но он не совместим с Tk, поэтому MacRuby исключен. Кроме того, RubyOSA и rb-appscript — это не то, что мне нужно — они позволяют Ruby отправлять события Apple в другие приложения, а не получать их.