[Opensim-dev] Critical Plugin Check

Melanie melanie at t-data.com
Mon Jun 23 09:56:16 UTC 2008


I'm very happy to hear this, as it will finally allow us to make LSL 
truly compatible. As a matter of fact, double, int and string are 
overridden only because of missing implicit casts. If the casts can 
be generated as explicit casts on base types at parser level, we may 
revert those to base types again.

There is one difficulty, in that double->string casts in LSL always 
return a #.000000 formatted number, and many scripts depend on that.

But even that could be surmounted by emitting a function call rather 
than a cast, e.g. make (string)floatvar into 
string_format_double(floatvar).

Melanie

Mike Mazur wrote:
> Hi,
> 
> On Thu, 19 Jun 2008 08:21:38 -0500
> krtaylor <krtaylor at linux.vnet.ibm.com> wrote:
> 
>> Please share your plans - as this is an area I have also been working 
>> on, although it sounds like you are further along...
> 
> I'm generating a lexer and parser, currently with Compiler tools in C#
> written by Malcolm Crowe[1]. It generates C# code and is lightweight
> (ie: doesn't require me to install Java ;).
> 
> When I get the abstract syntax tree, I first traverse it and perform
> transformations on it. This is where "integer" is changed to
> "LSL_Types.LSLInteger" and additional nodes, such as for explicit casts
> where needed, can be inserted.
> 
> Finally I traverse the tree again and print out the C# code.
> 
> Mike
> 
> 
> [1] http://cis.paisley.ac.uk/crow-ci0/
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev
> 
> 



More information about the Opensim-dev mailing list