Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

OK, so I'm a noob...

Whelan Docherty
Registered User
Join date: 25 Mar 2007
Posts: 10
03-28-2007 21:00
In Second Life, that is. In First Life, I'm a professional programmer with nearly 30 year's experience, and I know darn near every language that there is to know, including some of the goofier ones like COBOL and APL (but not ADA - God Forbid, or RPG - ugh!).

SL is heavily graphic-oriented, and I have no skills in that area whatsoever - I can barely draw. I can program, though - that's my one marketable skill set in the SL environment. A graphic designer did me a favor, and I'd like to repay her in kind - programming. I'd like to give her an awesome whiz-bang script that would increase the value of the objects she can create. I would also like to set up a paying business in SL, and my sole marketable skill-set in that world is programming. Well, maybe kung-fu as well, but I don't expect that's a highly marketable skill.

Given a good, comprehensive reference manual, I can learn a new language in three days flat. No question. I learned Javascript in less than 24 hours using "Pure Javascript". What I'm looking for is a comprehensive reference manual for LSL. If I can get my hands on such a thing, I can go totally nuts - by Monday.

I've been through the tutorials and whatnot - don't get me wrong. But that's "LSL for dummies". I need ADVANCED documentation. Serious high-end stuff. I need whomever designed LSL to pour out his or her guts and give me the inside goof.

From what I've seen so far, despite the documentation that claims that LSL is "Like C", it bears some extremely spooky similaries to VB. Things like pre-defined event handler names that are completely undocumented. I've been through the WIKI as well, and there is no way that the dearth of functions documented there can explain what I can do in SL. There is a LOT MISSING. I would like to know that that is.

Any and all suggestions are welcome and appreciated.

Oh, and I noticed that there are coding standards posted for C++. As I happen to be an expert in that area, is there any way I can contribute through that path? I get the distinct impression that there are still some issues with serialization, streaming, marshalling, and the like. Perhaps I can help. I happen to have a certain facility for data compression and encryption. Perhaps that would be useful.

Thanks for your collective attention, and I look forward to a reply.
Kenn Nilsson
AeonVox
Join date: 24 May 2005
Posts: 897
03-29-2007 08:27
From: Whelan Docherty

I've been through the tutorials and whatnot - don't get me wrong. But that's "LSL for dummies". I need ADVANCED documentation. Serious high-end stuff. I need whomever designed LSL to pour out his or her guts and give me the inside goof.



There is no 'advanced documentation' for LSL. The stuff you get is what's available. LSL is NOT what you would call an 'advanced' programming language. It's basically a collection of functions that we all do our best to hack together into something that resembles coding.

I'm sure you're an excellent programmer with all the knowledge in the world...and could l33t h4xx0rz anything...but LSL is what you see in the WIKI...nothing more.
_____________________
--AeonVox--

Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd all be running around in darkened rooms chasing ghosts, eating magic pills, and listening to repetitive, addictive, electronic music.
Meade Paravane
Hedgehog
Join date: 21 Nov 2006
Posts: 4,845
03-29-2007 08:37
Have you tried www.lslwiki.net ? The wiki software is horrible (I very much appreciate the site but truly detest the wiki software) but it's fairly complete. There's also wiki.secondlife.com which runs MediaWiki but, hopefully just for now, is more of a raw dump of functions and their sigs without lots of user commentary.
Destiny Niles
Registered User
Join date: 23 Aug 2006
Posts: 949
03-29-2007 08:39
Why not give your talents a whack at the open-source client. I would love two-monitor support; at least for the map and inventory.
Yumi Murakami
DoIt!AttachTheEarOfACat!
Join date: 27 Sep 2005
Posts: 6,860
03-29-2007 09:09
From: Whelan Docherty
From what I've seen so far, despite the documentation that claims that LSL is "Like C", it bears some extremely spooky similaries to VB. Things like pre-defined event handler names that are completely undocumented. I've been through the WIKI as well, and there is no way that the dearth of functions documented there can explain what I can do in SL. There is a LOT MISSING. I would like to know that that is.


As others have mentioned the wiki on www.lslwiki.net is much superior to the standard one. Also join the group "Scripters of Second Life" in the world where you can always ask for help.

From: someone

Oh, and I noticed that there are coding standards posted for C++. As I happen to be an expert in that area, is there any way I can contribute through that path? I get the distinct impression that there are still some issues with serialization, streaming, marshalling, and the like. Perhaps I can help. I happen to have a certain facility for data compression and encryption. Perhaps that would be useful.


These are for work on the open source client. Unfortunately since the server is not open source, it is not possible to work on the communications protocol; and since the open source license is infectious, it isn't possible to build a general business around work on the client, although it might be possible to sell custom modification services.
AJ DaSilva
woz ere
Join date: 15 Jun 2005
Posts: 1,993
03-29-2007 09:22
I believe the LSL compiler's part of the client if you want to download the source and look at it. Never heard of any documentation for anything "advanced" though, what do you mean by that, bytecode tricks and stuff?
Meade Paravane
Hedgehog
Join date: 21 Nov 2006
Posts: 4,845
03-29-2007 09:43
From: Yumi Murakami
As others have mentioned the wiki on www.lslwiki.net is much superior to the standard one.

In content. WakkaWiki is evil. Pure evil.
Sys Slade
Registered User
Join date: 15 Feb 2007
Posts: 626
03-29-2007 11:51
Well if you don't like that one, there's always http://rpgstats.com/wiki/index.php
Dnel DaSilva
Master Xessorizer
Join date: 22 May 2005
Posts: 781
03-29-2007 11:59
From: Destiny Niles
Why not give your talents a whack at the open-source client. I would love two-monitor support; at least for the map and inventory.


I would PAY, PAY REAL MONEY (I'll even convert it from CDN$ to US$ for you) for such a thing.
_____________________
Xessories in Urbane, home of high quality jewelry and accessories.

Coming soon to www.xessories.net

Why accessorize when you can Xessorize?
Cindy Crabgrass
Crashed to Desktop
Join date: 9 Sep 2006
Posts: 158
03-29-2007 12:16
From: Dnel DaSilva
I would PAY, PAY REAL MONEY (I'll even convert it from CDN$ to US$ for you) for such a thing.


Thats very off-topic in here, a Forum for OpenSL is at http://forums.opensecondlife.org/index.php?c=5

I wished i could help, but .. i never did something like Dual Monitor Support in OpenGL Application. Needs a real OpenGL Wizard IMHO.

By the Way, it seems like there is not much Happening with OpenSL.
The only Modification that i heard about was a Griefer Group using a not Bannable Client.
Great, thats what we need. :mad:
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
03-29-2007 14:40
The best documentation is the old now defunct wikki or the downloadable mirror Osgeld made available. The script library and this forum are also very good references.

And you cant beat diving straight in and pulling the legs of someone elses scripts for seeing how they work.

LSL is a monotonic event driven system with a limited code size and low cycle rates.
think Rebate or some of the other early 80's system control languages.
Whelan Docherty
Registered User
Join date: 25 Mar 2007
Posts: 10
OK, so the short version
03-31-2007 09:24
So LSL is JavaScript in it's infancy. That's what I've been getting. In it's infancy, JavaScript didn't actually exist. Somebody cobbled something together, a bunch of people jumped in and helped, and eventually a language evolved that got recognition from the overall internet community, and actually became a real language in and of itself, with a lot of help from Sun and PARC.

I get the sense that LSL is where JavaScript was back in the late '80s. Not quite a real language. OK, under these circumnstances, I can accept that this would be the case. It's not like anybody has done something this ambitious before. Kudos to Linden Labs for taking on something this big. That takes a vision, and visions aren't readily come by.

Having said that, LSL DOES EXIST. I've programmed it (in primitive ways), as have many others, sometimes with truly spectacular effects. This should be news to nobody.

I've been developing for a lot of years. A lot of decades. Somewhere, there is somebody, maybe a single person, or maybe a small team, probably with the name "Linden" figuring prominently, who wrote LSL. It's a program. Somebody wrote it. It didn't just spontaneously 'poof' into existence by itself. Kernihan and Ritchie wrote C, and it wasn't even original - it was a modification of BCPL. It's sole distinction is that it was the first language to be complied by itself - now considered the canonical standard for a viable language.

Whomever that person or persons are, they wrote the interpreter. They know exactly how it functions. They know precisely how it works. If they were to document that base-line, then that would give the collective *all* of us a much better insight into how it can be used.

I've been in this game for a long time, and I REALLY understand how the documentation is the most abysmally tedious part of writing a program. The thrill is in resolving the problem. Doing something that has never been done before. Taking a thought in your head and making it manifest in the world. A true act of creation - even more pure than Childbirth, in that no second party need be part of the creation.

That, however, does not dismiss the responsibility. If you've made a language that you intend others to use, you have to tell them how to use it. Somebody knows that. I don't know who, or where, but I do know their responsibility. Somebody, geek coder (and I'm one) or not, has to suck back, reload, and write a *MANUAL*. Somebody knows how this all works. The collective we need to know that.

If we all know that, then SL can expand and evolve and become a reality unto itself. A something greater than even the visionary at Linden Labs could conceive. An impossible alternate reality where you can fly, and morph, and perform magic, but it's not impossible. It's real. It's your Second Life.

I'm fairly sure that Linden Labs fabricated this world for financial gain. No harm, no foul. If you put up a web-site, you do it for one of two reasons:

1) To make a point
2) To make money

That's all fair. I just think there are greater possibilities here. Possibilities that even I cannot foresee.
Epilort Byrne
Registered User
Join date: 6 Jul 2004
Posts: 30
03-31-2007 13:05
Like everyone else has mentioned....http://www.lslwiki.net. I started by coming up with a project, then thinking about how I would do something in a real language and then using the wiki to see what facilities LSL offers and working from there. If the Wiki really doesn't help you then do a search of these forums and you should be set.
AJ DaSilva
woz ere
Join date: 15 Jun 2005
Posts: 1,993
03-31-2007 13:07
So... is it documentation for the interpreter you're looking for?
Malachi Petunia
Gentle Miscreant
Join date: 21 Sep 2003
Posts: 3,414
03-31-2007 14:28
To paraphrase one of the most talented LSL programmers "It isn't so much the abilities of the language - which are few - but how cleverly you can put them together".

LSL was designed and coded - as has been publically stated by its author - in a weekend. That does not usually lend itself to expressive power. ;)

You could, in principle, develop a RATFORlike pre-processor which emits LSL; I'm not sure it would be worth it.
_____________________
Ed Gobo
ed44's alt
Join date: 20 Jun 2006
Posts: 220
03-31-2007 18:56
There have been some demos already of mono (open source .net equiv) executing lsl which is going to completely rework the way we do the lsl business. Maybe not at first when it will simply clone lsl, but eventually alternative editors will allow all kind of language structures. The demo also runs about a 100 times faster than lsl currently does.

But its been coming for a long time . . . . . (Havok 2 anyone????)
VooDoo Bamboo
www.voodoodesignsllc.com
Join date: 4 Oct 2006
Posts: 911
03-31-2007 20:42
"I'm sure you're an excellent programmer with all the knowledge in the world...and could l33t h4xx0rz anything...but LSL is what you see in the WIKI...nothing more."


Wow have not seen l33t used since I was last in Yahoo Chat among the VB gods.
_____________________
VooDoo DESIGNS www.voodoodesignsllc.com
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
04-01-2007 00:59
From: Ed Gobo
There have been some demos already of mono (open source .net equiv) executing lsl which is going to completely rework the way we do the lsl business. Maybe not at first when it will simply clone lsl, but eventually alternative editors will allow all kind of language structures.



Only if the client is rewritten to allow non SL verified byte code to be uploaded, personally I think it would be a real BAD idea.
Whelan Docherty
Registered User
Join date: 25 Mar 2007
Posts: 10
04-01-2007 06:38
From: AJ DaSilva
So... is it documentation for the interpreter you're looking for?


Umm. Yes? I thought I was being thoroughly explicit about that. You can all tell me about the wiki all you want, but while it is technically possible to learn C++ from rumor, innuendo, and chat, it is still a heck of a lot easier to learn it from a manual.

I had to learn C that way. It took years. I didn't get a decent reference manual until 1985. I CAN learn LSL the hard way. It won't be the first time I did that. I'm almost 50 years old, and pumping several years into something that should take three days does not thrill me anymore. I could die in that time.

I don't understand this. I know documentation is tedious, but why are you all so resistant to it? We are all of us programmers, yes? We all write programs, yes? We all understand that we have to explain them, yes? I've picked up freeby stuff in SL ON MY FIRST DAY that came with a note explaining how I should use it. Even if it was written by a clueless noob, they took the time to document it - explain themselves. I can scarcely pick up or buy anthing in SL that doesn't come with an explanatory note.

These are just the scripters. They are just using a program that was written by somebody else. The scripters will document, but the language developer(s) will not? Help me out here, because I've got to be missing something.
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
04-01-2007 07:38
From: Whelan Docherty
Umm. Yes? I thought I was being thoroughly explicit about that. You can all tell me about the wiki all you want, but while it is technically possible to learn C++ from rumor, innuendo, and chat, it is still a heck of a lot easier to learn it from a manual..


The wikki IS the documentation.

For what ever reason, they dont happen to tell us, LL have jumped on the ultra modern idea of not supporting their product at that level. Its because of the forums and wikki's there is any half decent documentation at all.
Learjeff Innis
musician & coder
Join date: 27 Nov 2006
Posts: 817
04-01-2007 08:14
Documentation for LSL is amatuerish at best. As a result, LL got themselves snookered into having to support unintended side effects.

The LSL team leader should be proud of the great little language the team designed for LL; it's great and contains a number of excellent compromises over a bunch of sticky issues. However, that person should be embarrassed to release such a poorly documented product.

Really, I wouldn't tolerate this kind of crappy documentation in an in-house project, let alone a customer interface. (And I've been in the business of developing middleware, where our customers used our APIs.)

We scripters put up with it because our only other option is to quit scripting.

If I knew who that person was, I'd send him or her a copy of the book on contract-based programming (I don't recall the title offhand). Obviously it's sorely needed.

Meanwhile, we test things and code based on the results of our tests. This is well known in the software industry to be a recipe for disaster, a practice of the inexperienced or foolish, but it's the only game in town.
Whelan Docherty
Registered User
Join date: 25 Mar 2007
Posts: 10
Finally!
04-01-2007 09:50
From: Learjeff Innis
We scripters put up with it because our only other option is to quit scripting.

If I knew who that person was, I'd send him or her a copy of the book on contract-based programming (I don't recall the title offhand). Obviously it's sorely needed.

Meanwhile, we test things and code based on the results of our tests. This is well known in the software industry to be a recipe for disaster, a practice of the inexperienced or foolish, but it's the only game in town.


Well, thank God there is somebody else who sees the problem for what it is. Now, at least, I know that I'm not insane.

I also know that I have to find somebody and talk to them...
Learjeff Innis
musician & coder
Join date: 27 Nov 2006
Posts: 817
04-01-2007 10:22
You should be up and scripting away in no time, using the wiki. Just be aware that you have to test each step as you go, rather than writing tomes and expecting it to work. That's a good practice anyway.
AJ DaSilva
woz ere
Join date: 15 Jun 2005
Posts: 1,993
04-02-2007 08:27
I agree, it would be nice; I've had situations before where the only way to pick between a couple of implimentations has been to know how things are going to happen server-side.

I'm not sure of the best route to go getting this though. Getting hold of a Linden comment on this issue could well result in nothing more than a "it's intended for the future but we don't feel it's important enough to spend resources on right now" response, but could be worth a go. Theoretically I believe entering it as a JIRA issue should get it released eventually, but I couldn't guess when that'd be.

Perhaps it'd be worth asking about on the SLDev mailing list (or maybe the scripters one, but I've not checked what sort of people are on there yet).
Learjeff Innis
musician & coder
Join date: 27 Nov 2006
Posts: 817
04-02-2007 12:23
I sure would like to see tools for evaluating script efficiency that could be used by folks who aren't private island owners.

Another nifty idea would be an efficiency underwritering lab, which would benchmark products and give them efficiency ratings, in terms of say, server CPU time per activity (like touch, sit, chat, etc.) However, I can see that it would be rather unrealistic without a an awful lot of volunteer time, not to mention a sim and an API to the owner tools.