Programming

関数型言語と並列プログラミング

第10回 Haskellで学ぶ並列プログラミング(その1) | 日経 xTECH(クロステック) 第11回 Haskellで学ぶ並列プログラミング(その2) 並列化手法 | 日経 xTECH(クロステック) プログラミング言語がもっと強力に並列処理をサポートしなければならなくて、そ…

Opera で GreaseMonkey

まわりの Firefox ユーザーが楽しそうに JavaScript いじりしてるのを横目に、一人いじける日々(?)。そもそも、HTML 加工するのに JavaScript でいじるという発想が邪道で、ふつうに考えたら Proxy で書き換えるだろと思って、そういうソフト書いてる人い…

OCaml 3.10 の ocamlbuild がすごいらしい

今日も(?)研究室で、Java がメモリバカ食いするんですけどドウシタモノカと愚痴ってたら、Integer 使うとえぐいよというはなしを聞いて、じゃぁやっぱり C++ ですかね、でもあれは精神衛生上よくないよね、じゃぁやっぱり(?) OCaml で、という謎議論を…

C++ で整数から文字列への変換を簡単に実現する方法

#define STR(s) \ (dynamic_cast(std::ostringstream() これは割りと便利に使えるんじゃないの? std::string hoge = STR(1 hoge "

libXXX を使わない

Web サービスみたいなのを作るとき、フロントエンドにスクリプト言語を使って、バックエンドに C++ でゴリゴリ押していきたいなら、libXXX を作ったりするよりプロセス間通信とかした方が何かといいよね的なはなしを以前友人としました。もう少し賢く(?)…

Python とコピーコスト

python を覚えたので、最近はスクリプト言語に ruby じゃなくて python を使うようにしています。でも、本屋に行ってもあまりよさげな本がない。サイボウズラボの西尾さんの blog がなかなかいい tips を公開しているので、チェック。さて、本題。 西尾泰和…

C# と generics と template

List の全要素を足しあわせるみたいなことをしたい。具体的には、 public static T get_total(List l) { T t; foreach (T v in l) t = t + v; return t; } これが、C# だと書けない。T に加算命令が定義されていることを記述できない。じゃぁ、かといって四…

C# のヘルプ

C# のヘルプを単独で起動させる方法がわからないー、ということをいっていたら、よく見たらスタートメニューにあった。 C:\Program Files\Common Files\Microsoft Shared\Help 8\dexplore.exe /helpcol ms-help://ms.vscc.v80 /LaunchNamedUrlTopic DefaultP…

特定用途向け C# 用 tuple クラス

まだ、実際に使ったわけではないけど。わざわざ struct かくほどでもないなというときに、pair クラスは重宝されます。しかし、いちいち型を書くのがメンドクサイと、OCaml の tuple が欲しくなります。特に、特定用途で引数をすべて tuple にして、hash の…

C# 始めました

書いたことはありましたが、それもほとんど何となくサンプルうつすぐらいの程度。諸般の事情から特定用途向き C# を始めることになりました。

再帰

ひょんなことで目にしたのだが。 http://ew.hitachi-system.co.jp/w/E5868DE5B8B0E591BCE381B3E587BAE38197.html この説明は、少しどうかと思った。一概に間違いというわけじゃありませんが・・・。ねぇ?

Java の foreach を使い倒す

ループというのはプログラムでもっとも重要な要素の一つであり、どのような構文をもつかでその言語の一つの顔ができるものだ。Ruby の times なんてわりと好きだが、関数型の fold, map, iter なんかもいい。Python の for も iterator ベースで、良く設計で…

宣伝

私もちょこっと執筆に関わった本が 2 月中旬に出版されるそうです。どきどき。 まるごとJavaScript & Ajax ! Vol.1作者: 天野仁史,舘野祐一,川崎有亮,arton,田中孝太郎,国分裕,山本有悟,海野裕也,nanto_vi出版社/メーカー: インプレス発売日: 2007/02/15メデ…

Java と JIT と Iterable と RandomAccess

タイトルがいい加減である。いまさらだが、Tiger というと generics というイメージが強かったせいで、foreach が使えるようになったことを忘れていたのだが、これが便利。便利というか、ループさせるのに変数がいるというのは正直ださい。仕組みとしては、I…

GPS をもって自転車旅行しよう〜その後〜

GPS で移動コースをログとって、Google Map に貼り付け。ついでに、とった写真を表示するという Web アプリケーションを作りましたよということを書きました。↓ね。ついでに Google Web Toolkit 使いましたよ、意味ないけどというはなし。 http://dx.starlan…

標準入出力を使おうという話

ひととおり C++ や OCaml やらでちょっと重めのプログラムを書いて、さて Web 経由で公開しちゃうぞとか思うと、はてどうやって Java や Ruby や Perl から呼び出していいものかというはなしが出てきて、外部プロセスは重い(特に係数データを読み込んだりす…

GWT がオープンソース化

http://googlewebtoolkit.blogspot.com/2006/12/gwt-13-release-candidate-is-100-open_12.html だそうですよ。ところで、このタイミングでオープンソース化したのはどういう意味なんでしょうね。1.2 まででやりたいことはすんだので、開発ペース落としてユ…

バイナリアン

Binary Hacks ―ハッカー秘伝のテクニック100選作者: 高林哲,鵜飼文敏,佐藤祐介,浜地慎一郎,首藤一幸出版社/メーカー: オライリー・ジャパン発売日: 2006/11/14メディア: 単行本(ソフトカバー)購入: 23人 クリック: 383回この商品を含むブログ (223件) を見…

何で JavaScript の文法が嫌いか

原稿に書こうと思って、やっぱりやめたネタ。 var str = "1"; var num = 1; alert((str + num) * 2); 「型がない」というと、ふつうは「静的型がない」の意だと思う。本当にないっていうと、double を ADDI するってことか? 上の例は、暗黙の型変換と演算子…

初めての C# プログラミング

こないだの続きで、PDF 管理ソフトを作ってみたら、C# が予想外にすごかったよというはなし。DataSet と DataGridView を関連づけると、それだけで簡単な RDB 編集ソフトができあがり。あとは、*.pdf を監視して自動で追加とかすればおしまい。10 分くらいで…

でさ

Web 2.0 って結局何なのさ? 誰か納得のいく説明ください。「流行りもの」以上の共通点を見いだせない。

孤軍奮闘

今日は、ICPC 東京大会の直前模擬練習会。名だたる OB 陣が準備してくださった。例のごとく、2人は欠場。実は、今年1度も3人で練習してないゾ!

Longest KAIBUN Sequence

どこに書けばいいのやら。"ADCAD" の rev であるところの "DACDA" との LCS として、"ACD" が得られたりするとまずいんではないだろうか。回文にならない場合は除くんだったっけ?

こ、これは!

http://www.tnlab.ice.uec.ac.jp/daihinmin/ !!!!こんな大会あったら出たいよなぁと思っていたら・・・。しかし、外部の人が出ていいとも書いてないし、というかそもそも学部生向け?

Google のアレの件

http://www.google.com/codesearch 突っ込もうとしてずっと忘れてたネタなんですが。例の、Google Code Search。Koders の Google 版が欲しいよね、なんてのは以前からみんな考えていたと思いますが、注目すべきはそこではなく正規表現が使えることでは? ち…

打ち合わせ

編集部とか行ってきました。なんか、他の執筆者がそうそうたる顔ぶれになりそうな予感で、ちょっとびびってるところ。

初原稿

どうやら雑誌に記事を書くことになるみたいです。journal に paper という意味ではなくて。内容は、まぁそんな感じのことです。ボクには Boost に関する深い知識も、圧縮アルゴリズムに関する深い理解もないので、本書くにはまだまだまだ。あ、でもオセロな…

超高速 GUI ツールキット

GUI ツールキットは、利便性なら .NET、native 動作させたいなら wxWindows、マルチプラットフォームなら Java ということで落ち着いていたんだが、どうもなんかぐっとこないんだよな。どうせ高速動作といっても GUI なので、native コンパイルできる GC 搭…

GPS をもって自転車旅行しよう〜その3

買っちゃいましたよ。一眼レフ専用フロントバッグ。やっぱりパニアバッグに入れると取り出しにくい(あとチャリを壁によりかけにくい)、肩にかけると走りにくい、しょうのはイヤだし・・・。これ、完全防水でクッション入りなんだけど、微妙に小さくてふつ…

Java はどうだろうか

Ajax もいいけど、最近自分の中で Java を見直しているというはなしがありまして。というのも、先日参加した Google Code Jam のクライアントが Java でかかれていて、Java Web Start で起動する。Java Web Start は、ファイルをダウンロードさせてそれを開…