F#
维基百科,自由的百科全书
F#是由微软发展的为微软.NET语言提供运行环境的程序设计语言,是函數程式語言(FP,Functional Programming),函數程式語言最重要的基礎是Lambda Calculus。它是基于OCaml的,而OCaml是基于ML函数程式语言。有時F#和OCaml的程式是可以交互編譯的。
F#已經接近成熟,支援高阶函数、柯里化、懒惰求值、Continuations、模式匹配、闭包、列表处理和元编程。这是一个用于显示.NET在不同编程语言间互通的程序设计,可以被.NET中的任意其它代碼編譯和調用。
2002年微软開始由Don Syme帶領研發F#,從C#,LINQ和Haskell中獲取了經驗,2005年推出第一個版本,2007年7月31日释出1.9.2.9版。2007年底,微軟宣布F#進入產品化的階段。
F#已被集成在Visual Studio 2010中,版本是2.0,含有对.Net Framework的完全支持。
范例 [编辑]
一些小小范例如下:
(* This is a comment *) (* Sample hello world program *) printf "Hello World!"
#light open Microsoft.FSharp.Collection.List (* print a list of numbers recursively *) let rec printlist l = (* When using "#light", you must indent with 4 spaces *) if l = [] then else printf "%d\n" (nth l 0) printlist (tl l)
#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 <- x (* Remember to return a value! *) temp (* Add the label to the form *) do form.Controls.Add(label) (* Finally, run the form *) do Application.Run(form)
F#相容于XNA Game Studio Express产品,可允许在Xbox 360上建构游戏软体。
外部链接 [编辑]
|
|||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||