Linden Scripting Language: differenze tra le versioni

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Contenuto cancellato Contenuto aggiunto
SunBot (discussione | contributi)
m Bot: Standardizzo interwiki
Riga 1: Riga 1:
Il '''Linden Scripting Language''' (LSL) è un linguaggio di programmazione dedicato al metamondo [[Second Life]], realizzato dalla [[Linden Lab]]. Ha una sintassi simile a quella del [[C (linguaggio)|linguaggio C]] e permette di progettare e controllare il comportamento degli oggetti presenti nell'ambiente. È possibile inoltre grazie a tali script interfacciare il contenuto del mondo di Secondo Life con il resto della rete internet mediante email, XML-RPC, e recentemente anche via HTTP.
Il '''Linden Scripting Language''' (LSL) è un linguaggio di programmazione dedicato al metamondo [[Second Life]], realizzato dalla [[Linden Lab]]. Ha una sintassi simile a quella del [[C (linguaggio)|linguaggio C]] e permette di progettare e controllare il comportamento degli oggetti presenti nell'ambiente. È possibile inoltre grazie a tali script interfacciare il contenuto del mondo di Secondo Life con il resto della rete internet mediante email, XML-RPC, e recentemente anche via HTTP.
== Caratteristiche ==
== Caratteristiche ==
LSL è un [[linguaggio di scripting]] [[Linguaggio_tipizzato|fortemente tipizzato]]. Uno script consiste nella definizione finita di un insieme di funzioni, variabili, cicli.<br>
LSL è un [[linguaggio di scripting]] [[Linguaggio_tipizzato|fortemente tipizzato]]. Uno script consiste nella definizione finita di un insieme di funzioni, variabili, cicli.
LSL aggiunge a queste funzionalità anche gli stati. Ogni stato contiene le istruzioni per gestire gli eventi che si modificano. Un oggetto muro avrà uno stato quando viene toccato, uno stato quando non lo è, ecc.<br>
LSL aggiunge a queste funzionalità anche gli stati. Ogni stato contiene le istruzioni per gestire gli eventi che si modificano. Un oggetto muro avrà uno stato quando viene toccato, uno stato quando non lo è, ecc.

Ci sono più di 300 librerie di funzioni disponibili. I programmatori possono definire anche funzioni prorpie.<br>
Uno script LSL è complilato in bytecode, per essere poi eseguito su uno dei server della Linden Lab.<br>
Ci sono più di 300 librerie di funzioni disponibili. I programmatori possono definire anche funzioni proprie. Uno script LSL è complilato in bytecode, per essere poi eseguito su uno dei server della Linden Lab. Il pacchetto base di LSL gestisce [[Numero intero|interi]], [[Numero in virgola mobile|numeri in virgola mobile]], [[stringa (informatica)|stringhe]] e [[array|vettori]], anche eterogenei.

Il pacchetto base di LSL comprende [[intero|interi]], [[float|numeri in virgola mobile]], [[stringa|stringhe]], [[vettore|vettori]] e rotazioni. Ci sono anche vettori eterogenei, e non ci sono array nè funzioni built-in.<br>
D'altro canto, gli script di continuare a circolare anche quando un utente non è connesso, e se un oggetto è stato salvato (presa in inventario), e poi re-introdotto nel mondo in seguito, si mantiene ancora il suo stato precedente.<br>
== Hello, world in LSL ==
== Hello, world in LSL ==
Ecco un esempio di script che saluta il tuo avatar:
Ecco un esempio di script che saluta il tuo avatar:

Versione delle 18:03, 25 lug 2009

Il Linden Scripting Language (LSL) è un linguaggio di programmazione dedicato al metamondo Second Life, realizzato dalla Linden Lab. Ha una sintassi simile a quella del linguaggio C e permette di progettare e controllare il comportamento degli oggetti presenti nell'ambiente. È possibile inoltre grazie a tali script interfacciare il contenuto del mondo di Secondo Life con il resto della rete internet mediante email, XML-RPC, e recentemente anche via HTTP.

Caratteristiche

LSL è un linguaggio di scripting fortemente tipizzato. Uno script consiste nella definizione finita di un insieme di funzioni, variabili, cicli. LSL aggiunge a queste funzionalità anche gli stati. Ogni stato contiene le istruzioni per gestire gli eventi che si modificano. Un oggetto muro avrà uno stato quando viene toccato, uno stato quando non lo è, ecc.

Ci sono più di 300 librerie di funzioni disponibili. I programmatori possono definire anche funzioni proprie. Uno script LSL è complilato in bytecode, per essere poi eseguito su uno dei server della Linden Lab. Il pacchetto base di LSL gestisce interi, numeri in virgola mobile, stringhe e vettori, anche eterogenei.

Hello, world in LSL

Ecco un esempio di script che saluta il tuo avatar:

default
{
  state_entry()
  {
    llSay(0, "Hello, Avatar!");
  }
   
  touch(integer total_number)
  {
    llSay(0, "Touched.");
  }
}

Si può vedere il metodo touch che indica allo script cosa fare quando l'oggetto viene toccato.

Anbiente di sviluppo (IDE)

Su Seconf Life è stato messo a disposizione di chiunque volesse crearsi un proprio script un IDE particolare.
Si tratta di una specie di programma per modellazione 3D, dove si può anche modificare il codice.

Il futuro di LSL

Una nuova release del linguaggio era stata annunciata nel 2006, ma è stata posticipata a tempo indefinito. La Linden Lab sta ancora sviluppando il linguaggio, come evidenziato da una dimostrazione fatta alla Microsoft. Il nuovo interprete usa mono (la versione open source del framework .NET della Microsoft), in quanto macchina virtuale per l'esecuzione degli script sui server.
Il linguaggio rimane lo stesso, ma l'esecuzione su mono aumenta di molto la velocità di esecuzione.

Collegamenti Esterni