While thinking about logging this morning, I ended up separating out subroutines into four new modules: Custom.pm, Grammar.pm, Help.pm, and Bunch.pm. Subroutines in these modules reside in the root namespace. The only change in namespace is that command-related subs under ::Text are now in Grammar.pm in the root namespace. Core_subs.pl, leftover from when all source code was in a single file, is gone. The shouldn't be any changes in Nama's behavior. Another area I was looking at this morning at what it would take for Nama to provide an OSC interface. I see that CPAN has couple of modules for OSC. Net::LibLO looks promising. Nama's command grammar could be re-used pretty much as is. The "only" difference would be that commands would return a string, instead of printing to STDOUT. That is something already under consideration for logging purposes. Note that Nama has nearly 900 statements printing to STDOUT! Best, -- Joel Roth