说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

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

HTML文档下载 WORD文档下载 PDF文档下载
近几年来,编程语言的一个重要的主题已经转向函数式编程的观念,微软在Visual Studio 2010中正式发布了F#,F#将是.NET平台上函数式语言的代表。

 

近几年来,编程语言的一个重要的主题已经转向函数式编程的观念。
诸如C#中的lambda表达式和.NET 2.0中的范型等语言特性都源于函数式语言,而LINQ更是直接基于函数式编程技术。通过LINQ和Parallel FX,函数式语言的想法正帮助我们解决当今业界所面临的最大挑战:从防止数据和对象之间的错误匹配,到多核与并行计算领域所带来的挑战。
微软研究院已经着手在一些项目中研发这些关键技术中几个技术。MSR目前所研发的很有前途的项目之一就是由Don Syme带领的F#编程语言。F#起源于函数式编程的传统(因此是“F”)。虽然它也从C#,LINQ和Haskell中获取了经验,但它也深深地植根于ML家族的语言。从一开始,F#就被设计成.NET家族的一等公民。这意味着F#是运行在CLR之上的,包含面向对象的编程,并确保了和.NET框架的平稳集成。
我是技术在研究组织和产品开发组织之间转移的狂热追求者。正因为这样的技术转移,我们才能够将很好的研究想法“产品化”,并及时的交付给客户。这是微软从15年前创立微软研究院至今发生的最好的事情之一。现在我们有了另一个技术转换的例子。我们将与Don Syme以及微软研究院的其他人一起合作,将F#语言完全集成进Visual Studio,并继续对F#进行创新和改进。我认为,F#是基于CLR的另一个头等编程语言。
有几方面的因素激发了我们对F#的兴趣。正如我先前所提到的,我们旨在把这样好的想法从函数式编程的世界延续至主流的开发。此外,函数式编程有些数学倾向,这似乎很自然的吸引了那些用数学符号表述关键领域的专业人士,这些领域包括金融、科学和技术运算。强类型系统所带来的一些保障是它语法上最大的吸引力。这些保障在以上这些领域中常常会很关键,而且还能通过Visual Studio带来极好的工具体验。
另一个动机是进行不断的投资,使.NET框架成为学术领域的不错选择。现在,世界上许多计算机科学专业教授函数式编程语言。我们相信,通过F#和诸如IronPython、IronRuby之类的语言,我们能为学生和教育工作者们提供当前主流之外的其他选择,并且能在课程中使用这些语言。这一点为教育工作者提供了一个选择,使他们能在不同的课程中使用Visual Studio作为其一致的工具集。
编者:函数式编程这一概念的出现已经有了好几个年头,但是到目前为止,在开发者中间仍然不太受欢迎。有评论说函数式概念太复杂,“似乎只有拿着博士学位的人才玩得转”;也有人对其赞赏不已,认为这种编程风格大大的简化了代码,令编码过程更加清晰。除了F#之外,Scala语言也是一个比较广泛为人所知的函数式编程语言。

 

本文作者:Don Syme

近几年来,编程语言的一个重要的主题已经转向函数式编程的观念,微软在Visual Studio 2010中正式发布了F#。

 

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

 

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

 

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

 

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

 

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

 

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

 

本文转载自:http://developer.51cto.com

 

使用C#读取上传的Excel文件 新版本SQL Helper类 C#使用iTextsharp生成PDF 在.NET里用iTextSharp库生成PDF文档 用itextsharp将ASP.NET页面导出到PDF中 什么是JQuery-JQuery API jQuery入门指南-JQuery API jQuery的核心部分-JQuery API $(elements)-JQuery API $(expr, context)-JQuery API $(fn) -JQuery API $(html) -JQuery API $.extend(prop) -JQuery API $.noConflict() -JQuery API each(fn)-JQuery API eq(pos)-JQuery API get(num)-JQuery API get()-JQuery API gt(pos)-JQuery API index(subject)-JQuery API length-JQuery API lt(pos)-JQuery API size()-JQuery API CSS-JQuery API css(key, value)-JQuery API css(name)-JQuery API css(properties)-JQuery API height(val) -JQuery API height()-JQuery API width(val)-JQuery API width()-JQuery API 关于下载 一个问题,一定给分! 关于VB的讨论 如何用ASP连接二个表(急) 改TstringField后的问题怎么解决? 敬请关注!vb数据库问题! 女友长的漂亮真的会短寿? 快救救我 难道MSDN也有错误 哪位大侠知道怎样打印stringgrid?小弟成分感谢,并高分相送 怎样才能从邮件中读出邮件的接收日期? 字符输入老是重复怎么回事 请问谁用C++编写过MP3的程序? 请问各位高手,给小弟介绍几个比较好的计算机图书的网站吧。 Access 2000不识别{ts '2001-06-21 21:14:01.890000'}中的.890000,如何解决? 如何得到webbrower控件下载消息?(比如下载*.zip文件) 难题一条 MTS怎么只能生成*.pak 和*.dll,却不能生成Clients子目录及在客户端安装的*.exe COM组件安装! PB 的新问题,有性趣请进!!!! 新手,键值问题 这样的问题没人会????? 大家帮忙看个程序 ACCESS数据库的小问题。 怎样使自己的问题成为热点问题的绝招! 关于c++builder中scanline的应用 跨数据库查询,请教各位高手! 这样的问题也没人会????????????????? 如何使用QuickRep制作简单报表?不牵涉任何DataSet的 关于Transaction的问题 请问 ListCtrl Item里的 Checkbox 被点击时对应的消息是什么? 100分~~100分~~高分求购。。。我也‘倾家荡产求购优秀系统分析案例’(paste from yyzh)。。。100分~~ 全中文的用Rose做的实际项目的UML模型! 救命!!我的机器不能下载东西了,怎么回事?? 求教邮件编程问题,邮件客户端如何实现“在服务器端保留备份的功能“? ciscoworks 各位大哥大虾,VC下如何用ADO连SQL SERVER?(急) ShellExecute和CreateProcess有什么区别? 关于海量数据、最有效率的排序、硬盘缓冲与映射、专业数据库的讨论 如何用VB编启动是可以带参数的程序呢?(例如:我自定义了一种文件,双击用我的程序打开,程序自动会打开这个文档 昨天我过生日,今天分蛋糕给大家 请问哪有《java图形设计2Swing篇》可以下? 我要用一个数据库去实时访问另一个据库,我该怎么办 URLghj1976@csdn.net----别吓我,有请您老人家! 谁给我介绍一下sql server7.0教材的比较好的下载网站,我给他20分。 我都急死了,到搜索引擎里搜到的好几个站点都不能用,到底哪儿可以当到3DMAX? 谁有写的比较好的邮件收发程序? 一个微软证书的私钥问题 微软证书的私钥问题 求助,简单问题 男人最快乐的十个瞬间! x的平方加x减12大于0解不等式 函数f(x)=x(x-m)2在x=2处有极大值,则常数m的值为?为什么没有2呢? 求极限lim (sinx/x)^(1/1-cosx),x趋向于0答案是e的负三分之一次为什么不能用等价代换公式得sinx/x=1?然后极限就等于1? 已知关于x的不等式kx平方-(k平方+1)x-3<0的解为-1<k<3,求k的值 已知函数fx=x(x-c)²在x=2处有极大值,求常数c 求极限lim(cosx)^[(π/2)-x],x趋向π/2 已知关于x的不等式k的平方减kx大于x加2的结尾x>-1|2,求实数k 的值 求极限lim x→+∞[√(x+a)√(x+b)-x]注意:是根号下(X+A)(X+B)-X,为表示明白我展开了最后那个X是在根号外面的得0的是在胡说 求极限 lim(x趋向于0) (cosx)^(1/x^2) 若关于x的不等式,根号下2x减x的平方大于kx, 解集是(0,2】 则k的取值范围 lim((a^3+b^3+c^3)/3)^(1/3)的极限x趋向于0lim((a^x+b^x+c^x)/3)^(1/x)我太搞笑了是这个 lim x-0 1-cosx/x平方的极限是多少详细的问题说明,有助于回答者给出准确的答案 x平方减四x加一等于零. 洛必达法则求极限:lim x→0 a^x-b^x/x(a>0,b>0)如题 求极限lim[cosx-e^(-x^2/2)]/x^4 其中x趋向于0 x的平方减四x加一等于零怎么样韦达定理求解! 请帮忙求极限:lim[(a+x)^x-a^x]/x^2,x趋于0.答案是1/a.但不知过程.题目是出给微积分只学了第一章的同学出的,不能用什么洛必达法则或泰勒公式之类的 怎样求lim(x趋向1)时(x)的三次方-1 / (x)的平方-1的极限 已知函数f(x)=mx/(x的平方+n) ,m、n都属于R,在x=1处取得极大值21.求函数f(x)的解析式2.求函数f(x)的极大值 求极限lim[(1-x)^10-1]/[(1-x)^11-1]x趋近于0 极限lim(x趋向无穷)(x平方+x)/(x的四次方-3x平方+1) 若函数f(x)=x(x-c)^2在x=2处有极大值,则常数c的值? x趋向于1求lim(x/x-1)的极限 求lim(x趋向于0)(1/x-1/( e的x次方-1))的极限 设函数f(x)=x(x-a)的平方在x=2处有极大值,求实数a的值. lim—> -1. X^2的极限存在吗? 已知lim x→0 [sin6x+xf(x)]/x^3=0,求 lim x→0 [6+f(x)]/x^2?为什么不可以这样解 因为lim x→0 [sin6x/(6x)]=1所以,lim x→0 [sin6x+xf(x)]/x^3=lim x→0 [6x+xf(x)]/x^3=lim x→0 [6+f(x)]/x^2=0这哪里错了? 已知实数a≠0,函数f(x)=ax(x-2)的平方(x∈ R),若函数f(x)有极大值32,求实数a的值 求lim x[(√1+x²) -x] 的极限,x→﹢∞ 求极限lim(x->0)(sin6x-6x)/x^3,自学中求助:求极限lim(x->0) (sin6x-6x) / x^3 已知函数f(x)=x(x-c)的平方,在x=2处有极大值,求c的值. 极限:lim(x->2)1/(x-2) 求极限当x→0若lim[sin6x+x f(x)]/x^3=0,求lim[6+ f(x)]/x^2答案不重要.我只想知道为什么对第一个式子上下同除以x,为什么会是错的,错在哪,兄弟,我想问的是如果把[sin6x+x f(x)]/x,x^3/x (即同除以x)第一 若函数f(x)=x(x-c)2在x=2处有极大值,则常数c的值为 lim(1+x/2)^x+2 求极限x→∞ 假设lim(x趋于0)[(sin6x+xf(x))/x^3]=0,则lim(x趋于0)[(6+f(x))/x^2]=?, 2分之1-3x大于等于5解不等式 若函数f(x)=x(x-c)^2在x=2处有极大值,则常数c? lim (x→∞) ﹙1+2/x)^x+2 求极限 解不等式-3小于1-3x小于等于2大家不好意思,我题目打错了是-3小于1-3x/2小于等于2 已知二次函数y等于a括号x+h括号平方,当x等于2时有最大值和次函数的图像经过(1,-3)求此函数的解析式, lim(1/(x+1)+1/(x^2-1)) x->-1 求极限 X平方减〔a加一〕x加a小于等于零.解不等式. 已知点A(2,1)在函数y=a的平方x-x+1的图像上,则a等于? 求极限lim(1-2/x+3/x^2)^x 如果关于X的不等式A减1括号再乘以X小于A加5和2X小于4的解集相同,求A是多少 在平面直角坐标系中画出函数y等于x平方2减4的图象 求极限lim(x->0)((a^x+b^x)/2)^(1/x)有没有简略的步骤?a,b>0 求不等式,3乘以a的3次方减a的平方括号除以a小于a乘以a加2括号乘以a减2,快 f(x)=第1个 -1 X小于-1 第2个X的平方 X大于等于-1小于等于1 第3个1 X大于1 求连续性并画出函数图象f(x)=第1个 -1 X小于-1 第2个X的平方 X大于等于-1小于等于1 第3个1 X大于1 求连续性并画出函数图象 求极限lim x-0 a^x-b^x /x (a〉0 b>0) 解不等式 x的平方减x加a减a的平方小于0 在图所示的直角坐标系中,画出函数y=-1/2x的平方的图像,并根据图像判断当-2大于等于x大于等于3时,函数 是否有最大值和最小值?若有,请求出来 求极限!lim(x趋向于1)x的平方+2x+3/x+2求极限lim(x趋向于1)x的平方+2x+3/x+3《有没有人知道?》是求极限! 若a-1的绝对值加b+3括号平方求不等式x-a大于0 设a> 0,函数 f(x)=(ax+b)/(x^2+1),b为常数.证明:函数f(x)的极大值设a> 0,函数 f(x)=(ax+b)/(x^2+1),b为常数.(1)证明:函数f(x)的极大值点和极小值点各有一个(2)若函数的极大值为1,极小值为-1,失球a的值。 求lim(x趋向于3时)x/(x的平方减9). 解关于X的不等式:X的平方减5X加6大于零 函数 f(x)=x(x-m)^2在x=2 处有极大值,则常数m的值 怎样求lim(x趋向1)时X的三次方-1 / X的平方-1的极限
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn