航海日誌

トップ «前の日記(2007-05-24) 最新 次の日記(2007-05-26)» 編集
過去の日記
注意:

2007-05-25 [長年日記]

O [日記][仕事] 個人事業主の税金

実は個人事業主になったことがなくて,このあたりは是非とも欲しい情報.

まぁ素直に青色申告した方が何かと有利だと思います.

O [Java] 関数プログラミング

みずしまさんに触発されて....

for(Integer n : map(list(1, 2, 3), new Fn<Integer>() {
      public Integer $(Integer n) {return n * n;}})) {
  System.out.println(n);
}

わけわか(w.もうちょっと短くなるかな.なんかLispぽい.

ちなみにlistはListを作るメソッド,mapは配列の置き換えをするメソッドです.

Rubyで書いたらこんな感じ.

puts [1,2,3].map! {|n| n * n}

実行結果は,どちらも同じ.

1
4
9

モノリスの比率ですな.

ちなみにユーティリティメソッドは以下のような感じ.

static <T> List<T> map(List<T> list, Fn<T> fn) {
  for(int i = 0; i < list.size(); i++) {
    list.set(i, fn.$(list.get(i)));
  }
  return list;
}
 
static <T> List<T> list(T... values) {
  List<T> list = new ArrayList<T>(values.length);
  for(T value : values) {
    list.add(value);
  }
  return list;
}

追記: 「関数プログラミング - val it : α → α = fun:」で関数プログラミング的ではないとのこと,確かに(^^;.まぁRubyの破壊的メソッド(map!)で例を出しちゃったので,これはこのままで,各自読み替えてください.

いづれにしてもanonymous classを書かなくちゃいけないので,記述が冗長すぎる気はします.

追記2: 元ネタは「Onion開発日記(2007-05-21) - [Java]Functional Programming Library in Java (1)」です.Generics,可変長引数,anonymous class,static importを駆使していろいろやっておられます.

その他今回の例でも使ってますが,Boxing/Unboxingを使うと,数値もシームレスに関数プログラミングできますが,これはこれではまる要素一杯です.

O [動画][動画配信] 消えていったもの,来たもの

初期のインターネットでは標準だったReal Videoはもう消えたも同然で,Windows Media Video系(含むVC1)とMPEG4, H.264あたりで大体決まってしまいましたね.

一方,MPEG4, H.264系統は結構複雑な路線を迷走中で,コンテナ(ファイル形式)がAVIとQuickTime,Native MPEG4などといろいろあるので,プレーヤのサポートが大変のようです.

他のコンテナでは,OGM(Ogg Media)やMKV(Matroska)などもあるんですが,一部のマニアで使われているだけで,事実上マイナーな存在だと思います.

ちなみにBlu-rayやHD DVDのコーデックはMPEG2, H.264/AVC, VC1のいづれか選択できるようになってますが,この中にはもちろんReal Videoには入っていません.

今後はH.264/AVCが主流になると思います.画質に関してはここ4年ほどで低ビットレートから高ビットレートのものまで大幅に改善され,映画などのMPEG2じゃなきゃといわれる分野までH.264/AVCが入ってきているようです.

特にハードウェアエンコードが充実してきました.

一方コンシューマ用のハードウェアデコーダはまだまだで,なかなか普及していないような気がしますが,ここ1年〜4年で普及するんじゃないでしょうか.

PCではSD画質ならそのまま再生できますが,HD画質はまだ無理で,GPUを使ったデコードでなんとか間に合っている程度です.CPUのパワーがぜんぜんたりませんから,しばらくこの状況は続くと思われますが,次世代GPUはH.264などのVideoデコードのアクセラレーションを持っているので,デスクトップPCに限り再生できる環境を構築できるでしょう.

というわけで,あと来て欲しいもの.やはりコンシューマ用のハードウェアエンコーダーでしょう.特にHD画質なもの(SD画質なものは既に商品化済).

まぁもしかしたら,次世代GPUでクラスタ組んでエンコードするマシンを誰か作りそうな気がしないでもありませんが,キャプチャI/Fとの通信がボトルネックになりそうなので実現は結構困難ですよね.

O [ネタ][アニメ][小説] サーチマトン

[画像:反転「郵」] [画像:ヤツ]

一般的にマトン(mutton)って言ったら「羊の肉」なんだろうけど,まぁ「オートマトン(automaton)」が語源でしょうねぇ.

なお最初出現する時に「郵」の字が裏側に反転していたのはかなり意図的で郵便局の旧キャラクタ「ポストン」にあえて似せてあるというのは公然の秘密のようである〠.

O [Ruby][PHP] Railsの利点

たぶんPHPじゃなくてRubyで書けることかと.

O [ネタ][言語][ソフト] 終わってるITスキルトップ10

C++とかはともかく、元記事で話題になってる純粋なCってそんなに使うもんなんですか?
#計算機業界は専門外なんでよくわからん。
libstdc++.so が収まるほどストレージのない環境は多いんですよ。
こういうリンカローダが動く環境が当然と思っている人が多いあたり、 スラドで組み込みの話をする困難を強く感じます。

ワラタ(w.さすがにリンカが使えないほど小さなプログラムは組んだ事がない.ああR8Cとかメモリが極端に少ない組込CPUとかたまにアセンブラでいじってるけどリンカは使ってるよな.

あと,「ODBMSは?」って意見もあった.使われているところでは使われているけど,結局RDBMSに戻っているような気がする.それからリレーショナルでないデータベースが槍玉に挙げられているのが納得できない(w.

O [ゲーム][ハード][動画] PS3のDLNA対応はApple TVより(ry

値段と大きさがボトルネックとの事.

なんか買いたくなっちゃった.EE/GSなしバージョンが出るまで待ちますかね(いつのことやら).

O [Java][Ruby] JRuby実行系メモ

JRubyのシステムプロパティ.

  • jruby.base: JRubyのベースディレクトリ
  • jruby.home: JRubyのホームディレクトリ
  • jruby.lib: JRubyのlibディレクトリ
  • jruby.script: スクリプト名(通常jruby)
  • jruby.shell: JRubyのシェルディレクトリ

スクリプト起動クラス: org.jruby.Main

ランタイムは,org.jruby.Rubyらしい.Ruby.newInstance(config);でインスタンスを取得できるらしい.

O [3DCMS][Java] 軽いテンプレートエンジン

Guatemalaとは別に軽いMini Guatemalaテンプレートエンジンを作りつつある.

Guatemalaはカスタムタグなどがあり,ある程度学習が必要でとっかかりがしにくいものであったが,単純にObjectを埋め込むだけのものにした.

この方式だとParseもテンプレート出力も軽くなる.

しかしループや条件分岐などのトリックプレーはできなくなる.

しかしこれはテンプレートを外から操作する,つまりコード優先にすることで解決する事にした.

さてさて,2時間ほどで動くかな?

本日のツッコミ(全6件) [ツッコミを入れる]
O MadBoo (2007-05-25 03:56)

おお。一瞬 Java だか何だかわかりませんでした (笑)。

O bravotan (2007-05-25 11:27)

たまーにrmvbはみますけどね.

O keisuken (2007-05-25 16:11)

MadBooさん:<br>新文法を駆使するとこんな感じに.やりすぎですね(^^;.

O keisuken (2007-05-25 16:11)

bravotan:<br>> たまーにrmvbはみますけどね.<br>もうそういうのは(意識的に)見ないかも.Real Playerも削除しちゃった(^^;.

O bravotan (2007-05-25 17:17)

動画の拡張子って今じゃほとんど意味がなくなったよなー.<br><br>「そうよ,みんなflvになってしまえっ!」<br><br>最近はVLC Portableが手放せません.

O keisuken (2007-05-25 17:27)

bravotan:<br>> 動画の拡張子って今じゃほとんど意味がなくなったよなー. <br>確かに,私はVLC好きなのでWindows Media Playerで見れなかったらVLCでみちゃいますね.<br>> 「そうよ,みんなflvになってしまえっ!」 <br>わはは,しかしFLV(8)以降じゃないと画質は我慢できないかもしれませんねぇ(しかしOSS勢は弱いorz).

[]

やること、い〜っぱい(´д`)。

トップ «前の日記(2007-05-24) 最新 次の日記(2007-05-26)» 編集