We Need a Complete Language Reference for LSL

For more than a year, I’ve been a member of the fine group College of Scripting, Music, and Science (hereafter CSMS), formed to support those learning the Linden Scripting Language (LSL). It’s a fun group that has gotten back on track after being inundated with script-beggars for the last several months.

People in the group are asking some darn good questions about the mechanics of the language. One such question this week dealt with the registration of llListen() calls. I had part of the answer and decided to test what I couldn’t answer. In fact, if I get my act together, I should be discussing that question in the next blog entry.

My tests produced a surprising result: though I was able to invalidate another’s hypothesis, I was not able to validate my own. I was under the impression that it worked differently. I checked the documentation again. Well, according to my interpretation of what’s there, I should have been right. (Of course!)

But what is the documentation? Ah, it’s an online wiki! That’s just like group chat where people are under the impression that a million heads are always better than one.

I put it to you that, when it comes to computer language design and specification, even two heads may not be better than one. LL should at least consider restricting wiki entry and modification to the acknowledged and authorized experts who design, implement, and maintain the language: LL employees.

But wait, there’s more! There’s not just one wiki, there are three! The other two are linked from the LSL Portal page (the official LSL wiki), and they appear to be near-mirror images of each other. The kicker is, they’re better wikis than the official one. They give you far more useful information, even though some of that information is now out of date. Because they’re not official, there’s no incentive to maintain them.

So when I need to look up an aspect of LSL, what do I do? I necessarily look in all three. That seems to be the only way to get any rounded information I can probably rely on. And yet all three of them are woefully incomplete. When I can’t find what I’m looking for, then I must devise tests to see what I can rely on. Hey, testing is inevitable and often fun, but the basic specs should be documented fully.

Linden Labs must produce a complete and authorized reference for the Linden Scripting Language. It’s fine if they want to keep the official reference online, but they must take it out of the open, collaborative paradigm and keep its development in-house.

And if they don’t want to make this a priority, then they must authorize another writer to produce it. I doubt I’m the best person for that, but I’m sure there are others chomping at the bit.

Oh, and before you publish the first edition, add state variables to the language, please.

Originally posted 29 Aug 2008
Last edited 30 Aug 2008