F#是由微软发展的为微软.NET语言提供运行环境的程序设计语言,是函数编程语言(FP,FuctioalProgrammig),函数编程语言最重要的基础是LambdaCalculus。它是基于OCaml的,而OCaml是基于ML函数程式语言。有时F#和OCaml的程式是可以交互编译的。
F#已经接近成熟,支援Higher-OrderFuctio、Curryig、LazyEvaluatio、Cotiuatios、PatterMatchig、Closure、ListProcessig、Meta-Programmig。这是一个用于显示.NET在不同编程语言间互通的程序设计,可以被.NET中的任意其它代码编译和调用。
F#将被集成在VisualStudio2010中,含有对.NetFramework的完全支持。
一些小小范例如下:
(* This is a commet *)(* Sample hello world program *)pritf "Hello World!"#lightope Microsoft.FSharp.Collectio.List(* prit a list of umbers recursively *)let rec pritlist l = (* Whe usig "#light", you must idet with 4 spaces *) if l = [] the else pritf "%d\" (th l 0) pritlist (tl l)
#light(* Sample Widows Forms Program *)(* We eed to ope the Widows Forms library *)ope System.Widows.Forms(* Create a widow ad set a few properties *)let form = ew Form(Visible=true, TopMost=true, Text="Welcome to F#")(* Create a label to show some text i the form *)let label = let temp = ew Label() let x = 3 + (4 * 5) (* Set the value of the Text*) temp.Text <- x (* Remember to retur a value! *) temp(* Add the label to the form *)do form.Cotrols.Add(label)(* Fially, ru the form *)do Applicatio.Ru(form)
评论