F#开源项目

我正在寻找一些开源的F#项目来学习。 不是片段,而是完整的项目,是F#特性的好代表(即模式匹配,歧视联盟等)。

我的目标主要是看所有的function如何组合在一起,项目是如何组织的,以及如何从functionangular度处理问题。

开源F#项目列表(编译):

  • F#中的一个math应用程序,它通过.NET集成了Autocad
  • 游戏开发教程
  • FsUnit
  • Storm (testingWeb服务的工具)
  • FParsec – F#parsing器组合器库
  • DownloadStockPrices – 用F#
  • Truskill – Xbox Live Player Rater (用F#编写)
  • F#集体智慧实施
  • NDjango
  • BistroFS – F#web框架
  • VsVim – Visual Studio的Vim仿真

FsCheck是一个基于规范的testing框架。

VCC ,C程序的静态分析(由MS研究)

VSLab ,Visual Studio中的一个math/ matlab环境

find另外一个:

Storm :testingWeb服务的工具

BistroFS – 一个F#的web框架

Frack – Functional Rack – 是OWIN(用于.NET的开放式Web接口)的实现,其具有与Python WSGI和JSGI规范类似的意图。 Frack与Rack和Jack的实现类似,并且对这些项目很感兴趣。

https://github.com/panesofglass/frank

search谷歌代码我发现:

  • 一个计算器
  • 游戏开发教程
  • FsUnit (一个规范框架)

FParsec – F#的parsing器组合器库

DownloadStockPrices :

从雅虎历史报价下载股票价格,股息和分裂。 它也修改它们以使其发生并调整它们以计算调整后的价格。 还有一个可以从C#/ VB.NET重用的.NET组件。 它是用F#编写的,但可以从任何.NET语言中使用。

链接到博客文章是在这里 :

它已经用F#2008年9月的CTP编写了。

解决scheme由以下部分组成:

  • 一个库来执行下载
  • 一个使用xUnit的testing项目(但是你必须下载xUnit并在Tests项目中引用它来运行它)
  • 一个简单的控制台驱动程序
  • 一个graphics用户界面应用程序的开始使用库(称为鲍勃)

也许Wing Beats可能是有趣的?

这个项目还不到一年的时间,到目前为止我们只有两个贡献者,但我相信有一些有趣的东西需要检查。

我们希望别人join,或者至less检查一下,试一试。

虽然我不确定授权……微软的TrueSkill系统(对XBox360真人游戏中的玩家进行评级)已经发布了一些源代码。

http://blogs.technet.com/apg/archive/2008/04/05/trueskill-through-time.aspx

罗伯特·皮克林(Robert Pickering)在Github上提出了一个类似于Toby Segaran的书“集体智慧” (通过python展示)的集体智慧的F#项目:

fscollintelli

我刚刚为我的开源项目Unquote创build了一个位置,这是一个将unit testing断言作为F#引用的expression式写入的F#库。 这是使用活动模式和模式匹配,混合面向对象和function性代码(它大量使用.NETreflection)以及使用xUnit.net和库本身编写unit testing的recursion处理和重build语句的一个很好的例子。

我正在为FSI开发一个名为FsEye的视觉对象树检查器 。 它演示了F#中的WinForms开发,包括使用async执行非阻塞GUI更新和并行计算。 对象树使用判别联合和logging进行build模。 Lazy值和序列expression式用于(无限深度)子树的按需加载。 活动模式用于消除非通用TreeViewNodes

YaccConstructor – 语法处理和parsing器构build的模块化工具。