Difference between revisions of "LSL-Plus"

From Second Life Wiki
Jump to navigation Jump to search
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
== LSL Plus ==
== LSL Plus [[Image:lslplus-merit-badge.jpg]] ==


[http://lslplus.sourceforge.net LSL Plus] is an offline IDE for editing and debugging of LSL code.  LSL Plus is Free/Libre Open Source Software (FLOSS), meaning source is included when you download the software, and you are free to update it and redistribute it.
[http://lslplus.sourceforge.net LSL Plus] is an offline IDE for editing and debugging of LSL code.  LSL Plus is Free/Libre Open Source Software (FLOSS), meaning source is included when you download the software, and you are free to update it and redistribute it.
Line 26: Line 26:
** framework executes the code, checks results, displays test results, and test log.
** framework executes the code, checks results, displays test results, and test log.
* Meta-language features: split your code up into reusable modules, test them separately.  LSL Plus will create the combined, validated scripts for you for upload into Second Life.
* Meta-language features: split your code up into reusable modules, test them separately.  LSL Plus will create the combined, validated scripts for you for upload into Second Life.
* Optimization support: inlining, constant folding, pruning of unused elements.
* Integrated into [http://www.eclipse.org Eclipse], giving you access to several integrated source code control systems (CVS, Subversion, etc.), Mylyn task management, etc.
* Integrated into [http://www.eclipse.org Eclipse], giving you access to several integrated source code control systems (CVS, Subversion, etc.), Mylyn task management, etc.
* Future directions:
* Future directions:
** Adding physics simulation, collisions
** Write LSL unit tests in LSL, instead of declaratively
** Improved implementation of some library functions
** Visualization support
** And bug fixes (it is in alpha)
** Improved physics fidelity
** And bug fixes (it is in late beta)
** More scripting of Simulator events, for more interesting tests
** Refactoring support

Latest revision as of 14:51, 7 February 2009

LSL Plus Lslplus-merit-badge.jpg

LSL Plus is an offline IDE for editing and debugging of LSL code. LSL Plus is Free/Libre Open Source Software (FLOSS), meaning source is included when you download the software, and you are free to update it and redistribute it.

LSL Plus has the following features:

  • Source Level Debugging:
    • set breakpoints
    • single step through code
    • examine variables all the way up the call stack, including global variables
  • Typical IDE editor features:
    • source code completions
    • integrated information about types, names of built in function arguments
    • documentation hover support
    • auto indentation
    • syntax highlighting
  • A Extensive simulation framework for running multiple scripts and testing concurrency
    • Build an environment with avatars, objects, prims, inventory, etc.
    • Embed any number of scripts in any number of prims
    • Add specialized event handlers to simulate avatar actions or external services (e.g. HTTP servers)
    • Test link message, chat, inter-object email, sensors, touches
  • A Unit Testing framework:
    • specify the code entry point you want to test (a function, or a specific handler in a specific state).
    • specify the expect return value, and/or the expected change to the state of global variables
    • specify the external calls you expect the code to make
    • framework executes the code, checks results, displays test results, and test log.
  • Meta-language features: split your code up into reusable modules, test them separately. LSL Plus will create the combined, validated scripts for you for upload into Second Life.
  • Optimization support: inlining, constant folding, pruning of unused elements.
  • Integrated into Eclipse, giving you access to several integrated source code control systems (CVS, Subversion, etc.), Mylyn task management, etc.
  • Future directions:
    • Write LSL unit tests in LSL, instead of declaratively
    • Visualization support
    • Improved physics fidelity
    • And bug fixes (it is in late beta)
    • More scripting of Simulator events, for more interesting tests
    • Refactoring support