none
Expert FSharp RRS feed

  • 问题

  • 这本书第二章一上来的代码就不能跑.
    代码:
    let wordCount text =
        let words = String.split [' ']  text                             ==》有错误,没有这个方法的定义。
       let wordSet = Set.ofList words
        let nWords = words.Length
        let nDups = words.Length - wordSet.Count
        (nWords, nDups)

    let shwoWordCount text =
        let nWords, nDups = wordCount text
        printfn "--> %d words in the text" nWords
        printfn "--> %d duplicate words" nDups
    关于F#有没有新一点的资料.....推荐点~~3Q咯.


    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    2009年10月30日 13:34

答案

全部回复

  • 你好!
         目前资料不多,你看那本就很好了,代码应该是这样的:
    let wordCount text =
    let words = String.split [' '] text
    let wordSet = Set.of_list words
    let nWords = words.Length
    let nDups = words.Length - wordSet.Count
    (nWords,nDups)

    let showWordCount text =
    let nWords,nDups = wordCount text
    printfn "--> %d words in the text" nWords
    printfn "--> %d duplicate words" nDups

    周雪峰
    2009年10月31日 4:42
    版主
  • F#在2005之前 被java告了 停止更新了
    2009年10月31日 5:33
  • 你好!
         目前资料不多,你看那本就很好了,代码应该是这样的:
    let wordCount text =
    let words = String.split [' '] text
    let wordSet = Set.of_list words
    let nWords = words.Length
    let nDups = words.Length - wordSet.Count
    (nWords,nDups)

    let showWordCount text =
    let nWords,nDups = wordCount text
    printfn "--> %d words in the text" nWords
    printfn "--> %d duplicate words" nDups

    周雪峰

    雪峰版主.我用的vs2010 beta2,String.split这句会报错..报的找不到该方法之类的错误,未定义.
    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    2009年10月31日 9:40
  • 尝试添加dll引用
    周雪峰
    2009年10月31日 10:03
    版主
  • 现在项目添加的引用有FSharp.Core, mscorlib, System, System.Core, System.Numerics
    我觉得会不会是和以前的版本不兼容了..有些方法改变了.


    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    2009年10月31日 10:09
  • 我晕了记错了 应该是J#被java告了
    F#应该是新语言  net4.0的

    2009年10月31日 10:13
  • 引用Sharp.PowerPack !    Microsoft.FSharp.Compatibility.String 的成员
    2009年10月31日 10:36
  • 现在项目添加的引用有FSharp.Core, mscorlib, System, System.Core, System.Numerics
    我觉得会不会是和以前的版本不兼容了..有些方法改变了.


    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    不是的,这个是.NET类库中的方法,你把s换成大写的试试

    周雪峰
    2009年10月31日 10:39
    版主
  • 现在项目添加的引用有FSharp.Core, mscorlib, System, System.Core, System.Numerics
    我觉得会不会是和以前的版本不兼容了..有些方法改变了.


    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    不是的,这个是.NET类库中的方法,你把s换成大写的试试

    周雪峰

    那个方法在Microsoft.FSharp.Compatibility中 
    目前我用了vs2008测试 没问题  智能提示我引用这个命名空间 
    2009年10月31日 10:42
  • 现在项目添加的引用有FSharp.Core, mscorlib, System, System.Core, System.Numerics
    我觉得会不会是和以前的版本不兼容了..有些方法改变了.


    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    不是的,这个是.NET类库中的方法,你把s换成大写的试试

    周雪峰

    那个方法在Microsoft.FSharp.Compatibility中 
    目前我用了vs2008测试 没问题  智能提示我引用这个命名空间 

    这个包在哪个dll中?我没找到...- -
    大小写都不行..
    Sharp.PowerPack是哪个?我没找到呢...
    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    2009年11月2日 0:36
  • C:\Program Files\FSharp-1.9.6.2\bin\FSharp.PowerPack.dll vs2010的话 我不知道了 我是下载F#独立语言包2008的 F#和C#很大不同 C#是面向对象的 F#是面向函数的 合适长期js c语言的思维的人使用
    2009年11月2日 3:40
  • 晕。我也一样,找不到这个split东东,也找不到类FSharp.powerPack.dll,我是在FSharp-1.9.9.9下的。

    2010年4月15日 15:18
  • 我顶微软的肺,让我自己与他函数来兼容。

     

     
    module String =
       let  split  (a:char[]) (str:string)=
            str.Split(a)

    这样才可以调用String.split了

    2010年4月15日 15:49