2006-09-01から1ヶ月間の記事一覧

言語の覚え方

今日、アルバイト中に「プログラミング言語を覚えるとき、どうやって勉強する?」という話になった。 俺はまずは「プログラミング言語Hoge」という本を探す。経験上、なるべくシンプルな題名のほうが良書の可能性が高い。例えば、「プログラミングPerl(asin:…

GNU開発ツール

GNU開発ツールが届きました。 まずは、いま読んでいる「はじめてのPython」を片付けるつもりなので読むのはちょっと先。なので、見た目だけを書いておこう。 まず、白いのが印象的。カバーも白ければ、使っている紙も白い。表紙もシンプルで、白さを強調して…

ディレクトリ内ファイルの取得

let readdir path = let result = ref [] and dir = Unix.opendir path in let _ = try while (true) do result := (Unix.readdir dir)::(!result); done with End_of_file -> () in Unix.closedir dir; ! result;;なんだコレ。ほんとに関数型言語か?破壊的…

デフォルト引数/名前付き引数

まずは、名前付き引数から。 (* 定義 *) let f ~x ~y ~z = x+y+z;; (* 呼び出し *) f ~x:1 ~z:3 ~y:2;;次はデフォルト引数。 (* 定義 *) let f ?(x=0) y = x+y;; (* 呼び出し *) f 2;; f ~x:1 2;;文法上、デフォルト引数は通常の引数より前でないと使えない。…

ファイルの作成

let ch = open_out_gen [Open_creat] 0O655 "hoge.txt"という形でファイルを作れる。 なんで、Open_creatやねん。createちゃうんかい。と思って、google:creatで検索すると結構ひかかった。どうやらシステムコールの名前らしい。古の束縛かしら。

OCamlでScheme

SchocaというOcamlで書かれたScehmeインタプリタがあるので、使ってみる。 GODIを使えば簡単にインストールできる。 どうやら、ちゃんとしたドキュメントはなく、examples/にある例をよめ、ということらしい。 で、その例を読んだところ、 Schemeのデータ型…