Zum Inhalt springen

Squirrel (Programmiersprache)

aus Wikipedia, der freien Enzyklopädie
{{#if: | {{#if: | {{#if:Objektorientiert| {{#if:2003| {{#if:| {{#if:Alberto Demichelis| {{#if:| {{#if:| {{#if:dynamisch| {{#if:| {{#if:| {{#if:| {{#if:| {{#if:MiniD| {{#if:| {{#if:| {{#if:squirrel-lang.org|
{{#if: | | {{#invoke:WLink|getArticleBase}} }}
colspan="2" class="notheme" style="text-align:center; background-color:#Vorlage:Standardfarbe;" | |
 {{#if: {{#invoke:Wikidata|claim|P154}} |
[[Datei:{{#invoke:Wikidata|claim|P154}}|150px]]
 }}

}}

{{{Screenshot}}}{{#if: |
}}|

}}

Basisdaten
Paradigmen: Objektorientiert

}}

Erscheinungsjahr:
 {{#if: {{#invoke:Wikidata|claim|P571}} | 
Erscheinungsjahr: claim|P571|references=ja}}
 }}

}}

Designer:
 {{#if: {{#invoke:Wikidata|claim|P287}} | 
Designer: claim|P287|parameter=link|references=ja|list=, }}
 }}

}}

Entwickler:
 {{#if: {{#invoke:Wikidata|claim|P178}} | 
Entwickler: claim|P178|parameter=link|references=ja|list=, }}
 }}

}}

Aktuelle Version:  () |

{{#if: {{#invoke:Wikidata|claim|P348}} |

Aktuelle Version {{#invoke:Wikidata|claim|P348|references=ja}}{{#if: {{#invoke:Wikidata|claim|Version|qualifier=P577}} | ({{#invoke:Wikidata|claim|Version|qualifier=P577}})}}}}

}}

Aktuelle Vorabversion: {{{AktuelleVorabVersion}}}  ({{{AktuelleVorabVersionFreigabeDatum}}})

}}

Typisierung: dynamisch

}}

Wichtige Implementierungen:

}}

Dialekte:

}}

Standardisierungen:

}}

Beeinflusst von:
 {{#if: {{#invoke:Wikidata|claim|P737}} | 
Beeinflusst von: claim|P737|parameter=link|references=ja|list=, }}
 }}

}}

Beeinflusste: MiniD

}}

Betriebssystem:
 {{#if: {{#invoke:Wikidata|claim|P306}} | 
Betriebssystem: claim|P306|parameter=link|references=ja|list=, }}
 }}

}}

Lizenz:
 {{#if: {{#invoke:Wikidata|claim|P275}} | 
Lizenz: claim|P275|parameter=link|references=ja|list=, }}
 }}

}}

squirrel-lang.org |
 {{#if: {{#invoke:Wikidata|claim|P856}} | 
{{#invoke: WLink | formatURL | {{#invoke:Wikidata|claim|P856|parameter=link}}}}
 }}

}}

Squirrel ist eine dynamisch typisierte, objektorientierte Programmiersprache. Sie ist insbesondere dafür gedacht, in Computerspielen und anderen Anwendungsprogrammen als eingebundene Skriptsprache verwendet zu werden. Das Design ist wesentlich von Lua inspiriert.<ref name="FAQ">FAQ (englisch)</ref> Verwendet wird sie zum Beispiel in OpenTTD, um KI-Spieler zu erstellen und in Supertux für das Scripting in den Levels. Der Compiler und der Interpreter bestehen zusammen aus nicht mehr als 6000 Zeilen C++ Code.

Syntax

Die Syntax von Squirrel ist an C++ angelehnt. Eine Funktion, welche die Fakultät einer natürlichen Zahl x berechnen kann, sieht zum Beispiel wie folgt aus: <syntaxhighlight lang="javascript"> function factorial(x) {

 if (x == 0) {
   return 1;
 }
 else {
   return x * factorial(x - 1);
 }

} </syntaxhighlight>

Geschichte

Squirrel wurde von Alberto Demichelis für ein Computerspielprojekt entwickelt, weil er Probleme mit der Garbage Collection von Lua hatte.<ref name="FAQ" /> Im Jahr 2003 wurde Squirrel unter der zlib-Lizenz veröffentlicht.

Weblinks

Einzelnachweise

<references />