写点什么

F# 2017 回顾

  • 2018-01-07
  • 本文字数:832 字

    阅读完需:约 3 分钟

据微软项目经理 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 Functions Azure Notebooks 现在也支持 F#了。F#向着“成为有更好工具支持的函数式语言”的目标更进了一步。

据 Carter 介绍,为了与.NET Core 和.NET Standard 的定义保持一致,F# OSS 生态系统做了大幅地迁移,这进一步证明了前两者对于F#演化的重要性。Carter 重点提到了几个开源项目, Suave Giraffe 用于在.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

2018-01-07 18:009406
用户头像

发布了 1008 篇内容, 共 353.6 次阅读, 收获喜欢 332 次。

关注

评论

发布
暂无评论
发现更多内容

官方:陆续清退比特币“矿场”

CECBC

盲盒开发

黄峥、张一鸣、李斌都曾上榜!100个未来独角兽:超越估值看见星辰大海

创业邦

90后女博士谈反内卷,称科研不应攀比论文数,“唯论文论”何时休?

百度开发者中心

开发者 内卷化

首个沉浸式云原生 Serverless 技术实践营开启报名

阿里巴巴云原生

阿里云 Serverless 云原生 KubeMeet 线下活动

模块四课后作业 - 设计千万级学生管理系统的考试试卷存储方案

渐行渐远

架构实战营

能耗能源管控平台开发,能源管理云平台搭建

电微13828808271

区块链如何赋能农村金融服务?

CECBC

[Pulsar] 一个消息的生命历程(二)——Batch和消息重复处理

Zike Yang

Apache Pulsar 11月日更

如何使用FL Studio效果器制作镶边音效

懒得勤快

您有一份阿里云云原生直播攻略待查收

阿里巴巴云原生

阿里云 Kubernetes 云原生 线下活动

函数计算 GB 镜像秒级启动:下一代软硬件架构协同优化揭秘

阿里巴巴云原生

阿里云 云原生 函数计算

三顾茅庐,七面阿里,25k*16offer,还原我的大厂面经

热爱java的分享家

Java 程序人生 编程语言 经验分享 大厂面试

12.04 深圳站 | Serverless Developer Meetup 开放报名啦!

阿里巴巴云原生

阿里云 Serverless 云原生 深圳 线下活动

涨薪50%,从小厂逆袭,坐上美团L8技术专家(面经+心得)

热爱java的分享家

Java 面试 程序人生 编程语言 经验分享

JavsScript基础篇之函数定义的几种不同方式

你好bk

JavaScript 大前端 数组 html/css

声网Agora 实时音视频服务正式上线 HTC VIVE Sync App,支持非 VR 用户

声网

人工智能 音视频 vr

.Net6 miniAPI JWT鉴权授权的多种实现

面向对象的猫

netcore NET6

智能时代的轴承与齿轮:工业互联网如何真正“工业化”?

脑极体

用AI走出“沙丘”

脑极体

22 K8S之ConfigMap配置

穿过生命散发芬芳

k8s 11月日更

干掉 XML Mapper,新出的 Fluent Mybatis 真香

AI乔治

Java sql 架构 mybatis

互联网+质量基础设施服务平台,NQI一站式线上平台开发

电微13828808271

NodeJs深入浅出之旅:理解Buffer 🐰

空城机

大前端 Node 11月日更

使用 Resilience4j 框架实现重试机制

码语者

Java 重试机制 Reslience4j

Python Qt GUI设计:QLineEdit和QTextEdit文本框类(基础篇—13)

不脱发的程序猿

PyQt GUI设计 Python Qt QLineEdit QTextEdit

在Vue项目里使用ECharts图标库

石云升

Vue 学习笔记 11月日更 Echar

圆梦腾讯之路!6面阿里、5面字节、4面腾讯,终斩腾讯Offer

热爱java的分享家

Java 架构 面试 编程语言 经验分享

赋能“数字金融”,CODING 再下数城

CODING DevOps

研发管理 数字化转型 CI/CD 代码管理 可视化软件

使用命令模式重构播放器控制条

Tom弹架构

Java 架构 设计模式

啥是ElasticSearch全流程,看这篇我也懂了

热爱java的分享家

Java 程序人生 编程语言 经验分享 ES

F# 2017回顾_.NET_Sergio De Simone_InfoQ精选文章