F# 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
F# 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议 Apache
开发语言
操作系统 Windows
软件类型 开源软件
所属分类 编程语言
开发厂商 微软
地区 不详
提 交 者 红薯
适用人群 未知
收录时间 2010-03-05

软件简介

F#是由微软发展的为微软.NET语言提供运行环境的程序设计语言,是函数编程语言(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中的任意其它代码编 译和调用。

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)
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (0)

加载中
更多评论
发表于AI & 大数据专区
2019/09/25 07:18

F# 4.7 发布,改进编译器和核心库的基础结构

F# 4.7 已经发布,该版本重点是编译器和核心库的基础结构更改,首先需要安装: 最新版 .NET Core 3.0 最新版 Visual Studio 如果你是 Visual Studio 用户,默认情况下将会获取到 .NET Core。一旦安装了 .NET Core 或 Visual Studio 2019,就可以在 Visual Studio、Visual Studio for Mac 或 Visual Studio Code 中使用 ...

0
4
发表于AI & 大数据专区
2019/05/23 08:27

F# 换“山头”啦!现已迁移到 .NET 名下

微软负责 .NET 的项目经理 Phillip 在博客宣布,他们已经将 F# 的 GitHub repo 从 microsoft/visualfsharp 迁移到 dotnet/fsharp,并按 corresponding RFC 中的规范来操作。 事实上,F# 的名字和品牌本身就有一段奇怪的历史。将时钟拨会 2015 年,当时 F# 有两个身份:一个是 Visual F#(或叫做 “VisualFSharp”),属于...

7
3
发表于AI & 大数据专区
2018/08/16 07:55

F# 4.5 发布:支持 Span<'T> ,版本控制对齐

F#4.5 已发布,可通过两种方式下载: 最新的 .NET SDK( 2.1.400及以上版本) Visual Studio 2017 15.8 F#的上一个版本是 4.1 ,这次直接跳到 4.5 是为了版本对齐: 更新亮点 Span<'T> 支持 F#4.5 最大的亮点是实现了与 .NET Core 2.1 中一致的 Span<'T> 及其相关功能,现在可在 F# 中通过 Span、Memory 和 ref 之类的...

2
2
发表了资讯
2015/07/21 00:00

F# 4.0 发布,标准化 Array, List 和 Seq 模块

Visual F# 4.0 发布,此版本现已提供下载: https://www.visualstudio.com/downloads/download-visual-studio-vs。 F# 4.0 包含新的语言特性: 构造函数作为一级函数 可变值的使用简化 支持高维的数组 支持方法中的静态参数 简化列表的语法 简化 printf 函数的使用 GC 优化提升性能 API 改进: 标准化和扩展 Array, Lis...

6
4
发表了资讯
2014/11/14 00:00

F# 4.0 预览版和 Visual F# Tools 发布

微软发布了 F# 4.0 预览版,同时发布的还有基于 Visual Studio 2015 的 Visual F# Tools 。后者已经包含在 VS 2015 Preview 中。 你可通过下面链接下载 Visual F# 4.0 预览版: http://www.microsoft.com/en-us/download/details.aspx?id=44941 F# 4.0 包含新的语言特性: 构造函数作为一级函数 可变值的使用简化 支持高...

13
3
发表了资讯
2012/12/20 00:00

Try F#:在浏览器中编写 F# 代码

微软近日正式上线了Try F#(test.tryfsharp.org)网站,通过该网站,你可以学到F#相关的编程技能,并可以在线编写、运行F#程序。 F#是由微软开发的函数式编程语言,基于Ocaml,除了支持函数式编程外,还支持命令式编程和面向对象编程。该语言的标准库、编译器、相关工具和扩展类库都是开源的,托管在Codeplex和Github上。...

23
24
发表了资讯
2011/08/04 00:00

2011年8月编程语言排行榜:F#首次进入前20

8月4日,Tiobe公布了最新的8月编程语言排行榜,和7月榜单相比,最大变动就数微软的F#了,F#首次进入TOP20。1至10名中,PHP重返第4,C#则到了第5,其他不变。 以下内容有乌帮图根据Tiobe原文翻译: 最终,一种新的函数型编程语言进入了Top 20.大多数人会认为热门函数型编程语言像Scala (#66), Clojure (#107), Haskell (#...

18
8
发表了资讯
2010/11/05 00:00

微软在Apache许可证下发布F#

微软在Apache 2.0许可证下发布了F# 2.0编译器和核心库的源代码,软件巨人在其开源托管网站Codeplex上发布了F# PowerPack项目。 F#是由微软为.NET运行环境开发的函数编程语言,集成在Visual Studio 2010中。之前微软已经提供了F#编译器的源代码,但这次在Apache许可证下重新发布,意味着用户可以更自由的使用,无需担心专...

12
2
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
2016/12/19 16:29

fsharp blog

* [Mikhail Shilkov](http://mikhail.io/)

0
0
发表了博客
2018/07/18 00:15

函数式编程之-组合函数

组合 函数式编程的核心在于组合,其中之一就是如何组合函数。我们在Currying一文就提到过组合,我们当时是这样描述的:只有一个输入和一个输出的函数才能完成组合,当然并不是所有的函数都只有一个输入,Currying可以帮助我们把多个输入参数的函数变成只有一个输入的函数。 那么到底什么是组合,怎么组合? 给定下面的两...

0
0
发表了博客
2019/06/09 23:20

F#周报2019年第23期

新闻 支持社区的WF与WCF开源项目 视频及幻灯片 F# MonoGame平台游戏系列:摄像头 Xamarin.Forms的F#与Fabulous ML.NET端到端之二:构建Web API 使用F#的全栈Web开发 博客 家用IoT 序言 方案设计 数据 在F#中仅使用函数式编程 pidigits基准比较与F# 使用ML.NET调用自Azure Cognitive Services Custom Vision生成的模型 WC...

0
0
发表了博客
2019/05/05 23:02

F#周报2019年第18期

新闻 FableConf 2019开始征集提案 2019理事会选举 如同DSL一般的Elmish封装器fable-elmish,可以创建控制台或者终端界面 介绍VS Code的远程开发 F#(.NET Core 2.1)开发容器 SAFE开发容器定义示例 Rider 2019.1 RTM(IL查看器,针对F#的解决方案范围内的重命名) Mac上的Visual Studio 2019版本8.0(8.0.5.9)——主要是F#的发...

0
0
发表了博客
2016/12/22 18:06

Dockerfile

FROM debian:sid # update apt source mv /etc/apt/sources.list /etc/apt/sources.list.bak echo 'deb http://mirrors.163.com/debian/ sid main non-free contrib' > /etc/apt/sources.list RUN apt-get update && apt-get install -y --no-install-recommends \ # common ca-certificates \ curl \ git \ openssh-cli...

0
0
发表了博客
2018/10/29 00:05

F#语言入门之什么是F#语言

F#是一种函数式编程语言,可以轻松编写正确且可维护的代码。 F#编程主要涉及定义类型推断和自动泛化的类型和函数。 这使您可以将焦点保留在问题域上并操纵其数据,而不是编程的细节。 open System // Gets access to functionality in System namespace. // Defines a function that takes a name and produces a g...

0
0
发表了博客
2019/05/20 23:14

F#周报2019年第20期

新闻 2019年理事会活动 "实用的F#挑战"意见截止日期接近,不要忘记提交博客文章或者其它作品 接口中的默认实现 .NET Core 3.0里的性能增强 使用Try .NET创建交互性.NET文档 新的Azure搜索文档包含F#示例 eiriktsarpalis/dotnet-sdk-mono 新书:.NET中的设计模式(面向对象的软件设计,C#与F#的可重用方法) .NET Core诊断概...

0
0
发表了博客
2019/05/26 23:21

F#周报2019年第21期

新闻 F#在GitHub上的开发仓库现在变为dotnet/fsharp Ionide 4.0路线图 Fable的五月公告 Visual Studio 2019版本16.1 WinUI 3.0路线图 欢迎来到Shell时代:Xamarin.Forms 4.0发布 视频及幻灯片 语言及运行时:.NET社区会议 一暼ML.NET的模型构建器 Fabulous函数式前端 博客 函数式领域建模 每秒500万次请求,2亳秒最大响应...

0
0
发表了博客
2019/04/10 10:10

F#周报2019年第26期

新闻 逐渐演化的.NET Core框架 Visual Studio提示与技巧 Windows Termina(预览) Microsoft在GitHub上的工程师从2000名增加至25000名 视频及幻灯片 实用IRL Visual Studio的F#工具解析 事件溯源DIY——查询处理器第一部分 函数式工具集 编程的文化 ML.NET NDC Oslo 2019上的Live 2019年所有的.NET峰会视频 F#的全栈Web开发...

0
0
发表了博客
2019/04/10 10:10

F#周报2019年第47期

新闻 相遇WebWindow,.NET Core上的跨平台webview类库 使用Bolero在WebAssembly中运行F# 用于你团队代码库的AI辅助IntelliSense Jupyter Notebook里的ML.NET 视频及幻灯片 Monads 使用React,Elmish,F#与Fable构建hackernews的克隆 使用Thoth.Json在F#与Fable中解码Json LSP:IDE背后的魔法 在JS生态系统中使用F# 同时使...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2010/04/20 06:26

F#入门:使用 .NET Framework 中的函数式编程技术

作 为 Microsoft® .NET Framework 家族的新成员,F# 提供类型安全、性能以及类似脚本语言的工作能力,所有这些都是 .NET 环境的一部分。此函数式语言由 Microsoft 研究院的 Don Syme 发明,作为 CLR 的 OCaml 语法兼容变体,但 F# 已经迅速地从科研转为投入实际应用。 随 着函数式编程的概念通过 .NET 泛型和 LINQ 等技...

2
0
发表了问答
2010/04/20 06:28

F#简明教程二:F#类型系统和类型推断机制

在上一篇教程《F#与函数式编程概述》中 我们了解到F#和函数式编程的一些特点,更多关于F#语言和函数式编程的介绍可以参考51CTO之前对微软MVP赵颉老师的专访《TechED 09视频专访:F#与函数式编程语言》。本节教程我们将学习到F#的一些基础原理,在开始之前,让我们先温习一下我们的Hello World代码: #light   System.C...

1
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
0 评论
13 收藏
分享
返回顶部
顶部