2004-01-01から1年間の記事一覧

なんか、色々考えるんだけど、「それってCへのトランスレータでも十分実装できるんじゃないかなぁ…」とか、そういう気分になる。わざわざRTLに変換する利点は?GDBで調べられる?でも、C の #line とか使えばGDBもそれなりに努力してくれるんだよなぁ… RTLに…

シューターのジレンマ

今日もやってくるか。と、思って、ゲーセンまで行ったんだけど、既に先客がいて、なんかクリアしてしまいそうなペースだったので、微妙な気分になって、見ないようにして帰ってきた。 こう、避けかたとか、稼ぎかたとか、見てしまったらつまらんからなぁ…。…

演算子順位構文解析

ほい、できた。 using gcc; var opparser_table = [ [[`TOK_MULT:MULT_EXPR],[`TOK_DIV:CEIL_DIV_EXPR]], [[`TOK_PLUS:PLUS_EXPR],[`TOK_MINUS:MINUS_EXPR]] ]; var parser = Parser.create_oppre_parser( opparser_table ); var lextable = [ ["[0-9]+":`TO…

演算子順位法

演算子順位法なんて使わねーよなぁ…とか、馬鹿にしてた!!これは、非常に良いではないか。プログラムが単純になるし、効率良いし。左結合、右結合もちょちょいといじるだけ。

よし、適当にネタを思い付いたのでやってみるか。と、思ったんだけど、今のILogでは式のパースが面倒だ。再帰下降で二項演算子をやるのはちょっとよくない。 と、いうわけで、演算子順位をうまくやってくれるライブラリでも作るか。演算子順位法は、調べた感…

虫姫さま、を、やってきた。 マニアックが難しいのはわかるんだけど、だからといってオリジナルが簡単なわけではないッッ。。オリジナルのStage 5の弾速は非常にアレだ。アレ。良い。

サイトデザインといえば。

しかし、企業のサイトはそこらへん悪くなっていく一方だよなっていうか、ケイブさんのアレはシューター全員が「そりゃあんた間違いだよ!!」って思ったような。その話はかなり今さらなんだけど。

衝突判定

http://www.sci-museum.kita.osaka.jp/exhibit/text/1-502.html ボールマシーンみたいなパズルゲームでもやってみたいな。と、いうことで、ちょっと衝突判定でも真面目に勉強するか、と思ったわけだ。まあ、今日ふと思い付いただけなので、明日にはどうでも…

いや、しかし、寒いですな。朝は、かなり、寒い、です。

メモ。

型チェック言語はPrologみたいなのにしたらいいような気がしてきた。 Prologみたいなのってなんだよ。実際、Prologなんて殆ど知らないしなぁ…どうなんだろうか。ちょっとオーバースペックのような気がするけど。 で、あんま関係無いんだけど、左辺値というの…

ゼルダを終えた。本来なら、ここからハートのかけらを集めにいくべきなんだろうけど、そこらへんする気が起きないというのは困ったもんだ。なんか、急に書くこと無くなったなぁ…プログラム的にも日記的にも。 しばらく何も書かないというのもいいかもしれな…

と、いう話にもっていきたかったのか

いや、宣伝するのは重要だと思ってるのですよ。 Rubyの一番悪いところは、Ruby使いはみんな「まあ、Perl使いはPerl使い。Python使いはPython使いだしねぇ」っていうような態度をとっているところなんだ、とか、。もっと、こう、「Pythonは〜が糞だよ。あんな…

真・ビジュアルプログラミング

でも、こういう話はあたりまえかもしれないな。でも、当たり前のわりに、議論として表に出てくることは少ないような。言語で行いたいことの処理の構造と、プログラムの見た目の構造を一致させる、というような観点で言語を設計するっていうのはどうだろうか…

僕はプログラムを文字列としてだけでなく、図としても見ているのかもしれないな。

昨日のを書いてて思ったんだけど、どうも、僕はプログラムの論理的構造と、見た目の構造が一致しているのが好きなようだ。見た目、というのは、比喩表現ではなくて、単純に、ソースコードの見た目、だ。 ただ、それだけの話なんだけど、これは、なかなか面白…

昨日の

結局型チェックなんて考えてもどうしようもないので、当たってくだけろ、ということで、昨日のを実装してみた。字句解析も構文解析も実行もほとんどILogのものを流用できるので、すぐできた。のは、いいんだけど、これが便利かどうかを検証するにはどうした…

あああ、あと一週間の我慢だ…多分。一週間耐えたら次の仕事ではコード書けるかもしれない。色々勉強できるかもしれない。 しかし、あれだな。近いうちに役立つとわかっている技術を会社の金と時間で勉強できるっていうのは、すごい幸せなような気がするんだ…

4.0が偉い。

昨日のを書いてて思ったんだけど、ひょっとしてGCCは配列まわりの解析が甘いんじゃないかなぁ…とか。 あー、でも、4.0ではなんとかなってた。んん、まあいいのかもしれない。

型チェックってどうすればいいかっていうメモ

と、したいところなんだけど、ちゃんとした型システムって作ったこと無いからどういうのが必要なのかわからんのだよなぁ… とにかく、型チェックっていうのは組み合わせだ。いっこいっこのパターンは量が多くないんだけど、型の数に応じてパターンの数が組み…

バージョン番号

は結局0.0.1にすることに。 Knuth先生はTeX作ったことよりも、Art of 〜書いたことよりも、あのバージョン番号を考えたのが偉い、とか適当なことを思ってる人間なんで、なんか、そういう遊びをしてみたいなぁ。と思ったんだけど、6.626はやっぱちょっと微妙…

0.0.1 リリース

軽く休憩しようかなーとか思って、ふらりと外へ出たらその足でゼルダ買ってて7時だったのが気が付いたら10時になってた。しかし、アレだな。リンクはカワイイ系のキャラとして攻めてくるつもりなのだろうか。ILog 0.0.1 と、まあ、それはいいとして、specsを…

orz これのコンパイラが http://morihyphen.hp.infoseek.co.jp/prog/orz.txt これ。 で、サンプルの「orzを出力」っていうのをコンパイルしたのが http://morihyphen.hp.infoseek.co.jp/prog/orz.s.txt これ。 あとはspecとかを書けばいいかなー。 今のソー…

動いたー

っぐ。サンプルが200行超えてしまった。 「200行でポータブルな最適化コンパイラが書ける!!」 とかだったらインパクトあると思ったんだけど。300行ではちょっとなぁ…無理すれば200行に収まりそうな気もするんだけど、複雑そうに見えるのも困るしなぁ。

ここまで関数の渡す順番と引き数の受け取る順番が逆になっていることに気付かなかった僕は相当のアホなんじゃないかと思った。 あと、文章でアホって書くと、なんか気持ち悪いなぁ。 なんか潰さないといけないのがどんどん出てくるな…厳しい。 とりあえず、…

よし、あれもできたし、これもできたし、いい感じに進んでますよ。明日早起きできれば、明日の朝リリースもできるかもしれない。ただ、早起きできるかはわからないのと、まだ潰せていない課題がこれからどうなるかわからないので、微妙なところ。 とりあえず…

んん。デバッグ無しで一発で動いてしまうと逆に不安になる…

match文の match ( expr ← これ ) { case 1: hogehoge; case 2: hogehoge; } の名前をなんにしたらいいかわからなくて悩む。 CONDとかでいいのかなぁ…

字句解析

よし、大体できた。と。 var line = 0; var table = [ // 基本は ["パターン" : 値] のペア // マッチしたら next_token関数は // [値:マッチデータ] というペアを返してくる。 ["[a-zA-Z_][0-9a-zA-Z_]+":2], ["=":4], ["\\[":5], ["\\]":6], ["\"[^\"]*\""…

GIMPLE

で、ちょっと息抜きにtree-ssaについて調べてみた。息抜きのつもりが、読んでたら寝てしまったわけだが。 まあ、そんな話はいいか。とにかく、最適化のことはよくわからんのだけど、フロントエンドのAPIが変わっちゃうんじゃないかなー。とそういう感じで調…

今日も早く起きれた。4:35。 けど早起きしても眠いからって15:30から18:00まで寝てたら意味ないような。もはや今日までか。二日坊主。