F# 2017 回顾

  • Sergio De Simone
  • 谢丽

2018 年 1 月 7 日

话题:.NET函数式编程语言 & 开发

据微软项目经理Phillip Carter 介绍,2017 年,F# 达到了 4.1 版本,用户社区也得到了发展,基本上与.NET Core 2.0 的发布保持了一致。同时,F# 的工具变得更加强大,大会参与人数增加。

在语言方面,F# 在 2017 年最主要的成果是4.1 版本发布,这绝不是一个小版本,带来了许多新特性,如结构体元组结构体记录结构体可区分联合等。此外,4.1 修复了可选参数,日志功能新增调用者信息支持,提高了灵活性。

Carter 表示,最重要的是 F# 社区的发展,这一点通过产品遥测及 Twitter、GitHub、F# 软件基金会的活动就可以度量出来。遥测数据显示,F# 的活跃用户数以万计,而且还在以每年 20% 以上的速度增长。有趣地的是,遥测数据显示,F# 的增长与.NET Core 2.0 的发布保持一致。Carter 承认,遥测是一个复杂的主题,提供的只是一个保守估计,因为微软并没有设法计算无法遥测的环境里的 F# 用户数。

按照 Carter 的说法,2017 年,F# 的工具也得到了许多增强。首先,在安装.NET Core 时,Visual Studio 2017 现在默认提供 F#,而且,Visual Studio 2017 针对.NET Core 和.NET Standard 均提供了 F# 支持,使 Visual Studio 2017 中的 F# 工具可以和 C# 工具相媲美。同样,Visual Studio for Mac 也默认提供 F#Azure FunctionsAzure Notebooks现在也支持 F# 了。F# 向着“成为有更好工具支持的函数式语言”的目标更进了一步。

据 Carter 介绍,为了与.NET Core 和.NET Standard的定义保持一致,F# OSS 生态系统做了大幅地迁移,这进一步证明了前两者对于 F# 演化的重要性。Carter 重点提到了几个开源项目,SuaveGiraffe用于在.NET Core 上编写 Web 服务,Fable是一个 F# 到 JavaScript 的编译器,旨在让编写全栈 F# 应用程序成为可能。

最后,Carter 指出,他看到了 F# 在 2018 年的光明前景,工具会更好,社区会更大,OSS 活动会更强力。对于即将到来的 2018,他还重点提到了.NET Standard 2.0 引入 Type Providers、.NET Core 支持 F# REPL 等内容。

查看英文原文F# 2017 Retrospective

.NET函数式编程语言 & 开发