Ypsilonのバグフィックス版をリリースしました。皆様のご協力のおかげで思ったより早く安定してきたと思います。コメントやバグレポートをお送り頂いた方々に感謝いたしております m(_ _)m
こういったソフトウエアのデバッグは一人では難しいものです。なぜならテスト用のプログラムが偏ったものになるからです。これはプログラマーがそれぞれ自分のコーディングスタイルを持っていることに起因します。「こんな使い方あったのか〜」という発見があり、そしてその中にバグが潜んでいることもしばしばです
最近そんな例に関連する投稿がcomp.lang.schemeにありました。
(define (((f x) y) z) (+ x y z))
というプログラムはR6RS Schemeではエラーにしなければなりません。でも、これが使えると便利そうなんだけど・・・ そういう場合R6RSでは下記のようにポータブルに実現することができます。
(library (define+)
(export (rename (define+ define)))
(import (rnrs))
(define-syntax define+
(syntax-rules ()
((_ (f . args) . body)
(define+ f (lambda args . body)))
((_ var val)
(define var val)))))
(import (define+))
(define (((f x) y) z) (+ x y z))
(define g ((f 1) 2))
(g 3) ;=> 6
でも、私は自分のプログラムではこういう書き方はしません・・・で、この使い方にはバグが潜んでいたわけですね(汗
もしも私が一人でデバッグしていたら、これって何時まで潜んでいたことやら
はじめてコメントさせていただきます。その昔、「クリスタルカリバーン」がフロッピーベースで発売された時に購入し、楽しく遊んだのを懐かしく思い出します。
急きょこのページ訪問を思い立ったのは、iPhone 購入がきっかけです。App Store で色々なソフトをダウンロードしているうちに、ピンボールゲームを見つけました。
「そういえば、昔気に入っていたあのピンボールゲームの…リトルウィング社は?
と思って検索してきてみたわけです。早速、懐かしの「クリスタルカリバーン」と「ルーニーラビリンス」をダウンロードさせていただきました。
つきましては、iPhone / iPod touch 用のアプリケーションとしてピンボールゲームを開発or移植する予定はありませんか?懐かしの名作を持ち歩きたいものです。
naoyさんコメントありがとうございます。iPhoneすごい売れ行きですね。富山でも長い列が出来ていたみたいです。
クリスタルカリバーンもルーニーラビリンスも今だに皆さんに楽しんでいただけていて、本当に開発者冥利につきます。
iphone/iPod touch版のピンボールは機会があったらリリースしたいです。今はいろいろ新プロジェクトがあり自社で開発は難しいですが、iphoneのアプリケーションを開発している会社からオファーがこないかな〜。
これからもどうぞよろしくお願いします。また遊びに来て下さいね。
-Reiko