2008-08-01から1ヶ月間の記事一覧

Schemeで高階関数を書く

高階関数 高階関数とは、引数に関数を指定したり、戻り値として関数を返す関数である。代表的な組み込み高階関数にはmap, filter, foldがある。map リストの要素それぞれに同じ関数を適用するにはmap式を使用する。一般形 (map 関数 リスト) map式のイメージ…

Vim 白背景のカラースキーマを作る その2

Vim

louver.vimを作る過程でもう1つカラースキーマが出来たのでついでにアップ。 simplewhite.vim simplewhite.vim

Vim 白背景のカラースキーマを作る

Vim

最近、屋外でノートパソコンを使う機会が多い。私は今まで黒背景のカラースキーマを使用してきたのだが、 それだと屋外では、太陽光が写りこむため非常にディスプレイが見難い。そこで、白背景のカラースキーマを作ってみた。 完成したのはこちら↓ louver.v…

Schemeでlambda式を書く

lambda式を使用することで、無名関数を作成することができる。一般形 (lambda (引数1 引数2 ・・・ 引数n) (式)) 例 > (lambda (x) (* x x)) ;xの2乗を返す無名関数 #<procedure> lambda式の基本的な呼出し 関数を呼び出す場合、通常はその関数名を指定することで呼び</procedure>…

Vim カラースキーマを作る

Vim

rootwater.vim rootwater.vim

Schemeでリストを使用する

※ 以下はScheme初心者である私の勉強用のメモです。 間違っている可能性がありますので注意してください。リスト 最後が空リストで終わっているペアをリストという。例 > (cons 1 (cons 2 (cons 3 ()))) リストを生成する リストはlist式を使用することで簡…

Schemeでペアを使用する

※ 以下はScheme初心者である私の勉強用のメモです。 間違っている可能性がありますので注意してください。 ペア ペアとは2つ要素(element)を持つ構造体である。 Schemeにおけるペアのルール 2つの要素はそれぞれcar部とcdr部として区別される 異種のデータを…

snippetsEmuのHTML用snippetファイル

Vim

snippetsEmu用のHTMLスニペットファイルを作ってみました。 html_snippets.vim 対応しているキーワード HTML 4.01の主要なタグには対応していますが、対応していないタグもあります。詳しくはhtml_snippets.vimを直接見てください。事前に必要なもの 当たり…

Schemeで再帰を行う

※ 以下はScheme初心者である私の勉強用のメモです。 間違っている可能性がありますので注意してください。 再帰呼び出し 再帰呼び出しとは、関数が自分自身を呼び出すことである。Schemeでは、ループ処理を再帰を利用して実装することが多いようである。 通…

Schemeで繰り返しを行う

※ 以下はScheme初心者である私の勉強用のメモです。 間違っている可能性がありますので注意してください。 do式 do式を使用することで繰り返しを行うことができる。ただし、Schemeでは繰り返しを再帰を使って書くのが一般的なようである。 一般形 (do ((変数…

Schemeで値の代入を行う

※ 以下はScheme初心者である私の勉強用のメモです。 間違っている可能性がありますので注意してください。 値の代入を行う set!式を使用することで、変数へ値の代入を行うことができる。 ただし、Schemeプログラマは不必要な値の代入を嫌う傾向にあるようで…

Schemeで演算を行う

※ 以下はScheme初心者である私の勉強用のメモです。間違っている可能性がありますので注意してください。Schemeの演算は前置記法(ポーランド記法)で記述する。 例 1 + 2 ==> (+ 1 2) 1 + 2 + 3 ==> (+ 1 (+ 2 3)) なお、前置記法は任意個の引数の指定が可能…

割り算 VS 右シフト まとめ

C

この記事は割り算 VS 右シフト その4の続きです。まとめ 割り算 VS 右シフト〜割り算 VS 右シフト その4の検証の結果、 除算とビットシフトでは、場合にもよるが、ビットシフトのほうが処理速度が速いということが分かった。 ただし、アセンブラソースを見る…

割り算 VS 右シフト その4

C

この記事は割り算 VS 右シフト その3の続きです。 実行環境、検証方法などは、割り算 VS 右シフトを参照してください。割り算 vs 右シフト(割る2 最適化 リテラル以外) 割り算 VS 右シフト その3 の結果から、リテラルから2を割った場合、最適化オプションを…