说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

F#是什么语言

HTML文档下载 WORD文档下载 PDF文档下载
F#是由微软发展的为微软.NET语言提供运行环境的程序设计语言。它是基于Ocaml的,而Ocaml是基于ML函数程序设计语言的。 这是一个用于显示.NET在不同编程语言间互通的程序设计。

 

F#是一个基于.NET框架的多模式编程语言、是一种.NET平台上的函数式编程语言、更是一个高效的.NET程序语言。就像C#和VB.NET,F#可以利用.NET的核心类库,如WPF,WCF,VSTO等等,通过F#您甚至可以使用XNA编写XBox游戏。仅仅如此并不意味着您应该去学习它。那为何要使用F#呢?作为一种函数式编程语言,F#使得某些领域的编程要比命令式编程(如使用C#)更为容易。并行编程(Parallel Programming)和面向语言编程(Language-Oriented Programming)是其中的两个领域。
F#语言交互式设计窗口
如果您曾经编写过.NET应用程序,并感觉自己在努力使用手头的语言表达自己的想法,也许F#就是您在寻找的。F#主要是由Microsoft Research 和 Visual Studio 小组协作开发的,并采纳了F#社区和一些主要使用者的意见。F#为Visual Studio 2010带来了很大的改观。因为替代了局部程序中的元组使工作变的简单了。在异步编程和强类型对于浮点编码方面也提供的不错的解决方式。可以说F# 是Visual Studio 2010中结合了众多优点的编程语言。
在F#中函数可以被视为值,可以传递给其他函数,你可以方便地编写高阶函数;F#支持组合式编程,你可以通过使用简单的操作符语法来组合函数;F#提供了支持函数式编程风格的类型,如针对简单数据集合的元组和针对结构化符号数据的discriminated unions;F#提供了许多不可变的数据结构,如不可变的列表、映射、集合、序列和记录等;F#支持异步编程,并且提供了使这种编程比以往更容易的结构;Visual F#中还包括了一个F#解释器,F#互动器(fsi.exe),它能够以交互方式编译并执行代码;F#支持延迟计算,这可以使您直到需要结果时才进行计算;F#支持面向对象语言特征,除了让您使用F#语言开发.NET框架API外,这种特征可以使F#程序能够充分地访问.NET框架。当然除此以外,F#还支持如面向对象语言特征,支持命令式编程结构,支持数学计算等特性。在VS2010中F#除了特征广泛外,它的特点还包括比如说简单简洁的句法、并行和异步的编程。
我们先来看其简单简洁的句法:
  F#像C#一样,是一种强制型的语言。但是我也可以使用类似在Python中那样的方式。既轻量级的,灵活的,数学类的编程方式。
  let data = (1,2,3)
  let rotations (x, y, z) =
  [ (x, y, z);
  (z, x, y);
  (y, z, x) ]
  let derivative f x =
  let p1 = f (x - 0.05)
  let p2 = f (x + 0.05)
  (p2 - p1) / 0.1
  let f x = 2.0*x*x - 6.0*x + 3.0
  let df = derivative f
  System.Console.WriteLine("The derivative of f at x=4 is {0}", df 4.0)
  其运行结果为:“The derivative of f at x=4 is 10”。
  
  在并行和异步编程上,.NET Framework 4 和Visual Studio 2010中,包含了一个关于并行程序开发的庞大文档和工具库。F#提供了一种强健的编程模式和灵活优秀的功能,使这些显现的更为直观。最为重要的是,我们可以在过去习惯了的线性编程模式下进行异步编程。
  let http url =
  async { let req = WebRequest.Create(Uri url)
  let! resp = req.AsyncGetResponse()
  let stream = resp.GetResponseStream()
  let reader = new StreamReader(stream)
  let! contents = reader.AsyncReadToEnd()
  return contents }
  let sites = ["http://bing.com"; "http://microsoft.com";"http://msdn.com"; "http://msnbc.com"]
  let htmlOfSites =
  Async.Parallel [for site in sites -> http(site)]
  |> Async.RunSynchronously
  以上就是Visual Studio 2010中F#语言简单介绍,在使用过程中肯定会有更多的体验。

 

F#是一个基于.NET框架的多模式编程语言、是一种.NET平台上的函数式编程语言、更是一个高效的.NET程序语言。就像C#和VB.NET,F#可以利用.NET的核心类库,如WPF,WCF,VSTO等等,通过F#您甚至可以使用XNA编写XBox游戏。仅仅如此并不意味着您应该去学习它。那为何要使用F#呢?作为一种函数式编程语言,F#使得某些领域的编程要比命令式编程(如使用C#)更为容易。并行编程(Parallel Programming)和面向语言编程(Language-Oriented Programming)是其中的两个领域。

 

 

F#语言交互式设计窗口

如果您曾经编写过.NET应用程序,并感觉自己在努力使用手头的语言表达自己的想法,也许F#就是您在寻找的。F#主要是由Microsoft Research 和 Visual Studio 小组协作开发的,并采纳了F#社区和一些主要使用者的意见。F#为Visual Studio 2010带来了很大的改观。因为替代了局部程序中的元组使工作变的简单了。在异步编程和强类型对于浮点编码方面也提供的不错的解决方式。可以说F# 是Visual Studio 2010中结合了众多优点的编程语言。

在F#中函数可以被视为值,可以传递给其他函数,你可以方便地编写高阶函数;F#支持组合式编程,你可以通过使用简单的操作符语法来组合函数;F#提供了支持函数式编程风格的类型,如针对简单数据集合的元组和针对结构化符号数据的discriminated unions;F#提供了许多不可变的数据结构,如不可变的列表、映射、集合、序列和记录等;F#支持异步编程,并且提供了使这种编程比以往更容易的结构;Visual F#中还包括了一个F#解释器,F#互动器(fsi.exe),它能够以交互方式编译并执行代码;F#支持延迟计算,这可以使您直到需要结果时才进行计算;F#支持面向对象语言特征,除了让您使用F#语言开发.NET框架API外,这种特征可以使F#程序能够充分地访问.NET框架。当然除此以外,F#还支持如面向对象语言特征,支持命令式编程结构,支持数学计算等特性。在VS2010中F#除了特征广泛外,它的特点还包括比如说简单简洁的句法、并行和异步的编程。

我们先来看其简单简洁的句法:

  F#像C#一样,是一种强制型的语言。但是我也可以使用类似在Python中那样的方式。既轻量级的,灵活的,数学类的编程方式。

  let data = (1,2,3)

  let rotations (x, y, z) =

  [ (x, y, z);

  (z, x, y);

  (y, z, x) ]

  let derivative f x =

  let p1 = f (x - 0.05)

  let p2 = f (x + 0.05)

  (p2 - p1) / 0.1

  let f x = 2.0*x*x - 6.0*x + 3.0

  let df = derivative f

  System.Console.WriteLine("The derivative of f at x=4 is {0}", df 4.0)

  其运行结果为:“The derivative of f at x=4 is 10”。

 

  在并行和异步编程上,.NET Framework 4 和Visual Studio 2010中,包含了一个关于并行程序开发的庞大文档和工具库。F#提供了一种强健的编程模式和灵活优秀的功能,使这些显现的更为直观。最为重要的是,我们可以在过去习惯了的线性编程模式下进行异步编程。

  let http url =

  async { let req = WebRequest.Create(Uri url)

  let! resp = req.AsyncGetResponse()

  let stream = resp.GetResponseStream()

  let reader = new StreamReader(stream)

  let! contents = reader.AsyncReadToEnd()

  return contents }

  let sites = ["http://bing.com"; "http://microsoft.com";"http://msdn.com"; "http://msnbc.com"]

  let htmlOfSites =

  Async.Parallel [for site in sites -> http(site)]

  |> Async.RunSynchronously

以上就是Visual Studio 2010中F#语言简单介绍,在使用过程中肯定会有更多的体验。

 

 

【走近院士】李兰娟:云计算与大数据将成为医疗改革利器 迭代不等于学习,聚类分析也不等于机器学习 Office大肆杀戮,已攻下Chrome Web Store Bug都补好了?Google发布Android 4.4.3更新 微软被传收购Xamarin 强势推进移动新战略 挑战传统金融业务 Facebook进军移动支付领域 亚马逊AWS需解决的五项问题 腾讯自曝:大数据平台的秘密 继Cloudera之后,MapR宣布对Spark的完全支持 企业实施商务智能的6个致命错误 《近匠》HBuilder:如何用JS调用几十万原生API? littleBits新推Cloud Module,普通人也能DIY智能硬件 如何创建浮动式标签模式? Office 365正式落地中国——移动为先,云为先 .NET Native:C++的性能 C#的产能? Arduino联合创始人Tom Igoe:创客,因何而创 【走近院士】高文:多媒体大数据的影响及面临的挑战 微软SQL Server 2014三大新特性:集成内存OLTP、BI和混合云搭建 Linux将会统治桌面端的7个原因 Intel首席科学家Randolph Wang:详解Edison AMD Mantle再添新作,引发下代GPU架构猜想 谈DAM决策,自建还是SaaS 证据显示:Linux战争已经转移到OpenStack RestKit:iOS开发必备,告别众多无聊代码 技术新突破:手机和平板可远程控制PC,Chrome Remote Desktop亮相 物联网高速公路上,快数据如何驱动分析 苹果或将使用雅虎的搜索引擎,抛弃谷歌 百万用户规模的系统如何扩展 大数据需要软件定义存储 倒计36小时!2014中国Spark技术峰会即将召开! 设计师专宠,Startup强大的UI设计框架 看看这个错误。有关ADO 连接sybase 数据库的问题。30分在线等待。 请大侠将char *destination,*source while (*destination++==*source++); 详细分解成容易的循环语句 我装了三个系统windows98,win200,windows xp.后win2000起不来了,提示<windows root>什么文件<winnt/system32/hal.dll>文件损坏,拷一个 怎么样在页面中定位控件的绝对位置。 kv3000的A盘是怎么加密的? 看看印度人开发软件的方式吧.(转贴) 在ADO.NET中如何返回多表联合查询的结果? 如何获得分给本机的所有IP地址? 揭下网上广泛流传所谓真实网友照片的铁幕,,,,,,,,, 如何启动与关闭外部程序. 怎么样删除某一个目录下的文件~~~~~急 请问在WIN2000PRO上安装PcAnyWhere Ver.10后经常死机,会是咩原因造成? 如何在SQLNET中配置配置命名服务器? 我做的鉤子,為什麼不能截獲WM_DESTROY消息 有谁用过java+Dimino开发过项目? vcl的类的析构函数怎么继承? 紧急求助!在线等待! DELPHI怎样通过ADO来对DBASE3的数据库表进行物理删除?高手请进 如何使用C给FOX的DBF库加上索引. Encrypt加密源码 将桌面存为图像文件? DIRECTX3D问题 如何统计字符串中的字符数量! 怎样知道自己电脑的声卡是什么型号?并安装相应的驱动程序? 跳转窗口的时候如何消除工具栏 使用cuteftp时出的错! 怎么能添加一个链接 寻求使用rtp/rtcp的实时视频传输例子!! 输入法与文字处理程序间的关系是怎样? 如何使数据窗口的全部数据默认选定!? 请问,Delphi中有类似VC的静态变量吗? 想要一个用jsp做的新闻发布系统 请问ORACLE的凭证检索失败是怎么回事?--谢谢 char *mdd=5 内存中进行了什么动作?可否解释一下 我想问多下,那wininet.dll 文件是不是nt的系统都有噶? 搞得我头都大了的"多媒体"问题??????????? 重新调用一个方法。 Query的问题? active report作出的报表地下怎么会有这个公司的广告呀? 求救:关于树在建立游戏模型上的应用,及说明 Win2000下屏蔽Win键 怎么把字符串拷到另一个字符串数组里 Delphi_Li(Delphi Li) ,lincanwen(海) ,Focus(老鱼) 刚才关于opengl的帖子手一发抖就给结了,对不住,麻烦来领分,谢谢各位 请教大家关于 认证考试 的问题 更改窗口标题条文字 jsp连接domino数据库? 帮我分析一下!!!!!!!!!!!!! 关于oracle的问题,很急 capDriverConnect函数和capDriveDisconnect函数疑问 crystal report 的问题 Delphi调用win32函数的帮助borland公司提供了吗? 谁能帮我算一下这个横截面积和长度?直径或断面尺寸:4.11 4.02 4.03 请高手指教这3个直径的冷拔钢丝的断面积和长度分别是多少.方便的话告诉我一下计算公式, 图式白化病的遗传系谱,已知性状和白化病分别由基因A和a控制,它们符合分离定律III-1和III-2基因型是 和 III-1和III-2夫妇再生育一个孩子,这个孩子患白化病的概率是IV-3可能的基因型是 ,她为杂 寒地水稻一般需要多少积温 为什么体积除以横截面积等于长度要具体的原理不要公式 上善若水,道家、儒家,佛学,还有西方哲学如何解释 休闲运动磁场怎么样 怎么根据工作电流的大小算电线的横截面积的大小? 计算下面物体的表面积和体积- -发不了图片 加Q1186574187 给你看 对的加10分 当北京处在高温多雨的季节时,在南极大陆我们能看到什么?A极光现象B极昼现象C极夜现象D北极熊 已知横街面积和体积,怎么求长度(横截面积、长度、体积的关系) 某溶液有NA2SO4与AL2(SO4)3,C(NA+)=0.1MOL/L,C(SO42-)=0.2MOL/L则C(AL3+)=? 洗衣机的注水选择脱水侧是干什么的? 下雨前动物会有哪些有趣的反应 计算下面各物体的表面积和体积 在小天鹅全自动洗衣机上单独脱水如何操作? 某AL2(SO4)3溶液VmL中,含有AL3+ c mol L -1次方 取出V/2mL溶液稀释成2VmL后,硫酸根离子的物质的量浓度 同体积,同物质的量浓度的Na2SO4,MgSO4,Al2(SO4)3溶液中的硫酸根离子的个数比为——? 为什么夏天的太阳那么热? 命里有时终须有,命里无是莫强求,出自哪首诗 红绿色盲遗传符合基因的分离定律为毛 为什么夏天的太阳比冬天的热. 命里有时终须有 命里无时莫强求是什么意思 什么是命重?定义 夏天的太阳为什么会比冬天的热为什么夏天的太阳温度要比冬天的太阳温度要高呢 命里无时,莫强求.命里有时,终须有. 多基因遗传符合自由组合和基因分离定律吗 为什么太阳在夏天会变的很热为什么一到夏天,就很热很热,热的受不了 命里有时总需有,命里无时莫强求 其命维新”这句话的含义. 黑龙江省五常市2010年预测积温是多少?最好别说?的数字. 热的地方气压低,冷的地方气压高.照理空气由高压向低压流动那为什么在有热源的地方空气由高温(低压)向低温(高压)流动? 八大行星中,地球的特殊性表现在哪里?(A.有自转和公转/B.是太阳系中唯一有高级智慧生物的行星就是这样 小学学过的运算有哪些规定注意是规定!不是有哪些运算(说运算也行,但一定要说有哪些规定) 一架飞机在南半球自东向西飞行,飞行员的左侧是高压,即可判定( )A 顺风飞行 B逆风飞行C飞机在西风带中 D风从北测吹来答案选择的是A,可是我想问一下,地转偏向力是南半球左偏,北半球右 太阳系中八大行星的自转和公转的方向是啥谢谢了求求各位了!急用 我们已经学过什么和什么的什么运算 物体的体积和表面积各是怎么算的 为什么高、低气压“高”、“低”比较的前提条件是都在同一海拔高度上,而不能够垂直比较呢?(不要说的那么复杂啦,要不看不懂) 求太阳系九个行星距太阳距离,公转周期,各自质量、自转周期.及太阳质量及自转周期.请注意问题内容,我不要无用的说明,要有全部数据再回答,如不全请不必回答。 为什么金字塔要造在埃及首都开罗西南面的金黄色的沙漠中呢? 0.2mol Al2(SO4)3中含有Al3+____mol,SO4^2-____g,共含有____mol质子.前两空我都知道,但是质子要怎么算呢,我算出来和别人不一样.还有一道:8g氧气为____mol;0.1mol氧气含有____mol质子,含有____mol电子. 计算下面这个物体的表面积和体积 求文档: 埃及金字塔位于开罗首都(?)西南面金黄色的沙漠中 请举个例子:比如:一个物体,长18厘米,高12厘米,宽10厘米.体积是:18×12×10=2160,那么底面积乘以高 饲养场养小鸡400只,比母鸡只数的5分之3少80只,饲养场养的母鸡和小鸡共多少只 埃及金字塔 在埃及首都开罗西南面金黄色的沙漠中,可以看到一座座巨大的角锥形建筑物.它们巍然屹立,傲对埃及金字塔在埃及首都开罗西南面金黄色的沙漠中,可以看到一座座巨大的角锥形 0.2mol Al2(SO4)3的核外电子是多少mol? 养鸡场共养3200只小鸡,其中公鸡占1/8,母鸡占3/5,小鸡有多少只? 矗立 屹立 伫立 挺立 埃及金字塔( )在埃及首都开罗西南面金黄色的沙漠中,傲对碧空.东方明珠像擎天柱一般( )在上海黄浦江边.冬天,百花凋零,唯有红梅傲然( 独占枝头。 AL(SO4)3中AL3-有1mol,Al2(SO4)3几mol,硫酸根几mol 怎样通过图看出气压高低和温度高低?等压线有什么特点? 一颗质量为m的人造地球卫星绕地球做匀速圆周运动,卫星到地面的高度为H,地球半径为R,已知引力长量G,和地球质量M,求地球对卫星的万有引力的大小和卫星的速度 在Al2(SO4)3、K2SO4和明矾的混合溶液中,如果c(SO4 2-)=0.2mol/L,当加入等体积的02.mol/L的KOH溶液时,恰好完全沉淀,则原混合溶液中K+的物质的量浓度为?mol/LA.0.2 B.0.25 C.0.45 D.0.225求详细解释 为什么北半球锋面气旋图,闭合等压线分布一定是四周气压高中心气压低?那如何判断多条闭合等压线的气压大小 一颗人造卫星的质量为m,离地面的高度为h,卫星做匀速圆周运动,已知地球半径为R,地球表面重力加速度为g,求(1)该卫星饶地球一圈所需的时间,(2)H 基因分离定律表明,杂合子能否稳定遗传,自交后代有无性状分离? 秋天了 为什么跟夏天一样热 声音的传播速度与风速是否有关? 用科学解释爱情和用佛学解释爱情! 秋天为什么比夏天还热
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘