体验Microsoft的函数式编程语言F#

F#语言的简述

F# Microsoft 推出来的函数式编程语言 , 与现在流行的函数式的编程语言相比 (OCaml,Haskell,Lisp, Scheme),F# 语言也提供了更多的选择,可以用 F# 函数式程序,也可以写强制式的,或面向对象等编程范式的程序。更让人着迷的一点, F# 可以与 DOTNET 的基础类库无缝地结合在一起。函数式编程的应用程序。

    F#的语言是基于面向对象的函数式语言 OCaml 开发的, F# 之父是微软英国剑桥研究院 (Microsoft  Research, Cambrige) Don Syme  博士。


F#安装

F#的下载 ,http://research.microsoft.com/fsharp/release.aspx, 有两种版本, msi 安装版和社区技术体验版( CTP ),如果想与 Visual Studio 集成开发,则可以使用 msi 安装版,如果使用社会技术体验版,只需解压就可以使用了,我使用的是 CTP( version 1.9.6.2 )

操作系统需要安装dotnet framework 2.0 以上版本。

使用CTP 版本的注意问题,需要用 Visual Studio 提供的一个 gacutil 小工具将 %FSharp-1.9.7.8%/bin 目录下的三个动态库加入到系统的 assembly (程序集中) , 命令如下

gacutil -i FSharp.Core.dll

gacutil -i FSharp.Compiler.dll

Gacutil -i FSharp.PowerPack.Dll

如果 不将这三个库加入到程序集中,运行F#的程序时会出现以下错误:



F#的第一个程序

    体验DotNet 平台上的函数式编程。演示一个 imperative function programming  F# 实现 !

 

 

编译 fsc sample1.fs (注意,后缀名以fs结尾),则会生成一个sample.exe的程序


F#的第二个程序

 

   看看利用函数式编程实现的WinForm

 

    

 

  

   运行结果

  

结语

 

2007.10 正式成为 MS 团队开发的产品

2008.09 发布社区技术交流预览版 , 官方测试版

2008.12 MS正式宣布  F# 成为 VS2010 的核心语言之一 , C++,C#,VB 同等地位。

 

可以看出,两年的时间,就把F# 作为微软的技术推崇重点,微软对 F# Windows 的地位重视由此可见。

不过,学习 F# 应用,把函数式编程带到现实生活中,不应该把函数式编程放在服务器或科学计算领域。


参考资料


John Hughes, Chalmers University of Technology 

(http://www.math.chalmers.se/~rjmh/Papers/whyfp.html) 

Ralf Herbrich, Microsoft Research 

(http://blogs.msdn.com/dsyme/archive/2006/04/01/566301.aspx)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值