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

javaで関数型風な機能を色々

まずはタプル。 public class Tuple<F,S> { public final F fst; public final S snd; public Tuple(F _fst, S _snd){ this.fst = _fst; this.snd = _snd; } } 簡単ですね。次に高階関数。 public interface Predicate<E> { public boolean apply(E arg); } public i</e></f,s>…

scpの使い方

毎回忘れるのでメモ。ダウンロード(最後の点を忘れない。) scp wistery@xx.xx.xx.xx:~/hoge.txt .アップロード scp hoge.txt wistery@xx.xx.xx.xx:~/あと、ポート指定は -P 5656 のように大文字なので注意。

gitをソースからビルド

バージョンは1.7.6.1http://git-scm.com/ から最新のソースをダウンロードして、 tar xvjf git-1.7.6.1.tar.bz2 cd git-1.7.6.1 make prefix=$HOME/.local make prefix=$HOME/.local install今回、管理者権限がないので$HOME以下に設置しました。(管理者権…

可変引数マクロの使い方

C

...と書くとその部分がごっそり__VA_ARGS__で参照できる。 #define try(var, syscall, ...) if( (var = syscall(__VA_ARGS__)) < 0) { perror(#syscall); exit(1);} #define _try(syscall, ...) if(syscall(__VA_ARGS__) < 0) { perror(#syscall); exit(1);}…

java クラスパスの設定 など

コンパイル javac -classpath .:lib/hoge.jar:lib/huga.jar実行 java -classpath .:lib/hoge.jar:lib/huga.jar(いずれもコロン区切り)jarに固めるとき、manifest.mfに以下のように書く Class-Path: classes lib/hoge.jar lib/huga.jarjarについて jarは基本…

Ubuntu 規定のプログラムで開く

gnome-openでOK.alias open='gnome-open'とかしておきましょう

デバッグ出力の工夫

(追記: 普通にこんな感じのクラスが標準ライブラリとかにある...) 例のコードはjavaですが、javaに限らず使えると思います。 package jp.wistery.utils; public class Debug { public static enum Levels { NONE(0), INFO(1), DEBUG(2), ALL(3); private int…