User:Babbage Linden/Office Hours/2009 12 16

From Second Life Wiki
Jump to navigation Jump to search

Transcript of Babbage Linden's office hours:

[3:09] Ovaltine Constantine: Babbage is here!

[3:09] Darrius Gothly: Greetings Babbage.

[3:10] Liandra Ceawlin Shout: It's the man of the hour, clad in his asbestos suit. XD

[3:10] Tonya Souther: Good morning, babbage. *yawn*

[3:10] Babbage Linden: hi everyone

[3:10] Gooden Uggla: good morning babbage

[3:10] Stickman Ingmann: Babbage! :D He's out of my chat range. :(

[3:10] Stickman Ingmann: Hi Babbage!

[3:10] Ardy Lay: Hello Babbage.

[3:10] Nock Forager: Hello Babbage

[3:10] Imaze Rhiano: hi Babbie!

[3:10] Ashiri Sands: hi

[3:10] Liandra Ceawlin: You need a theme song that plays when you enter the sim, Babbage.

[3:10] Babbage Linden: sorry i'm a bit late

[3:10] Darrius Gothly: LOL

[3:10] Babbage Linden: windows crashed on me just as i was about to log in

[3:11] Tillie Ariantho: :P

[3:11] Darrius Gothly: Gosh .. never had that happ ... *click*

[3:11] Babbage Linden: heh

[3:11] Babbage Linden: so, this week:

[3:11] Gooden Uggla: if you go mac, you'll never go back...

[3:11] Liandra Ceawlin: *drumroll*

[3:11] Babbage Linden: it looks like we've tracked down the last region presence service bug

[3:11] Stickman Ingmann installs Windows on his Mac, defeating the purpose.

[3:11] Liandra Ceawlin: \o/

[3:11] Gooden Uggla: (boom chicka wah wah)

[3:12] Babbage Linden: which was forcing us to send map item requests via the space server

[3:12] Babbage Linden: with luck we'll get that fix in to 1.36

[3:12] Babbage Linden: and then we'll be able to turn the space server off

[3:12] Tillie Ariantho: That mans? ;)

[3:12] Tillie Ariantho: ah :)

[3:12] Tillie Ariantho: means I meant :P

[3:12] Babbage Linden: and the last central, unscalable single point of failure for SL will be done

[3:12] Babbage Linden: gone, even

[3:12] Gooden Uggla: find the rush fix on SVC-5150 yet?

[3:12] Tillie Ariantho: uhm

[3:12] Talarus Luan: Groups? :P

[3:12] Stickman Ingmann: Glad to hear it, Babbage!

[3:13] Babbage Linden: we've also updated out version of mono 2.7.x to the tip of svn

[3:13] Babbage Linden: there was a problem using the version we had with valgrind

[3:14] Babbage Linden: so, now we've updated we should be able to get good data on the Mono script freezes to the Mono devs

[3:14] Tillie Ariantho: woot

[3:14] Babbage Linden: i'm hoping to do a run today and get the callgrind data to zoltan before I go on vacation

[3:14] Stickman Ingmann: Awesome. That's a big issue for my avatars, and my sim. Within a week, it freezes for half a dozen seconds whenever someone puts on an avatar.

[3:14] Babbage Linden: we've also specced out the efficient scripts API

[3:14] Babbage Linden: we have the first sprint planned

[3:14] Liandra Ceawlin: Ohhhh

[3:14] Babbage Linden: and it will start today as soon as we've had the API reviewed

[3:15] Babbage Linden: so hopefully that will get in to 1.38

[3:15] Stickman Ingmann: I am not familiar with this efficient scripts API. We talking C#? Or an LSL modification? Or something else?

[3:15] Liandra Ceawlin: Can you leak it to us nao? XD Or is it already up somewhere? <_<

[3:15] Babbage Linden: it's the llSetLinkedPrimitiveParamsFast

[3:15] Babbage Linden: and llGetLinkedPrimitiveParams functions

[3:15] Liandra Ceawlin: :F

[3:15] Liandra Ceawlin: Will all of the prim params be fast?

[3:15] Stickman Ingmann: 1.38? :( I can wait, then. I was hoping for 1.36.

[3:16] Babbage Linden: Fast means no delay

[3:16] Stickman Ingmann: I believe it'll only have the ones with no script delay in it, right? So no rotation, movement, etc. Just alpha, glow, scale, etc.

[3:16] Tonya Souther: If I can replace my existing adjustment technology with that, I will, happily...as long as I can adjust *all* primitive parameters with it.

[3:16] Babbage Linden: so you can use both functions in a tight loop

[3:16] Imaze Rhiano: is there going to removal of delays in other LSL functions - like instant messaging?

[3:16] Babbage Linden: instead of having to use 1 script per prim

[3:16] Liandra Ceawlin: We've gotta have 'em all, like the pokemon thingies. :< Position and textures for sure. :x

[3:16] Babbage Linden: in a 100 prim hairdo it can save around 1.5 MB of script memory

[3:17] Tillie Ariantho: woot!

[3:17] Tonya Souther: I need position, rotation, and alpha.

[3:17] Darrius Gothly: Babbage? What about adding a Parameter type to the new efficient calls that allows you to specify which link you are addressing next?

[3:17] Babbage Linden: they will work for all current llSetPrimiiveParameters parameters

[3:17] Talarus Luan: If they are no delay, it won't matter.

[3:17] Liandra Ceawlin: Sweeeeeeet.

[3:17] Stickman Ingmann: You mean llSetLinkList*, Darrius?

[3:17] Darrius Gothly: Ty for that. (all params)

[3:17] Stickman Ingmann: :o Happy news, Babbage! Totally worth waiting for 1.38.

[3:17] Darrius Gothly: Something like that Stick .. yes.

[3:18] Darrius Gothly: Then you can just build one list and make one call.

[3:18] Darrius Gothly: But affect 100 prims.

[3:18] Stickman Ingmann: There's a proposal for functions like that on Jira somewhere, I believe. It'd be nice, too. Qarl said it wouldn't be too hard.

[3:18] Babbage Linden: plus we're hoping to add PRIM_TEXT

[3:18] Babbage Linden: so you can use the methods to get and set float text too

[3:18] Talarus Luan: Anything for particle systems?

[3:18] Darrius Gothly: Woot @ PRIM_TEXT too.

[3:18] Babbage Linden: I'll be able to tell you the final API after review after christmas

[3:18] Babbage Linden: particle systems is in out backlog

[3:18] Tonya Souther smiles. "I smell another place to put persistent storage."

[3:18] Darrius Gothly: Well .. we could always *help* review it. *grin*

[3:19] Tillie Ariantho: ah floating text, not text directly on a prim...?

[3:19] Babbage Linden: we may be able to get to that, but it depends how the sprint goes

[3:19] Stickman Ingmann: After Christmas? Late present, then.

[3:19] Talarus Luan: Yep, hovertext

[3:19] Babbage Linden: well, once we have the internal review i can let you know what we're planning

[3:19] Tonya Souther: but if particle systems are in there, that would remove the last per-prim script I use.

[3:19] Stickman Ingmann: I think it can only put, not get text.

[3:19] Babbage Linden: then you can give feedback

[3:19] Talarus Luan: dynamic/procedural textures would be a new feature.

[3:20] Babbage Linden: we've also made some progress on our internal C# prototype

[3:20] Darrius Gothly: Tonya raises a good point .. persistent storage.

[3:20] Babbage Linden: fixed some bugs, got some more language features working

[3:20] Cerdita Piek: I could suggest a way to get and set name and description in linked prims.

[3:20] Tillie Ariantho: What would be useful now besides ARC is something like ASC... Avatar Script Count value, so we know which memory values we are talking of, per avatar. ^^

[3:20] Babbage Linden: great news on that front is that Mono 2.6 is officially out

[3:20] Babbage Linden: including the bytecode and metadata verifiers

[3:21] Babbage Linden: and coreclr sandbox

[3:21] Babbage Linden: which we've literally been waiting years for

[3:21] Tillie Ariantho: So you already beta-implemented mono for client side? :P

[3:21] Imaze Rhiano: well... LL could provide persistent storage for script after some extra payment or maybe tie it with preminium accounts...

[3:21] Babbage Linden: http://www.mono-project.com/Release_Notes_Mono_2.6

[3:22] Talarus Luan: So, what is 2.6 allowing you to do new and different?

[3:22] Gooden Uggla: ARC is worthless, until the texture cache can actually umm... cache textures

[3:22] Babbage Linden: it means we can use the Mono defined mechanisms for verifying and sandboxing untrusted code

[3:22] Tillie Ariantho: Gooden: but output of single and global script memory would be helpful. ^^

[3:22] Babbage Linden: at the moment we have our own verifier

[3:22] Babbage Linden: but it's limited

[3:22] Imaze Rhiano: it allows server to validate mono IL - and allows us to write someday C# or some other mono compatible code and upload it to server

[3:23] Talarus Luan: So, a step closer towards resident-compiled assemblies?

[3:23] Babbage Linden: and we don't want to have to extend it to support the whole of the CIL instruction set

[3:23] Gooden Uggla: yes, but the example scared me, sorry

[3:23] Babbage Linden: now we can use the Mono verifier

[3:23] Gooden Uggla: a metric that doesn't work...

[3:23] Babbage Linden: (which I wrote some of the tests for in 2005...)

[3:24] Babbage Linden: we've also got WSGI asset upload in to QAR

[3:24] Babbage Linden: that will hopefully be in 1.36

[3:24] Babbage Linden: and will make script compilation and other asset uploads more efficient

[3:24] Babbage Linden: and stop them being a DOS vector

[3:24] Imaze Rhiano: WSGI asset?

[3:24] Talarus Luan: Cool

[3:24] Babbage Linden: there were problems with snapshots especially

[3:24] Darrius Gothly hopes links will be provided to some of these acronyms .. cuz I'm really pretty new to a lot of them.

[3:25] Babbage Linden: on busy regions with lots of people taking and uploading pictures

[3:25] Babbage Linden: the upload service could end up using a lot of simulator host memory

[3:25] Talarus Luan: Web Server Gateway Interface... a cleaner way to gateway CGI-type applications.

[3:25] Babbage Linden: as we were using CGI

[3:25] Darrius Gothly: *nods* Ty

[3:25] Babbage Linden: which was spawning a python interpreter for every upload

[3:25] Gooden Uggla: snapshots are better than nothing, and all we have now

[3:25] Tonya Souther: ouch!

[3:26] Babbage Linden: now we have a single python interpreter

[3:26] Babbage Linden: as a WSGI daemon process

[3:26] Babbage Linden: and so asset upload is much more efficient

[3:26] Babbage Linden: and less likely to impact sim performance

[3:26] Darrius Gothly: Sweet .. cut out that upfront load time on each upload.

[3:26] Tillie Ariantho: Oh, where we are at snapshots, vote for http://jira.secondlife.com/browse/VWR-12917 ... for snapshots savenames with timestamps in it. ^^

[3:26] Babbage Linden: that will hopefully be in 1.36

[3:27] Babbage Linden: and I spent some time writing a blog post about script limits

[3:27] Darrius Gothly smiles ...

[3:27] Darrius Gothly: How many of the responses have you been able to wade thru?

[3:27] Tillie Ariantho: ah so? never heard of that blog post. :P

[3:27] Talarus Luan: Yus, we saw. :)

[3:27] Babbage Linden: to hopefully sooth some of the swirl around that that kicked up over the weekend

[3:27] Stickman Ingmann: You wrote that a couple days after I asked a question on sldev about it. Good timing.

[3:27] Gooden Uggla: efficient assets sounds good, fixing the texture cache might make that more noticable, looks like we'll have to wait...

[3:27] Babbage Linden: yes, there were some blog posts worrying about it too

[3:28] Stickman Ingmann: The blog posts worrying are what made me ask for official info. Spreading panic is fun, but facts are more useful.

[3:28] Babbage Linden: the important point is that we're not going to be enforcing script limits any time soon

[3:28] Babbage Linden: but the proposed limits will be visible

[3:28] Babbage Linden: so you'll be able to let me know if they're way off

[3:28] Stickman Ingmann will.

[3:28] Darrius Gothly: How soon can we expect to see "official" statements on which metrics are measured and considered?

[3:29] Tonya Souther: And how soon can we expect to see tools we can use to measure our own scripts - not at the script level, but much more fine-grained?

[3:29] Babbage Linden: (but if you come to me saying that your 1000 prim hair and 1000 prim shoes with scripts in each prim aren't going to work, I'm going to be less sympathetic)

[3:29] Darrius Gothly: LOL

[3:29] Talarus Luan: <.<

[3:29] Imaze Rhiano: Darrius: avatar and parcel script memory usage are measured

[3:29] Babbage Linden: well, the important tools are going to be in the next viewer release

[3:29] Babbage Linden: the UI is being worked on now

[3:29] Darrius Gothly: Planned release is ?

[3:30] Ovaltine Constantine: Ooh yay, /me wants

[3:30] Darrius Gothly: Can we get advance looks at the UI?

[3:30] Ashiri Sands: (one script only in my hair)

[3:30] Talarus Luan: Well, *Fast stuff should fix that script-in-every-prim thing. :D

[3:30] Babbage Linden: there's likely to be more information hanging off the objects tab

[3:30] Babbage Linden: in about land

[3:30] Tillie Ariantho: But wont it break existing content? I mean there are many hair designers right not with lots of scripted hair...

[3:30] Stickman Ingmann: Glad to hear the UI is being worked on. There were some issues with that.

[3:30] Tonya Souther: I'm a SL newbie (been here half as long as the next longer person here), but I've been programming for 35 years. I know how to program and to tune and to write efficient code - as long as there's a good way to see what's efficient and what's inefficient.

[3:30] Babbage Linden: which will show the size and location of each scripted object

[3:30] Babbage Linden: in your land and in attachments

[3:31] Darrius Gothly: Even for Parcel Owners and not just Sim or Region Owners?

[3:31] Babbage Linden: yes, it will work for parcel owners

[3:31] Tonya Souther: Not even parcel owners. I don't own a single plot of land, and need to see the stats.

[3:31] Darrius Gothly: And general residents?

[3:31] Talarus Luan: Yeah, it's going to break *some* existing content. Content creators need to be proactive and prepare for the change and be able to update their products for their customers.

[3:31] Babbage Linden: general residents will be able to see their attachment usage

[3:31] Babbage Linden: and available memory for attachments

[3:31] Darrius Gothly: What about for objects they've owned and rezzed on the land?

[3:32] Ovaltine Constantine: Are we just talking memory or also script time?

[3:32] Babbage Linden: we're just talking about script time

[3:32] Babbage Linden: hmm, that's a good point darrius

[3:32] Imaze Rhiano: each avatar is able to see their own memory uage - but no one else can't see it, parcel owner can see memory usage in parcel that they own, sim owner can see memory usage in entire sim in all parcels

[3:32] Tonya Souther: What, exactly, is going to be limited?

[3:32] Babbage Linden: for sandboxes we'll want everyone to see script sizes

[3:32] Babbage Linden: i'll check that that will be the case

[3:32] Darrius Gothly: Ty

[3:32] Tonya Souther: Am I going to have to buy land just to work on scripting?

[3:33] Babbage Linden: tonya, the memory availabe to scripts is going to be limited

[3:33] Babbage Linden: every square meter of land will give the parcel an amount of memory for scripts

[3:33] Gooden Uggla: i'm curious... if the lab couldn't/can't measure the asset metrics that result in the viewer cache bugs still being largely ignored, how can scripts expect to be accurately measured? DDoS attacks on the asset servers from every viewer and it was denied for months...

[3:33] Talarus Luan: See comment above about sandboxes

[3:33] Darrius Gothly: I have a Group for my land .. all in the group can build, but only a few have "owner" powers. What permission/ability will you need in order to see the overall stats for that Parcel?

[3:33] Stickman Ingmann: Tonya, ever try to build on nobuild land? You use attachments.

[3:33] Tonya Souther: I rent my land.

[3:33] Imaze Rhiano: Tonya: you can use sandboxes and attachments for scripting normally

[3:33] Babbage Linden: renting will be fine

[3:34] Babbage Linden: as you'll normally be the owner of the land

[3:34] Gooden Uggla: i hear a lot of fine things, and i trust the good doctor works hard, but... i have trust issues with the Lab...

[3:34] Babbage Linden: with the person you rent from being the estate owner

[3:34] Babbage Linden: well then you have issues gooden

[3:34] Gooden Uggla: tell me these things will be fixed and i will believe

[3:34] Babbage Linden: i don't work on the viewer

[3:34] Tonya Souther: Uhm, not the places I've seen...you join the group that owns the land.

[3:34] Babbage Linden: but i know i can measure the size of scripts accurately

[3:35] Gooden Uggla: just the mono freeze and the CGC, will that get fixed?

[3:35] Babbage Linden: we do right now to cause them to stack/heap collision when they run out of memory

[3:35] Talarus Luan: Oh.. that reminds me, will any of this script profiling be exposed to LSL via new functions at some point?

[3:35] Babbage Linden: as i said, I'm going to be collecting callgrind data to send to the Mono devs today

[3:35] Gooden Uggla: the CGC is working now?

[3:35] Gooden Uggla: ah, ok, thanks

[3:35] Darrius Gothly: Good idea Talarus.

[3:35] Babbage Linden: I'm working on the Mono freeze issue

[3:36] Babbage Linden: and have narrowed it down to a particular runtime function being slow

[3:36] Babbage Linden: so I'm working with the Mono developers to fix it

[3:36] Imaze Rhiano: Tonya: There are generally 2 kind land rental business in here - one where you buy land from estate owner and pay monthly tier (rent) for her then - and then - where you pay access to group land (for example in big apartment buildings where multiple users are sharing same parcel)

[3:36] Talarus Luan: IE, will we be able to, for example, use a scripted monitor for our land to keep an eye on usage, or to automate profiling of scripts?

[3:37] Tillie Ariantho: You think the fix will roll out this year? :)

[3:37] Tonya Souther: All of my land is the latter, Imaze, across 6 stores and two other places.

[3:37] Darrius Gothly: Babbage .. a number of people have expressed an interest in seeing what sorts of things will be on the new "Script Details" tab/report. When can that be published in some solid form?

[3:37] Ardy Lay: Babbage, could you lay to rest the rumor that LSL script memory usage metric is going to have a multiplier applied to it to discourage use of LSL?

[3:37] Imaze Rhiano: Tonya: If you can script there currently, you can script there also future - however - you are going to share parcel memory with everyone else in same parcel

[3:37] Liandra Ceawlin: Lol, where'd that rumor come from?

[3:37] Babbage Linden: at the moment the plan is to show the name and location of each scripted object along with its size

[3:38] Babbage Linden: plus buttons to put a beacon on the object and return it

[3:38] Gooden Uggla: i stayed awake because i wanted to hear from someone at the lab i know i can trust, do you really believe that the fix for the mono freeze is close and the script limits are necessary?

[3:38] Babbage Linden: but that may change as it's not finalized yet

[3:38] Darrius Gothly: Will "size" be explodable to show each script in that object too?

[3:38] Babbage Linden: probably not

[3:38] Darrius Gothly: Darn .. please??

[3:38] Tonya Souther: Oh dear.

[3:38] Darrius Gothly: How else will we determine which script is at fault?

[3:38] Talarus Luan: Is that possible, and you don't want to provide it, or?

[3:39] Babbage Linden: each script is the same size, at least at the moment

[3:39] Tonya Souther: Not just which script, Darrius, which *function*?

[3:39] Darrius Gothly: *nods* True.

[3:39] Babbage Linden: we're still discussing what to do about Mono vs LSO accounting

[3:39] Babbage Linden: for some scripts, LSO is more efficient

[3:40] Babbage Linden: but, we want to get away from supporting 2 VMs

[3:40] Tonya Souther: ...hang on, Babbage. You mean my big hairy 1250-line main script uses the same memory as my 120-line prim adjustment worker script?

[3:40] Babbage Linden: (in fact we want to get away from supporting any virtual machines)

[3:40] Stickman Ingmann: Babbage, any chance of getting an llSetLinkListPrimitiveParamsFast so we can specify a list of things to change, instead of looping through several calls? Also, would that make a signficant difference in bytecode or processing usage to make it worthwhile?

[3:40] Darrius Gothly: But I thought VMs were your insurance against aggressive or abusive scripting?

[3:41] Babbage Linden: so, we may add a higher cost to LSO scripts to avoid people both VMs in to the future

[3:41] Babbage Linden: that's still being discussed though

[3:41] Darrius Gothly: Oooh .. not so keen on that idea Babbage. Sorry .. just saying.

[3:41] Ardy Lay: Ouch.

[3:41] Babbage Linden: Tonya, each script has a reserved memory and a used memory

[3:41] Babbage Linden: at the moment each LSO script has 16K reserved memory

[3:42] Tillie Ariantho: Just make the mono part really good so that we dont need old lsl anymore. :P

[3:42] Ardy Lay: With 56,000 products in that wild that will drive us crazy doinf updates. :-(

[3:42] Ardy Lay: in the wild

[3:42] Babbage Linden: and each Mono script has 64K reserved Memory

[3:42] Babbage Linden: in most cases Mono is more efficient with memory than LSO

[3:42] Babbage Linden: but in some cases, when you use lots of lists or recursion for example, Mono can end up using more memory

[3:42] Darrius Gothly: What about "Mono Lite" .. that only reserves 16K memory .. so we can choose to voluntarily shrink our memory requirements but still use Mono?

[3:43] Talarus Luan: It seems that Mono memory is allocated in 512-byte blocks.

[3:43] Talarus Luan: at least in terms of the "used" vs "reserved" distinction.

[3:43] Babbage Linden: when we released Mono we gave it a bigger reserved memory so people could convert their scripts to Mono easily without having stack/heap collusions

[3:43] Tonya Souther: ...and using lots of lists is needed because of no persistent storage.

[3:43] Talarus Luan: Oh no! The stack is in collusion with the heap! :D

[3:43] Darrius Gothly: ^5's Tonya. *grin*

[3:44] Babbage Linden: we have plans for allowing Mono scripts to change their reserved memory

[3:44] Tillie Ariantho: Talarus :P

[3:44] Babbage Linden: so you'll be able to reserve 4K for a Mono script just responding to a door

[3:44] Darrius Gothly: Excellent. And that planned roll-out for that memory reservation is ?

[3:44] Babbage Linden: or reserve 1MB for a script sitting in a region doing pathfinding or whatever

[3:44] Tonya Souther: in order to do that well, Babbage, we'll need to see how much each script *needs*.

[3:45] Talarus Luan: That would be nice

[3:45] Babbage Linden: tonya, yes, so we should also be able to add a get used memory function

[3:45] Darrius Gothly: Yeah .. real live memory management calls would be a minimum.

[3:45] Cerdita Piek: will be llGetFreeMemory() more accurate to know exactly the memory that a script is using?

[3:45] Babbage Linden: for Mono scripts at least

[3:45] Talarus Luan: Well, until someone reserves 1mb in several attachments and tries teleporting around. <.<

[3:45] Babbage Linden: except that script limits will be in place before memory reservation

[3:45] Darrius Gothly: LOL @ Talarus

[3:45] Stickman Ingmann puts on 90MBs of script attachments.

[3:45] Tonya Souther: Talarus, I believe the term for that is TELEPORT FAIL.

[3:46] Darrius Gothly: LMAO

[3:46] Imaze Rhiano: that is why there is coming memory limitiations for attachments too

[3:46] Talarus Luan: Oh, if you provide the capability, someone is going to do it.

[3:46] Babbage Linden: once you have script limits, there's no reason not to let 1 script reserve all the memory in a parcel

[3:46] Babbage Linden: which will make it much easier to develop complex scripts

[3:46] Talarus Luan nodnods

[3:46] Babbage Linden: without having to break them in to many small pieces

[3:46] Talarus Luan: Well, I also used the word "tries" ;)

[3:46] Darrius Gothly shoots Stickman with a 50MB bullet ...

[3:46] Stickman Ingmann: hahaha

[3:46] Tonya Souther: I've got one script I had to break in half because I ran out of memory, and would love to be able to put back together.

[3:47] Babbage Linden: right

[3:47] Babbage Linden: you get to a certain complexity of script

[3:47] Tonya Souther: About 1300 lines, in my experience. :3

[3:47] Darrius Gothly: Yes, some sort of llGetMemoryType(TYPE_CONSTANT) call would be wonderful too.

[3:47] Stickman Ingmann: Babbage, before hours are up, there's two topics that have come up that I'm really interested in knowing more about.

[3:47] Babbage Linden: and then you're forced to make it even more complex by breaking it up and making the scripts link message to each other

[3:47] Babbage Linden: sure

[3:47] Stickman Ingmann: One is persistant memory storage. Is there any solution for that on the drawing board?

[3:47] lufpleh Obstreperous: what happens to me/my attached scripts if a bot is on a parcel and has reserved all the memory?

[3:48] Darrius Gothly: Votes for that ...

[3:48] Tonya Souther: <littlekittenvoice> please? </littlekittenvoice>

[3:48] Stickman Ingmann: Right now, I think the best thing is pinging an external server, or names/descriptions. Or even alpha/color values on prim faces.

[3:49] Darrius Gothly: I filed a JIRA suggesting a new type of Item inside prims that is a Datastore/Datagrid type .. and cannot leave the Host Prim.

[3:49] Imaze Rhiano: lufpleh: each avatar is going to have fixed amount of memory available for their attachment - your bot can't allocate someone elses memory

[3:49] Babbage Linden: there are discussion about persistent storage

[3:49] Talarus Luan: Well, you can store stuff in scripts, too, but that's as dicey as anything in SL in terms of persistence.

[3:49] Babbage Linden: but they're a way off

[3:49] Stickman Ingmann nods.

[3:49] Stickman Ingmann: Glad to hear it's being discussed, at least.

[3:49] Babbage Linden: our roadmap dissapears off in to the distance

[3:49] Stickman Ingmann: The other question I had was...

[3:49] Liandra Ceawlin: Once we have C# and libraries, we could define a persistency API for scripts that could plug into whatever persistence engine we wanted to use. :d

[3:49] Babbage Linden: but at least we have a roadmap for scripting now

[3:49] Babbage Linden: and are heading down it

[3:50] Babbage Linden: liandra

[3:50] Darrius Gothly wants a copy of that map ..

[3:50] Babbage Linden: exactly

[3:50] Babbage Linden: that's close to what we're thinking about

[3:50] Stickman Ingmann: Is it possible to get llSetLinkListPrimitiveParamsFast (for lists of prims) alongside the new llSetLinkPrimitiveParamsFast(), and would it be a benefit in bytecode or processing enough to warrent doing.

[3:50] Babbage Linden: i've told you about a lot of things on that roadmap

[3:50] Tonya Souther: Heck, I'd settle for some kind of file metaphor.

[3:50] Liandra Ceawlin: Assuming we can add multiple event handlers to a events. Like layering http_response events, etc...

[3:51] Darrius Gothly: I'd like to suggest that Persistent Storage is such a primal need of scripts in general, that shunting it off-world is building in an inefficiency that should be included in the main library.

[3:51] Liandra Ceawlin: *an event

[3:51] Babbage Linden: stickman, i don't think the processing savings warrant it

[3:51] Babbage Linden: calling to unmanaged code from Mono is pretty quick

[3:51] Talarus Luan: Yep, without a delay, it pretty much is the same thing, speed-wise.

[3:52] Babbage Linden: darrius there are a lot of issues with persistent storage

[3:52] Liandra Ceawlin: I can't tell any appreciable difference between sending a link message to each of 200 link numbers in a list in a loop and using LINK_SET. I'd assume primparams would be much the same. <_<

[3:52] Stickman Ingmann: Good to know. I'm a scripter, not a programmer. So I was curious. Thank you. :)

[3:52] Babbage Linden: at the moment sim hosts are set up to basically be able to fall in to the see without too much of a problem

[3:52] Talarus Luan: Scripting isn't programming? <.<

[3:52] Stickman Ingmann: Scripting isn't programming.

[3:52] Imaze Rhiano: just one idea for LL marketing department - add persistent storage for premium account owners :P

[3:52] Tonya Souther: However, the number of arguments to llSetLinkPrimitiveParams() for different argument types is different. Without a list call, we'll have to use a n-strided list with n being the largest number of arguments, which will waste memory.

[3:52] Babbage Linden: if you have precious persistent data on sim hosts we have to be much more careful with them

[3:53] Babbage Linden: or set up complex backup systems to each sim

[3:53] Stickman Ingmann: I asked a programmer at my college what he would say if I claimed to be one. His reply cannot be repeated in kind company.

[3:53] Babbage Linden: ops likes not having to care when a sim host melts or dies at the moemnt

[3:53] Babbage Linden: being able to just plug a new one in is nice

[3:53] Darrius Gothly: My proposal actually tied into the Asset memory, not the Sim memory. Much like floating text and other such attributes are now.

[3:53] Liandra Ceawlin: I've got some offworld data persistency stuff for appengine kicking around here somewhere if any of y'all want it. It's free to use, has big quotas, and will be around long after ya get hit by a bus.

[3:54] Babbage Linden: right, but being able to programatically create assets is also scary

[3:54] Talarus Luan: ..or until Google gets bored and dumps it. <.<

[3:54] Babbage Linden: we'd have to make sure it was correctly throttled etc

[3:54] Darrius Gothly: Not create an asset .. add to an asset's existing attributes.

[3:54] Babbage Linden: anyway, complex

[3:54] Babbage Linden: but on the roadmap

[3:54] Babbage Linden: which i should get back to heading down

[3:55] Darrius Gothly: Before you leave .. any expected time line for first view Script Limits?

[3:55] Babbage Linden: any more questions before i head off?

[3:55] Darrius Gothly: When can we expect to start seeing numbers?

[3:55] Cerdita Piek: wouldnt be easier to store persistent date in a object, to allow a script to create/write a notecard in the content of the object?

[3:55] Liandra Ceawlin: Thanks for your time, Babbage, and for the fast primparams work. This is awesome news. <3

[3:55] Babbage Linden: you'd have to talk to the viewer devs about that

[3:55] Tonya Souther: Babbage, any prospect for allowing lists to contain lists in LSL? Right now, we're stuck to single-dimensioned arrays. FORTRAN got past that in 1957.

[3:55] Kaluura Boa: One question: Will the not-so-tiny bug with rotations be fixed in their fast version?

[3:55] Babbage Linden: we're going to have the UI done for it before christmas

[3:55] Stickman Ingmann: So llGetLinkPrimitiveParams() is 1.38 as well?

[3:56] Babbage Linden: but i don't know what the release schedule will be

[3:56] Stickman Ingmann: There was a thread on sldev about writing to notecards. Short answer: Not gonna happen.

[3:56] Babbage Linden: stickman, hopefully efficient scripts wll be in 1.38

[3:56] Babbage Linden: but that's not frozen yet, so i can't say for sure until it is

[3:56] Darrius Gothly: We'd love to get at least a puppet show of the new UI .. even with the caveat that "everything here will probably change"

[3:56] Babbage Linden: i'll see what i can do

[3:57] Stickman Ingmann: :D

[3:57] Darrius Gothly: Ty .. cuz right now we hear something coming .. just dunno if it's an elephant or a bunny rabbit.

[3:57] Tonya Souther: Or a bunny rabbit with nasty sharp pointy teeth!

[3:57] Ardy Lay: i'm worried about having 56,000 avatars out in the wild becoming suddenly obsolete, even though we only avearage 15-25 scripts per av, most of them very concise.

[3:57] Darrius Gothly: LOL Is that you Pink?? *grin*

[3:57] Gooden Uggla: it's the bus... same as always...

[3:57] Gooden Uggla: have a good morning...

[3:57] Talarus Luan: About the only other thing I can think of is llLinkTargetOmega and llSetLinkTextureAnim

[3:57] Darrius Gothly: LOL @ Gooden

[3:58] Darrius Gothly: Thank you for your time and information Babbage.

[3:58] Babbage Linden: your welcome

[3:58] Stickman Ingmann: Indeed. Thank you.

[3:58] Babbage Linden: i'm off on vacation this week

[3:58] Gooden Uggla: thanks...

[3:58] Talarus Luan: Aye, thanks. :)

[3:58] Imaze Rhiano: thank you babbie

[3:58] Ashiri Sands: thanks Babbage

[3:58] Stickman Ingmann: Who's handling putting the log on the wiki?

[3:58] Darrius Gothly: Vacation .. whazzat??

[3:58] Talarus Luan: Happy holidays. :)

[3:58] Tonya Souther: Thanks, babbage. This is the first time I've actually been able to speak with anyone *at* Linden Labs.

[3:58] Babbage Linden: so this is the last office hour of the year

[3:58] Stickman Ingmann: Enjoy your time off, Babbage!

[3:58] Cerdita Piek: thanks, babbage, take care, and have fun :)

[3:58] Babbage Linden: have a lovely holiday and see you in 2010

[3:58] Becky Pippen: Thanks Babbage

[3:58] Stickman Ingmann: Merry Christmas, and happy New Year!

[3:58] Darrius Gothly: See ya next year!

[3:58] Nock Forager: oh, so see you in next year.

[3:59] Gooden Uggla: tponya, go see blue, he has field trips :)

[3:59] Babbage Linden: merry christmas!