コンパイラ

これ以上戦えないことは自分が一番知っているはずだ…

構文エラーについて,近傍のトークンを示すように しなさい. 構文エラーについて,行番号を示すようにしなさい. 変数のポストインクリメント(CやJavaでは x++)を実現 しなさい. repeat-until文を実現しなさい. for文を実現しなさい(どのような構文で…

……ん?

factor -> '(' expr ')' | NUM | ID INC | ID | '-' expr……ん? { int a; a = - 1 + 2 + 3; iprint(a); }-6おいいいいいいい。

コンパイラ構成論はまだ終了してないぜ

いつの間にかShift/Reduce競合を直しなさいの項目が消えていました。また私が困る層の読者が増えていないことを祈ります。 3.変数のポストインクリメント(CやJavaでは x++)を実現 しなさい. 4.repeat-until文を実現しなさい. まず字句解析器の部分に新た…

フゥ!タノシー!

土日を使って計算モデル論のレポートを終わらせ、月曜からフルに愚者る準備万端ですね。みんないつ試験終わるんだろ。日中は外が危険すぎたのでレポートと非想天則をやってました。日も落ちてきたし食事とインクでも買いに行くか…。インクは犠牲になったのだ…

いろいろなんでも

課題スタック 実験レポートのない週の日曜日が課題デーと化しておる。 計算理論 海賊船ゲーム。7/6の最終戦付近でごちゃごちゃするクソゲーになりそうで嫌だ。 コンピュータアーキテクチャ 7/5までの普通の課題と7/10までの設計コンテストとかいうやつ。エッ…

掃除した

親が出張ついでに来るってので3・4限のプロ2(Java)をぶっぱして掃除をしました。残ったのは湯船と机の上(PC)の周りくらいで多分がんばった方だと思います。 風呂を入れる時の注意ポイント ガスの電源を入れる。ミスると水風呂になる。 お湯の蛇口をひねる…

本日の良ゲー

そういえば今日の昼に築3年の耐震調査的な何かがあって留守の場合は管理人立会いのもと行いますとかいう紙が郵便受けに貼られてたけど1限のコンパイラ構成論のため特に何もせず学校に向かいました。 本日の良(辱)ゲー let initTable = function x -> raise…

POCOアセンブラ

アセンブラみたいに文法がものすごく簡単で、しかし手書きだと細かいところがめんどくさくて死ねるものに対してパーザジェネレータはものすごく便利だということがわかった。木構造とか全然してないし、javaccコードの中にガリガリ書いていける。 授業のペー…

POCOコンパイラ(笑)2

こんなものよりも早くアセンブラを作って、起きやすく修正に時間のかかる機械語への変換ミスを防ぐべきだと思う。こんなやっつけコンパイラじゃ定数との加算にイミディエイト命令でなくレジスタに即値ロード→レジスタ同士の加算とかやってアホ。 改善点 java…

POCO用コンパイラ(笑)できたよー

昨日の計算機構成の課題1 演習6-1 0 番地,1 番地,2 番地にそれぞれP,Q,R が格納されている。(Q-P) OR (Q+R) の演算を行い、3 番地に格納するプログラムをPOCO で実行せよ。 で機械語変換をミスって2と合わせて1時間もかかってしまったのでその反省を踏ま…

U20通った

今日(2009/08/24)の12:00ごろメールが来てました。 あ、「U-20プログラミング・コンテスト」のことね。アルゴリズムモノじゃなくてかなり自由なソフトウェア制作のコンテストです。 8月4日〜20日頃 予備審査 8月21日(金)予定 一次審査会(入選作品決定) 8…

Congratulation

2009/08/01 ※諸事情により公開が遅れました おめでとう・・・・・・・・! おめでとう・・・・・・・・! おめでとう・・・・・・・・! U20プログラミングコンテスト投函完了おめでとう・・・・・・・・・・・・! 「Java」「コンパイラ」のプログラミング…

うわああああああああああ

「yappy」でググるとここが7番目に出てくるんですが、ふと1つ下を見ると・・・! Debian -- lenny の python-yappy パッケージに関する詳細 Yappy provides a lexical analyser and a LR parser generator for python applications. It currently builds S…

また1日潰れた

たまには開発中のソフトのスクリーンショットを出してもいいじゃない プログラマだもの

U20プログラミングコンテストが近づいてまいりました

といってもまだサイトが今年の募集に更新もされてないけどね。 非公開のものに限るっていうけどまあ写真だけ。まねするなよ!いや、してもいいぞ! なんか結構なことをしてるはずなのにゲームを作るよりはるかにスイスイ進みます。ほんと、ゲームプログラミ…

今日のハイライト

タイトルで釣ろうとしてもカテゴリが足枷になるっていうね。 今日やったことの要約ではなく、ソースコードのハイライト表示です。 JFlexのユーザーコード部分にprivateフラグ変数を追加して正規表現マッチ時の動作をスイッチして構文解析器用とエディタ用ど…

ゲーム開発から離れてます

こっちが詰まったら帰ることにしようか。 before main(){ return 0xff; } after 48(null) 49(null) 51(null) 52(null) 1(main) 50(null) 53(null) 49(null) 54(null) 58(null) 2(255) Node count: 11 255 ノードの種類に諸々の事情でenumが使えず、定数リス…

適当に放り投げる

もはやどうやって気分転換するかの問題だね。 JFlex+CUPですがCUPコードをyaccハイライトでどうぞ。 理想だけは頭の中で展開されるんだけど字句解析に構文解析に意味解析にやってみると本当大変だなあ。 まあまだ2日しか作業してない気もするけど。 package…

やってしまった

地霊殿Hardクリア・・・。 なんか今回のHardは難しくしすぎたとか書いてあったし私もHardシューターですね・・・。 こういうの書いてもしゃあないと思うけど一応・・・ Easy 紅魔郷 Normal 妖々夢 Hard 永夜抄 Hard 風神録 Hard 地霊殿 Hard 書いてみたらど…

メッセンジャー用電卓スクリプト2

電卓ってさあ・・・ コンパイラでいうHello, World!だよね・・・。 ほんと何やってんだろ・・・。 caper http://naoyuki.hirayama.googlepages.com/caper.html っていうJavaScriptコードも吐けるLALR(1)パーザジェネレータも見つけたしこれ使ってもいいんじ…

メッセンジャー用Brainf*ckインタプリタ

やってしまった・・・。 無限ループコード送って攻撃できる気がしたのでとりあえずリミットを設定。 例の8種類の文字が8文字以上ならBFプログラムとみなして実行します。 こっそりid:javascripter:20090103を参考にしてしまった。 Errorクラス?クラスって…

メッセンジャー用電卓スクリプト

メッセンジャーでの会話で計算ができます。 http://homepage2.nifty.com/magicant/sjavascript/mt.html ここのメルセンヌツイスタ乱数ライブラリを同じフォルダに置いてください。 使い方 自分と相手どちらからも使えます。 一番初めに=(イコール)、続けて式…

今日は図書館の日

夏休みの宿題:中国語の映画を見て感想文 をやるために学校の図書館に行った。 結局最初に行ったのはいきつけのコーナー。 適当に見てRubyの本が少ないな・・・と Rubyを256倍使うための本 無道編 これを手にとってしまいました。 そのとき私はRubyを勉強す…

javacc入門

今日はちょっとコンパイラな気分なのでjavaccをいじりました。 パーザジェネレータはjavaccしか使ったことがありません。 なんか日本語の情報が少ないです。yaccに押されてます。 Eclipseのプラグインはあまり入れないのですが、それもあんまりよくないかな…