@scriptcsnet
www.scriptcs.net

scriptcs.net
@filip_woj
github.com/filipw
www.strathweb.com

scriptcs.net
What is scriptcs?


OSS project enabling rich C# scripting experience



Script and execute -or- use REPL



Low ceremo...
Now C#!

scriptcs.net
scriptcs.net
Key scriptcs features


Relaxed C# syntax & code semantics


As defined in “Interactive C#/VB REPL and Script - Code
Sem...
Demo: 101

scriptcs.net
Demo: #load & #r

scriptcs.net
Demo: REPL

scriptcs.net
Script code semantics


No top level class



No script namespaces



No Main method



Global functions allowed



S...
Typical C# experience


Need access to source code base



Start Visual Studio (...wait...)



Choose VS project templa...
scriptcs.net
Typical scriptcs experience


Install Nuget packages with “scriptcs –install”



Write code in any text editor



Run (...
Extend scriptcs


Script packs




Expose functionality for scripts

Modules


Customize scriptcs



Replace any scri...
Demo: Script packs in action

scriptcs.net
Demo: Web REPL module

scriptcs.net
Demo: Hosting in a .NET app

scriptcs.net
Demo: Mono module

scriptcs.net
Demo: Writing a new scripting
engine

scriptcs.net
Interesting developments


ConfigR – write C# config files in... C#



Executify.net – execute C# snippets in the browse...
Get scriptcs


v0.8



CLI distributed via Chocolatey


cinst scriptcs



Libs available on Nuget



Nightly builds o...
Who is scriptcs?


Community (!)



Coordinators




Justin Rusbatch (@jrusbatch)





Glenn Block (@glennblock)

Fi...
scriptcs - scripted C#, REPL and script extensibility
scriptcs - scripted C#, REPL and script extensibility
scriptcs - scripted C#, REPL and script extensibility
scriptcs - scripted C#, REPL and script extensibility
scriptcs - scripted C#, REPL and script extensibility
scriptcs - scripted C#, REPL and script extensibility
scriptcs - scripted C#, REPL and script extensibility
scriptcs - scripted C#, REPL and script extensibility
scriptcs - scripted C#, REPL and script extensibility
scriptcs - scripted C#, REPL and script extensibility
Upcoming SlideShare
Loading in …5
×

scriptcs - scripted C#, REPL and script extensibility

603
-1

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
603
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

scriptcs - scripted C#, REPL and script extensibility

  1. 1. @scriptcsnet www.scriptcs.net scriptcs.net
  2. 2. @filip_woj github.com/filipw www.strathweb.com scriptcs.net
  3. 3. 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
  4. 4. Now C#! scriptcs.net
  5. 5. scriptcs.net
  6. 6. 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
  7. 7. Demo: 101 scriptcs.net
  8. 8. Demo: #load & #r scriptcs.net
  9. 9. Demo: REPL scriptcs.net
  10. 10. 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
  11. 11. 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
  12. 12. scriptcs.net
  13. 13. Typical scriptcs experience  Install Nuget packages with “scriptcs –install”  Write code in any text editor  Run (edit & run)  Easy to distribute code (just CSX + packages.config) scriptcs.net
  14. 14. Extend scriptcs  Script packs   Expose functionality for scripts Modules  Customize scriptcs  Replace any scriptcs internals scriptcs.net
  15. 15. Demo: Script packs in action scriptcs.net
  16. 16. Demo: Web REPL module scriptcs.net
  17. 17. Demo: Hosting in a .NET app scriptcs.net
  18. 18. Demo: Mono module scriptcs.net
  19. 19. Demo: Writing a new scripting engine scriptcs.net
  20. 20. 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
  21. 21. 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
  22. 22. 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

×