BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

F# 3.1语言版发布

| 作者 Jeff Martin 关注 16 他的粉丝 ,译者 姚琪琳 关注 0 他的粉丝 发布于 2013年7月18日. 估计阅读时间: 2 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

微软的函数式编程语言F#最近随Visual Studio 2013预览版发布了3.1版本。F#源自微软英国剑桥研究院,但不管出身如何,现在已被微软完全支持,并通过Apache 2.0开源许可进行授权。

F#小组的一份公告中作者指出,与以前版本着重实现主要特性不同,该版本旨在对语言进行改善。不过在这些改进中,F#开发者将受益于以下新特性:改进的F#类型推断、printf性能、便携库支持和项目双向兼容。

3.1版的主要新增语言特性:

  • 命名的联合类型字段——现在可以为每个联合类型中的联合字段命名
  • 数组切片扩展——之前的数组切片只能用于同等维度的数组,现在这不是必须的了
  • 为LINQ风格的方法增强了类型推断——改进了F#中使用函数作为参数的重载方法的类型推断
  • 支持第一个参数为类型参数的C#风格的扩展方法——3.1支持使用扩展方法(this关键字),比如:static member M<T>(this T input, T other)
  • 在特性和字面量表达式中对常量进行组合——比如,可以使用“+”来连接字符串,或对枚举标记进行按位OR操作(|||)

编译器和库的新增部分

  • Printf的性能——不需要改变原来的代码就能享受明显的速度提升(据说快了40倍)
  • 引用形式的调试信息——在fsc.exe或fsi.exe中使用—quotations-debug标记
  • 支持.NET 4.5 + Windows Store便携库——即F#可以在构建“.NET 4.5 + Windows Store”时使用C#便携程序集,而F#也可以反过来为该配置生成程序集

对于在多代小组中使用Visual Studio的F#开发者来说,一个重大新增特性是支持项目双向兼容。任何面向F# 3.0的F#项目都能在VS2012或VS2013中编辑。与此特性一致的是,可以在F#项目对话框或解决方案浏览器中指定要开发的应用程序使用哪个版本的F#。

用户今天就可以通过VS2013预览版访问F# 3.1。需要注意的是,上述3.1增强还没有更新到支持非Windows平台(OS X、Linux等)的开源版本中。F#小组承诺3.1特性会在完成后立即发布到OSS项目中。

查看英文原文F# Moves Forward in 3.1 Preview Release

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

好消息 by 张章 鸥翔鱼游

好消息 支持一下

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT