zoukankan      html  css  js  c++  java
  • 关于VS2010中F#的使用说明及勘误

    目前,看到许多介绍F#的介绍,基本上就是互相“借鉴”来的,不过其中很多是基于Framework 3.0或3.5的,在Framework 4.0中F#有一些改变

    下面就我的学习中,有以下几点说明

    1.在VS2010中,Ctrl+Alt+F打开fsi(F# Interactive)

    2.选中要执行的代码后,按下Alt+Enter在fsi中运行

    3.Framework 4.0中没有print_any,print_newline,print_string等函数,应用printfn "%A",printf "\n",printfn "%s"等替换

    4.定义Seq时应用let squares=seq { for x in 1..10 -> x * x},而不能用let squares={ for x in 1..10 -> x * x}

    5.在F#入门一书中的

    let evens n=seq { for x in 1..n when x % 2=0-> x}

    在4.0无法编译通过,可改为:

    let evens1 n=seq { for x in 1..n do if (x % 2 =0) then yield x}

    6.#light 表示轻量语法(等同于#light "on")

    可用于 F# 语言中的多种构造的语法有两种形式:“详细语法”和“轻量语法”。详细语法并不常用,但它的优势是对缩进的敏感程度较低。轻量语法比较简短,并使用缩进来表示构造的开头和结尾,而不是使用诸如 beginendin 等附加关键字。 默认语法为轻量语法。本主题介绍在未启用轻量语法时 F# 构造的语法。详细语法始终处于启用状态,因此,即使您启用轻量语法,也仍然可以为某些构造使用详细语法。可通过使用 #light "off" 指令禁用轻量语法。

    7.Array2应改为Array2D,Array3应改为Array3D

    8.列表只有IsEmpty属性,判断是否为空,没有noeempty,如果要判断列表非空,可用Length属性

    如将while (List.nonempty !mat) do改为 while ((List.length !mat)>0) do

  • 相关阅读:
    Win10 VirtualBox 安装 OpenWrt/LEDE
    在华为云、腾讯云服务器中部署 Hadoop 集群
    记一次部署Hadoop后遭受kthreaddi挖矿病毒
    四种基本编程命名法
    词云图制作
    在Ubuntu18.04lts下安装NS2(含nam)
    二叉树的建立与遍历
    国内pip镜像
    java高斯消元模板
    图的3种储存方式
  • 原文地址:https://www.cnblogs.com/djcsch2001/p/2265216.html
Copyright © 2011-2022 走看看