OCamlを初心者に宣伝したいのですが、英語での良いチュートリアルを探しています。聞いたことがあるだけでなく、実際に試してみて便利だと思ったことは...
7 に答える
私は『 Developing Applications With Objective Caml』という本がとても気に入っています-- 'OCaml' という名前の決定を反映するようにタイトルを更新する必要があると思います。それは古いため、少し時代遅れですが、マイナーな側面だけです。たとえば、ストリーム構文はコア言語に属するものとして提示されていますが、現在は Camlp4 拡張機能として外部委託されています。この本は驚くほど完成度が高く、すでに第 2 章、第 3 章、第 4 章に多くの肉が含まれています。
この本はシステム プログラミングを少しカバーしていますが、読者が興味を持っているのであれば、コミュニティの努力によって英語に翻訳された別の本、OCaml での Unix システム プログラミングをお勧めします。
最後に、OCaml の理論的基盤を発見したい場合は、U3 の書籍である OCaml 言語の使用、理解、および解明が優れたリソースであることがわかりました。ただし、OCaml について既に知っている読者のみを対象としています。
PS: Jason Hickey によるObjective Camlの紹介についても非常に良い意見を持っていますが、完全に読んだとは言えません。それが「初心者向け」の本の問題です。実際に読めるのはせいぜい 1 冊の優れた本だけです。
私にとって、主なものは次のとおりです。
$ apt-cache show ocaml-book-en
Package: ocaml-book-en
Source: ocaml-book
Version: 1.0-5
Installed-Size: 7061
Maintainer: Debian QA Group <packages@qa.debian.org>
Architecture: all
Recommends: www-browser | pdf-viewer
Description-en: English book: "Developing applications with Objective Caml"
This is the English translation of the O'Reilly's OCaml French
book "Developpement d'applications avec Objective Caml" that can
be found in the ocaml-book-fr package.
.
This package contains both the HTML and PDF version of the book.
:)
また、OCaml でのシステム プログラミングに関する優れた本とクックブック スタイルのリソースがここにあります。
学習時に使用したチュートリアルであり、常に初心者に推奨するチュートリアル - ocaml-tutorial.org (元のサイトがダウンしたため、ocamlcore にミラーリングされています)。
これは、プログラミングの初心者と、ある程度のプログラミングを知っているが関数指向パラダイムでプログラミングを学びたい人、または単に OCaml を学びたい人を対象とした本です。
書籍How to Think Like a Computer ScientistのOCaml ポートがNicolas Monje によって作成されました。
Webサイトによると、本のPDF版をダウンロードする必要があります
本から:
この本の目標は、コンピューター科学者のように考える方法を教えることです。この考え方は、数学、工学、自然科学の優れた特徴のいくつかを組み合わせたものです。数学者と同様に、コンピューター サイエンティストは形式言語を使用してアイデア (具体的には計算) を表します。エンジニアと同様に、彼らは物事を設計し、コンポーネントをシステムに組み立て、代替案間のトレードオフを評価します。科学者のように、彼らは複雑なシステムの動作を観察し、仮説を立て、予測をテストします。
コンピュータ科学者にとって最も重要なスキルは、問題解決です。問題解決とは、問題を定式化し、解決策について創造的に考え、解決策を明確かつ正確に表現する能力を意味します。結局のところ、プログラミングを学ぶプロセスは、問題解決スキルを練習する絶好の機会です。そのため、この章は「プログラムの道」と呼ばれています。</p>
あるレベルでは、それ自体が有用なスキルであるプログラミングを学習します。別のレベルでは、目的を達成するための手段としてプログラミングを使用します。進むにつれて、その結末が明らかになります。
私は Ocaml を使い始めたばかりですが、これらは私が最も役立つと思うチュートリアルです:
ドキュメンテーションとユーザーズマニュアル- 最も有用で公式
Caml の紹介- これは私が最初の数日間 (最近) に使用したもので、シンプルなため非常に役に立ちました。
Jason Hickeyの新しい本 " Real World OCaml " が間もなく出版される予定です。Webサイトには、無料で利用できるパブリック ベータ版があります。この本はまだ完成していないという事実にもかかわらず、大きな間違いや無関係なことに気付きませんでした.
OCaml を完全に理解することができました。概念を説明する多くの例が含まれており、簡単にチュートリアルと見なすことができます。List
また、標準モジュール ( 、ListLabels
、Map
、Sys
、String
、その他のものもあるかもしれません) を部分的にカバーしている点も気に入りました。
この本の「ランタイム システム」セクションは非常に役に立ちます。コンパイラの実装、メモリ管理、外部コードとの連携、言語コストの直感に関する詳細を提供します。多くの関数型プログラミングの本は、概念がメモリと時間の点でどれほど高価であるかを述べずに説明しているため、後者は非常に重要だと考えています。特に無料のオンライン版がある場合は、この本を強くお勧めします。
Jason Hickey の Introduction to Objective Caml は非常に優れていると思いました (私が読んだ言語に関する唯一の実際のテキストと、どのように始めたか)。INRIA のドキュメントも優れています。モジュールの署名を自分で読むことは、コツをつかめば非常に有益です;)
信じられないかもしれませんが、OCaml は私が (本当に) 最初に学んだ言語でした。