2008-08-01から1ヶ月間の記事一覧

proce55ing PApplet(1)

processing.core.PApplet を粗く読む。 Applet のサブクラス、Runnable, MouseListener, MouseMotionListener, KeyListener, FocusListener を implement draw() は handleDraw() の中で呼び出される。draw() 自体は空で、サブクラスで記述するようになって…

jython & JavaBeans

本を整理してたら "PYTHON PROGRAMMMING with the Java Class Libraries" という Jython 本が出てきた。おお、まさに今の自分にぴったり。 で、 LL future の帰りに試そうと思っていたこと。 そもそも Jython はどうやって JButton(actionPerformed=my_actio…

LL future 帰宅

結局午後の一部しか参加できず。無念。 若者は元気。自分も10年前にいろいろ興味持ってればなあ。いやまだまだ、老け込む訳にもいかない。ともかくも刺激を受けた。自分はなにができるだろうか? しゃべり慣れていてキャラの立っている方多し。特にコード…

proce55ing + jython(3)

現在の状態。もう少し整理がいるが、とりあえずの役には立つ、processing の対話的開発環境。 emacs から jython を起動し、 import xx で Sketch 相当の jython コードをロード。 以下のように対話的に pa (PApplet のサブクラス) のインスタンスを生成。dr…

構文解析について

「言語はもっと自然に、簡潔に記述できるべきなんだ、そのために構文解析は精密でなくてはならないんだ」 「僕達が、ほんの少しだけコンピューターに歩み寄って、構文木を直接書き下せばすむことじゃないか」

"ANTLRWorksを使ってみる"

http://www.pwv.co.jp/~take/TakeWiki/index.php?antlr%2FANTLRWorksを使ってみる GUI で構文木のチェック/可視化できていてかっこいい。商用?

"Using Antlr for Python"

http://jbailey.livejournal.com/54678.html ANTLR を apt-get でインストール(2.7.4)、したものの動作せず。"panic: Cannot instantiate code-generator: antlr.PythonCodeGenerator" だと。jar ファイルを開いてみると、なぜかこのクラスがそもそも含まれ…

emacs python-mode

行いたいことは emacs で対話的に proce55ing を使うこと。jython でかなり実現できそうということが分かっている。 しかし、emacs 22.1.1 付属の python.el が自分の環境(mac os x)で上手く動作していない。 *Python* バッファに 'emacs' というモジュール…

emacs python-mode(2)

解決。jython は registry なるファイルに PYTHONPATH 環境変数相当を記入する。ここに /usr/local/share/emacs/22.1/etc (ここに emacs.py があるので)を追加しておくと、無事 M-x run-python で jython が起動する。

proce55ing + jython(2)

JFrame(or Frame) に PApplet を貼付けて動作させる。 対話的に開発できる、と期待したが、PApplet のサブクラスを再定義して jython で reload (python 関数)しても既にインスタンスとなっている場合は反映されない(様子)(TODO java/jython におけるクラ…

proce55ing + jython

以下より。 http://blog.kzfmix.com/entry/1206881034 http://www.backspaces.net/hacks/30/processing-with-jython http://itp.nyu.edu/blogs/drawingmachines/2008/02/10/jythonprocessing-fun/ クラスパスと、PApplet を JFrame などのコンテナに貼付ける…

SBCL - Proce55ing ソケット通信

単なるテストとして、Proce55ing で processing.net.* ライブラリーを使い、 sbcl の sb-bsd-sockets パッケージを使って通信してみた。(あとで書く)Processing がライブラリとしてソケット通信をサポートしているのはとてもいい。しかし、この仕組みでは…

Proce55ing S-expression

Preferences.java を眺めたりしている。とりあえず多少遅いとはいえ emacs で作業できているからまあいいかなぁ。 目標としては以下のような感じでS式ベースでP5 を記述したい。S式にこだわっている、というより、Proce55ing の PApplet クラスと各種プラッ…

ポスドク問題

http://www.mumumu.org/~viking/blog-wp/?p=1926 、http://www.reddit.com/r/ja 経由で。 ポスドクですらなく、むしろ大学院に行き直そうなどと考えているのでいろいろ考えさせられる。

「不確実性のマネジメント」。http://mtmexp.blogspot.com/2008/08/blog-post_14.html (まずは溶かして混ぜてみよう)で知った。まだ途中だが、平易で読みやすい。創薬ってのは化学、生物学、医学、薬学、計算機科学、経済学、その他もろもろの集合体だ。楽し…

LL future

http://ll.jus.or.jp/2008/ 忘れてたけど先日ローソンでチケットが買えたので、おっさんながら参加。仕事が空けば。Light Weight Language だけを愛しているわけじゃないけど。 この種の話題に飢えているので、とても楽しみにしている。

Mac Java Application?

今気付いたが、Processing pde のコンパイラー(抜き出しただけ)を実行すると、なぜかアプリケーションのメニューが一瞬、アップルメニューに表示される。GUI は無いのでメニューだけ出て、アプリケーションが終了すると消える。Mac OS X 上で作成した普通…

Processing(proce55ing) .pde ファイルをコマンドラインからコンパイル/アプリケーションを作成する

http://d.hatena.ne.jp/tokobayashi/20080527 (tokobayashiの日記)に昨日半日で自分で調べたこと、が既にまとまっている。P5 syntax というのか。 http://labs.uechoco.com/blog/2008/03/processingpdejava.html(うえちょこ@ぼろぐ) このページも詳しい。 …

ANTLR

パーサー生成器。java.g, pde.g が ANTLR 用の定義ファイルらしい。不勉強で ANTLR については何も知らなかったが、 emacs の major mode や eclipse プラグインなど、普通に有名なものらしい。p5 syntax を完全に理解するにはこれが必要か。 なかなか面白そ…

Processing .pde 一日ハック(10)

問題。Processing をちゃんとインストールすると、preferences.txt なる自動生成されるファイルがあるのだが、Eclipse から実行するとこのファイルが見えないので、 Compiler などが動作できない。Preferences.init() がエラーとなってしまう。 適当に Base …

Processing .pde 一日ハック(9)

少しテンションが落ちてきた。もはや、Sketch クラスが p5 のフォルダーとそれ以下の .pde ファイルをまとめたものであることが分かってしまっているので、あとは割と単純な作業になってしまう、ということが読めてきたからでもある。 削りながらコンパイラ…

Processing .pde 一日ハック(8)

1時間くらい寝てしまっていたようだ。ぐぅ、なんか気持ち悪い。 方針。Compiler クラスが必要としているのは Sketch のメソッドのごく一部、よって(後付けでケチをつけるなら)Java のインターフェースが抽出されているべきだ。Compiler のほとんどコピー…

Processing .pde 一日ハック(7)

問題点。Sketch クラスが Editor クラスとくっついてしまっていること。Compiler クラスのコンパイルメソッドは Sketch クラスしかうけつけないこと。幾つか手はあるがどれも単に面倒そう。奇麗というか凡庸というか、思いついたのは、Sketch クラスの親クラ…

Processing .pde 一日ハック(6)

今なにができたか、を考えた。Eclipse 上で、pure java としての p5 アプリケーションが作れること、が分かった。Java が普通に使えて Eclipse に不満の無い人、であれば、 core.jar を「よくできた可視化用の基底クラス」として使えるわけだ。用途にもよる…

Processing .pde 一日ハック(5)

Eclipse で java プロジェクトを作り、参照する jar ファイルを指定。まずはcode.jarだけでいいとおもうが、とりあえず全部(antlr.jar, core.jar, ecl.jar, jna.jar, pde.jar) をさっきビルドした Processing のディレクトリ以下のものを指定。 そのうえで、…

Processing .pde 一日ハック(4)

環境構築。svn でソースは入手していたので今更だがビルド。 http://processing.org/hacks/doku.php?id=hacks:compiling を参照。Mac OS X の場合もまったく同じ。run.sh 経由で起動を確認。 Processing.app を直接ダブルクリックした場合起動しなかったが、…

Processing .pde 一日ハック(3)

core/PApplet.java - Applet を継承した全てのスケッチの親クラス。重要なクラスだが今回はあまり気にしなくてもよい、と思う。 app/preproc/PdePreprocessor.java プリプロセッサ。p5 language がほとんど Java と同じとはいえ、ANTLRなるパーサージェネレ…

Processing .pde 一日ハック(2)

P5 は .pde をアプリケーションとしてエクスポートすることができる。 MacOS X の場合、ちゃんと .app を生成する。実体は .pde に相当する .jar と、Processing のランタイム相当(たぶん)となる core.jar。 この際 .java も同時に作成される。中身をはじ…

Processing .pde 一日ハック(1)

夏休み(嘘。明日も仕事だ)なので、一日でできるだけ、 Processing をハックしてみる。11時ころ開始。 Processing は Java 言語に似た簡易言語(p5 language)を記述し、簡単に可視化ができる。内部では、 p5 language を Java 言語に変換し、 ECJ によって J…

Processing .pde 一日ハック(11)

食事をしたのでちょっと時間切れ。 コンパイル後、Processing では Runner クラスというのを使って実行する。が、このクラスも、インスタンス化に Editor クラスを必要とするのだった。 SketchBase クラスに exportApplication を移植。結局 Sketch からかな…