Aug 25

This is part 19 in a series of articles on obscure programming languages.

What is Script.NET?

Powered by Script.NET. Copyright © Microsoft Corp.

Script.NET (also known as S#) is an open-source metaprogramming language that adds scripting capabilities to Microsoft .NET applications, similar to VBA in Microsoft Office applications.

History

Script.NET was created in 2007 by Petro Protsyk, a Microsoft Certified Professional Developer.  It started as a CodeProject article and eventually moved to CodePlex.  In 2008, Script.NET was implemented with the Dynamic Language Runtime (DLR) and ported to the Irony platform.  In late 2010, S# v3.0 beta was released for the .NET 4 platform.

Design

S# is a weakly-typed dynamic language and runtime infrastructure to make .NET applications flexible, customizable, and extendable.  S# adds runtime scripting to .NET applications, similar to how VBScript extends Microsoft Word and Excel.

The S# syntax is similar to JavaScript.  It is designed to be simple and efficient, has a true runtime interpreter, and it is executed without generating additional in-memory assemblies.  The S# API allows full bi-directional communication between script and application code.  It’s easy to extend S# by embedding external functions and functional objects, shared static or dynamic variables, operator handling and type filters from the host application.

Currently S# supports the following platforms:

  • Microsoft .NET 4
  • Microsoft .NET 3.5 (SP1)
  • Microsoft Silverlight > 3
  • Microsoft .NET Compact Framework
  • Microsoft XNA Framework
  • MONO

“Hello World” in Script.NET

ast = <[ MessageBox.Show('Hello'); ]>;
prog.AppendAst(ast);

References

Share and Enjoy:
  • Twitter
  • Facebook
  • Reddit
  • LinkedIn
  • Digg
  • DotNetKicks
  • StumbleUpon
  • Slashdot
  • Technorati
  • Google Bookmarks
  • Print
  • email

Article published on August 25, 2011




One Response to “Script.NET aka S#: Obscure Programming Language of the Month”

  1. Robart Pattintion Says:

    Even I think S# is weak and this is the reason it to be less used by the people. It can become more strong as JavaScript if focused and made changes to it.

Leave a Reply