HSPでのプログラム開発
西暦から元号へ、元号から西暦などへの変換アプリをWindowsで動作するインタプリタ言語HSP(Hot Soup Processor)で開発中です。10年ほど前に旧バージョンのHSP開発したものをHSP3.2で開発し直しているのですが、最近はプログラムに取り組む時間が以前より減っているせいか、プログラム的思考が追いついていない感じです。
すでに西暦→元号変換は開発済。元号→西暦変換もできているといえばできているのですが、例えばあり得ない値(昭和80年)を入れた時の表示を最適化する処理を行っております。
例で言えば昭和80年は西暦換算で2005年なのですが、実際には昭和80年などありえないわけで…。そこで親切にも2005年が元号で何年なのかを表示する仕様にしたいと思いまして試行錯誤しておりました。
ここしばらく少しずつ開発していたのですが、ちょっと行き詰まった時にふと気づいたこと。それは「あれ?今書いている処理って、西暦→元号変換の処理と同じじゃ?」ということ。そうなんです。同じ処理を難しく考えていただけだったのです。
さっそく西暦→元号変換の処理をちょっと書き直してサブルーチン化し、どこからでも使えるようにしました。そういう発想が大切なのですが、やはりプログラム的思考がダメなようです。