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

カラースキームを修正した

Vim

ユーザーの方から、 「cursorlineがONの状態で、rootwater.vimを使うとコメント行が見づらい」という、ご指摘を頂いたので確認したところ、CursorLineが見事に設定されてなかったため、以下のカラースキームを修正しました。 rootwater.vim - Screenshot dar…

何故駄目なのか?

C言語で配列に配列を代入するのは何故駄目なのかC言語で配列に配列を代入すると、コンパイルエラーが発生します。例えば以下のコードをgccでコンパイルしようとすると、"incompatible types in assignment"というエラーが発生します。 /* header files */ #i…

Vimpiを使ってみた

Vim

vimプラグインの更新ウォッチサービスVimpiを使ってみました。 9月に登録だけしてずっと放ってたんですが、いざ使ってみるとなかなかに良さげなサービスです。 他の人がどのプラグインをチェックしているのかが分かるのもよいです。 登録するときにユーザー…

Vim カラースキーマdarkeclipse.vimをつくった

Vim

Eclipseの色合いを模倣+背景を黒にしてみました。 darkeclipse.vimdarkeclipse.vim なんだか最近、Vimのカラースキーマを紹介するだけのブログになりつつある気がするなあ・・・

ふと思ったこと

MIT: マサチューセッツ工科大学 IIT: インド工科大学 KIT: 九州工業大学 NIT: 名古屋工業大学 KIT: 金沢工業大学 TIT: 乳首 だから東工大は英語名がTokyo Techなのか!

Vim カラースキーマwin9xblueback.vimをつくった

Vim

VimがWindows9xのブルーバックスクリーンぽくなるカラースキーマ win9xblueback.vim win9xblueback.vim

バッファオーバーフローについて

バッファオーバーフローについてまとめてみました。バッファオーバーフロー(Buffer Overflow)とは 大量のデータをバッファにコピーすると、データがそのバッファのサイズを越えてあふれてしまうことがある。これがバッファオーバーフローである。 これを利用…

フラッシュメモリを紛失したorz

フラッシュメモリを紛失してしまったorz 会社のセキュリティポリシーを守っていたので、顧客データや会社のデータは入っていないものの、私の個人情報が・・・

Vim カラースキーマdarkbone.vimをつくった

Vim

作成してVim onlineにアップしたのはいいが、ブログに書くのをすっかり忘れていた・・・ darkbone.vim darkbone.vim

Schemeの評価と遅延評価

※ 以下はScheme初心者である私の勉強用のメモです。 間違っている可能性がありますので注意してください。評価と値 評価(evaluate)とは式を実行し、その結果である"値"を返すことである。では、そもそも"値"とはなんだろう? 値とは、"これ以上変形できない計…

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を割った場合、最適化オプションを…

割り算 VS 右シフト その3

C

この記事は割り算 VS 右シフト その2の続きです。 実行環境、検証方法などは、割り算 VS 右シフトを参照してください。割り算 vs 右シフト(割る2 最適化) 次に、最適化オプションをつけてコンパイルした場合、割り算と右シフトは実行速度に差が出るのかを調…

割り算 VS 右シフト その2

C

この記事は割り算 VS 右シフトの続きです。 実行環境、検証方法などは、割り算 VS 右シフトを参照してください。割り算 vs 右シフト(割る2 符号なし) 符号付き整数の除算を行う場合、割り算と右シフトでは、右シフトのほうが若干実行速度が速くなることが分…

割り算 VS 右シフト

C

除算をビットシフトで実装する古参のCプログラマは結構多い。 「割り算は処理に時間がかかるので、簡単な除算はビットシフトで書くほうがよい。」というのがその人達の主張である。しかし、「最近のコンパイラは賢いので、ビットシフトを使っても使わなくて…

snippetsEmu.vim用のC言語スニペットファイル

Vim

かなり未完成なのだが、いちいちフラッシュメモリにコピーして持ち運ぶのが面倒くさくなってきたので、snippetsEmu.vim用のC言語スニペットファイル(c_snippets.vim)をアップしておく。 c_snippets.vim

Schemeで述語を書く

※ 以下はScheme初心者である私の勉強用のメモです。間違っている可能性がありますので注意してください。条件の真偽を決定するために使用される関数を述語(predicate)という。 以下に述語の一覧を示す。オブジェクトの比較を行う関数 関数意味 eqv?同じオブ…

Schemeで多分岐を行う

※ 以下はScheme初心者である私の勉強用のメモです。 間違っている可能性がありますので注意してください。 多分岐 (cond, case) 多分岐を行う関数にはcond式とcase式がある。 cond式 if式のように条件を指定して多分岐を行うにはcond式を使用する。 一般形 (…