> A small add-on to my previous mail.
> I just checked the Python - current sources ( version 1.5 ) is 2.9MB long
> gziped ( the previous version was 2.2MB gziped ). The LyX 1.0 is still
> 1.9MB gziped :-).
> Anyhow - if one seriously considers such simple scripting language like
> the Ivy, there is no need to go python. S-Lang is a moderate solution.
The question is: Should we bundle the scripting language or not?
If we choose to bundle it, we have to chose a small language implementation,
and in this category Python and S-Lang are simply out of the question,
because of their size. A bundled scripting language should not exceed
500 kb, and should preferably be about 100 kb.
Therefor Ivy (or more exactly PseudoCode) is interesting because it's
so small. Similar for SIOD. The rule is: We want as much as
possible for as small a footprint as possible.
If we choose not to bundle it, I think Python is the better choice,
because S-Lang er C-syntax, which is hard to learn for novices.
Also, if we chose a C-syntax language, I think JavaScript would be a
better choice, since that has a much larger user base, and it's prepared
for the security aspects.
Regarding the issue that S-Lang is designed to be used in editors:
There is a big difference between a programmer's editor and LyX.
In LyX, we need to stress ease of learning, because the users are
for the most part not programmers.
In a programmer's editor, a large part of the users are programmers
already, and know C. Therefor it makes sense to chose a scripting
language that has a similar syntax. (XCoral does this too.)
Since there is no known suitable easy-to-learn language yet, we
have agreed that we will adopt an approach where we have two
different languages: A programmers language (most probably Scheme)
which can be used by the developers to implement vital features,
and a users language, which might not be as big and featureful,
but hopefully easy to learn and use.
Now the logical reasoning regarding using S-Lang is this: Since we need
a programmer's language, why not chose S-Lang? The answer is: Because
it's too much like C++. It makes little sense to use a scripting
language instead of the much more powerful C++ that we already use.
Therefor, we want a higher-level language, which will hopefully give
substantial savings in development time. And here Scheme fits the
bill IMO.
Greets,
Asger