トップ «前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|04|05|06|07|08|09|10|

ToDo:


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..]


2007-02-15

_ 健康ゴルフ

最近風邪をたしなんでいるという感じである。 もうちょっとマジメに原因に取り組む必要があると思う。

  • 飯を喰わない(食事ゴルフ)
  • 栄養偏る(栄養ゴルフ)
  • 寝ない(睡眠ゴルフ)
  • 局所的に忙しい(締切ゴルフ)
  • 医者に行かない(薬ゴルフ)

やめてお兄ちゃんそれ以上ゴルフしたらっ…!って感じだな。 あと部屋のホコリゴルフをしたら健康に良さそう。

(00:14)

_ 世界樹

ブシドーは普通に殴りキャラでつまらんので カースメーカーが入れれるよになったので即交換。

メディなんとか以外みんなイロモノだなぁ

(00:33)

_ Tropy

やっと利用法を思いついた。 官能小説書きためたらいいんじゃ

(02:51)

_ スポイラー!

http://pitecan.com/Puzzle/Predict/janken.html

via http://yowaken.dip.jp/tdiary/20070215.html#p01

じゃんけんゲームのネタバレ。

たぶん Firefox なら勝てるんじゃないかな

戦績: 50勝 0敗 0分け
計算機の手	あなたの手	勝敗
グー	パー	◯
チョキ	グー	◯
グー	パー	◯
パー	チョキ	◯
チョキ	グー	◯
グー	パー	◯
グー	パー	◯
パー	チョキ	◯
パー	チョキ	◯
パー	チョキ	◯
グー	パー	◯
チョキ	グー	◯
チョキ	グー	◯
チョキ	グー	◯
パー	チョキ	◯
チョキ	グー	◯
チョキ	グー	◯
パー	チョキ	◯
パー	チョキ	◯
グー	パー	◯
パー	チョキ	◯
パー	チョキ	◯
グー	パー	◯
パー	チョキ	◯
グー	パー	◯
グー	パー	◯
パー	チョキ	◯
グー	パー	◯
チョキ	グー	◯
パー	チョキ	◯
パー	チョキ	◯
チョキ	グー	◯
パー	チョキ	◯
グー	パー	◯
チョキ	グー	◯
パー	チョキ	◯
グー	パー	◯
パー	チョキ	◯
グー	パー	◯
チョキ	グー	◯
グー	パー	◯
グー	パー	◯
グー	パー	◯
グー	パー	◯
チョキ	グー	◯
チョキ	グー	◯
パー	チョキ	◯
パー	チョキ	◯
チョキ	グー	◯
グー	パー	◯

(04:41)

_ ウソだった

なんか結構乱数で変わるみたいだ

(04:46)

_ ゴルフサバ

いくらなんでも実行遅すぎやろと思うんだが 何が悪いんだろう。

strace かなーと思ったけど ゼンサバ上で strace かまして実行しても あんまり速度変わってなくて、 0.25秒くらいで終わる。 open4が悪いか、なんらかの俺のミスか…

(05:17)

_

やっぱ strace が重かった。 そうだよなー。 フィルタするシステムコールを選択的に 選ぶとかできないからかなぁ。 見てみると wait4 とかが重いらしい。 うーんそいうもんなのかね…

てゆーか -f オプションが遅い。 で、 man 見ると fork を追うって話で、 別に fork なんて追って欲しくは無くて、 やって欲しいのは execve で trace やめるのをやめろ、と。

(06:06)

_ きゅーりょー

608370
505856
346080
104000

えらい多いなー。 逆に言うと使い過ぎである

(07:20)

_ マクグリドル

なんかクーポンがあったので、 この危険そうな物体を食べてみることに。 最初の半分くらいはフツーにうまいじゃんねと思いながら喰ってたけど、 途中からこれはキツいなと思いなおした。

そもそも甘くて腹に溜まるものが得意でない。

(10:27)

_ ヤター

http://golf.shinh.org/p.rb?delete+blank+lines#OCaml

\('-')/

型推論をゴマかすのが OCamlゴルフのコツな気がしたのであった

(11:41)

_ ステキな先生

http://d.hatena.ne.jp/kanbayashi/20070214/p1

(12:38)

_ OCaml

ちょっと標準ライブラリ貧弱すぎんかという。 Haskell並のほげほげプラスOCaml並のほげほげ、 とかは無いんかね

(13:02)

_ うーん

shiroさんかっこいーなぁ。

http://jp.franz.com/base/seminar/2004-06-10/Franz1.pdf

(17:21)

_ OCaml

パーサがなんか Perl チックだよなぁ

# let f x y=();;
val f : 'a -> 'b -> unit = <fun>
# f 1l1l;;
- : unit = ()
#

Haskell もこんなもんだっけか。

(19:19)

_ tanakhさん

かっこえー

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

Ruby のヤツ意地でも通したくなるのであった

(19:36)

_ 週刊エジプト

という雑誌があるらしい

(19:57)

_ なんか

ゴルフ場が刺さってた。

うーん元気に動いてたのになぁ。

(21:32)

_ なんか

ext3fs がそれなりに壊れてた。

なんかおかしいところあるかもしれない

(21:45)

_ すげー

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

59Bかーあと名前変えて運用で回避というのは すばらしいですありがとうございます。

(22:13)

_ 俺もオキャムってる場合じゃないなぁ

でも prime 抜かされたしなあ

(22:13)

_ そいう感覚

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

は、なんか長い間やってるうちにできてくるような。 私の場合 Ruby は大丈夫だけど Perl は一々試してみないとダメで、 OCaml とかはもう根本的にほげほげ、って感じですね。

ゴルフの才能って要は体力とか暇じゃないかとかいう。

99 は CodeGolf の時からわかってたことですが、 案外アルゴリズム勝負で、 言語によって全然最適な方法が違うので面白かったりという。

僕は一箇所 if then else 使ってるなー。 このへんがダメになるから設計がよろしくないのは なんとなくわかってたけど書き直すのが億劫。

(22:46)

_ あと 1>0 は

http://gusmachine.blog49.fc2.com/blog-entry-138.html

私はHaskellですがここで始めて気付きますた

(22:47)

_ 僕の学んだ OCaml ゴルフのコツ

  • if then else はできればやめる。
  • 適当に型と true false のつじつまをあわせる
true&recursive(i+1)||()=print_string"hoge"

こんな感じで。

(23:15)

_ とうとう

awk & sed が Haskell を破ってしまった。

(23:20)


2024年
10月
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