OCamlに関するmiki_beneのブックマーク (8)

  • OCamlでできるだけ型注釈を書かずに済ませる - Qiita

    これはAdvent Calendarとか関係なくなんとなく書かれた記事です。 ML系言語で型注釈が必要なケース - Qiita にある通り、OCamlには型注釈なしではコンパイルが通らないケースがいくつかある。 そのような場合でも、別の書き方をすることで型注釈なしで済ませる/より少ない型注釈で済ませる方法を紹介する。 GADTs type 'a t = | Int : int -> int t | Bool : bool -> bool t let f : type a. a t -> int -> bool = fun t y -> match t with | Int x -> y >= 2 | Bool x -> x このケースでは、型注釈を付けないと、 Int x の時点で f の型が int t -> int -> bool に確定してしまい、 Bool x : bool t ≠

    OCamlでできるだけ型注釈を書かずに済ませる - Qiita
  • OCaml の環境構築 - Qiita

    最初に以下のリンクのいずれかを一読することをオススメします。 Real World OCaml に記載されている方法 Installation Instructions 『京都大学工学部専門科目「プログラミング言語処理系」講義資料』 OCaml 処理系のインストール OPAM のインストール OPAM とは OCaml Package Manager パッケージマネージャだけど、OCaml体もOPAMを通してインストールできる なので最初にOPAMを入れる OPAMのインストール時にOCamlが入るが、特に関係ない Mac なら brew install opam する。 OPAM uses ~/.opam by default for its package database, so you need to initialize it first by running (as a no

    OCaml の環境構築 - Qiita
  • OPAM switchで複数のOCamlバージョンを使いわける

    OPAMはバージョン2を使いましょう OPAMを使うと複数のOCamlコンパイラバージョンを簡単に使いわけられる ディレクトリスイッチを使うとカレントディレクトリによって自動的にスイッチできる 複数のバージョンのOCamlシステムをインストールする 複数のOCamlコンパイラバージョンを使って仕事をすることはよくあります。 普段は最新バージョンのOCamlコンパイラを使用していたとしても、例えば、依存ライブラリがまだ最新のOCamlバージョンに対応していないアプリ開発の場合には古いバージョンのコンパイラが欲しくなります。また、コンパイラバージョンによって細かい修正が必要なライブラリを開発する際にはいくつものバージョンのコンパイラが手元に必要になります。一つ一つ異なるバージョンのOCamlコンパイラを別ディレクトリにイストールしていくことは可能ですが、面倒です。 OPAMにはスイッチという概

    OPAM switchで複数のOCamlバージョンを使いわける
  • https://cs3110.github.io/textbook/

  • OCamlの開発環境2019末

    この記事は株式会社オープンストリームアドベントカレンダーの3日目の記事です。 年の瀬ということで、いい感じに部屋が冷えてきてちょうどよいです。さて、 あまりネタがない 今回はOCamlの開発環境について書こうかと思います。 以前にも書いたんですが、ちょっとした更新とか、結構大きな更新とかがあったので、まとめということで。 Package Manager opam (OCaml Package Manager)でどうぞ。現状、過去から受け継がれているとかで無い限り、これを使わない理由は皆無になりました。 version 2.0からは、ローカルのパッケージを簡単に追加できるようになっているので、このパッケージが更新されない・・・とかにも対応することが出来たりします。 Windowsへのクロスコンパイルなどの用途でも利用できるものなので、まー大人しく使っておきましょう。なお、Windows用のバ

  • GitHub - janestreet/ecaml: Writing Emacs plugin in OCaml

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - janestreet/ecaml: Writing Emacs plugin in OCaml
    miki_bene
    miki_bene 2019/12/05
    OCamlでEmacsのプラグインを作るやつこんなのあるの???
  • OCaml

  • 「プログラミングの基礎」を使った授業紹介

    「プログラミングの基礎」を使った授業紹介 浅井 健一 このページでは、お茶の水女子大学、理学部、情報科学科の2年生を 対象とした授業「関数型言語」のビデオほかを公開しています。 この授業は反転授業 (flipped class) を行っており、 受講生は授業前に以下の予習を求められます。 毎回の授業用に用意されたビデオを見て、 予習クイズに答えること。 教科書の該当部分を読んで、 教科書問題に答えること。 授業時間中は特に内容の説明はせず、 受講生は別途、示される練習問題とレポート問題を各自、解きます。 その際に生じた疑問点等について授業で個別に対応しています。

  • 1