我一直在阅读有关 Ocaml 始终如一的速度、快速原型设计能力和出色的内存管理的信息,并决定接受它。
因为我已经掌握了 Ruby、*lisp、Haskell 和 Erlang,所以我特别感兴趣的是我应该在 Ocaml 中注意哪些违反 KISS 的特性。
如果您以上述语言的背景开始 Ocaml,那么最令人沮丧的事情是什么?你是如何解决这个困难的?什么类比帮助你进入了语言的流程?
我也很想知道你是否已经做的不仅仅是简单地学习了 Ocaml,并且实际上已经为你的大部分编码问题转换了它。
我一直在阅读有关 Ocaml 始终如一的速度、快速原型设计能力和出色的内存管理的信息,并决定接受它。
因为我已经掌握了 Ruby、*lisp、Haskell 和 Erlang,所以我特别感兴趣的是我应该在 Ocaml 中注意哪些违反 KISS 的特性。
如果您以上述语言的背景开始 Ocaml,那么最令人沮丧的事情是什么?你是如何解决这个困难的?什么类比帮助你进入了语言的流程?
我也很想知道你是否已经做的不仅仅是简单地学习了 Ocaml,并且实际上已经为你的大部分编码问题转换了它。
我找到了关于 Ocaml 及其与大多数其他语言的关系的优秀资源:http: //www.soton.ac.uk/~fangohr/software/ocamltutorial/lecture1.html
它不仅解释了原因,还解释了许多在你开始时可能会困扰你的小怪癖。
啊,我发现了一张小抄,其中几乎突出了它所有的语法怪异之处。
我听说 APress Practical OCaml 也很糟糕。
Objective Caml 简介非常 好,专门解决了一些反 KISS 问题,例如类型系统可能无法容忍的方式。
从 C++ 背景来到 OCaml,我发现用变体类型替换类是最难的过渡(而且很容易!)。
有一本关于 Ocaml “Practical Ocaml”的书,它不是一本真正的好书,但至少对于入门来说它已经足够好了。这是一种非常实用的语言,不幸的是它是一种“奇怪”的语法。如果您想看到一些“真正的”Ocaml,那么只需查看 Shootout 页面。
问候弗里德里希