Hello,
I defined the concept of an Editable User Interface (EUI)
on www.sonic.net/~suresh/eui and illustrated it with
an extensive application
on www.vim.org/scripts/script.php?script_id=1052 .
I am now ready to modularize my work and deploy it on CPAN.
The design I have is as follows:
The essence of the work is the development of applications
that use a text editor (such as VIM) as their user
interface. This involves:
A) Development of the application modules to interface to an
abstract editor (acting as the editable user interface)
B) Development the glue that will take any specific editor
and make it act as an abstract editable user interface
C) Simple enhancement to the interface of specific editors
The actual deployment of the application will consist of
consist of code that first instantiates an abstract editable
user interface for a specific editor, and then uses this
instance as one of the agruments to instantiate the
application module. This deployment code -- which makes
the application modules work with a given editor -- will not
be part of CPAN, but would be part of <text-editor>.org.
So the modules on CPAN would be:
Result of development (A):
EUI::TMS
EUI::TMS::Configure
EUI::TMS::Send
EUI::TMS::Receive
EUI::TMS::Organize
EUI::TMS::Work
Result of development (B):
EUI::Vim
EUI::Shell (A shell is not a text editor but this
glue will allow (A) to be run from the
command line -- which can be useful
during debuging and as such too.)
Result of development (C):
EUI::VIM (adds some simple functions to the VIM
class embedded inside the Vim editor)
So I would like to register the following ten namespaces:
EUI
EUI::TMS
EUI::TMS::Configure
EUI::TMS::Send
EUI::TMS::Receive
EUI::TMS::Organize
EUI::TMS::Work
EUI::Vim
EUI::Shell
EUI::VIM
In future there could be other modules: EUI::<APP>,
EUI::<APP>::<Task>, EUI::<Type> and EUI::<EDITOR>.
So what say you? -- I welcome comments/feedback.
By the way, if you know of a script to fill out
https://pause.perl.org/pause/authenquery?ACTION=apply_mod
please point me to it. If there is no such script, I will
be attempting to write one (using WWW::Mechanize?) -- I
trust there is no danger of me messing things up on PAUSE by
doing so.
Thanks,
--Suresh