[Opensim-users] use of C# in scripts

Haravikk opensim at haravikk.me
Tue Feb 26 22:16:16 UTC 2019



> On 26 Feb 2019, at 19:28, Serendipity Seraph <seren.seraph at gmail.com> wrote:
> 
> As a software engineer the things that deeply bug me about LSL include:
> 
> 1) no real way to get reuse vs copy and paste where needed.  Major blow to
> possible efficiency gains of not having multiple copies and to
> maintainability.  No import/include or library concept or support.
> 
> 2) almost no real data structures  and no way to roll your own.  Yeah you
> can do 1970s era hacks sort of.

The problem with LSL is that it's just plain shit, to use the correct technical expression; I mean seriously, no proper array but instead we get a linked-list that is fully copied on even minor modifications, thus eliminating all benefits of it being a linked list? So you got both linear access time, bad performance all round AND you can't even add to it efficiently!

I dunno if OpenSim managed to optimise that to use a real linked list behind the scenes but then performance hasn't been such a big issue for me since I'm running lightweight private sims on actually half-decent hardware, but for Second Life itself it's always been a bad joke for, has been now for what, 15 years?

It always bugged me how much it felt like somebody's first year compiler class project that they then just rammed into the first programming job they got, which to our misfortune happened to be Second Life, and we've been stuck with it ever since.

Obviously I get why OpenSim keeps LSL, since it makes it easier for people to port scripts over from SL, but man it's a bad language. There were superior scripting languages 20 years before SL even existed; it has never made any sense why they rolled their own, or didn't even copy elements from actually good languages and APIs. The SL version of LSL is also the only language I'm aware of that has not one, but three broken implementations of base64 XOR; seriously, not one of them is actually correct.


Sorry, that's really just a bit of a rant and not terribly constructive, but man it annoys me.

OpenSim has so many useful capabilities compared to SL but it does still feel like LSL constrains what we can do a bit; I can only imagine how great it'd be to have a proper object oriented API in some other language, but I doubt it's something I'm likely to have time to work on myself.


More information about the Opensim-users mailing list