C# 与F# REPLs的交互式编程(ScriptCS 或Visual Studio交互式窗口)

[原文发表地址]Interactive Coding with C# and F# REPLs (ScriptCS or the Visual Studio Interactive Window)

[原文发表时间]January 29, '16

REPLs非常好!REPLs是Read–eval–print loop的缩写,读作"REP-L"。大多语言和环境都有交互式的编码,而且都以REPLs作为核心的方法已经很多年了。虽然C#与F#都拥有REPLs功能,但许多人并没有意识到REPLs的可用性。

ScriptCS

曾在2013年,当Roslyn开放了源文件意味着C#编译器开始走向成熟,Glenn Block和他的朋友开发了ScriptCS 。你可以访问 https://scriptcs.net 以及GitHub and active communityMono项目已经拥有REPL很长时间了

image

你可以花几分钟时间安装一个ScriptCS,Chocolatey Package Manager或者OneGet with Chocolatey on Windows 10。在上面的截图中,我正在命令行里写了一些代码,出现了一个错误,我已经修复了它。这是学习C#的一个很好的方法,而且它也非常的强大。你可以创建一个C#的脚本程序(.csx文件),有点像PowerShell,但是它还只是C#.

Visual Studio's REPLs - CSI and FSI

Visual Studio团队经常与ScriptCS人员开会,他们甚至把他们的会议笔记放在GitHub上。在去年5月,他们已经使ScriptCS可以在OmniSharpVisual Studio中工作了,令人十分惊喜。这儿有一套知道关于如何设置 ScriptCS 代码在 Visual Studio中工作以及如何将代码快速迁移到GitHub上

Visual Studio 2015 Update 1在自身IDE内已经包含了REPLs。如果你已经装了visual studio 2015 ,并确保你已经升级到Update 1。如果你没有安装 VS,你可以在https://visualstudio.com/free免费得到Visual Studio Community版。

VS发布了一个命令行的RELP,叫做为“CSI”,你也可以使用这个去执行".csx"脚本文件。这证明了对于CSI的源代码基本没有什么问题了!你可以把代码在https://source.roslyn.io/#csi/Csi.cs check out,你可以看到给你自己的APP上添加脚本(交互或者其他)有多么的容易.

C# Interactive REPL inside Visual Studio

这是Kasey Uhlenhuth讲的非常好的一个关于C#交互演示,你可以花点时间看一下。她是这个功能的Program Manager,并且在第9频道有关于如何使用 C# 互动的REPL的很棒的视频。

image

当然,F#也有REPL,称作"fsi.exe",也随着VS发布了。或许它已经安装在你的电脑上了,但是你没有意识到。事实上。F # 脚本文件是".fsx”, 所以在脚本编写上是非常相似的,REPL不仅支持VS还支持命令行。

The F# Interactive Shell

F#'s REPL也包含在VS里,右图中C#交互窗口的旁边就是F#的交互窗口。

C# Interactive and F# Interactive in VS

这是学习和探索代码所有的选项,它比传统的代码"编写、 编译、 等待,运行"有更多的交互方法 ,所以很多人都使用它了。

让我们在评论中听到你的建议,例如如何··· (或者如果···) 。您正在使用 REPLs,希望C#、F#会让你编程生活更美好。