asp网站管理系统破解版,河北省建设工程招标信息平台,谁家做网站比较好,软件系统开发阶段任务在.Net Fringe 2016大会上#xff0c;F#创建者Don Syme谈了他对F#现状的看法以及F#的二元性。F#是以一个为面向对象语言构建的运行时为基础构建的函数式语言。\\F#是2010年发布的#xff0c;遵循开源许可协议。F#比.Net更早地踏上了开源之路#xff0c;C#和.Net在2015年才开…在.Net Fringe 2016大会上F#创建者Don Syme谈了他对F#现状的看法以及F#的二元性。F#是以一个为面向对象语言构建的运行时为基础构建的函数式语言。\\F#是2010年发布的遵循开源许可协议。F#比.Net更早地踏上了开源之路C#和.Net在2015年才开源。将F#开源主要是为了增加其公信力。那时一门语言想要得到开发人员和企业的重视开源是必须的。\\为.NET带来一门新语言的计划由来已久。函数式编程语言是隔离的运行在自己的VM里。互操作标准C调用、COM、CORBA、XML让语言集成变得困难。\\F#的做法是使用一个已经被广泛采用的运行时并在必要时采取折衷的办法。该语言在设计时就考虑了互操作性。像Scala和Swift这类较新的语言经常采用这种方法。\\F#的做法是将对象包含进来让它们适应于面向表达式的类型化函数式编程。虽为函数式语言但F#也支持类、抽象类和接口。\\//类定义\type Vector2D (dx:double, dy:double) \ let d2 dx*dx dy*dy //对象固有属性\ // 导出属性\ member v.DX dx \ member v.DY dy\ member v.Lenght sqrt d2\ member v.Scale(k) Vector2D (dx * k, dy * k) // 导出方法\\\F#支持类、接口和抽象类。它还有一个值得注意的新增特性对象表达式让开发人员可以匿名定义上述类型。\\type IMathExample \ // 抽象方法\ abstract member Add: int -\u0026gt; int -\u0026gt; int\\ // 抽象不可变属性\ abstract member Pi : float\\// 使用对象表达式的接口实现\let obj \ { new IMathExample with\ member this.Add x y x y\ member this.Pi 3.14 }\\\由于F#语言几年来一直在发展所以Syme简单介绍了该语言的现状\\开放、跨平台、中立、独立 \\ F#接受贡献 \\ 由非盈利性组织F#软件基金会管理 \\ 通过Xamarin提供移动开发和工具支持 \\ 由来自微软的Visual F#工具提供Windows和Azure支持 \\ F#编译服务是许多F#工具项目的基础 \\ F# 4.1的开发正在进行中。\在谈及语言独立性时Syme创造了一个新术语。他将“拟态独立性mimetic independence”定义为一种能力借助这种能力可以将一种技术定义为独立于另外一种技术、联盟或既定利益的理念。虽然F#实现了拟态独立性但我们仍然必须承认微软对此作出的巨大贡献。作为一个反例Visual Basic就不符合这个条件因为它完全依赖于微软。\\查看英文原文Don Syme Presents F# Design Principles at .Net Fringe