Originally Posted by
phantomotap
Not quite; by providing only a function that executes a script in scripting language XX you burden me with scripting language XX. If I don't know XX your shared library is useless.
Again, the beauty of CLI tools aren't their inherent capability but how easily one can glue the various tools together. I can use literally hundreds of different languages as glue; regardless of language I bring my knowledge of the tool itself to the table.
For comparison, my choice of languages is limited with a tool only provided as a shared library. If the shared library is written in C++ with C++ as the interface language, and this is a C++ forum, my choice is extremely limited. I have one option: use the exact compiler version as the distributer. (Before you think to deny this, as I'm sure you want to, research what happened when G++ 3.2 was first released into the wild.)
It isn't the way to write a user experience application like a browser. It is the correct approach for user or administrator tools. If a tool can't be scripted with what the user knows its useless. An administrator, even in the Windows world, will not use a tool if he knows that he has to actually be present at the computer to use a GUI every single time the tool is needed.
We like to script, so we don't have to do repetitive tasks. Computers are alarmingly good at repetitive so give me an interface that lets me make use of this ability.
Soma