`
cookoo
  • 浏览: 652474 次
  • 性别: Icon_minigender_1
  • 来自: Shanghai
社区版块
存档分类
最新评论

Practical Ocaml阅读笔记5-8章

    博客分类:
  • FP
阅读更多
1. Marshal从文件读出来的东西不包括类型信息,需要手动造型

2. 一直奇怪为什么在cygwin里的ocaml的toplevel还是不能load 'unix.cma'
原来是平台不支持动态加载,得硬把模块link进定制的toplevel:
ocamlmktop -o mytop.exe unix.cma


3. String是mutable的,best practice是作为mutable数据的buffer。

4. Array有matrix支持

5. Polymorphic Variant Types有个潜在的问题:类型推断不会约束它的内容范围。

6. Ocaml比我想的更加lispy, 也许是这本书的代码风格问题。。。代码中意义不明的变量名太多了,晕~

7. pretty print: #install_printer print_position;; 不过print_position得自己定义

8. 这本书说是面向无FP经验读者,可是很多代码中基本概念根本不讲(fold, 多形变量声明。。。),还好我懂点,否则就要傻掉了。


code17说不会组织翻译这本书了555,我看来是不用再老实读下去了,还是拣些有意思的章节看看算了。另外好像没找到有什么动态载入代码的办法,看来camlp4也只能用于构造静态DSL。




分享到:
评论
1 楼 cookoo 2006-11-12  
动态载入代码(仅限bytecode模式):
http://caml.inria.fr/pub/docs/manual-ocaml/libref/Dynlink.html

PO的评价越来越糟,连techinical reviewer也站出来说出版社不顾他的反对出版(怎么不早点站出来呢?)。唉,浪费读者银子事小,打击Ocaml社区事大。

相关推荐

    llvm-ocaml-doc-3.4.2-8.el7.x64-86.rpm.tar.gz

    - "ocaml-srpm-macros-5-2.el7.noarch.rpm"提供了构建SRPM包时所需的OCaml宏定义。 - "llvm-libs-3.4.2-8.el7.x86_64.rpm"和"llvm-3.4.2-8.el7.x86_64.rpm"分别包含了LLVM的核心库和主程序包。 - "llvm-ocaml-3.4.2-...

    ocaml-camlp4-devel-4.05.0-0.4.gitfc12d8c7.el7.x64-86.rpm.tar.gz

    OCaml是一种功能强大的编程语言,它广泛应用于软件开发领域,尤其在研究和教育领域备受推崇。OCaml语言的核心是模块化和高阶函数,这些特性使得OCaml在函数式编程中表现出色。OCaml的高级特性包括类型推断、垃圾回收...

    ocaml-gettext-0.3.7-1.el7.x64-86.rpm.tar.gz

    最后,ocaml-srpm-macros-5-2.el7.noarch.rpm提供了软件源包构建时使用的宏定义。 该压缩包文件是针对基于RPM包管理系统的Linux用户,特别是那些使用OCaml语言并希望在自己的软件中实现多语言支持的开发者。文件中...

    ocaml-ocamlbuild-devel-0.11.0-9.el7.x64-86.rpm.tar.gz

    - ocaml-srpm-macros-5-2.el7.noarch.rpm可能是提供了一系列宏定义,用于SRPM(源码RPM)包的构建。 以上各部分构成了一个完整的软件安装包集合,旨在为用户提供一个完整的OCaml开发环境。OCaml是一种多范式的编程...

    ocaml-gettext-devel-0.3.7-1.el7.x64-86.rpm.tar.gz

    ocaml-camlp4-4.05.0-0.4.gitfc12d8c7.el7.x86_64.rpm和ocaml-srpm-macros-5-2.el7.noarch.rpm分别提供了Camlp4预处理器和SRPM宏,这些工具对于OCaml的高级开发和打包过程是必需的。ocaml-gettext-0.3.7-1.el7.x86_...

    ocaml-hivex-1.3.10-6.12.el7-9.x64-86.rpm.tar.gz

    例如,ocaml-4.05.0-6.el7.x86_64.rpm是OCaml编译器的包,ocaml-compiler-libs-4.05.0-6.el7.x86_64.rpm提供了OCaml编译器的库文件,ocaml-runtime-4.05.0-6.el7.x86_64.rpm则是OCaml运行时环境。这些包通常需要一同...

    ocaml-tic-tac-toe:用 OCaml 编写的无与伦比的井字游戏

    Ocaml-井字游戏用 Ocaml 编写的无与伦比的井字游戏设置为了运行包含的安装脚本,请确保您的计算机上安装了自制软件。 可以在找到安装说明。下载项目 git clone ...

    ocaml-hivex-devel-1.3.10-6.12.el7-9.x64-86.rpm.tar.gz

    9. "ocaml-srpm-macros-5-2.el7.noarch.rpm"可能是一个用于源代码rpm包制作的宏文件。 整体而言,该tar.gz文件包含了完整的OCaml开发环境所需的软件包以及hivex库的开发与运行时文件,适用于基于RHEL 7系统的64位...

    ocaml-camlp4-devel-4.05.0-0.4.gitfc12d8c7.el7.x86_64.rpm

    ocaml-camlp4-devel-4.05.0-0.4.gitfc12d8c7.el7.x86_64.rpm

    ocaml-findlib-devel-1.7.3-7.el7.x64-86.rpm.tar.gz

    - ocaml-srpm-macros-5-2.el7.noarch.rpm:这个包可能包含了用于源码包的宏定义,这是为了方便在RPM系统上构建OCaml源码包而设计的。 以上提到的软件包都是OCaml编程语言在特定版本下的预编译二进制包,它们为开发...

    ocaml-srpm-macros-5-2.el7.x64-86.rpm.tar.gz

    本篇文章将详细探讨一个特定的RPM压缩包文件“ocaml-srpm-macros-5-2.el7.x64-86.rpm.tar.gz”。该文件不仅包含一个特定的软件包,还提供了一系列安装指南以及相关的依赖包。从文件的标题来看,我们可以推断出软件包...

    ocaml-ocamlbuild-doc-0.11.0-9.el7.x64-86.rpm.tar.gz

    7. ocaml-srpm-macros-5-2.el7.noarch.rpm:这是一个特定于软件包管理的宏包,通常用于构建srpm源代码包,包含了一系列宏定义来简化构建过程。 安装该压缩包中的内容需要经过几个步骤。首先,用户需要在Linux环境下...

    ocaml-4.02.3-x86_64-mingw64-installer4-opam.exe

    ocaml-4.02.3-x86_64-mingw64-installer4-opam.exe ocaml-4.02.3 windows 64位/32位 安装包 Objective Caml(OCaml)是Caml编程语言的主要实现 截至2017.11.14 ocaml最新稳定版本 md5: 0402518b131f32e52cbf1b8457e...

    ocaml-brlapi-0.6.0-16.el7.x64-86.rpm.tar.gz

    brlapi-0.6.0-16.el7.x86_64.rpm以及其他相关的依赖rpm文件,包括ocaml-4.05.0-6.el7.x86_64.rpm、ocaml-compiler-libs-4.05.0-6.el7.x86_64.rpm、ocaml-runtime-4.05.0-6.el7.x86_64.rpm、ocaml-srpm-macros-5-2....

    ocaml-fileutils-devel-0.4.4-9.el7.x64-86.rpm.tar.gz

    由于文件列表中还包含了ocaml-srpm-macros-5-2.el7.noarch.rpm,这暗示了该压缩包可能还包含了一些用于源代码包管理的宏定义,这在编译和打包OCaml软件时非常重要。 安装OCaml-fileutils-devel软件包的过程涉及两个...

    ocaml-csv-devel-1.2.3-8.el7.x64-86.rpm.tar.gz

    ocaml-csv-devel-1.2.3-8.el7.x64-86.rpm.tar.gz压缩包为基于Red Hat系列的Linux用户提供了一整套OCaml语言环境和CSV处理库的安装包,使得用户能够方便地在系统上安装并使用OCaml进行高效且类型安全的数据处理工作。

    ocaml-fileutils-0.4.4-9.el7.x64-86.rpm.tar.gz

    最后,"ocaml-srpm-macros-5-2.el7.noarch.rpm"是一个SRPM宏包,它提供了一组宏定义,允许用户在构建SRPM软件包时更方便地使用RPM宏。 关于如何安装这些rpm文件,压缩包的描述中提供了一套详细的步骤。首先,用户...

    ocaml-emacs-4.05.0-6.el7.x64-86.rpm.tar.gz

    - ocaml-srpm-macros-5-2.el7.noarch.rpm:包含了用于创建SRPM软件包的宏文件。 6. 安装指导:如果用户在安装过程中遇到问题,可以私信博主寻求帮助。博主将提供全程的指导服务。 该文件是一个预先打包好的软件...

    ocaml-findlib-1.7.3-7.el7.x64-86.rpm.tar.gz

    这些依赖包分别是“ocaml-4.05.0-6.el7.x86_64.rpm”、“ocaml-compiler-libs-4.05.0-6.el7.x86_64.rpm”、“ocaml-runtime-4.05.0-6.el7.x86_64.rpm”和“ocaml-srpm-macros-5-2.el7.noarch.rpm”。每个RPM包都是...

    ocaml-extlib-1.5.3-7.el7.x64-86.rpm.tar.gz

    ocaml-srpm-macros-5-2.el7.noarch.rpm则是一组宏,用于在SRPM(源代码rpm包)中进行构建。 此外,包中还包含了一个readme.md文件,这是一种常见的标记语言文件,通常用于提供有关软件包的说明和安装指南。虽然具体...

Global site tag (gtag.js) - Google Analytics