2009-01-01から1年間の記事一覧

ディレクトリについてメモ

チルダ展開 ユーザーのホームディレクトリを省略できる。 ユーザー名「green_csharper」としてそのホームディレクトリ以下のdocディレクトリに移動する場合。 $ cd ~green_csharper/doc けど、自分が触った事ある環境だとユーザーのディレクトリは「/home」…

パターンマッチ

入力、つまり関数のパラメータが組、レコード、リストのような構造データになるとそのデータの各要素にアクセスする必要があります。C#なら、プロパティ、メソッド、インデクサとか、リストならイテレートして走査していくわけですが、OCamlは違うみたいです…

組・レコード・リスト

組 無理やり言えばC#のKeyValuePairみたいなものかな。任意の2つのデータを一つとして扱えます。 構文 (要素, 要素) 例 # (2.5, 3);; - : float * int = (2.5, 3) # (2.5, false);; - : float * bool = (2.5, false) レコード よく考えればC#にはこんなデー…

条件分岐

if 条件 then 式 else 式 「条件」はboolかboolを返す式 2つの「式」は同じ型を返す 条件文というか条件式?C#みたく分岐してごにょごにょって感じではないな。 どっちかというと三項演算子みたいな雰囲気。 (* 絶対値を返す *) # let abs_value x = if x >…

変数と関数

変数の定義 let 変数名 = 式 先頭の文字はアルファベットの小文字だけ 他の言語でいうところの定数に近い。つまり書き換える事ができません。(方法はあるみたい) # let salestax = 1.05;; val salestax : float = 1.05 # 1000. *. salestax;; - : float = 10…

データ型 一部だけ

整数 最大で1073741823だそうです。というか32bitCPUでは31ビット符号付整数という事みたいです。 64bitCPUだと63ビット符号付整数みたいです。インタプリタで実行 # 1;; - : int = 1 # 1073741823;; - : int = 1073741823 # 1073741824;; - : int = -107374…

OCamlインストール -> Windows XP

本家サイト DownLoadページよりバイナリをダウンロード インストーラを実行 今回参考にさせていただいたサイト様 OCaml.jp - インストール方法