F# 类型假设 -- 缘起与原理

  • Roopesh Shenoy
  • 方盛

2012 年 10 月 7 日

话题:语言 & 开发

微软研究院最近发布了一份白皮书用来阐述Type Providers如何协助 F# 来接入和处理海量的网络数据。

Type Providers 旨在解决哪些问题呢?

  • 网络上各种来源的不同类型的数据
  • 通过特定语言编写的解析层(自动生成或手动编写)来访问上述数据源

Type Providers 提供了一种将现有数据类型转换成可供 F# 开发人员使用的数据类型或元数据类型的标准机制。一旦为某种数据类型或模式创建了 provider 以后就不需要再单独为它们创建 provider 了。数据的结构在连接到数据源后的设计时间(假定已与数据源相连),由 Type Provider 推导出。

在 F# 的编译器中亦可访问到这些数据,并支持诸如智能提示和内联文档等 IDE 特性,并且在内联文档中,可以按需查看数据源中数据模式和元数据等信息。

与 LINQ 结合,这使得 F# 直接操作各种数据源时额外有效。大家可以通过观看Joe Pamer 的演讲来了解更多详情。

F# 3.0 与.NET framework 4.5 一同发布。并且微软最近宣布了它的代码发布——可以通过该代码来查看功能特性的实现细节

查看英文原文:F# Type Providers – Why And How


感谢贾国清对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

语言 & 开发