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

気が向いたので

ランキングくらいはつけとくか…と名前と記録だけ残るようにしときました。まぁ認証もなんも無いわけですが。今のところよくわからんけどメモリ使用量がどんどん増えてくとかそんなことも無いみたいなので案外結構安定して使えるのかなぁという感じ。ていうか…

ゴルフサーバ少しテスト

なんとなく前から作ってみたかったゴルフサーバをさっくりと作りかけてみました。http://shinh.org:81/とりあえずしばらく動かして大丈夫かってのと、素人が適当にやってセキュリティとか大丈夫なんかね、ってのが興味のあるところです。記録もなんにも残り…

SDL新春

http://zinnia.dyndns.org/~hiki/SandBox/?2007%C7%AF%BF%B7%BD%D5%A1%CA%B4%D8%C5%EC%A1%CBえーとみなさんお誘いあわせの上ぜひいらっしゃいませという。

Befunge

http://shinh.skr.jp/koneta/befunge.rbインタプリタが欲しくなったので書きました…が、ちょっとぐぐってみるとこちらにもあったのであった。http://mono.kmc.gr.jp/~yhara/w/?Befungeでもなんかサンプルが動いたり動かなかったりするのでまぁ存在価値はある…

自力で関数を呼ぼう帰ろう

まさにこういう面白さを伝えたいわけだけど。http://d.hatena.ne.jp/paella/20070125/1169651616コンパイラについては、 C は宣言してない関数は int func(...) 扱いしたと思いますので、まぁ問題無いかと思われます。そもそも互換性の無いポインタ同士の変…

x86 checker

なんか shinh っていう ASCII 文字列を逆アセしてみたりとかしてて、これはちょっと面白いなーと思ったのでそんな感じでなんか作りました。http://shinh.org/x86chk/x86chk.html適当に、ASCII文字列か、 00 01 なんかの 16進数の羅列、 xor %eax, %eax など…

というわけで調べてみました

PKU2371 の qsort として通ったのは以下のような文字列です。 "YXZ\x83\xec\f\213\0+\x2\303"これは以下のようなアセンブリ。 pop %ecx pop %eax pop %edx sub $12, %esp mov (%eax),%eax sub (%edx),%eax ret これだと全然長すぎる。nanagyouさんの q(int*a…

結論だけ言うと、短くなる問題は結構ありそうですが、めんどい。

qsort の callback の書き方

http://d.hatena.ne.jp/Ozy/20070123#c1169554585を見て、前から qsort の callback 関数は関数書くより機械語埋めた方が短くなるんじゃないかなーと思ってたのを思い出しました。 int a[] = { 1, 3, 9, 2, 7, 4, 5, 8, 6 }; int main() { int i; qsort(a,si…

tgmath

http://alohakun.blog7.fc2.com/blog-entry-624.html#comment別に標準の範囲で実装できるんじゃないかなぁと思います。 #include <math.h> #include <complex.h> #define mysin(X) \ ((sizeof(X)==4) ? sinf(X) : \ (sizeof(X)==8) ? \ (sizeof(X*_Complex_I)==8) ? csinf(X) : </complex.h></math.h>…

CodeGolf のユーザごとの記録を見るもの

http://shinh.skr.jp/golf/record.cgi人の記録とかの一覧が見たい場合が結構あるので結構前に作ったものをはっておきます。

//

一番短い正規表現、 // の話をします。 // は何か知ってますか。何にでもマッチする正規表現です。以下の Ruby だか Perl だかわからんプログラムは、Ruby でも Perl でも、 $_ がどんな文字列でも 1 と表示するはずです。 print (//?1:0)ところが Ruby では…

クロックゴルフ

あたらしいゴルフを考えました。例えば Windows XP などとソフトウェアを一つ決めて、それを動かす最小の動作周波数を競う。 CPU 以外はどういう構成にしても可。そういうルールでやるとインパクトのある組み合わせはどんなものだろう。 Windows XP は最低ど…

format

というわけで無限ループを書いてみる。 (format nil "~{ ~}" `(0)) おお本当に無限ループになった! format で無限ループが書けるなんてすばらしい!まぁ一応普通の無限ループも書こう。 (defun l () (l)) (l) こんな感じかな。 i@u ~/test/lisp> clisp fore…

導入してみる

ちょっと Common LISP を触ってみることにしました。 format と loop と CLOS とマクロと Prolog と disassemble を学ぶのが目標。とりあえず Hello, world! を適当に書いてみる。 i@u ~/test/lisp> cat hello.l (print "Hello, world!") i@u ~/test/lisp> s…

Portable Binary Hacks

Binary Hacks は GNU/Linux & x86 メインなわけですが、それ以外の OS だのアーキテクチャだの言語だのコンパイラだのならどうなる?っていうのを個人的に記録していこうとしています。http://shinh.skr.jp/pbh/まだまだ書きかけばかりですが少しずついじろ…

64質問

修論の成果物としてなんか書いてたので置いておきます。http://shinh.skr.jp/q.txtついでにどこからもリンクはってなかった 2004年に回答した 20 質問を発掘しました。こんなものがあったなんて自分でも驚きです。http://shinh.skr.jp/20q.html

弾幕 DJ

弾幕に足りないのは、簡単な記法とか簡単に作れるツールじゃなくて、弾幕 DJ じゃないかとかふと思いました。いやー思ったのはだいぶ前に DJ という人が何やっているかをしげしげと眺めたからなんだけど。弾幕それ自体を作るのは、難しくもないからそれなり…

よくわかる Whitespace

ちょっと Whitespace インタプリタが欲しかったので書きました。http://shinh.skr.jp/koneta/ws.cさて、名前が語られることは多いけど、イマイチ仕様の説明の無い Whitespace ですが、これは誰がどう見ても言語というより VM です。機能も結構豊富というかか…

perl -p

はいお役立ちの Perl 講座のコ〜ナ〜です。突然ですが perl -p オプションは便利ですよー。例えば前、 ABA さんのコードに使われている OpenGL の API のリストを作ろうと思ったんです。 egrep 'gl(u|[A-Z])' src/**/*.d | perl -pe 's/.*?:\s+//; s/\(.*//;…

Brainfuck Golf

そもそも BF で "Hello, world!\n" を出力する最短は…と思って色々やってみるととりあえず 119B 。もう少し縮む気がするなぁ。ちなみに Wikipediaの は "Hello World!\n" で 111B 。このパターンならもう少し縮められても良さそうに思うのだけどどうなんだろ…

Whitespace Golf

183B 。Wikipediaに載ってるヤツよりは短いのですが、自明であまり面白くなかったです。なんか色々工夫できそうに見えるのに微妙にできないな…というもどかしい感じ。http://shinh.skr.jp/dat_dir/hello.ws

backtrace 1.0

http://shinh.skr.jp/d/1.0 出たみたいなので作っておきました。

なにかあれば下記メールアドレスへ。
shinichiro.hamaji _at_ gmail.com
shinichiro.h