小编Jac*_*eja的帖子

功能javascript?

我想使用"javascript派生语言"来学习和使用今天的一些常用Web技术,如node.js,jquery等.

在用功能概念和语言(主要是F#)玩弄一段时间后,我在寻找Javascript世界中是否有类似的东西.到目前为止,我发现并考虑的是:

  • Javascript的功能方式:尽可能广泛地使用javascript的功能部分,使用Underscore或其他功能库.这种方法的优点是学习"母语".对我来说,缺点是我真的不喜欢它的语法,并且在Javascript中编写"功能优先"的感觉并不自然.
  • CoffeeScript + Underscore:我看过一些使用CoffeScript + Underscore的例子看起来很吸引人.例如:http
    ://autotelicum.github.com/Smooth-CoffeeScript/SmoothCoffeeScript.html#toc-第7章这方面的优点是CoffeScript正在疯狂传播,似乎是为其使用而设计的语言的事实标准javascript VM.它的语法对我来说更自然,我可以用更简单的方式编写一些功能方式.
    缺点是远离javascript本身(这对我来说真的不是一个问题)并且处于非真正功能的中间地带.
  • Livescript:源自Coco(它本身来自CoffeScript),它对我来说具有更吸引人的语法(它甚至还有来自F#的我心爱的管道'|>'运算符).专业人士认为它是最具功能性的方法.缺点是它没有很大的传播(我在SO中进行搜索,并且真的没有关于它)和所有这些暗示(没有太多的社区,支持,教程等).

在考虑了所有这些之后,我没有真正的结论,所以如果人们习惯使用javascript,CoffeeScript等可以指导我关注这个问题的真正重要性,那就太棒了.

以防万一......我还没有真正考虑使用Pit(因此继续使用F#),因为虽然它编译为javascript,但我认为它没有与上面的任何javascript库集成,并且不遵循相同的工作流程或与javascript生态系统以及列出的选项集成.

非常感谢!

javascript functional-programming coffeescript livescript

14
推荐指数
2
解决办法
1349
查看次数

自动F#转C#转换

我想知道是否有自动将F#代码转换为C#代码在实践中运行良好.这样做的原因是我们在F#中有一些逻辑,我们希望使用Mono for Android,MonocMac,MonoTouch ......为每个平台创建一个应用程序.由于那些不直接支持F#,如果我们可以继续编写F#中的逻辑并使用C#和那些工具执行GUI部分,那将是很好的.

谁知道什么?谢谢.

c# mono f# xamarin.ios xamarin.android

9
推荐指数
2
解决办法
1万
查看次数

Clojure和F#的DSL创建设施有哪些?

我正在尝试确定Clojure和F#用于创建DSL的设施.每个提供什么设施来创建和操纵DSL?

由于F#是静态类型的,这是否会使这项特定任务更加困难?在Clojure部分,我没有真正的经验,但已知所有LISP都非常适合元编程/ DSL.

我的问题不是打算在两种语言之间发动战争.如果我最近对这两个问题提出质疑是因为我认为两者都很棒,并且想要更多地了解这两者的具体情况.

在阅读了一些关于故意编程的日子之后,它让我重新燃起了对DSL和所有人的兴趣.

虽然我对F#有一些了解,但我还没有使用引文或类似的东西开发任何东西.我已经看到了基于歧视联盟的DSL的例子,这看起来很有趣.

dsl f# metaprogramming clojure

6
推荐指数
2
解决办法
771
查看次数

使用F#和ASP.NET MVC保存EF

基于丹尼尔莫尔及其着作的优秀样本.

我在F#中使用了ASP.NET MVC应用程序并使用了在线模板.到目前为止,我的模型,实体,控制器,存储库,视图...都非常通用和可重用,查询很棒.但我找不到一种方法来保存DbContext部分同样可以重复使用.

对于查询部分,Repository.fs的代码如下

namespace Melopienso.Repositories

open System
open System.Linq

module Repository =
    let get (source:IQueryable<_>) queryFn =
        queryFn source |> Seq.toList

    let getAll () =
        fun s -> query { for x in s do
                         select x }

    let find filterPredFn =
        filterPredFn
        |> fun fn s -> query { for x in s do
                               where (fn()) }

    let getTop rowCount =
        rowCount
        |> fun cnt s -> query { for x in s do
                                take cnt …
Run Code Online (Sandbox Code Playgroud)

f# entity-framework asp.net-mvc-4

5
推荐指数
1
解决办法
711
查看次数

使用String.Contains的NullReferenceException

我不知道为什么我在以下代码的List.filter部分得到了Exception:

pdfLinks |> List.filter(fun x -> x.Contains("shop")) |> List.iter (printfn "%s")
Run Code Online (Sandbox Code Playgroud)

pdfLinks的类型为"字符串列表",并且填充了大量包含"shop"一词的字符串.

它在带有虚拟列表的F#Interactive中正常工作.原始的一个是通过解析HTML文件生成的,但是通过手表检查它显示它具有所需类型的所需值.

知道可能会发生什么吗?

谢谢!

f#

4
推荐指数
1
解决办法
400
查看次数

.Net HTML解析器现在和将来

我一直在使用HTML Agility Pack(在这里推荐很多),我喜欢它,但我有一些担忧.

我正在开发一些新的应用程序,这些应用程序很重要的(X)HTML解析应该在未来几年内运行,所以我想依靠一个看起来像是能够很好地处理日常网络混乱的库.我这样说是因为前段时间我读过一位HAP开发人员的帖子,说明他们在不久的将来遇到的问题,以及应该做的改变,但由于缺乏资源而难以实现.我已经在他们的Codeplex中问过,它的维护者很可能确认了他们想要做什么以及他们有多少时间,我完全理解.

看看其他选项,Majestic 12解析器似乎是人们推荐的另一个很好的选择......但是对它的网站的快速访问告诉我们它的最后版本日期是2008年,超过3年了.

所以我问...有没有人知道一个好的.Net HTML解析器,它背后似乎有很强的发展,所以它可以适应接下来几年所需的一切?它也必须是开源的.也许我要求太多......但为了以防万一.

不要误会我的意思,我喜欢HAP而且我现在对它非常满意,我只是害怕在一段时间内可能发生的事情,并且在深深依赖必须持续的事情之前,我更愿意探索可用的选项.

谢谢!

.net html-parsing

2
推荐指数
1
解决办法
337
查看次数

带序列运算符的F#列表

看看这两个线程之后:F#是否与Haskell相同?,从F#中的N个不同索引的序列中取N个元素 ,我一直想知道在列表上使用序列运算符的最佳方法,甚至是使用它们.

我现在是F#的新手,我正在编写一个程序,它必须处理从HtmlAgilityPack获得的大量序列.在Seq模块中有一些有趣的运算符,但正如那些线程所述,它可能与性能有关,如果我们不得不在seq - > list之间不断转换,它也会使代码混乱,而不是解决问题的东西.这就是我开始学习F#的原因.

一个简单的例子是当我需要取一个列表的'N'个元素时:

               listOfRows
               |> Seq.take 2
               // Now I don't have a list anymore, it returns a sequence
               |> List.ofSeq
Run Code Online (Sandbox Code Playgroud)

那么,任何人都可以了解处理这些情景的最佳方法吗?我可以使用Seq.take和Seq.skip来处理解决方案,但这已知效率非常低.另一方面,将功能内置到标准库中并且必须重新实现它以在不同集合上使用相同的概念,或者通过显式转换使代码更脏,这是一种耻辱.

我怎么能看到'list - > seq'和'seq - > list'之间每次转换对性能的影响?

非常感谢.

f# list seq

1
推荐指数
1
解决办法
2160
查看次数