Last update: 2018-08-06 Tags: programming, ocaml Preface Note: new chapters are not posted in the blog anymore! Improved and expanded versions of these posts and new chapters can be found on the OCaml Book project website. This post series started as a response to requests from some friends curious about OCaml. There are quite a few nice books already, but I realized that if I just recommend them
Unix system programming in OCamlXavier Leroy and Didier Rémy1stDecember , 2014 © 1991, 1992, 2003, 2004, 2005, 2006, 2008, 2009, 2010 Xavier Leroy and Didier Rémy, inria Rocquencourt. Rights reserved. Consult the license. Translation by Daniel C. Bünzli, Eric Cooper, Eliot Handelman, Priya Hattiangdi, Thad Meyer, Prashanth Mundkur, Richard Paradies, Till Varoquaux, Mark Wong-VanHaren Proofread by
State of Multicore OCaml KC Sivaramakrishnan University of Cambridge OCaml Labs Outline • Overview of the multicore OCaml project • Multicore OCaml runtime design • Future directions Multicore OCaml Multicore OCaml • Add native support for concurrency and (shared-memory) parallelism to OCaml Multicore OCaml • Add native support for concurrency and (shared-memory) parallelism to OCaml • History ★ J
これは ML Advent Calendar 2017 の 18日目の記事です (ずいぶん遅れました). 前回の記事 では Oasis について紹介しましたが,Jbuilder (Dune という名前に変わります) のほうがもっと楽だったので反省しつつ紹介します. 名前にセンスがないとか S式やだとか思ってしまいますが実際これは圧倒的に良いツールです. 今後は基本的には Jbuilder を使っていけばよい気がします(名前が変わるみたいですが…). 基本的には公式のマニュアルを見れば使えるのですが,public_name や <package>.opam についてはやや記述が散逸している感じなので適宜補足します.また,名前空間の衝突を避けるために Jbuilder が行う -pack ライクな動作についても少し書きます. よい点 自動的な依存解析,簡潔な設定ファイル.OASIS と違って、
自分は学部研究で min-caml というミニマムなコンパイラをハックしている。 min-caml については丁寧に説明された web サイトや論文があるのでそちらに説明を譲るとして、最大の特徴は わずか2000 足らずの行数で ML ライクなコンパイラが記述されているということである。本来は東大の情報科学科のプログラミング演習で学生が作成するコンパイラの参照実装として作成されたものである。 自分は min-caml コンパイラを拡張する形で、min-caml インタプリタを実装しているところである。 その折、OCaml の開発環境を整えたくなったのだが、その環境構築が特殊だったので備忘録も兼ねてブログに記す。 OPAMOPAM とは O(Caml)PA(ckage)M(anager) すなわち OCaml のパッケージマネージャである。 コンパイラに付属していないサードパーティ製ライブラ
「ゼロから始める OCaml」の続きです。元々は「やっぱり環境構築は無視できない道かなあ」と思っていたんですが、 Wandbox が Ocaml 、おっと OCaml だった OCaml に対応した (しかも Jane Street Core まで!) こともあり、環境構築は他のサイトなり記事なりを参考にしてもらうとして、 Ocaml 、おっと OCaml だった OCaml を始めたときに気になるであろうポイントをつつきたいと思います。 無料で読めるオススメのサイトはありますか? なんだかもう恐ろしい経歴の方々が実用視点で執筆された Real World OCaml があります (紙の書籍も出てます) 。よくも悪くも Core に大きく依存する内容で Wandbox と相性がよいです。 英語がきつい? Google 翻訳にかけると恐ろしいクオリティで日本語でおk。人力の和訳が必要なくなる
Core とは Jane Street が開発、使用、オープンソースとして公開している OCaml 基本ライブラリ。この Core についてちょっと書こうかな。 ちなみに、ここに書いてあるのは一ユーザとしての意見。間違っても会社の見解ではありません。念のため。 発端 まず、このエントリの発端は、Caml-list に出現した「Why don't you use batteries?」という長ーいスレッド(今長さ57)。Batteries included というのは、OCaml の「標準ライブラリ」が余りに貧弱なので、それを拡充しようというものです。古くは extlib という 3rd party ライブラリがあって、それを取り込んでさらに拡張しています。(Batteries included も 3rd party。念のため。) OCaml 貧弱標準ライブラリ まず、その、OCaml の
言語実装 Advent Calendar 2017 の16日目の記事です. GoCaml という OCaml のサブセットな言語を実装していて,多相型の型推論を実装するために論文を読んだり OCaml の実装をちょっと追ったりしていたので,その知識を整理する意味でこのエントリを書いています. この記事では OCaml の型推論器のベースになっている「レベルベースの多相型型推論アルゴリズム」について概略を直感的に説明しようと思います. 理論的になぜこのアルゴリズムで正しく動作するのかについてはこの記事で概要を把握した上で論文 のほうを読んでいただければ理解が速いと思います. また,この記事では最もシンプルな単相型のHM型推論については知っている前提で書きます. ご存知でない場合は, 住井先生の MinCaml の型推論実装の解説 五十嵐先生の型推論の解説 20日目の@uint256_t さん
Hello! This particular page hash has moved to . Please update the URLs to reflect it. Thanks! type schoolPerson = | Teacher | Director | Student(string); let greeting = person => switch (person) { | Teacher => "Hey Professor!" | Director => "Hello Director." | Student("Richard") => "Still here Ricky?" | Student(anyOtherName) => "Hey, " ++ anyOtherName ++ "." }; type schoolPerson = Teacher | Direct
Course Materials Some History Which ML? OCaml is a dialect of ML (for Meta Language), which started out as a language for mathematical theorem proving in the LCF project at the University of Edinburgh1 and which is descended from Algol and Lisp via P.J. Landin's never-implemented language ISWIM ("If you See What I Mean" -- which was very influential due to several important journal articles in the
(Notes: * I know that it’s possible to make SML/NJ produce a native binary, but I still haven’t taken the time to figure out how to do it. This time comes from adding a timing wrapper in the program itself and then importing it into the interactive environment. ** Alice ML has three JIT compiler settings; this was mode 1, which proved the fastest.) So SML/NJ is not far off OCaml; it’s clearly poss
OCaml first hit my radar in November 2013. I had just learnt SML, a similar but older language, in the excellent Programming Languages Coursera course. Dan Grossman is one of the best lecturers I’ve ever seen, I found his explanations hit all the right notes and made learning easy. The simplicity of the SML syntax, and the power of the language while still producing code that is readable with mini
関数型言語とオブジェクト指向は相容れない,という説をよく聞く。たしかに「オブジェクトは状態を持つ」「関数型プログラミングでは,できるだけ破壊的代入を行わない」とすれば,二つの概念は矛盾しているようにも思われる。また,技術的観点以外にも,「とかくシンプルさを好む多くの関数型言語プログラマが,何かと物事を複雑にする(と思われている)オブジェクト指向を嫌っている」という面があるかもしれない。 しかし,個人の好き嫌いはさておき,実際問題として,関数型言語とオブジェクト指向は大いに関係がある。むしろ,基礎理論については,ほとんど同じコミュニティの人たちが取り組んでいる,と言ってもいい。例えば,以下のような研究が,1980年代から現在に至るまで行われている。 関数型言語のモデルであるλ計算という体系において,オブジェクトを表現する研究(参考リンクなど) λ計算にならい,(プロトタイプベースの)オブジェ
this document gives you a brief tour of OCaml. It covers a rather small selection of features; the selection has been based on what features I personally think represent OCaml the best. This document does very little to explain use-cases for the selected features but rather focuses on syntax. For a more in-depth coverage of all of these features I recommend reading the OCaml Document and User's Ma
Hideyuki Tanaka @tanakh 完全な型推論よりも、型システムの表現力が重要である、という考えは多分OCamlとは相容れない。そこがOCamlとHaskellの決定的な差であって、PureとかLazyとかの違いはそれに比べれば割りとどうでもいい。 2012-03-26 14:24:35 Jun Furuse 🐫🌴 @camloeba RT @tanakh 完全な型推論よりも、型システムの表現力が重要である、という考えは多分OCamlとは相容れない。そこがOCamlとHaskellの決定的な差であって、PureとかLazyとかの違いはそれに比べれば割りとどうでもいい。 2012-03-26 14:36:35
2010-10-07 ProofCafe/ProofGeneral 2010-09-02 ocaml-nagoya 2010-05-22 ProofCafe/crush 2010-05-21 Fsharp 2010-05-19 ProofCafe 2010-04-25 ProofCafe01 ProofCafe/Coq01 2010-04-22 論文読み会 2010-04-16 ネタ記録庫/OCaml 2010-04-06 ProofCafe/Coq02 2009-12-15 発表資料 2009-12-08 活動記録/20080529 2009-08-10 starterkit 2009-08-01 活動記録/20080331 RecentDeleted OCamlテクニック/daemon 2009-06-05 活動記録/第11回 2009-03-25 活動記録/20080418 活動記録
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く