`
RednaxelaFX
  • 浏览: 3016057 次
  • 性别: Icon_minigender_1
  • 来自: 海外
社区版块
存档分类
最新评论

Mono的一个新的有趣的项目:CsharpRepl

    博客分类:
  • Mono
阅读更多
项目官网:CsharpRepl

链接更新:
Miguel de Icaza: C# Eval: An Embeddable Compiler
R. Tyler Ballance: Resurgange of the shell.
Daniel Morgan: Mono's interacive C# and using System.Data

Miguel de Icaza(Mono创始者)的blog上看到了关于这个交互式C# shell的消息,觉得相当有趣。甚至可以说这是“a dream come true”,我一直就希望C#也能有个好用的交互式shell。

例子:
引用
csharp> 1; 
1 
csharp> "Hello, World".IndexOf (","); 
5 
csharp> Console.WriteLine ("Hello"); 
Hello 


一直认为许多动态语言的实现给用户带来的一个便利点就是REPL(read-eval-print loop)的开发方式,而这种开发方式的核心就在于交互式shell。REPL当然并不是动态类型语言特有的,许多静态语言的实现也带有交互式shell,例如Haskell、SML、Ocaml、F#、Scala等。从这点看,静态类型与语法本身的“动态性”并不一定矛盾。得看这个“动态”是如何定义的。在最近正在写的介绍LINQ与DLR的文章中会具体讨论这个问题。

Miguel做这个shell还挺用心的,顺带把GNU ReadLine的功能用managed code做了个实现
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics