Java

台パンツール

伝統の徹夜対戦で使ったらうまく動いていたようなので、GitHubの練習も兼ねて公開してみる。というか公開も兼ねてGitHubを練習してみる。EclipseにEGitとかいうプラグインを入れてみたけど、ちょっと操作がおぼつかない…。 https://github.com/yappy/DaipanT…

JNA

Javaを使って悪いことをしようとするとどうしても必要になるのがJNI(Java Native Interface)。JavaからC/C++コードを呼び出す手順は次のようになります。 あるクラスに修飾子nativeをつけたメソッドを宣言 そのソースをjavahツールに食わせる C/C++用ヘッダ…

却下された本たち

JNI:Java Native Interfaceプログラミング―C/C++コードを用いたJavaアプリケーション開発 (Java books)作者: ロブゴードン,Rob Gordon,林秀幸出版社/メーカー: ピアソン・エデュケーション発売日: 1998/10メディア: 単行本購入: 8人 クリック: 140回この商品…

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

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

入出力API

結局java.ioパッケージもやることになってしまいました。残当。 基本となる抽象クラスはこの4つです。 public abstract class InputStream public abstract class OutputStream public abstract class Reader public abstract class Writer InputStreamとOu…

入出力API

結局java.ioもやることになってしまいました。

コレクションAPI:Listインタフェース

なんか「コレクションフレームワーク」でググれば全て解決するような気がしてきたが、まあちまちまやっていきます。基本的にここに書くことはレベルを抑えているというか、本気を出して書いて的外れなことを書くのが怖いのです。 このコレクションフレームワ…

Java補足

この前のプロ2補足が無駄に評判が良かった気がしたので調子こいて適当になんか書こうと思いました。多分Javaの文法がまあまあ分かったくらい向け。主要APIの学習はなんというかソースリーディングの効果があるというか、インタフェース的なオブジェクト指向…

プログラミング第2補足

シーザー暗号のバグでクソ萎えしたので補足を書きます。授業はJava1.4で進めていることを断っておきます。 public class Point2 { private int x, y; public boolean equals(Point2 o) { // 埋めろ } } toStringとequalsをオーバーライドしろとありますが、O…

掃除した

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

数作り

学籍番号の末尾4個の数字を,順序を変えずに使用する 演算記号は,四則演算(+, -, *, /) と括弧のみを使用する 除算は最終的に,割り切れなければならない 0〜20の整数作成を目指す 例 0 = 201 * 0 1 = 2 - 01 + 0 2 = 20 / 10 3 = 2 + 01 + 0 8 = -2 + 010 …

いろいろ書きなぐり

なんか思いつくだけ全部書きます。日付的にも幅が…。 非想天則 ついにsyさんが霊夢の星7一撃コンボを決めてくれました。 2Cクラッシュ>夢想天生>AAA>B>9hjc>J2B>3hs>JA>AAA霊夢wikiによるとこれのようですね。2Cジャストクラッシュではなく天子の天道ガード…

POCOアセンブラ

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

POCOコンパイラ(笑)2

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

U20通った

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

Congratulation

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

直前期にそういうことするから

EclipseMEからEclipse本家に統合されたMTJに移行→publicでないクラスに対応してない+$を内部クラスとして処理 例:Test.javaからはTest.classとTest$*.classができると勝手に解釈 になってたせいでCUPの吐くpackage privateでしかもクラス名に$が入ってる気…

SS放出

これとKDVのゲームと試験の3つがあっても全てこなさなければならないのが我が宿命。言い換えるとプログラミングが好きなだけ。 写っているソース(Cもどき) msort(x, a, b){ var c, ret, y1, y2, i1, i2; var p, select; if(a == b) return [ x[a] ]; c = (a…

東の方ダウンローダ

最初から通して読みたいときに操作が面倒ですよね。それにネットにつながらない時に東の方が読みたくなったらどうしましょう。ファイルが連番になっている以上プログラムでダウンロードしてゆっくり読みましょう。イメージビューアなどで←→キーで快適に読め…

また1日潰れた

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

エミュレータのバグ

KDVの仲間たちと遅くまでネットで麻雀してしまった オレの四暗刻単騎を返せ ・・・なんでそれで6時に起きてるんだって? いろいろあるんだよ。 KeyPressedイベントで画面を切り替える→元の画面に戻す→そのキーのKeyRepeatedイベントが連続発生→誤動作 (※Pr…

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

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

プログラミング展望

たまにはまじめなことも書くよ。 いや、いつもまじめに書いてるよ。多分。 プログラマにもアルゴリズム学者にも読んでほしい。 Java並行処理プログラミング ―その「基盤」と「最新API」を究める―作者: Brian Goetz,Joshua Bloch,Doug Lea出版社/メーカー: ソ…

今日のハイライト

タイトルで釣ろうとしてもカテゴリが足枷になるっていうね。 今日やったことの要約ではなく、ソースコードのハイライト表示です。 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 書いてみたらど…

SICPの導き

ゲームのシーンクラスを何度も書き直してます。 ああするとあれができない、こうすると公開しすぎ、だとかで一向に進みません。 抽象化はすればするほどいいと思っていた時期があったのかもしれません。 息抜きに(?)なんとなく開いたSICPのしおりが挟んであ…

Java+Eclipse+Ant+Subversion

id:atmonadくんのサーバーがダウンしたそうです。 いいえ、間違えて電源を引っこ抜いてしまったそうです。 SVNサーバとしての機能が停止しています。 まあ今のところ1人でやってるから平気なんだけどね!! EffectiveJava さすがEffective。特にJava5で追加…

これができたら一人前

Eclipseのデバッガで作業をしていたら突然 FATAL ERROR in native method: JDWP Can't allocate jvmti memory, jvmtiError=JVMTI_ERROR_INVALID_ENVIRONMENT(116) JDWP exit error JVMTI_ERROR_WRONG_PHASE(112): on getting class status [../../../src/sha…