F sharp

来自站长百科
跳转至: 导航、​ 搜索

F# 是由微软发展的为微软.NET语言提供运行环境的程序设计语言。它是基于Ocaml的,而Ocaml是基于ML函数程序设计语言的。 这是一个用于显示.NET在不同编程语言间互通的程序设计。F#(读做 "F sharp",中文译音暂时没有.专业人士一般读"F sharp",现在很多非专业一般读"F井"。   "F井"这种读法来源于“C井"的读法。虽然不专业,但是十分容易理解。

发展历史[ ]

F#自2002年开始研发,2005年发布了第一个版本,2007年底正式从研发专案转移至产品部门,并决定将F#置入Visual Studio.NET 2010。截止目前(2009年1月6日现在),最新的F#预览版为F# September 2008 CTP,版本号为1.9.6.2。 Visual Studio 2010英文版 已经于2010年4月13日发布。

语言地位[ ]

微软计划将慢慢整合F#至.NET平台并使F#成为.NET平台的计算机辅助语言。   

众所周知,F#是一种函数型程序设计(FP,Functional Programming)语言。然而F#对IP(Imperative Programming)与OOP(Object Oriented Programming)的支持几乎一样的出色。   

F#也许终将成为程序核心数据多线程处理的首选,而C#VB等将在用户界面交互设计方面继续发挥其强大的潜力。但C# 依然是.NET 的主流设计语言。

代码资料及案例[ ]

目前学习F#的资料并不丰富,而且其文档淩乱琐碎。比较优秀的书籍是2005年8月由Apress出版的《Expert F#》,由Syme, Don/ Granicz, Adam/ Cisternino, Antonio合著。   

可以通过查阅MSDN得到一些零散的入门类文档。代码示例:

F# Hello Word 程序 

(* This is commented *)   

(* Sample hello world program *)   

printfn "Hello World!" 

  

F# Winforms 程序   

#light   

(* Sample Windows Forms Program *)   

(* We need to open the Windows Forms library *)   

open System.Windows.Forms   

(* Create a window and set a few properties *)   

let form = new Form(Visible=true, TopMost=true, Text="Welcome to F#")   

(* Create a label to show some text in the form *)   

let label =   let temp = new Label()   

let x = 3 + (4 * 5)   

(* Set the value of the Text*)   

temp.Text <- sprintf "x = %d" x   

(* Remember to return a value! *)   

temp   (* Add the label to the form *)   

do form.Controls.Add(label)   

(* Finally, run the form *)  

 [<STAThread>]   

do Application.Run(form)

发展前景[ ]

以目前来看,随著FP在程序设计中的重要性日渐凸显,F#身为微软唯一的FP语言,其位置特殊,容易引起关注。   

对一部分人来说,这语言所带来的一些特性以及其对FP的特性的全面支持, 目前做的比较好,可能会带来一次大的革变。

相关条目[ ]

参考来源[ ]