トップ «前10日分 最新 次10日分» 追記

はじめてのにき

ここの位置付け

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|

ToDo:


2007-02-25

_ ここまで減るとは

http://golf.shinh.org/p.rb?FizzBuzz#sed

emokenさんに追いつかないなぁと 悩んでいたのがウソのよう

(04:13)

_ 3の倍数

http://jarp.does.notwork.org/diary/200702c.html#200702241

最初は 1\n2\n... をループで作っておいて s/(hoge\n{2})hoge\n/\1Fizz/ みたいな感じでしたが、 そんな感じの方針の方が縮みそうだなぁと変更して 今に至ります。

文字数から数値に変換するロジックは書いてないので ちょっと違いますがまぁ似たような方法で。

http://jarp.does.notwork.org/diary/200702c.html#200702232

あとこの感覚はみんな共通なんだなーと思いました。 一通り終わったなぁってタイミングで もう無理だと昔思ったヤツを見直すと あれ、あれれと。そしてずるずるとハマって エンドレススリープレス。

(06:22)

_ K14

http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20070223#p01

ありがとうございます。やてみます。 ブラウザなんかはアンチェリいいなと思うのですが、 端末とエディタは不慣れだからかもしれませんが やはり厳しい気がします。 エディタはいいかもしれませんが。 あと黒背景ってのも関係あるのかしらと思うこのごろ。

正直 OSX は現状のキチンと手の入ってない現状では 気に喰わんところだらけなんですが、 環境いじりより環境ソフト作る方が楽しいので そっちに時間使いすぎで細かい設定全然してないとかいう。

まぁ一覧を書こう…

  • w3mimg 作る (まー元気になればすぐできるだろ) Ruby で書いたヤツは絵は出てるがムッチャ重いので方針変えてたらめんどくなってきた。
  • sevilwm 風の Window スイッチに移動とリサイズ (まー CGS* ベッタリなら行けるだろうし探索作業は楽しい)。現状ではここが圧倒的に一番不快。
  • フォント。現状の端末のフォントはさすがにひどい。 Emacs も黒背景だと太く見えるんだよなぁ。
  • サーバ類。 mod_python つきのフィルタプロキシは Thinkpad の方のを使ってもいいかもだけど ssh くらいは動かしておけよと思う。
  • キーボード。 HHK Pro との共存がイマイチうまくいってない。
  • てか Synergy みたいなのあったら HHK 一本で両方触れていいわけだが。
  • お気に入りショートカット類。特に Terminal.app の Ctrl+; でペーストが無いのがキツいかな。 X 使って mlterm ってのはアリだけどそれならもう Linux 入れるなぁとも思う。せっかく OSX に使ってみようかと思っているのに。
  • Terminal.app で行折り返して編集してる時に大変なことになることがあるので調べる。
  • 各種コマンドを覚える。スポットライトのコマンドラインアプリとか便利そう。
  • 英語辞書。とりあえずは Thinkpad の rdic が eijiro-server になってるのでそれと繋げばたぶん終わる。
  • TeX 環境。
  • CPU 負荷メータ。なんかメニューにつくのつけたけどちょっとイマイチな見た目かな。
  • ディレクトリ構成に慣れつつ考える。 Application ってとこに野良 .app はつっこめばいいのかな。
  • /Users/i の下の整備。 ~/wrk はどうしたらいいかなぁ。
  • alias 。 .app は alias しとかんと不便。
  • Emacs は AquaSKK をやめる。 tekezo 神が書いておられたはず。
  • ReFe とかそのへんのアプリ入れまくり。
  • zsh の complete が弱すぎる。 fink のじゃダメなのかしら。
  • もちょいまともな逆アセ。できれば自分で otool のラッパを書けば理解も進んで良い。
  • Ruby/SDL にもう一度
  • D/SDL にもう一度
  • Titanion にもう一度。ところで Cmd+Q の件は SDL_QUIT 来てないのかしらという話なので考える。
  • Finder っていうヤツはどう使えばいいんだろう。アイコンは無いと思うのだが、一覧ぽいヤツは二種類あってふむーと。あと Return でディレクトリの中行ってくれないとか。
  • iTunes をなんとかする。
  • まだなんかあったっけーな

正直隣に Linux があるからなんとか使えてる感じだよなーという感が強い。

終わったこと。

  • Firefox 入れてからとても便利になった気はする。 tekezo 神のおかげなわけだけど。ゴルフサバがメモリを逼迫する環境ではまともに動かんくなってたんだよな。ていうかね、気付いたよ HaH が便利なのは高速なマシンがある環境に限るね。
  • 同じく tekezo 神のおかげで環境移行期の sshfs が便利で良い。

(06:47)

_ ungolf.rb

どんな中学生やねんちゅうクォリティのコード…

(07:05)

_ 不思議なことです

下押しっぱで移動させると、 端末の移動速度より w3mimgdisplay の移動の方が速い。 大丈夫か Terminal.app

(09:58)

_ core

http://www.morishima.net/~naoto/fragments/archives/2006/10/02-1814.php

うーむ再起動がいるのか。

(10:00)

_ あーあと

画像ビューア必要だな。 無けりゃ作ろう。 プレビューなんて派手なのいらんくて、 ただ単に画像出して最大化とかくらいはできて、 q 押したら終了する、ってくらいのものを。

まぁ目下のところ open でも十分ではある。

あと頓着しない子としては既に Emacs のフォントには慣れた気がする。 端末はなんとかしないとな

(11:58)

_ おおお

http://www.garbagecollect.jp/~usa/d/200702c.html#id20070225_P1_2

Ruby のゴルフサポートが強化されるのかっ

とりあえず s/// が欲しいとか

(14:55)

_ Windowの上下

VirtueDesktop がこの上なくキチンと作ってくれている。 DEC がどうとかいう部分ひっこぬいたら Window の上下のテストが動いた。

あとはキー入力を受けられたらいいわけだけど、 それはランチャソフトとかでいいかな。 → QuickSilver で良さげ。こんさんには感謝であることよ

一刻も早く欲しいのは SWITCH_(LEFT|RIGHT|DOWN|UP|...) として、 あとはWindowを端にふっとばすのとチョイ移動。 画面最大化は Witch にあるしいいか

(16:31)

_ よくわからんけどコレだ!

CGSSet* をそのまま使うには Dock と同じ立場であるところの Universal なんとかにならないといけないらしい。 それになるには Dock を殺す必要がある。 師を殺さなければ免許皆伝とは言えぬー。 それはよくわからんがちょっとありえない気がする。

んで Dock と通信する方法がこうあるみたい。

http://developer.apple.com/documentation/Carbon/Reference/Apple_Event_Manager/Reference/reference.html

ってか Window を上に出すのもプロセスに フォーカス当てるのもできてるのに、 同一プロセス内でスイッチした時に Window が上に出るだけでフォーカス当たらんというのがなんとも。

あ、なんか一旦フオーカス捨てればいいのかも

(18:54)

_ おお

なんかちゃんと動くのは感激ですな。

http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20070225#p02

あと僕も必要な時だけ画像表示なのですが、 最近はどうも「必要な時」が増えているような気がします。 プログラム関係の調べ物でも 図とか画像で入れてるところが結構あったりと。

あとズレる方向はうちだとむしろ下… と思ったら screen の有無で結構変わるみたいでした。 screen 無いと上の方に。 正直 screen あるか無いかとか調べよう無い気がするんだけど どうなのかなー。 でも X のヤツはどうしようもなくキチンと位置あってるなー。

まぁ色々知識不足なので動けばいい主義のいいかげん物体です。 あとあまりささっとでもないというか どろっとアチコチ寄り道しながら色々調べて…という。 まぁ新しい環境調べるのは楽しいもんですなぁという。

(20:46)

_ ふーむ

だいたいわかった、と思う。

Accessibility API とか NSAccessibility つーのは プロトコルであって、このへんのキーワードで探すと Cocoa アプリを作る側はこいう規約にそってぷろぐらむすると ユーザにやさしいでちゅよーとかそいう感じ。

んでそれを使う側になるのはたぶん主に Apple Script で、これは内部的には Apple Event とかいうのになって飛んでいく、とそんな感じ。 なんかしらんけど Apple Script は Window ID とか使ってるし、 AXFocused とかいうのをセットゲット…と思ったらダメじゃん Carbon Emacs この属性サポートしてないよ!

なるほど規約に沿ってくれとおねがいする気持ちもわかるというか

(21:23)

_ CoreInjection

DesktopManager はあやしげなことやってるなー。 Dock に侵入してるらしいが

(21:27)


2007-02-24

_ むーん

ヤター Window 一覧取れたよ! これでマカーになれるかもしれない道が開けたような。

(01:31)

_ ぐおお

もう世界はジョブズのものになるんだと思った。 っていうかジョブスかジョブズかもわからない。 あと端末は打てるようになったけど w3m には日本語通らないからぐぐれない。 あと HHK Pro を MacBook に刺しちゃったので Thinkpad さわらなくなった。

http://d.hatena.ne.jp/atty/20070223/p1

そういえば Firefox 入れてないからえらい不便だったんですね!! Safari ってなんだこれわ!

まぁ僕はいくらなんでも日常使いマシンがゴルフサバになってるのは おたがい不幸だよねーというタイミングで おやねんがんのおかねが手に入ったぞーということで、 Mac はどうせ僕には使えないだろうから Linux マシンとして欲しいもの…ということで探すとどうにも MacBook しか無いという有様で (次点は HP のノートだった理由はかっこいいからとかそんな) まぁスペックとか色々不満はあるけど (もっと重くていいからシルバー層向けに液晶デカくしろとか) なんていうかクロスプラットが服着て歩いてるを 目指しつつ全然目指してない我が家としては、 ウチにも OSX 欲しいよなーというのはごく自然の流れでほげほげ。

案外 OSX のままでも使いものになりそうなんだよなー。 ニッチで誰もやってない w3mimgdisplay と sevilwm の 目処が同時に立ったのはでかい。

ところでホッピーとかいかがですかという。

http://zinnia.dyndns.org/~hiki/SandBox/?%C2%E8%B0%EC%B2%F3%A5%DB%A5%C3%A5%D4%A1%BCOFF

(01:57)

_ ぐおお2

http://d.hatena.ne.jp/w_o/20070223#p1

正規表現ネタキタ。

最近正規表現のことばかり考えてるのですよ 主にゴルフのせいで。

正規表現は可読性最悪なのですが、 短いバイト数に豊富命令を押し込むって能力はズバ抜けてる。 明らかに成功した DSL のトップ1なのは間違いない。

んでそいうこと考えるとこれはどう見ても言語環境つか VM ですっていうノリでね。 入力文字列をスタックと見たスタックマシンとして考えると、 スタックプッシュする関数とか、動的に正規表現をスタックから生成する 機能があればこれっていわゆる Turing Complete !?!? (よくわかってない) なんじゃないかとかそんなことを思ってたのがうんいくらか前の話。

あとたぶん正規表現が正格表現とかも呼ばれるアレじゃないのは あの \1 とかいう 後方参照とかがおーとまとんで書けない例だと理解してたんだけど、 まぁよくわからない。

形式言語理論っていうオートマトンがどうのとか正規表現がどーのとかいう 授業を 5 回も受けた (なんとこれはあの k.inaba さんの推定5倍の数字なのである!!!!) 私が言うのだからまかせてくれといったところです。

ところでホッピーとかどうですか

(02:12)

_ やっとFirefox入れたよ…

長いみちのりであった

(08:32)

_ Turing Complete

これも DFA とか NFA とか同様、よくわかってない単語だった。 ただ DFA と NFA はもうわかってるよ前の shiro さんの pdf 見たりしたときにわかった!

んで Turing Complete は なんとかセミナーの時に情報理工のやんごとなき人々が 2D は Turing Complete だけど BALANCE は違うとか言ってて、 まぁそんなもんかなーと思いつつも なんでそんなにすぐわかるんだろーっていうか 何言ってんだコイツみたいなことを思ってたのは 今解きあかされる真実とかはどうでも良くて。

最近フラたんのおかげで Turing Complete について非常にわかりやすい定義を ゲットしまして、 Brainfuck を実装できれば Turing Complete という 非常にすばらしい定義です。 しかしまぁこれだと実装者の腕前によってしまうのだけど、 まぁ実装ができてしまえば論より証拠チックに Turing Complete であることは証明されてしまうのだなぁと。

問題は「うーんコレ Brainfuck 作れるんかよー」とか 思った時なわけだけど、 まぁそれは「俺チューリング不完全」とか呼んでおけばいいと思う。

(09:12)

_ フォント

フォントが好きくないのは単にアンチェリが好きくないからかもな。

でもブラウザのフォントとしては良いものだと思う。

(09:12)

_ w3mimgdisplay.rb

表示ができるのはとっくにできていて、 あとその位置だけあわせりゃ終わりってとこで苦労してたんだけど、 どっちにせよ位置取得に C 使うんなら最後は Ruby から ObjC にするんだし今のうち移行しておいた方がいいかなーとか でもプロトタイピングは慣れない ObjC より Ruby の方がマシだよなーとか。

ってか作りかけゲームで1500行くらいは書いたみたいなので ObjC でも問題無さそうなのだが。

つまりスクリプト言語でプロトタイピングとかの問題は こういうどうでもいい政治判断をたくさんしなければならないことである。

その点 C はスバラ C !!!!!!!!!!! 迷い、ナシ! C で書くと決めたら後は一心不乱に書くべし書くべし。

(09:20)

_ なんか一手足りないのだった

Window list から、 w3m が走ってる Window がわからない。 Terminal.app が一つのプロセスで二つ 同じタイトルの Terminal を起動してたりするのがつらいようだ。

PID 渡せばーとか思ったが Terminal.app は同じ pid 。 tty のデバイス名から…ってのもあるんだけどキツい?

フォーカスがあってるかーって情報を取るのが一番普通だと思う。

ただそいう API が拾ったヘッダにない。 てか Carbon を nm で見てるとヘッダに無い API なんてざっくざっくと出てくるのがなんとか。

例:

http://www.google.co.jp/search?hl=ja&safe=off&q=cgscyclewindows&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=

で、とりあえずの課題は API 一覧を得ることだったのだけど、 なんか Carbon.framework の下を nm してまわっても 全然定義されてないなーと思ってたんだけど、 ld を ktrace したらわかった。 ApplicationServices の下の CoreGraphics.framework にあるのね。 なんかなんでもないこと調べるのに苦労しててダメだ。

ってかそろそろ書いてかんと調べたこと片っ端から忘れていくなぁ

例えば Workspace って概念は OSX には最初からあるわけで、 X の WindowManager みたく Window を消したり出したりして 作ってるわけじゃないんだよなーとか。 そもそも VirtueDesktop のやってる エフェクトつき切り替えも CoreGraphics の機能ぽいし。

む kCGSActiveWindowLevel 。このあたりかな。 kWindowTitle 以外の使い方が全く不明な CGSGetWindowProperty に渡せばいいんだと思うけど、 うーんしかし誰かがとっくに調べてそうなこと調べてるなぁ。

あと otool -tv がイマイチなので逆アセで調べにくいのも困る。 このへんなんとかしないとな。

(11:26)

_ daihakkennnnnnnnnnnnnnnnnn

Window 一覧が取れたら、最初に出てきた 名前が非ヌルの Window がフォーカスあたってるんだよ!!!!!!!!!!! っていうかフォーカス順にソートしてくれてたよこれ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

(11:40)

_ でけた

i@um ~/wrk/cocoa> cat testfocusedwindow.rb
require 'focusedwindow'
p focused_window
i@um ~/wrk/cocoa> ruby testfocusedwindow.rb
[9, 400, 583, 388]

わいわい。

(12:30)

_ ここあ

ここあはなんか画面一番下が 0 なんだよなー

色々痛くて変換ができない

(13:15)

_ 描画について

NSBitmapImageRep とか見てたけど、 明らかにコレスジ悪いよなーと思ってほげほげ見てると、 CoreImage API つーので描いたらいいみたいだ。

(16:49)

本日のツッコミ(全9件) [ツッコミを入れる]

Before...

_ kosaki [人間がhttp://swtch.com/~rsc/regexp/regexp1.htmlにのってるような状態遷移図を..]

_ k.inaba [>どれがオートマトンで表現できて その正規表現と同じ判定をする関数  bool hoge(char* p) { ....]

_ konn [NSViewとかNSImageとかだったら、isFlippedメソッドを上書きしてYESを返すようにさせると、ふつう..]

_ k.inaba [あうー自己つっこみ。↑↑だと"aとbの個数が同じ"とかがRegularでないのに事実上書けてしまうので微妙でした。一..]

_ wo [>shinhさん 17日はわかりました。また近くなったらメールします。 > k.inabaさん 「メモリサイズ固定=..]


2007-02-23

_ うーん

おやしらずが異様に痛くて何も考えられぬー

(00:43)

_ 端末日本語

もう EUC-JP にしちゃえ、ってことで変えたらよくなった。 Emacs のフォント気にいらないなぁ。

でもそういや w3m-img が無いんだよな

(01:18)

_ ぬーん

SKKだけど、 ほげほげうんこ Ctrl+m とかは確定&改行になってくれると良いのだが

(01:40)

_ 痛い

親知らずが痛すぎて、 間違って親不幸 痛いでぐぐってしまった。

(02:17)

_ LCSマジメに解いた人募集

http://shinh.skr.jp/m/?date=20070213#c09

誰もマジメに解いてなければかなしい。 あーでも LCS モジュールとかで解いてなかったっけ。 Scheme で。 あーいや Scheme の LCS モジュールは test#3 にパスしないとか書いてありましたねそういえば…

TODO: 親不孝痛くない時にリンクを探す

(02:35)

_ 要するに

親不幸痛すぎてなんか反応しようと思ったとことか 全部スルーしてるな

(02:35)

_ rec

http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20070221#p02

ハフマンはこれです

http://cvs.m17n.org/~akr/pub/rubykaigi2006-06-10.pdf

で、 OCaml はもうどうしようもなく失格だと思います。

ハフマンの話それ自体は書く側読む側共通で正義かなぁと思います。

ただまぁ Ruby や Haskell なんかは、 別によく使わないのになぜか短く書けるような機能が結構あって、 そういうところをガンガン使ってゴルフしてるのかなぁと。 あとそういう部分がとても多いのが Perl 。

うむまとまらない

(02:43)

_ うだうだ2ちゃんでほざくよりGAME内でケリつけようぜ雑魚が

http://jbbs.livedoor.jp/game/7135/storage/1086876397.html#14

ネトゲはよくわからないが割と衝撃的なセリフであった

「うだうだAでほざくよりBでケリつけようぜ」 のAとBを、A<Bと定義するとそれは 全順序とかになってるだろうか。

2ch<GAME
GAME<リアル
こんな所<出るとこ出て
みくし<はてな
はてな<ブログ
掲示板<オフ
匿名<実名

よくわからんな。 2ch より下はあるのだろうか。

うだうだAでほざくより2chでケリつけようぜ

うーむ。 ありそうなもんだが

(03:00)

_ フォント

ヒラギノとやらよりはるかにK14がいい気がするんだが。

マカーはフォントが良い良い言うけど 俺は目が不自由なのかわからないなぁ。

(06:47)

_ migemo

いつもながらめんどいが、 migemo関係のソフトを全部入れた、 つまり、 w3m に cmigemo に cmigemo-server/client とかその依存物とか

(07:58)

_ AquaSKK

ふーむ。

  • Windowごとにstate を持って欲しい
  • Ctrl+m は入力確定+改行であって欲しい
  • q でカタカナにした時の単語を辞書に入れる必要はどこにもない

まぁあとで調べる。

にしても w3m-img 欲しいねぇ。

あと痛い T-T

(08:16)

_ AquaSKK

そもそも端末で日本語入力モードに切り替えられないというのもひどい

(10:04)

本日のツッコミ(全2件) [ツッコミを入れる]

_ m.ukai [LCS は OCaml toplevel だと高速化しても3つめが timeout ですーって時間が間に合ったとして..]

_ jijixi [AquaSKK が Terminal.app でひらがなモードに切り替えられないのは、どっちかと言うと Termin..]


2007-02-22

_ OSX

普通に普段やってることができるようになってきて困る

それより問題はあいつーんずとかいうやつを使ってることだろう

(01:29)

_ OSX

AquaSKKは便利だと思うが、 Emacs は別のモードを持ってるべきです。 woさんもそういっていた。

あとタイトルバーのファイル名の部分から端末にドラドロで 端末にそのフルパスが出るという機能は実にどうでもいい

(02:30)

_ VirtueDesktop

衝撃的によくできている。

まかーになりそうでやばい

(03:17)

_ D & OSX & SDL & Universal Binary

色々大変だったみたいだ。

まず全部 Universal Binary をそろえないといけない。 SDL とかはある。 libbulletml はまぁ -arch とかつけてコンパイルしなおす。 さて… main の入ってない phobos が必要です。

ar -x とか libgphobos.a にしてもダメ。 Universal Binary に ar は通用しないぜ! んで lipo と libtool で中身を取り出して、 ar -x で展開…すると、同名のファイルを上書きされてダメじゃーん。 しゃーないので ar を展開するツールを作ってドビャーと展開、 んで cmain.o を削除してもう一度固める。

あとはまぁ…コンパイルはまぁ普通に通る。 .ptr とかあちこちにつけて回ることにはなるけど。

リンクで Universal Binary を作りたい場合、 普通なら gcc -arch i386 -arch ppc で終わりだけど、 libgphobos.a をリンクしたくない関係で collect2 のオプションをいじらなければいけないのだけど、 このオプションが i386 と ppc で違ったりしてまた微妙にめんどい。

そんなこんなで isshiki さんのはビルドできた気がする。

ABA さんのはとりあえず最近のは template の循環参照がありましてね… ということで、ソースを全部結合するというソリューションを思いついたので、 ttn 以下と util 以下を別々に結合してコンパイル・リンクすれば動いた。 別々にやる理由は Frame : abagames.util.Frame とか そういう継承のしかたしてるからモジュールをわけないといけないからであったー。

(06:38)

_ 世界樹

はなびらこわい

(11:20)

_ 世界樹

強行突破してクリアした。 そこらの雑魚一匹の一回の攻撃でこっちの パーティが全滅しうる。

FOEよりはるかに雑魚が怖いので FOEを泳がせて赤くなったらFOEと戦闘するとかそんな。

Lv50,50,50,50,39 の ダレメバカ。 レンジャー以外ダメージ与えてないみたいな。

あとストーリーは全く無い方がいいね。

(15:21)

_ うーん

http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20070222#p03

すいませんです。 しかしなんでだろーと原因調査しているうちに通るようになった。 なんでやねん…スワップとかそのへんかなぁ…

(16:14)


2007-02-21

_ うーん

submitサバが死ぬのは僕的には面白い (なぜなら僕も PKU とか CodeGolf とかにヒドいコード投下しまくりで、 オマエラよくやるなニヤニヤと笑えるから) のだけど、出かけてる時に長期間止まるとちょっと申し訳ないなぁ。

すまんこってす。

なんかそろそろマジメに対策考えようじゃないか。 ちなみに止めた実績のある言語として C++, JS, Erlang, Ruby, Io なんかがあったような。 CLISP とかもあったかな。 ていうか止まった時にちゃんと調べようよ…!

ていうか core 吐くようにしよう

(01:44)

_ 何度か見た気もするけど

http://www.geekpage.jp/blog/?id=2007/2/16

via http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20070220#p02

プログラミングはセックスと似ている。一つの間違いに対するサポート
を一生続けなければならない。

ファインマンは「物理はセックスと似ている。過程が目的なのであって、結果生成物に興味はない」とかそんな感じのこと言ってたよな。

たいていのことにこの手のジョークは作れるのかも

(01:56)

_ 面白すぎる

http://d.hatena.ne.jp/sumim/20070221/p1

(17:17)

_ うーむ

  • exec のチェッカは全部チェックしなおすべき
  • というかいいかげん unittest 書く
  • 落ちるコードサブミットは深夜にでも

(17:26)

_ SRC

って打とうとしたらちょっと手がずれて SEX になった。 すばらしい罠配置だ。今まで気付かなかった。

(20:23)

_ なんか

timeout時に出力取ろうとするのがマズい気がする

(20:33)

_ testsrv

なんか殺した後に標準出力回収しようとすると、 select は成功するくせに帰ってこなくなるみたい。 なんとかするまでとりあえずタイムアウト時の標準出力回収停止。

(20:48)

_ ゴルフ

突然再起動したと思ったら critical temperature reached (91.0C) とか kernel が吐いてた。

どうしたものか。

_ libtool

とにかくだるい。

lipo -extract ppc libgphobos.a -output hoge.a
libtool -static hoge.a -o hage.a
ar -x hage.a

とかそんな感じで。

(23:31)


2007-02-20

_ うーん

http://zenmetsunotora.blog89.fc2.com/blog-entry-41.html

納得できないなぁ。

(01:06)

_ これ

http://golf.shinh.org/p.rb?e#Befunge

下の Minus のエントリと比較するに、 同じ方法で圧縮してるんかな。

Minus ってマイナスしか無いわけだが。

(05:04)

_ まぁこれで

--- js.c-       2007-02-20 06:10:02.000000000 +0900
+++ js.c        2007-02-20 06:11:21.000000000 +0900
@@ -653,9 +653,10 @@

     /*
      * Turn buf into a JSString. Note that buflength includes the trailing null
-     * character.
+     * character when readline ends with newline.
      */
-    str = JS_NewString(cx, buf, buflength - 1);
+    if (gotlength > 0) buflength--;
+    str = JS_NewString(cx, buf, buflength);
     if (!str) {
         JS_free(cx, buf);
         return JS_FALSE;

(06:11)

_ 同じ話かと思ったら

https://bugzilla.mozilla.org/show_bug.cgi?id=355827

そうでもないみたいだ。 ってかこれは別にバグじゃないんじゃないのか。

ああ、と思ったけどこれはひどい。 ていうか delete blank line とかどう解くの。

しかも UNCONFIRMED の略が UNCO って! 確認してやれよ! どう見てもこれじゃ困るじゃん! UNCO-! SM! UNCO-!

こんなもんマトモなプログラム言語じゃないなぁ…

(06:28)

_ Rhino

は readline 持ってないみたいだな。

まぁこれ当てるだけじゃんねぇ。

https://bugzilla.mozilla.org/attachment.cgi?id=241533

しかし全然 specially に扱ってねえしな。 UNCO!

(06:45)

_ なんか微妙なやりとりで入ってるなぁ

https://bugzilla.mozilla.org/show_bug.cgi?id=300841

(07:06)

_ LGPL

普通に考えると動的リンクだろうと思ったけど、 もしライセンス内できちんと書いてないのであれば、 たしかになんか微妙なかんじだなぁ。

http://d.hatena.ne.jp/KouMikage/20070214#p1

(07:31)

_ なんか

kounoike さんが猛っておられる。

swap と rotate で記録更新、かな。

(08:21)

_ rotate

http://golf.shinh.org/p.rb?rotate+lines#Perl

2秒で追いついた。そらそうだ。

(08:22)

_ 15からということでよろしいか

+
++
+++
++++
+++++
++++++
+++++++
++++++++
+++++++++
++++++++++
+++++++++++
++++++++++++
+++++++++++++
++++++++++++++
+++[->+++++<]>

27とかくらいだと、

+++[->+++++++++<]>
++++[->+++++++<]>-
+++++[->+++++<]>++

の方が

+++[->+++<]>[-<+++>]<

よりいいわけだ。興味深いな。

64でもまだ。

++++++++[->++++++++<]>
++++[->++++<]>[-<++++>]<

125だと…

+++++++++++[->+++++++++++<]>++++
+++++[->+++++<]>[-<+++++>]<

121作る時点で既に負けている。

(08:48)

_ 少し頭ひねったら

なんかピピンと下りてきた。全然違うコード。

http://golf.shinh.org/p.rb?hello+world#Brainfuck

(09:39)

_ まくぶく

きた。

タッチパッドは手がつるな。

とりあえず Xcode 入れればいいのかのう。

にしても最初から 17GB とか消費してあるんだなぁ。

Ubuntu つっこんで /home 30GB / 20GB とすると OSX になんぼも HDD のこらん。

ってか /home とか共有できた方が もちろんいいんだろうけどどうするのがベターなのかな。

まぁしばらく OSX で遊びつつ考えよう。

(10:42)

_ OSX で遊ぶことリスト

Ruby/SDL を見てみる。 今のところ ctor => main のてっぺん書き換え、っていう libGPL 殺法が一番良さげに思えるという。 あるいは ptrace かね。 mprotect はあるみたい。 ptrace もなんか man が出る。

あとは D の方。 とりあえず片っ端からゆにばーさるばいなり作るのを目標で。 なるべく downloadable なものを利用して作れると良い。

あと tekezo さん works で遊ぶ。

このくらいで飽きるだろう。

(11:52)

_ testsprite

Window モードだと 50FPS でフルだと 1800 。

(11:54)

_ Ruby/SDL

http://shinh.skr.jp/rubyrun.c

これコンパイルしてインタプリタとして使うだけで十分なような。

(12:11)

_ 祝い

http://d.hatena.ne.jp/ytqwerty/20070218#p1

を見てゴルフ場無制限使用会員権をお祝いに! とか書こうと思って忘れてたんだけど、 既に来ておられた。さすがに Ada でかいなー。

(12:15)

_ callcc

def finishLaunchNantoka
  puts '> finishLaunchNantoka'
  callcc {|$c2|
    $c.call
  }
  $c3 = true
  puts '< finishLaunchNantoka'
end

def _SDLMain_main
  puts '> SDLMain_main'
  finishLaunchNantoka
  puts '< SDLMain_main'
end

def _Init_sdl
  puts '> Init_sdl'
  callcc {|$c|
    _SDLMain_main
  }
  if $c3
    exit
  end
  puts '< Init_sdl'
end

_Init_sdl

puts 'hutsu-ni SDL'

$c2.call

要はこんな感じのを libruby で書けばいいのかな

(13:56)

_ even.d 63B

extern(C)int gets();void main(){for(;gets;)printf("%s
",gets);}

一個目のテストケースは通るのだが。 ところで gets の戻り値を long にするとサバが停止する。 帰ったら考える。

(14:41)

_ むしろ

普段から憎いような。

http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20070220#p01

久々に使うと必ず rec 忘れるんですよね。 しかし間違い発見しやすくなるのかぁ。

普段から憎い部分ほどゴルフ的にも嫌いというのはつまりそれは ゴルフ的にアレなところが僕の嫌いな部分ということですね はいそれはなかなか。

とりあえず OCaml は akr さんのハフマン符号がどうこうの精神を 読むべきだと思うんだよな。あと D もそんな感じ。 Haskell はわかってる。 Ruby はもっとわかってる。 Perl はたまに異様にわかっててツンデレ。

(18:24)

本日のツッコミ(全5件) [ツッコミを入れる]

_ ySas [BefungeとMinusのeですが、発想は同じかもしれません。たぶん、実際の値は違うと思いますが。あと、私のeは実..]

_ YT [会員権ありがとうございます〜。入会記念に好き勝手言い残しておきます。 まずそのAdaですが、コンパイルオプションに-..]

_ shinh [ご意見ありがとうございますです。-gnat05は加えてみたつもりです(未確認)。そのあたりは追加言語候補としてまた今..]

_ YT [-gnat05確認しました。ありがとうございますー。(ゴルフはしてたくせに)レスが遅くなってすみません。 歓迎会とい..]

_ shinh [レスなどいつでも良いですはい遅延評価とかそのへんで。上でも答えましたがおいわいはぜひ参加させてくださいませませ。]


2007-02-19

_ これか

js.c 。

   /*
    * Turn buf into a JSString. Note that buflength includes the trailing null
    * character.
    */
   str = JS_NewString(cx, buf, buflength - 1);
   if (!str) {
       JS_free(cx, buf);
       return JS_FALSE;
   }

で、 jsscan.c では、

   buf[i] = '\0';
   return i;

とかやってる。 つまり js.c はコメントからして間違っている。

パッチは瞬時に書けるけど検証とか色々考えるとめんどいか。 最新版でもなおってみたいなので 暇な時にでも Nightly とか見てからパッチ投げるかぁ。

(00:09)

_ 俺と

http://d.hatena.ne.jp/w_o/20070218#p3

忍耐力は、他同様、人それぞれだと思う… さっぱりついていない典型例がここに。 あと今に至るまで勉強は単なる趣味なので 受験とかあんまり我慢でも無かったんだよなーという。 英語つまらんから気張らしに物理やるとかそういう。

正確な文書はまさにそうで、 例えばレキシカルスコープという単語を見るとびくっとする。 未だに意味がよくわからない。 {} のことかな。

ということで斜め読み。

http://www.geocities.jp/m_hiroi/func/smlnj04.html

なんとなくわかったような。 Ruby の最近の議論はダイナミックにしようとしてるのかな。

一方一応専門としている物理の方は、 と、言えると良いのだけど、 むしろこっちの方がヤバいって勢いで専門用語が使えない。 「ユニタリ変換のエクスポネントって何ですか ハミルトニアンのことですか? そうならそう書けドアホ」 とか言われていじめられたり、 「それただ○○ってだけだよね」 とか言われて、○○の意味がサパーリわからなくて 「あー、それ」とか適当にゴマかす人生なわけだ。

というわけで

  • (落ちこぼれなければ)正確な文書が書ける
  • (頑張れば)忍耐力がつく

くらいじゃないかとか思うのでした。

あと難しい問題も色々あやしいと思うけど、 出会ってる人もたくさんいるのでまぁそうかもなーという。

(02:36)

_ わらた

http://d.hatena.ne.jp/sumii/20070217/p1

この手の技術で場合によって縮む言語とかあったら面白いだろうな

(02:41)

_ ただ

Haskell の表現力の強さは本物だなぁと思う。 正直 OCaml はダメだコレという感の記述力の無さだ。 OCaml の大嫌いな部分である string_of_int だとか print_int だとか *. だとか そのへんがモロに影響する。 強い型付けのために…という言い訳は、 Haskell やら GCaml なんか考えると言い訳になってないかなぁ。

でも OCaml は久々に触っても割と書けるのは良いなぁ。

うーむ Haskell 強い。なんか見直すものがあるな。 ハスなんとかとか言ってごめんよ。

http://www.tom.sfc.keio.ac.jp/~sakai/d/?date=20070217#c01

ふとお前の言語選ぶ基準はゴルフかと自問する。

ちなみに僕の e.rb はこんな。あと 8B は実に遠い

a=2*v=10**?d
a+=v/=$.+=1while 0<v
p a+36

(03:11)

_ rescue

最近こう書けると知った。

nil+1rescue p$!
raise'str'rescue puts$!

これ結構短いんだよなぁ。 今までの問題で適用できたのもあったのかもしれない… が、今さら見返すとかはなんていうか無理だ。

(03:47)

_ 論文を書くのがつまらない

理由として、結構頑張って書いてもクソみたいな クオリティだったりすることがある。 それで楽しさが減らされちゃってるてのを考えると、 慣れるとこれも楽しいものなのかもしれない、とか思うんだけど。

もうちょい文章書くの慣れたらもう一度考えてみると良い。

(04:11)

_ 人類の大罪は

水曜までに処理

(04:26)

_

http://park7.wakwak.com/~blackbox/#dd2007-02-18_01-50-17

そもそもテストサバは ネットワークから断絶されてる(はず)なので、 example.com は誰かアクセスできるバグ見っけたら 記録出してみて下さい、っていう趣旨のものです。 というかアクセスできたら Ruby は

open'open-uri'
$><<open('http://example.com/').read

とかで終わりなので。

(05:22)

_ なんだよ

open'open-uri' って。もちろん require'open-uri' が正解。 ってか shebang でやった方が短いか。

(05:24)

_ スピードを

http://golf.shinh.org/p.rb?All+Expressions#Ruby

最適化しまくったところ通った。 元のコードは何Bくらいだったっけという感じだ。

(08:31)

_ unlambda

せっせと考えたけど1文字読み取って 1文字吐くくらいのプログラムしかできないのであった。

動きみないと死ねるので、 インタプリタ書いておられたなーと思って 眺めてみるもなかなか大変そうで死ねる。 たぶん d の実装が大変なんだよね。

http://d.hatena.ne.jp/oto-oto-oto/20061226/1167145829

(14:43)

_ AWK本届いたのでがんばります

http://www.garbagecollect.jp/~usa/d/200702b.html#id20070219_P4_1

ホントか

(21:12)

_

IMG_Load ってマクロじゃなかったのか… あー magic だけじゃなくて拡張子も判別の情報になるからかな。

(22:20)

_ どうでもいいけど

example.com 落ちてるよな

(22:45)

_ 何コレ

ていうテクニクがたくさんあるな。 全然 Perl 脳になってないなぁ。

http://www.nmt.ne.jp/~ysas/diary/?200702b&to=200702191#200702191

とりあえず -lp 使ってないのはひどい。 寝てるとしか言えない。

(23:08)


2007-02-18

_ pid

http://d.hatena.ne.jp/Ozy/20070217#p1

僕はこの手のコード見てうひひと思うのは好きなのだけど、 にはさんがインチキするかしないかで四苦八苦とか してるのを考えると、 確率的な方法は潰せるなら潰した方がいいのかもなぁという。

うん。というわけで、ですね。 getpid のカウントを取るとか、 まぁそいうのはアリっちゃアリなんだが、 まぁめどい。

でもとりあえず

echo 0 > /proc/sys/kernel/randomize_va_space

しといた。

うーんめんどいから各自適当に shinh(cheat) とかで 対応していただければ。

あーでもシステムコールのフックはちゃんとやりたいなぁ。

(07:09)

_ にはさんには悪いが

http://golf.shinh.org/p.rb?show+the+way#Ruby

これしか無いよなーというチートをしてたら 当然のようにフラたんとバイナリサイズが同じで面白い。 でも 7B も負けてるなぁ

差が2Bになった

まぁマジメにも解こうよという

(07:23)

_ こっちでも

http://golf.shinh.org/p.rb?show+the+way#sed

2B負けてる。

1B差になった。

1B勝った。

(07:31)

_ しかしまー

Rubyの人ってのはすごいなぁ。 こう俺がそれなりに長い間かけて蓄積してきた 大量のバッドノウハウを使って問題解いてるのに、 普通に追いついてくるっていうか。

(08:05)

_ 世界樹

FOEと戦うとTPが全快するから 帰る機会が無いなーと突撃してたら全滅した。 結構な時間が。

(09:30)

_ アレフ

http://www.aleph-lang.org/

これ入れてみたんだけど、 ベル研のヤツは Alef だよなと思ったのであった。

(11:13)

_ 言語増やすのに夢中になってたら

フロ湧かしすぎた

(11:16)

_ ゴルフのしすぎは

あなたの家を火事にする恐れがあります。

それはそうと hello.curry は相変わらずリンク通らん。

ということで A+ と J かなぁ。

(11:19)

_ そしてうめすぎた

うめるって関西語かね

(11:38)

_ なるほどなぁというか

プロセス落ちてたのは、 大量の出力があるスクリプトが submit されたからっぽい。 プロセス自体がメモリバカ喰いするとかは すぐ殺されるので問題無いのだけど、 親に大量の出力が来て親が死ぬと終わる、という。 まぁプロセス起動する部分の回りを for i in `seq 1 1000` とかでかこっておいた。

で、この場合、

   o = stdout.read

とかでメモリがものすごいことになって死ぬわけだ。 そらそうだ。

んで、

   o = stdout.read(10000)
   e = stderr.read(10000)

とかでいいだろーと思ったんだけど、 なぜか stderr.read(10000) の方が帰ってこなくなった。 stderr に内容がある場合は大丈夫。 あとタイムアウトじゃない場合も大丈夫。 ふーむ IO まわりはわけがわからない。

まぁプロセス死んだ場合は自動再起動するようにしたので、 帰って来ない場合はメモリオーバーで死んでくれた方が ありがたい。よって o = stdout.read で放置しよう。

あ、正解です! むしろバグ発見ありがとうございますというか、 全体的にいいかげんなシステムですいませんという。 ちなみに Ruby だと少々頑張っても プロセス止めるくらいの stdout を送るのは できないみたいだったので、 Erlang の方が速いのではないかという謎の予測が。

http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20070218#p03

(21:58)

_ というか

Erlang の使いかたのアドバイスありがとうございますという。

(22:02)

_ しかしみんな

いい問題次々考えるなぁ。

http://golf.shinh.org/p.rb?Booklet+Printing

こういうのは Ozy さんが鬼のように 得意という気がするがどうだろう。

俺が出したのって hello とチート伝説 echo と、 冗談でしかない example_com と 42 だけ。 42 は SF ジョーク言えるなんて 俺もハカーの仲間入りじゃね? とか調子乗ってたけど eban さんに自分の甘さを認識させられた。

(22:26)

本日のツッコミ(全5件) [ツッコミを入れる]

_ niha [帰ったらまあまともに縮めます。まだ縮むし。帰るの遅いけど。]

_ kosaki [ゴルフ場に限って言えばシステムコールのフックをまじめにやる必要は全然ないんじゃない? 単純にmmapとかgetpid..]

_ shinh [ええ、 LD_PRELOAD でいいというのは、ほとんどの場合正解だと思うのですが、 C や GAS なんかでは、イ..]

_ jijixi [こちらこそ、楽しい遊び場を提供していただいて、ありがとうございます :-) ところで、その後ちょっと調べてみたところ..]

_ Injovjhq [この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/business/5..]


2007-02-17

_ 明らかに一人やってることが違うので

公開 exit.rb

p (~/e/-3)%258

(00:53)

_

これと僕の混ぜるだけで5Bは縮むな。

http://www.math.sansu.org/u/diary/?date=20070216#p04

(01:01)

_ kernelも意見発信したい><

procfs とかにファイル生やすとかそいう苦労をしたくない場合、 printk とかしか無いのかな。 これはめんどい。

(04:35)

_ 参考文献

http://www.atmarkit.co.jp/fsecurity/rensai/rootkit03/rootkit02.html

を見てたんだけど、 これのまんまパクリなんじゃないかとか思った。

http://www.csg.is.titech.ac.jp/~kourai/memo/linux_kernel.html

(04:41)

_ 考えをあらためた

syscall_table.S ってのがあるみたいだというあたりで…

http://kerneltrap.org/node/5802

要するにオマエはバカだと言われているようだ

つまりなんつーかですね。 システムコールなんか Ruby で呼んでもたぶんデカいわけで、 GCC 一派だけ strace でしばりかけて、 他は .so でしばってもいいんじゃね、という

(05:45)

_ ぐおー

体だりーので予定していたアップデートの類いはちっともしてない!

だりーだりー!

とりあえず Minus はあのフラたんが esoterisのこと50% ゴルフのこと50%とか 考えて作ったに違いない -= しか演算が無い ヘンな言語なので試すといいよ!

http://darrenks.com/minus/

特徴はループがむっちゃ書きにくいこと!

aaaioac4 とかで無限ループ echo だ!

a-=a;  // a を 0 に
a-=i;  // a に入力(i)
o-=a;  // a を出力(o)
c-=4;  // 4個戻る(cはプログラムカウンタ)

あとは止める方法考えるんだお! ちなみに o-=i だと負数吐きやがる!

(06:32)

_ esoteris

って何! 知らない単語無理して使うんじゃないよ!

(06:33)

_ よくわからんけど

なんか Ruby のバグ踏んでる気がして 1B 減らない。

(08:13)

_ ぎぐぐ

ひどい。糸忘れたから ミッションクリア後に全滅した。

(09:37)

_ 第五層

ウケた

(10:40)

_ るびのばぐ

じゃねって言ったヤツはばぐでもなんでもなかった><>←さかな

(12:09)

_ ねぼけた

ねぼけて目覚ましが鳴ってるのを PCが鳴ってるんだと思って なぜか Ctrl+Alt+Del った。 結果再起動してくれた。 んで xen 上げなおすのとかねぼけててこずった。

アホというかなんというか

(15:33)

_ さすがに

こんな綺麗なコードが最短なわけないね。

これはたぶん面白い問題な気がするなぁ。

http://golf.shinh.org/p.rb?multi_key+sort#Ruby

(18:15)


2007-02-16

_ 隠蔽

http://gusmachine.blog49.fc2.com/blog-category-2.html

D は、

class C {
  int i;
  this() {
    int i;    // 合法
    {
      int i;  // 非合法
    }
  }
}

のはず。

 1. コンストラクタとsetterでは、セットする変数と同じ型の引数を受
    け取り、引数の名前はフィールドの名前と同じになることがある。
    同じであってもよい。

どの言語の話なんだろう。

#include <stdio.h>
struct C {
	int i;
	C(int i) {
		i=i;
	}
	void print() { printf("%d\n", i); }
};
int main() {
	C c(1);
	c.print();
}

こんなのは当然 C++ だとダメなので、 this->i = i; とかするんだろうか。 いや C++ なら C(int i) : i(i) {} でいいんだけど。 パイソン子なのかな。 まぁ僕はメンバが i_ になってるか、 引数が i0 になってるか、が慣用化されてるなぁ。

まぁ

 2. フィールドを参照する際にいちいち読みにいってほしくないとき、
    ローカルにキャッシュとしてフィールドの値をおいておくことがあ
    る。この名前は同じになる。

これがあるので、 D が一つ目が合法なのは 全然正しく感じる。

んで関数内のブロック内の隠蔽はなー。 あ、ちなみに

class C {
    int i;
    this() {
        int i;
        void delegate() d = delegate void() {
            int i;
        };
    }
}

は合法みたいだ。

んで関数内のブロック内の隠蔽は 禁止しておいた方が妥当な気がするけど、 俺は結構やりたいなーとかいう。

int main() {
  SDL_Surface* s = SDL_SetVideoMode(640, 480, 32, SDL_SWSURFACE);
  // 長い時をへて
          if (hoge) {
            int s = 1;
          }

とかをしばられるのがなー。 いや行儀悪いんだけど書き散らかしコードだから許してよーという。

(15:52)

_

JSのエントリが一個メモリ不足で死んでるな。 ていうか 99 で速度不足とか大丈夫だろうか。 cron動いてたとかかもしれないけど。

(15:57)

_ compile time function evaluation

http://www.digitalmars.com/d/function.html#interpretation

思ったより適用範囲が広い。 これ入力固定の BF インタプリタくらいなら動く?

(16:02)

_ まぁ

http://alohakun.blog7.fc2.com/blog-category-5.html

よく使う機械語命令長くらいなら最近は覚えた…と思いつつ、

i;a[] = {4, 9, 2, 3, 8, 6, 3, 2, 1, 3, 5, 7, -0x80000000, 0x7FFFFFFF};
main(){
    qsort(a,sizeof(a)/4,4,"YXZ\x83\xec\f\213\0+\x2\303");
    for(;i<sizeof(a)/4;i++)
        printf("%d ", a[i]);
    puts("");
}

もろに sub じゃダメってケースだった…

% ./a.out
1 2 2 3 3 3 4 5 6 7 8 9 2147483647 -2147483648

まぁ

irb(main):001:0> disasm("\x55\xb9\x01\x00\x00\x00\x89\xe5\x8b\x45\x0c\x8b\x10\xb\x45\x08\x39\x10\x7f\x07\x0f\x9d\xc0\x0f\xb6\xc8\x49\x5d\x89\xc8\xc3")

/tmp/irb_disasm1672.0:     ファイル形式 binary

セクション .data の逆アセンブル:

0000000000000000 <.data>:
   0:   55                      push   %ebp
   1:   b9 01 00 00 00          mov    $0x1,%ecx
   6:   89 e5                   mov    %esp,%ebp
   8:   8b 45 0c                mov    0xc(%ebp),%eax
   b:   8b 10                   mov    (%eax),%edx
   d:   8b 45 08                mov    0x8(%ebp),%eax
  10:   39 10                   cmp    %edx,(%eax)
  12:   7f 07                   jg     0x1b
  14:   0f 9d c0                setge  %al
  17:   0f b6 c8                movzbl %al,%ecx
  1a:   49                      dec    %ecx
  1b:   5d                      pop    %ebp
  1c:   89 c8                   mov    %ecx,%eax
  1e:   c3                      ret
=> nil

これはちょっと見ただけで ECX のクリアは xor %ecx, %ecx; inc %ecx; に決まってるでしょ! このオバカ GCC ! とかいう感じなのでまぁいいか。 そもそもスタックフレーム作るなとか。 omit-framepointer つけといたらバイナリ長減ったりするのかな。

あと前から気になってたのですが第四引数でわ。

(16:28)

_ AWK

アマゾンで AWK 本注文した。

(16:40)

_ sh

http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20070216#p02

ls /bin /usr/bin などを送り込んで 確認していただくと良いかもです。

あと「読みやすく」は私の場合 「読みやすく書かなければならない」という 束縛から解放される喜びが大きいなぁ。

あと経由して思い出したように Smalltalk メモ

http://www.gnu.org/software/smalltalk/gst-manual/gst_42.html#SEC102

(17:50)

_ 3300万回

Rubyを起動させたらどのくらい時間を喰うだろうか。

(20:39)

_ うーん

終わりそうもない。

s='!\"\#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
s.scan(/./) do |a|
  s.scan(/./) do |b|
    s.scan(/./) do |c|
      s.scan(/./) do |d|
        s.scan(/./) do |e|
          begin
            p = a+b+c+d+e
            puts p
            fork do
              eval(p)
            end
          rescue
          end
        end
      end
    end
  end
end

Ruby segv を探そうかと思ったのであった

(20:45)

_ 今晩かなぁ

  • Erlang
  • Minus
  • A+
  • J
  • Unlambda
  • Curry

どれも難しいなぁ。まぁ Minus は入れると決まればカンタンだ。 2DとBALANCEはどう考えても無理だ。

あと純然たるマシンコードサイズを競う場として、 スタックとレジスタが全部クリアされた状態で始まる ヤツもあってもいいかもしれないな。

(20:59)

_ そいや16

センセは非常に穏当な意見でつまらなかったのだった。

ふと思ったけど NP-complete 解くってのはアレじゃないかな。 exptime 使って解くってことじゃ。

(21:19)

_ 世界樹

補助魔法とか強いなぁ。 1ターン目に170与えてくるザコの攻撃が 2ターン目に17だったりする

(21:22)

本日のツッコミ(全2件) [ツッコミを入れる]

_ Gus [> どの言語の話なんだろう。 Javaです。this.m=m;ってthisで修飾するとメンバになります。 そのD言..]

_ shinh [this. は Eclipse が自動生成してたような気がしますが、そうでも無ければキモく感じますねぇ。 あと c..]


2024年
3月
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
1.shinh(2016-10-11 02:13) 2.sumim(2016-10-11 02:13) 3.ySas(2016-10-11 02:13)
search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h