LSLForge is an offline IDE for editing and debugging of LSL code. LSLForge 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.
LSLForge is a derivative of LSL-Plus, forked in September 2011.
LSLForge 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. LSLForge 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, Git, etc.), Mylyn task management, etc.
LSL-Plus "unofficial" (September 4, 2011) - Details available here.