Scripting


Subject: Scripting
From: Aaron Lehmann (aaronl@vitelus.com)
Date: Fri Jun 23 2000 - 18:10:14 CDT


Warning: what I am about to discuss is probably pretty contraversial. I
don't want to start a language war. These are just my opinions! I want to
propose some topics for discussion but NO FLAMES PLEASE!
_________________________________________________________________________

All programs that I consider great are extensible. Emacs is one of those.
No, I don't want to make AbiWord as ugly and user-unfriendly as emacs. I
think that AbiWord should be extensible. MS Word has visual basic
scripting, but a real programming language could blow that away.

Enter guile. Guile is designed to make C (and presumably C++) applications
be extensible via a scripting language. NO, Guile is _NOT_
scheme-specific. Quoting from the Guile page at
http://www.gnu.org/software/guile/:

   If your application uses Guile, your users have their choice of
   scripting languages, as long as there's a translator for the language
   of their preference. A translator is a Guile module that translates a
   script language --- like Python or Tcl --- into Scheme, which Guile can
   then execute. Scheme is a sufficiently powerful and neutral base that
   other languages can be translated into it with ease and efficiency.

XP compatability should not be a large concern. According to the message
at http://206.63.100.13/pub/list/lispos/9707/msg00010.html, Guile already
runs on Win32, and since BeOS and QNX are unixlike if I am not mistaken,
porting it to those platforms should not be difficult.

Guile would give people choice about how to extend AbiWord. People like me
who wanted to muck with internals could customize it as much as emacs, and
a church secratary could just ignore extensibility features, except
perhaps being able to use scripts that someone has already writen to
simplify work. These would be more like macros, but guile has the ability
to make a program extensible so that scripts can change the way it
operates.

Sure, it's possible for Abi to have its own scripting language, but then
people would have to learn a whole new scripting language rather than
using the full-featured programming language they are already familiar
with (or, if they aren't familiar with a programming langauge, learning
one for scripting Abi would be a much more effective use of time than
learning an Abi-specific one). It would also be a lot less work for the
developers to go with a standard solution like guile, so that the AbiWord
developers would not have to go and implement a sub-optimal scripting
language when great ones already exist.

Before you flame me, please read the guile page. It explains a lot of this
stuff. I am expecting the luddites to not agree with me ;).

I would say that I want AbiWord to be the Emacs of word processors, but
because of the imagery of ugliness and frustration that may invoke, I
won't ;-).

Aaron Lehmann



This archive was generated by hypermail 2b25 : Fri Jun 23 2000 - 18:10:18 CDT