计算之智与哲学之慧分享 http://blog.sciencenet.cn/u/huangfuqiang

博文

微软把函数编程语言(F#)引入到主流.NET企业平台中

已有 3656 次阅读 2009-6-22 21:44 |个人分类:计算机软件理论与工程|系统分类:科研笔记

以前写的,英文资料来源于网上,从我的ChinaUnix Blog中转载过来,大家参考研究
FPL指函数编程语言
        微软早已宣布把F#(FPL)整合进Visual Studio中,这标志FPL在.Net平台中的实现是可行的,这提升 了FPL在
企业环境中应用的可能性,这说明了.Net平台(CLR)的支持能力的广泛性,F#的灵感来自于OCaml,F#的一部分与OCaml很大程度上是兼容的,F#提供给开发者很多有价值的和强制性的特征,以不失运行时间效率为前提,F#也支持交互的执行方式,有动态语言的特征,F#共享.Net下的API与组件。
一、函数编程的优点:
      与命令式语言比较可以得出一些结论,命令式语言通过改变程序状态获得计算执行的结果,FPL按照  mathematical evaluation and reduction这个原则执行,这些语言以形式数学逻辑与计算理论为构筑基础,FPL 很大程度上基于lambda calculus(Alonzo Church),In some cases, certain functional programming languages are also valued because functional purity is highly conducive to referential transparency and minimizes the potential for side effects.
二、.Net中的FP
  Microsoft's decision to productize F# represents a particularly significant step forward for the .NET platform.Microsoft took an equally significant step when it unveiled theDynamic Language Runtimeearlier this year.The .NET platform. now fully, officially, and equally supports functional, dynamic, and conventional imperative programming paradigms in an interoperable manner all with a single runtime.This is a tremendous accomplishment and strong evidence of the .NET platform's success and long-term viability.

  "[W]e aim to continue the flow of good ideas from functional programming world into mainstream development," wrote Microsoft developer division vice president S. Somasegar in a blog entry."Furthermore, the somewhat mathematical slant of functional programming just seems naturally appealing to professionals whose primarydomain is described with mathematical notation—domains such as financial, scientific and technical computing.On top of the syntactic appeal, the strong type system yields the sort of guarantees which are often crucial in these domains, and enables a superb tooling experience through Visual Studio."

   Although this is the first time that Microsoft has treated functional programming on .NET as a product instead of an experiment, many independent developers have long used functional programming languages on top of .NET. The open-source Nemerle programming language, for instance, supports extremely impressive features like macros and is preferred over F# by some programmers in the Ars community. There are also several Standard ML and Lisp implementations for .NET.

    As the C# programming language and .NET continue to evolve, developers can undoubtedly look forward to seeing more dynamic and functional programming concepts move out of scripting and academia to augment and complement more conventional programming techniques.
Microsoft's efforts to push dynamic and functional programming into the mainstream are one of many signs that the art of software development is enjoying a profound renaissance.


https://blog.sciencenet.cn/blog-89075-239692.html

上一篇:Visual Studio 2010 and .NET Framework 4 Beta 1 Walkthroughs
下一篇:面向安全的程序设计语言(PDL)
收藏 IP: .*| 热度|

0

该博文允许实名用户评论 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-18 12:37

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部