函数式编程语言F#:基于CLR的另一个头等编程语言

近几年来,编程语言的一个重要的主题已经转向函数式编程的观念。

创新互联专注于兰陵网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供兰陵营销型网站建设,兰陵网站制作、兰陵网页设计、兰陵网站官网定制、成都微信小程序服务,打造兰陵网络公司原创品牌,更为您提供兰陵网站排名全网营销落地服务。

诸如C#中的lambda表达式和.NET 2.0中的范型等语言特性都源于函数式语言,而LINQ更是直接基于函数式编程技术。通过LINQ和Parallel FX,函数式语言的想法正帮助我们解决当今业界所面临的最大挑战:从防止数据和对象之间的错误匹配,到多核与并行计算领域所带来的挑战。

微软研究院已经着手在一些项目中研发这些关键技术中几个技术。MSR目前所研发的很有前途的项目之一就是由Don Syme带领的F#编程语言。F#起源于函数式编程的传统(因此是“F”)。虽然它也从C#,LINQ和Haskell中获取了经验,但它也深深地植根于ML家族的语言。从一开始,F#就被设计成.NET家族的一等公民。这意味着F#是运行在CLR之上的,包含面向对象的编程,并确保了和.NET框架的平稳集成。(之前的相关报道:微软计划在开发平台集成F#语言)

我是技术在研究组织和产品开发组织之间转移的狂热追求者。正因为这样的技术转移,我们才能够将很好的研究想法“产品化”,并及时的交付给客户。这是微软从15年前创立微软研究院至今发生的最好的事情之一。现在我们有了另一个技术转换的例子。我们将与Don Syme以及微软研究院的其他人一起合作,将F#语言完全集成进Visual Studio,并继续对F#进行创新和改进。我认为,F#是基于CLR的另一个头等编程语言。

有几方面的因素激发了我们对F#的兴趣。正如我先前所提到的,我们旨在把这样好的想法从函数式编程的世界延续至主流的开发。此外,函数式编程有些数学倾向,这似乎很自然的吸引了那些用数学符号表述关键领域的专业人士,这些领域包括金融、科学和技术运算。强类型系统所带来的一些保障是它语法上最大的吸引力。这些保障在以上这些领域中常常会很关键,而且还能通过Visual Studio带来极好的工具体验。

另一个动机是进行不断的投资,使.NET框架成为学术领域的不错选择。现在,世界上许多计算机科学专业教授函数式编程语言。我们相信,通过F#和诸如IronPython、IronRuby之类的语言,我们能为学生和教育工作者们提供当前主流之外的其他选择,并且能在课程中使用这些语言。这一点为教育工作者提供了一个选择,使他们能在不同的课程中使用Visual Studio作为其一致的工具集。

编者:函数式编程这一概念的出现已经有了好几个年头,但是到目前为止,在开发者中间仍然不太受欢迎。有评论说函数式概念太复杂,“似乎只有拿着博士学位的人才玩得转”;也有人对其赞赏不已,认为这种编程风格大大的简化了代码,令编码过程更加清晰。除了F#之外,Scala语言也是一个比较广泛为人所知的函数式编程语言,有兴趣了解的读者可以参考的Scala编程语言专题。

【相关阅读】

  1. Visual Studio 2010将正式包含F#
  2. Scala如何改变了我的编程风格:从命令式到函数式
  3. 关于测试和恢复性的争论:面向对象vs.函数式编程
  4. Scala编程语言
  5. Visual Studio 2010爆F#二进制兼容性问题

文章标题:函数式编程语言F#:基于CLR的另一个头等编程语言
本文链接:http://www.shufengxianlan.com/qtweb/news21/295571.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联