Script.NET
Script.NET | |
---|---|
Paradigms : | Scripting language |
Developer: | Petro Protsyk |
Current version : | Beta 17122007 (December 17, 2007) |
Typing : | weak , dynamic , duck typing |
Influenced by: | JavaScript |
Operating system : | all with CLR |
License : | GNU Lesser General Public License (LGPL) |
http://www.protsyk.com/scriptdotnet/ |
Script .NET or S # is a programming language that makes use of metaprogramming mechanisms . Her work places functionalities that allow scripts in the environment Microsoft .NET run and change during the term. The syntax is very much influenced by JavaScript .
Metaprogramming
In Script .NET there may be a. the special operator <[ program code ]> , which returns the abstract syntax tree (AST) of a program . The AST of the current program can be accessed via the object prog , as the following example shows:
// 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);
Examples
Hello World!
MessageBox.Show('Hallo, Welt!');
Bubble sort
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 - web feeds
rss = new XmlDocument();
rss.Load('http://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);
See also
- Microsoft .NET
- List of .NET languages
- Script.NET On-Line ( Memento from July 14, 2012 in the Internet Archive )
Web links
- Homepage of Script.NET
- Script.NET at GitHub