F#简介 - 面向对象网 f# 学习 对象 - 面向对象技术开发

面向对象技术开发

会员投稿 投稿指南 站长资讯通告:
您的位置: 首页 > OOP语言 > F# > 正文

F#简介

来源: www.bianceng.cn 阅读:

F#是由微软开发的全新的.NET编程语言,结合了函数和面向对象编程,比较适合于并行、算法、探索性和技术性编程任务,在金融行业有独特的优势,部分功能包括:

* 永久性,让F#代码更加易于并行化和解耦;

* 类型推导,为F#提供了一种简练且富于表达的语言,结合了类型安全和静态类型;

* 深度.NET集成,确保F#组件可以顺利地插入到.NET应用程序的任何部分中。

F#是一种函数编程语言(FP,Functional Programming),函数编程语言最重要的基础是Lambda Calculus。它是基于OCaml的,而OCaml是基于ML函数程式语言。有时F# 和 OCaml 的程式是可以交互编译的。

F#已经接近成熟,支援Higher-Order Function、Currying、Lazy Evaluation、Continuations、Pattern Matching、Closure、List Processing、Meta-Programming。这是一个用于显示.NET在不同编程语言间互通的程序设计,可以被.NET中的任意其它代码编译和调用。

2002年微软开始由Don Syme带领研发F#,从C#,LINQ和Haskell中获取了经验,2005年推出第一个版本,2007年7月31日释出1.9.2.9版。2007年底,微软宣布F#进入产品化的阶段。

F#将被集成在Visual Studio 2010中,含有对.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上建构游戏软体。

Tags:
相关文章列表: