Difference between revisions of "LSL3"

From Second Life Wiki
Jump to navigation Jump to search
Line 26: Line 26:
=== Functions ===
=== Functions ===
* Organized into static classes?
* Organized into static classes?
* Or keep the namespace flat to keep the syntax simple.


=== States & Events ===
=== States & Events ===
* State variables.
* State variables.
* User defined events that can be triggered by external scripts.
* User defined events that can be triggered by external scripts.

Revision as of 12:24, 24 February 2008

Purpose

The purpose of the LSL3 project is to design a new programing language that would replace LSL2 in Second Life.

Design Ideals

  • It should be designed to enable expression and not hinder expression with complex or over burdensome syntax requirements.
  • C style syntax and order of operations
  • Type safety
  • Strongly Typed

Goal

Address the shortcomings of LSL2 and add new functionality while limiting the increase of language complexity.

Proposed Changes for LSL2

Here are some proposed changes to LSL2. Please add new changes, if they cannot be summed up in a single sentence please create a subpage to this article and put a link in the appropriate section.

Syntax

  • Fix quaternion ordering
  • Object model for base types
  • Array indexer

Types

  • User defined class & structures
    • Duck Typing (LinFu?)

Functions

  • Organized into static classes?
  • Or keep the namespace flat to keep the syntax simple.

States & Events

  • State variables.
  • User defined events that can be triggered by external scripts.