Introduction to Linden Scripting Language 139
prostoalex writes "Dr. Dobb's Journal runs a lengthy introduction to Linden Scripting Language, the language behind avatars and their interaction in Second Life: "LSL is a scripting language that runs server-side, on a piece of software called the simulator. The simulator does just what it's name implies — it simulates the virtual world of Second Life. Each simulator runs everything for 16 acres of virtual land — buildings, physics, and of course, scripts. While you manipulate the script text in a form that is somewhat easy to read, the actual code that runs on the simulator is compiled. A compiler is a piece of software that takes the text version of the script and converts it into something that can actually run. In the case of LSL, the compiler exists within the Second Life viewer itself. In the future, it is likely that the compiler will move from the viewer into the Second Life simulators, but where the code is compiled isn't very important. What matters is that the text is converted into a form that can run on the simulators.""
A Way For Closed Source Scripts? (Score:5, Interesting)
What if someone only made available a compiled copy of something? It'd be scary if you can't tell what's really going on with all the stuff.
What happened to Mono? (Score:4, Interesting)
Re:Credit where credit is due (Score:5, Interesting)
it's funny, i just checked out 2nd life last night -- first time since a year or two ago -- and i was pretty amazed -- the place is one big car lot or sex club. really. i guess there are two kinds of people in 2nd life now -- the people selling "sex", and the people trying to sell their objects to buy the "sex".
it really was a cool online social experiment -- it only ultimately confirmed what we knew all along -- the internet is good only for porn and consumerism.
now, think about this for a second. first, it's not real sex that is drawing people. it's not even imagery of real people having sex. it's interaction of poorly-rendered avatars in a virtual world. this is a testament to the power of the sexual drive in humans, and what we decide to do with our best technology..... just a friendly reminder that yes, we are doomed.
mr c
Re:A Way For Closed Source Scripts? (Score:2, Interesting)
Re:Credit where credit is due (Score:2, Interesting)
I don't have or do anything porn-related in there, and don't spend any significant amounts of money either. So far I'm getting more out of it than I spend.
yeah give SL access to your bank account... (Score:1, Interesting)
PAYPAL BILLING AGREEMENT FOR PREAPPROVED PAYMENTS
This Policy was last modified on August 1, 2006
1. General Agreement between Buyer and Merchant
A merchant with specific transactional needs may ask you to enroll in a PayPal Billing Agreement. When enrolling in any Billing Agreement with a Merchant, you are giving that Merchant permission to access funds from your PayPal account according to arrangements made between you and the Merchant. If you enroll, you are giving the Merchant the ability to charge your PayPal account on a one-time, sporadic, or recurring basis until you cancel the specific Billing Agreement from the PayPal website. PayPal facilitates the transaction between you and the Merchant, but does not enforce contractual obligations for payment from you or for delivery of goods or services by the Merchant. Any grievances may be addressed according to PayPal's Buyer Complaint Policy.
2. Waiver of Advance Notice
When a merchant charges your PayPal account, and PayPal withdraws funds from your bank account, you have the right to insist on 10 days' advance notice before the payment is pulled from your bank account. This is designed to protect you as a consumer from insufficient funds charges. By signing up for this Billing Agreement, you are agreeing to get this advance notice only when your total payments to a merchant exceed the billing limit. At any time, you may set another funding source as your preferred method of payment or you may disable your bank account entirely from all Billing Agreements. To do so, please click the 'Edit Funding Sources' link below or access your account profile.
3. Specific Billing Agreement
Each Merchant must secure your acceptance of the Billing Agreement independently. Each Billing Agreement is only effective for the single Merchant with whom it was entered into.
4. Funding Source Use
When the Merchant charges your PayPal Account, PayPal will always attempt to withdraw funds from your PayPal balance first. If funds in your balance are insufficient, PayPal will look for and attempt to charge a Preferred Funding Source that you have set up for a specific Billing Agreement. You will have the option to select a Preferred Funding Source during enrollment, and can update or deselect this Preferred Funding Source at any time through the PayPal website. If the Preferred Funding Source fails (for example, a credit card expires), then PayPal will use other available funding sources within your PayPal Account. You will have the ability to disable funding sources for use with all Billing Agreements, with the exception that if you have one or more credit or debit cards linked to your PayPal account, then at least one of those cards must be enabled for billing. You will be able to disable or enable funding sources for use with all Billing Agreements both within the enrollment flow, and from the Account Profile on the PayPal website.
Re:A Way For Closed Source Scripts? (Score:3, Interesting)
In fact, he can't even see the object code. (Actually, SL doesn't let you obtain the object code for scripts even if you do have the right to modify them. Combine this with the fact that compilation is currently client-side, and just inspecting the source of a script someone gave you isn't sufficient to ensure it's not malicious - you need to recompile it, and the only people who can tell if anyone's exploiting this are Linden Labs.)
This also makes Second Life a GPL-violater's paradise (no way to prove it) - and there's a lot of people in there who don't seem to understand or care about open source or the GPL. (A particularly egregarious example - one infamous indifidual, I think it was Prokofy Neva, claimed that if a script or object was set transfer-allowed, this gave anyone the right to set it no-modify, no-resale, and sell it en masse, no matter what the conditions given with it were. There have been many others... such as the "open source" window blind script that forbidded redistribution; in fact, most of the "open source" items I've seen aren't.)
Re:Another? (Score:2, Interesting)
My perception is that there is a optimal balance between choice and usefulness. If we were living in a world where the only languages were Assembler and BASIC programming would be hugely difficult and software would be suck because the tools were so mismatched to the application. On the other extreme, if there was a language created for every project, programming would be hugely difficult and software would suck because not only would the application have to be written, but the language as well.
Somewhere in the middle is the perfect balance between endless variety of languages and extreme limitations. My feeling is that if some of the effort by the very intelligent and skilled developers who are creating new languages were instead channeled into improving existing languages, the limitations of current tools would be greatly reduced and the experience of all those who know existing languages would be relevant to solving problems. If a developer has to devote time and effort learning a new language, basic syntax, code conventions, optimal design patterns, etc., then that developer is losing time actually writing useful code.
I have written "Hello World" or some generic "Music Store" type app learning:
I would be willing to bet that some projects miss out on a lot of contributed code because people who are willing and have the algorithmic skills to assist are simply unwilling to take the time to learn whatever language is used.
Sorry it this was less than readable. It is late and I am tired and hungry. Off to the kitchen...