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

ThriftをUbuntu10.04にインストール

ThriftをUbuntu10.04にインストールする手順を残します。Thriftのウェブサイトはhttp://incubator.apache.org/thrift/ですが、このサイトにはドキュメントはほとんどありません。そこで、http://wiki.apache.org/thrift/にあるインストール手順を見ながら作…

jythonを使う

LookupError: unknown encoding 'ms932' というエラーはオプションを指定すれば回避できる。 java -jar jython.jar -C utf-8

ClojureをUbuntuに導入した

[http://clojure.org/:Clojure処理系とemacsでの作業環境をUbuntu10.04に構築した。 JDKをインストール。Ubuntuだと非常に楽。aptのリポジトリに add-apt-repository "deb http://archive.canonical.com/ lucid partner" apt-get update apt-get install sun…

DOM Level 1仕様書を読んだので、まとめ

Document Object Model (DOM) Level 1 Specification (Second Edition)を一通り読んだので、復習としてまとめてみる。細かいところではよくわからない箇所がいくつかあった。原因はXMLやHTMLの知識が足らなかったからだと思う。 概要 この仕様はDocument Obj…

JavaScript : The Good Partsのメモ

2章 文法 ブロックコメントは使わない 正規表現リテラルの中にブロックコメントの "*/" が出てきてしまうから ブロックで変数のスコープは発生しない。だから、変数はブロックの先頭ではなく、関数の先頭で宣言すべき 3章 オブジェクト オブジェクトから値を…

$*と$@の違い

位置パラメータのリストを表す変数$*と$@には $1 $2 $3… という形式で値が保持されているが、両者には少し使用方法に違いがある。 まず、$*と$@は、ダブルクォーテーション(")で囲まれていない場合、両者に違いはない。 位置パラメータに$1=a, $2=b, $3=cと…

関数のローカル変数

関数内で変数を定義する際に local 変数名 とすればその変数は関数内でローカルな変数になる。localをつけなかった場合は変数のスコープは新たに作られず、グローバルな変数として扱われる。 function f() { echo "top of f a=$a" echo "top of f b=$b" loca…

bashのダブルクォートの動作

ダブルクォートで囲まれた文字列では、 $ ` \ の三つの文字以外の文字はすべて保持する。 シングルクォートではこの三つの文字も特別な意味を持たない。

bash特殊記号一覧

~ ` # $ & * ( ) \ | [ ] { } ; ' " / ? !

AutoCompleteのインストール

AutoCompleとは EmacsWiki: Auto Complete AutoCompleteは補完候補をカーソルのすぐ側にポップアップで表示する。こんな感じ。 Visual StudioやEclipseにはメソッドやクラス名の候補をポップアップで表示する機能があるが、AutoCompleteはEmacsにもそんなよ…

どう書く? "箱詰めパズルの判定" に投稿した

http://ja.doukaku.org/comment/9794/ どんどんネストが深くなっていく……。どうにかならないのかな。 それにしても、Schemeだと同じ事をするのに色々な書き方や、手続きがあるのでいちいち何を使うか迷ってしまう。 dfsが見づらい! dfsが非常に見づらいコー…

auto-complete.el こんなのが欲しかった

あとで詳しく見てみる。 EmacsWiki: Auto Complete

Kawaでカギ括弧[]を(…)の代わりに使う

(invoke (gnu.kawa.lispexpr.ReadTable:getCurrent) 'setBracketMode 1) でリーダーにブラケットを認識するように指定できる。ソースをinterpret実行する場合には、直接ソースに書いたり、.kawarc.scm に書いておけばよい。コンパイルをする場合にはソースに…

R6RSカギ括弧の使い方のガイドライン

Revised^6 Report on the Algorithmic Language Scheme - Non-Normative Appendices -

Gaucheで処理時間の計測を行う

Gaucheで処理の経過時間を計測するには?gauche.time モジュールを使う。次のクラスのオブジェクトを作る。オブジェクトは時間カウンタを持っていて、カウンタのスタート、ストップなどを行う手続きがある。 クラス名 時間 実経過時間 ユーザースペース時間 …