GMTC北京站本周日开幕,58个议题全部上线,点击查看 了解详情
写点什么

官方消息:Visual Studio 2010 将正式包含 F#

2008 年 12 月 25 日

在 2007 年,微软就透露 F#将在未来的某个时刻成为.NET 平台的头等语言。现在,它终于宣布F#将被包含在Visual Studio 2010 中。

F#——微软支持的第一个主要的函数式语言,其基于 OCaml。Ocaml 被选中的一部分原因是,它支持函数式、命令式和面向对象的混合编程风格。虽然 F#和 OCaml 吸引人们的地方是函数式编程,不过其他重要的方面还包括它们可以利用.NET 框架的功能特性。

现在,F#还没有被考虑作为.NET 4.0 的特性。而是像 J#那样更多地作为一个独立的分发包发布。这样允许微软为 F#在 Mono 和 CLR 2.0 平台上的运行提供支持。

与另外一个新微软语言的精神相同, F#编译器和工具将在微软公共许可协议(Microsoft Public License)下开源。这一许可协议是所有微软许可协议中最宽松的一个,基本来说你只要保留版权声明并且不对作者提出控告,那么你就可以做你想做的任何事情。

在 Visual Studio 里,F#并不倾向于被单独使用。虽然微软鼓励开发人员使用 F#来构建应用程序的核心,但对于呈现层他们还是推荐使用 VB 和 C#。 Don Syme 继续解释到:

我们所关注的是,发布一个高质量的 F#核心工具,可以增强 Visual Studio 的实力,让其成为一个具有丰富界面开发能力的面向对象的编程环境。结果,我们做出了一个明确的决定,在这个版本中还是利用 C#和 Visual Basic 的强大能力来作为呈现界面和具有良好设计器支持的编程语言。这意味着,F#用户将要使用 Visual Studio 设计工具来生成 C#或 Visual Basic 代码,并把这些组件合并到他们的 F#应用程序中。

虽然 F#超越了 OCaml 的基础功能,但它没有完全地抛弃它们。通过使用 F# Power Pack 组件,开发人员将依旧能够编写可被编译为 OCaml 的 F#代码。这就要求使用有限的语言子集,尽管可以期望工具能告知开发人员哪些是只适用于 F#的代码,但人们还是会感觉到诸多限制。

Don Syme 总结:

F#是微软研究院、剑桥和微软开发部联合进行的高级开发项目。我非常高兴作为语言构架师参与其中,并且我将一直留在微软研究院。我们强大的团队包括了来自剑桥、Redmond、温哥华和中国的人们,一些团队成员还工作在德国和纽约。我一直被这些和我工作于同一个项目的人们和他们展现出的才能所折服,我希望这个项目在微软能成为一个创新开发的带头榜样。

查看英文原文: It’s Official: Visual Studio 2010 Will Ship with F#

2008 年 12 月 25 日 07:475203
用户头像

发布了 254 篇内容, 共 39.9 次阅读, 收获喜欢 2 次。

关注

评论

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

第5周作业_贷款申请流程图

园子

互联网金融

遇见ZooKeeper:初识

Jackey

zookeeper

透彻解析!在字节跳动我是如何当面试官的,讲的明明白白!

欢喜学安卓

android 程序员 面试 移动开发

lua 对象编程解读

lockdown56

lua 编程 学习笔记

三、创建、更新和删除文档

Kylin

读书笔记 七日更 分布式数据库mongodb 二月春节不断更

什么容易被记住——造梦师指南

Justin

心理学 28天写作 游戏设计

(28DW-S8-Day3) 比特币、 区块链是什么?

mtfelix

比特币 区块链 28天写作

上天的源码要不要——GitHub 热点速览 v.21.08

HelloGitHub

Python go GitHub 开源项目

我在极客时间录课的故事(四):学习产生惰性是一种正常现象

小程序实战专栏作者李艺

我在极客时间录课的故事

“云原生”的应用价值及关键属性解读

浪潮云

从磁盘读取成本分析两种 100% 遍历思路:按格子遍历 & 按线遍历

宫水三叶的刷题日记

LeetCode 数据结构与算法 面试数据结构与算法

诊所数字化:最大的数据资产-患者数字档案内容

boshi

电子病历 数字化医疗 七日更 28天写作

go get下载包失败问题

happlyfox

golang 28天写作 2月春节不断更

Java lambda表达式人类使用指南

ES_her0

28天写作

Kafka.05 - 生产者与消费者介绍

insight

kafak 2月春节不断更

如何解决深度推荐系统中的Embedding冷启动问题?

王喆

机器学习 深度学习 推荐系统 计算广告 Embedding

【进阶】面试官问我Chrome浏览器的渲染原理(6000字长文)

魔王哪吒

学习 程序员 chorme 28天写作 2月春节不断更

压力太大的话,就放点气儿吧

道伟

28天写作

基于matlab的控制系统与仿真2-传递函数模型

AXYZdong

matlab 2月春节不断更

前端面试常考题:JS垃圾回收机制

华为云开发者社区

JavaScript Vue 前端 js 垃圾回收

工业互联网助力数字中国建设(新论)

浪潮云

工业互联网

MYSQL 索引篇(下)

new life

MySQL MySQL性能优化 多字段联合验证 索引性能

Mybatis【19】-- Mybatis自关联多对多查询

秦怀杂货店

Mybatis【20】-- Mybatis延迟加载怎么处理?

秦怀杂货店

数据库 缓存 mybatis 加载

CL的配置中心知识整理

白鹿猫余

微服务 技术选型 配置中心 微服务治理 配置管理

这些面试题你会吗?连续四年百度Android岗必问面试题!深度好文

欢喜学安卓

android 程序员 面试 移动开发

如何从动作一眼看出一个儿童有多大

Ian哥

28天写作

MYSQL 索引篇(上)

new life

MySQL性能优化 执行计划 MySQL使用 索引性能

python爬虫-学习urllib和requests使用,模拟请求

大佬sam

二月春节不断更

透彻解析!如何快速的开发一个完整的直播app,薪资翻倍

欢喜学安卓

android 程序员 面试 移动开发

Selenium 常用方法与属性、鼠标悬停与 Select 操作

梦想橡皮擦

Python 28天写作 2月春节不断更

官方消息:Visual Studio 2010将正式包含F#-InfoQ