Re: why use guile?



Josh> CORBA is nice, but it can't quite serve the same purpose as an
Josh> extension language.  With CORBA, an application can export
Josh> functions, which can then be imported into external
Josh> interpreters.  But scripting languages aren't just regular
Josh> languages with some functions imported.  They also have whole
Josh> new language constructs added.  Those new constructs are
Josh> important.  Examples:

Josh> Shell Script: has two kinds of global variables: environment,
Josh> and non-environment.

Josh> Emacs Lisp: has state-saving operators like "save-excursion".

Neither of these examples is really convincing.

For instance, take the save-excursion example.  In this case, the
design of the particular feature is heavily influenced by the fact
that it is part of Emacs.  If you were designing this to be exported
via CORBA, you would not approach it the same way.  Instead, you would
take a different approach.  For instance, you might export a "view" of
a buffer.  A view would keep its own point information.  Anything that
could be done to a buffer could be done to a view, except changes to
point would not affect the parent view.  (This is just one idea.
There are other ways to expose this same functionality.)


I think any operation can be exposed via CORBA.  You just have to
approach it from a different direction.


However, I still think there's a place for extension languages even
when using CORBA.  I think an extension language is a good
implementation strategy in many cases, particularly when building
GUIs.

Tom



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]