FW: [sldev] MONO: region request.
Nicholas Radford
nik at terminaldischarge.net
Wed Apr 9 11:24:39 PDT 2008
From: sldev-bounces at lists.secondlife.com
[mailto:sldev-bounces at lists.secondlife.com] On Behalf Of Periapse Linden
Sent: 09 April 2008 18:04
To: sldev Mailing List
Subject: Re: [sldev] MONO: region request.
Yes, Tateru, as you say there are two different runtimes, LSL2 and Mono. At
launch the Mono runtime will be completely "opt-in": any LSL script that you
created or have modify permission for may be compiled to Mono. From then on
the script will run only under Mono (unless recompiled again back to LSL2).
We need this opt-in paradigm because although Mono is feature compatible
with LSL2, the same script will have different behaviors and characteristics
depending on which runtime it uses. The simple performance differences
between the two runtimes mean that scripts change behavior, and may need
modification to be useful when they switch to Mono.
Thus in order to not break existing content, we want to ship with both
runtimes, and keep Mono opt-in. Eventually we may turn off compilation to
LSL2 bytecode. This will make Mono automatic for all new script content,
however we are unlikely to turn off the LSL2 runtime on the entire grid.
There are simply too many scripts, actively running in the world, whose
creators have left SL or who don't want to QA and release a Mono version.
The idea which started this thread was a suggestion to allow estate or
parcel owners the ability to selectively turn off only the LSL2 runtime.
This would mean that scripted attachments using LSL2 would silently fail to
run, much like the way the current "no scripts" switch works,
You could make an icon for it too J
but only for LSL2. I see merit in the suggestion, but I think it's simply
too early to know if such a feature would be truly useful. Mono definitely
improves the performance dramatically for scripts that do a lot of math, but
has much more humble returns for simple scripts like AOs or attachment
size/color modders. After Mono launches market pressure will develop to
encourage scripters to make Mono versions available for those calculation
intensive scripts that most benefit from Mono. This process, a kind of
natural selection, may obviate the utility of a selective LSL2 disabler.
Let's discuss this feature again after we see how Mono is adopted post
launch.
Fair enough, I wonder if there is a list for "possible future features to
discuss for Mono integration" somewhere I can add the idea too? Or just wait
for a convenient time to bring it up again? I don't really think its
applicable for Jira, at least not yet.
Any who want more details on our current thinking, plans, or who want to
discuss this feature request, or propose others, are welcome to attend our
Mono office hours. See the Mono
<https://wiki.secondlife.com/wiki/Mono_beta_FAQ> beta wiki page for the
schedule.
I might just do that. J
Tateru Nino wrote:
Robin Cornelius wrote:
On Wed, Apr 9, 2008 at 1:43 PM, Nik Radford
<mailto:nik at terminaldischarge.net> <nik at terminaldischarge.net> wrote:
I don't see why this is something that couldn't at least be considered.
Something like an option in the region estate tools "Enable LSL2 Runtime
for region" and "Enable Mono Runtime for region" with tick boxes and such.
I though, but am probably wrong, that the mono runtime emulates the
lsl2 runtime for mono regions so that lsl2 on a mono region is
basically wrapped my mono and i recall (but again may have imagined)
that even doing this was faster than the native lsl2 engine.
Please correct me if i have gone mad.
Two different runtimes. One for LSL source compiled to Mono bytecode and one
for LSL source compiled to LSL2 bytecode. That, as I understand it, is where
we're headed in the near-term. Each sim having two script runtimes.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.secondlife.com/pipermail/sldev/attachments/20080409/3e23635b/attachment.htm
More information about the SLDev
mailing list