携帯アプリ
久しぶりに五回目をやります。ようやく思いどおりのコードになってきたので続きが書けます。 push命令から全部VMに実装するのは無謀だと考えて大きい粒度で処理することにしました。 対象がiアプリ(doja)なのでクラスローダはおろかリフレクションすら使えま…
四回目です。 前にも一度Lisp実装もどきをつくろうとしたことはあったのですが、 ((Cell)((Cell)args.cdr).cdr) .... と引数を見るためにcdrをどんどんキャストしていく単純作業に耐えかねて挫折してしまいました。 それに実行時に型チェックで時間を取られ…
今回はコードはありません。 ifなどの「構文」を追加しようとしていろいろ調べ物をしていたら考えが収束しなくなってしまいました。 まとまったコードは次回に掲載する予定です。 それとPairのcdrをいちいちキャストするのが面倒で精神衛生上良くないのもな…
動機については前回を参照ください。 今回はとりあえず足し算ができるように、ペア・シンボル・整数・手続きを表すクラスを作成します。 ペアを作る Eclipseのdojaプラグインでテンプレクラスを作成してからPairクラスを作成しておきます。 ペア(Pair)にはca…
動機 独自言語を作ってウェブを変えようなどと企んでいるこの頃ですが、そもそも言語開発とはどのようなものか知らない状態でいきなり挑むのは難しいと思い、習作としてドコモの携帯電話で動作する簡易Scheme処理系の開発に挑戦することにしました。 資料 ア…
msgpack.java package msgpack; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.Enumeration; import java.util.Hashtable; /** * MessagePack Packer/Unpacker * */ public class Msgpack { publ…
前作ったのを晒しておきます jakarta-regexpを軽量化して携帯Java用に移植。基本機能は大体一緒です。 夢にまで見た(誇大表現) split()とかgrep()とかreplace()とか夢ひろがりんぐ... zipファイル中の/org/フォルダあたりをソースフォルダに突っ込んでおけば…