5. What is scriptcs?
OSS project enabling rich C# scripting experience
Script and execute -or- use REPL
Low ceremony, lightweight
Use your favorite text editor
No compilation/projects/solutions
scriptcs.net
9. Key scriptcs features
Relaxed C# syntax & code semantics
As defined in “Interactive C#/VB REPL and Script - Code
Semantics Spec“ white paper
REPL
Node.js-like extensibility model (script packs)
Debug & step through in Visual Studio
Sublime text plugin
Scriptcs.Core available as a hostable service
Nuget integration
scriptcs.net
13. Script code semantics
No top level class
No script namespaces
No Main method
Global functions allowed
Script packs accessible through Require<T>
#load directive to load script from script
#r directive to reference an assembly from script
Modules, assemblies loaded automatically/by
convention
scriptcs.net
14.
15.
16. Typical C# experience
Need access to source code base
Start Visual Studio (...wait...)
Choose VS project template
Create new solution
Add references, install Nuget packages, import
namespaces
Compile and run (repeat: compile+run)
Difficult to distribute code (bloated)
scriptcs.net
29. Interesting developments
ConfigR – write C# config files in... C#
Executify.net – execute C# snippets in the browser
scriptcs F# Engine by Dave Thomas / Ryan Riley
Bau – build system powered by scriptcs
scriptcs WebConsole / Glimpse.scriptcs
scriptcs PowerShell module by Jim Christopher
scriptcs support in OctopusDeploy
scriptcs in [NDA]
scriptcs.net
30.
31. Get scriptcs
v0.8
CLI distributed via Chocolatey
cinst scriptcs
Libs available on Nuget
Nightly builds on MyGet
Build from source
github.com/scriptcs
scriptcs.net
32. Who is scriptcs?
Community (!)
Coordinators
Justin Rusbatch (@jrusbatch)
Glenn Block (@glennblock)
Filip Wojcieszyn (@filip_woj)
Core Commiters
Damian Schenkelman (@dschenkelman)
Kristian Hellang (@khellang)
scriptcs.net