Script.NET – Wikipedia
Script.NET | |
---|---|
Paradigmen: | Skriptsprache |
Entwickler: | Petro Protsyk |
Aktuelle Version: | Beta 17122007 (17. Dezember 2007) |
Typisierung: | schwach, dynamisch, Duck-Typing |
Beeinflusst von: | JavaScript |
Betriebssystem: | alle mit CLR |
Lizenz: | GNU Lesser General Public License (LGPL) |
https://www.protsyk.com/scriptdotnet/ |
Script .NET bzw. S# ist eine Programmiersprache, die sich Mechanismen der Metaprogrammierung bedient. Sie stellt dabei Funktionalitäten zur Verfügung, die es erlauben, Skripte in der Common Language Runtime (CLI) des .Net-Frameworks auszuführen und während der Laufzeit zu verändern. Die Syntax ist sehr stark von JavaScript beeinflusst.
Metaprogrammierung
[Bearbeiten | Quelltext bearbeiten]In Script .NET existiert u. a. der spezielle Operator <[ Programmcode ]>, der den Abstract Syntax Tree (AST) eines Programms zurückgibt. Auf den AST des aktuellen Programms kann über das Objekt prog zugegriffen werden, wie das folgende Beispiel zeigt:
// AST erstellen, der eine MessageBox mit dem Ausdruck "Guten Tag!" ausgibt ast = <[ MessageBox.Show('Guten Tag!'); ]>; // Programmcode dem aktuellen Programm anfügen prog.AppendAst(ast);
Beispiele
[Bearbeiten | Quelltext bearbeiten]MessageBox.Show('Hallo, Welt!');
zahlen = [5, 9, 1979, 23, 9, 1979]; for (i = 0; i < zahlen.Length; i++) { for (j = i + 1; j < zahlen.Length; j++) { if ( zahlen[j] < zahlen[i] ) { // tauschen temp = zahlen[i]; zahlen[i] = zahlen[j]; zahlen[j] = temp; } } } // Ausgabe erstellen ausgabe = 'Ergebnis: '; for (i = 0; i < zahlen.Length; i++) { if (i > 0) { ausgabe = ausgabe + ', '; } ausgabe = ausgabe + zahlen[i]; } MessageBox.Show(ausgabe);
rss = new XmlDocument(); rss.Load('https://www.tagesschau.de/xml/tagesschau-meldungen/'); MessageBox.Show('tagesschau.de Meldungen: '); // Titel aller vorhandenen Themen/Meldungen ausgeben foreach (feed in rss.SelectNodes('/rss/channel/item/title')) MessageBox.Show(feed.InnerText);
Weblinks
[Bearbeiten | Quelltext bearbeiten]- Homepage von Script.NET
- Script.NET bei GitHub
- Script.NET On-Line ( vom 14. Juli 2012 im Internet Archive)