F#具有REPL(讀取評估打印循環)F#Interactive,C:\Program Files (x86)\Microsoft F#\v4.0\Fsi.exe
。Visual Studio以外的C#REPL
我知道C#現在有自己的交互式REPL,與Roslyn一起發佈。如何在Visual Studio外部打開? csi.exe
在哪裏?
F#具有REPL(讀取評估打印循環)F#Interactive,C:\Program Files (x86)\Microsoft F#\v4.0\Fsi.exe
。Visual Studio以外的C#REPL
我知道C#現在有自己的交互式REPL,與Roslyn一起發佈。如何在Visual Studio外部打開? csi.exe
在哪裏?
C#互動窗口和csi.exe REPL添加到的Visual Studio 2015年更新1(重點煤礦):
引入互動
交互式窗口又回來了!C#的互動窗口在Visual Studio 2015年更新1返回與一對夫婦的其他互動零食一起:
C#互動。 C#交互式窗口本質上是一個讀取評估打印循環(REPL),它允許您利用.NET技術進行演示和探索,同時利用IntelliSense,語法着色等編輯器功能。瞭解更多關於如何使用C#在第9頻道上互動或閱讀我們的初學者漫遊。
csi。如果您不想打開Visual Studio以使用C#或運行腳本文件,則可以從開發人員命令提示符訪問交互式引擎。鍵入
csi /path/myScript.csx
執行腳本文件或鍵入csi
將放入命令行REPL中。腳本API。腳本API使您能夠在主機創建的執行環境中執行C#代碼片段。通過查看我們的代碼示例,您可以瞭解更多關於如何創建自己的C#腳本引擎的信息。
見What’s New in Visual Studio 2015 Update 1 for .NET Managed Languages。
https://www.visualstudio.com/en-us/news/vs2015-update1-vs.aspx
>csi
Microsoft (R) Visual C# Interactive Compiler version 1.1.0.51109
Copyright (C) Microsoft Corporation. All rights reserved.
Type "#help" for more information.
> #help
Keyboard shortcuts:
Enter If the current submission appears to be complete, evaluate it. Otherwise, insert a new line.
Escape Clear the current submission.
UpArrow Replace the current submission with a previous submission.
DownArrow Replace the current submission with a subsequent submission (after having previously navigated backwards).
REPL commands:
#help Display help on available commands and key bindings.
Script directives:
#r Add a metadata reference to specified assembly and all its dependencies, e.g. #r "myLib.dll".
#load Load specified script file and execute it, e.g. #load "myScript.csx".
>
> Enumerable.Range(10)
(1,12): error CS7036: There is no argument given that corresponds to the required formal parameter 'count' of 'Enumerable.Range(int, int)'
> Enumerable.Range(1, 10)
RangeIterator { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }
輝煌,讓我試試看 –
我發現的唯一可執行文件是C:\Program Files (x86)\Microsoft Codename Roslyn CTP\Binaries\rcsi.exe
,它可以執行.csx
文件。但它似乎並不支持REPL。
同樣適用於我(新CTP)'C:\ Program Files文件(x86)\ Microsoft Roslyn CTP \ Binaries \ rcsi.exe' –
安德斯·海爾斯伯格建立一個C#REPL循環在這個視頻中,65分:
http://channel9.msdn.com/Events/PDC/PDC08/TL16#time=65m00s
這是羅斯林的一個更老的版本,但同樣的想法適用(和eval;!)。
我創建了你所要求的,一個基於Roslyn的REPL在VisualStudio之外運行。
您可以從PoC - Roslyn C# ScriptEngine Execute v1.0.exe下載它,它是一個獨立的exe文件,包含所有Roslyn程序集作爲嵌入式資源。又見Video: Using O2's Roslyn-based C# REPL Script environment
請注意,我已經開發了O2 Platform一個更強大的C#REPL,你可以看到從C# REPL Script Environment
下載在羅斯林的話題,下面是我創造了多項other stand-alone tools:
請注意,所有這些工具和O2平臺都是在undefined r開放源代碼許可證,所以請隨意擴大並使它們更好:)
文件不可用。 – ismail
是的,Dropbox是荒謬的(他們阻止所有的下載,更糟的是所有都不告訴我哪些文件是問題:() –
好吧,我終於找到了一個地方再次放置這些文件,他們現在在bintray 。請看看https://bintray.com/o2-platform/O2-Tools/Roslyn,讓我知道它是否正常工作 –
scriptcs:http://scriptcs.net/?
有一個REPL,你甚至可以獲得NuGet的力量。
它可能不是一個替代品,但我主要使用RoslynPad快速的研究和試驗。我也使用Linqpad。 根據他們的網站https://roslynpad.net/,RoslynPad是「基於Roslyn的簡單C#編輯器」。你可以編寫小腳本,你可以看到變量值,你也可以保存它們。
我認爲這是一個樣本...至少,Anders在網上提供的第一個Roslyn演示文稿中創建了一個基於控制檯的REPL。如果您可以找到演示文稿,代碼非常簡單,您可以基於此輕鬆編寫代碼。 –
現在有一個:),你可以通過我的回答下面看到 –