Tag: f#

无法加载文件或程序集FSharp.Core,版本= 4.0.0.0

我正在尝试在Windows Server 2008上部署使用F#4.0的Web应用程序。 它在我的电脑上安装了VS2010,但在服务器上无法正常工作。 每当你打开页面,你会得到这个错误消息: 无法加载文件或程序集“FSharp.Core,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”或其某个依赖项。 该系统找不到指定的文件。 我已经使用Web平台安装程序安装了.NET 4。 F#PowerPack也被安装。 我发现这个网页: http : //connect.microsoft.com/VisualStudio/feedback/details/507202/error-in-working-with-f它build议你重新安装F#,但下载F#的链接似乎被打破。 这可能不是我有同样的问题。 我也试图安装微软F#2.0.0.0,因为它是我能find的唯一的F#再分发。 但它根本没有帮助。 有没有人有这样的工作?

不可变的数据结构性能

我不明白如何能够作为一个集合是不可改变的,仍然有一个可以接受的性能。 从我读过的F#集内部使用红黑树作为他们的实现。 如果每次我们要为红黑树添加新的东西,我们必须基本上重新创build它,怎么会有好的performance? 我在这里错过了什么? 虽然我问这个F#的集合,我认为这是任何其他语言具有或使用不变的数据结构相关。 谢谢

F#:这个expression式应该有types“单元”,但是types为“ConsoleKeyInfo”

这是一个简单的问题,但是由于F#非常新,所以我无法追踪答案。 我只是想暂停在一个F#控制台应用程序,所以我写道: Console.ReadKey() 但是,这给出了警告:这个expression式应该有types“单元”,但types为“ConsoleKeyInfo”。 任何帮助将不胜感激。 谢谢,李

如何编写通用数字的函数?

我对F#很陌生,发现types推断确实是一件很酷的事情。 但目前看来,这也可能导致代码重复,这不是一件很酷的事情 。 我想总结一个这样的数字的数字: let rec crossfoot n = if n = 0 then 0 else n % 10 + crossfoot (n / 10) crossfoot 123 这正确打印6 。 但现在我的input数字不适合int 32位,所以我必须将其转换为。 let rec crossfoot n = if n = 0L then 0L else n % 10L + crossfoot (n / 10L) crossfoot 123L 然后,一个BigInteger来我的方式,并猜测是什么… 当然,我只能拥有bigint版本,并根据需要向上投入input参数和输出参数。 但是首先我假设在int上使用BigInteger有一些性能惩罚。 […]

装饰者模式的function相当于?

什么是装饰devise模式的等价function编程? 例如,你将如何在function风格中编写这个特定的例子 ?

斯卡拉与F#问题:他们如何统一面向对象和计划范式?

Scala和F#采取的统一面向对象和面向对象的方法之间的主要区别是什么? 编辑 每种方法的优点和缺点是什么? 如果,尽pipe支持子types,F#可以推断函数参数的types,那么为什么不能Scala?

将选项types列表缩减为仅非元素的最佳方式?

我意外地从一个选项列表到一个只包含一些元素的列表,有点麻烦。 我最初的尝试是: let ga = List.filter (fun xx -> match xx with | Some(g) -> true | None -> false) gao 但是,当然,这个结果types仍然是一个选项列表。 我不知道如何使用List.map来压缩这个,因为你必须处理匹配语句中的所有情况。 我有一个丑陋的解决scheme,但我想知道是否有更好的东西。 丑陋: let rec gOptRemove gdec gacc = match gdec with | head :: tail -> match head with | Some(a) -> gOptRemove tail (a :: gacc) | None -> gOptRemove tail […]

如果Java的人去斯卡拉,C#去F#,Ruby的人去哪里function涅??

我知道很多Java开发人员已经开始关注Scala,因为它运行在JVM上,许多Microsoft世界的人都在关注F#,但是Ruby作为一个自然的function性inheritance者有什么用处? 在一个纯粹的FP意义上,Ruby并不缺less任何东西,反而有些人可能会说。 一个函数式语言迫使程序员不要使用全局variables和其他习语(尽pipe可以在函数式语言中使用全局variables)

在F#中同时进行Leading和parsing

当使用fslex和fsyacc时,有没有一种简单的方法可以让lexing和parsing同时运行?

F#3.0查询中的多列

试试F#3.0,当涉及到多列分组的时候,碰到了一些问题。 显而易见的事情是尝试 query { for d in context.table do groupBy (d.col1,d.col2) into g select (g.Key) } 但是我得到了“LINQ to Entities支持只有无参数的构造函数和初始化器”。 例外。 我似乎无法find一个MSDN上的例子 http://msdn.microsoft.com/en-us/library/hh225374(v=vs.110).aspx http://msdn.microsoft.com/en-us/library/hh361035(v=vs.110).aspx 我意识到我的问题类似于“ F#中的entity framework和匿名types ”,但它似乎是powerpack / F#2.x的重点,我希望F#3.0有一个优雅的答案…任何想法? 更新: 我在阅读Brian的post时遇到了CLIMutable属性: http://blogs.msdn.com/b/fsharpteam/archive/2012/07/19/more-about-fsharp-3.0-language-features.aspx 我非常乐观,所以我尝试了 [<CLIMutable>] type MyRecord = { Column1 : int; Column2 : int } query { for d in context.table do groupBy {Column1 = […]