簡介
F#已經接近成熟,支持高階函式、
柯里化、
惰性求值、Continuations、模式匹配、
閉包、列表處理和
元編程。這是一個用於顯示.NET在不同程式語言間互通的程式設計,可以被.NET中的任意其它代碼編譯和調用。
2002年微軟開始由Don Syme帶領研發F#,從C#,
LINQ和
Haskell中獲取了經驗,2005年推出第一個版本,2007年7月31日釋出1.9.2.9版。2007年底,微軟宣布F#進入產品化的階段。
範例
一些小小範例如下:
(* This is a comment *)(* Sample hello world program *)printf "Hello World!"
#lightopen 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)