この7/30で、ADPを
Sourceforge.jpさんで公開して1周年になります。本来なら大々的なパーティでもするところですが、残念ながらそこまで流行っていませんが、それでも感慨深いものがありますので、このブログで1周年記念特集でもやってみます。
(もっともこういうふうに、こそっとやっている時が一番楽しいところかもしれません。)
先ずは、この1年間の活動を総括してみます。
ダウンロード件数250件
残念ながらあまり多くないです(他の自作のソフトの方がもっとダウンロードされてたりします)。もっとも最近では、固定客がついたのか、リリースの度に数十件のダウンロードがあり、4月以降のダウンロード件数が150件となっています。
ADPですがまだ開発版なので、ガチであまり使って欲しく無い面もあり、とはいっても流行らせたい思いもあり、といったジレンマを感じるわけですが、Ver 1.0までは開発優先で行こうということでこのまましばらく様子をみます。
バージョン:0.5 → 0.73
この1年でバージョンが0.23増えましたので、このペースで行けば来年の年末にはVer 1.0が出そうです。もっとも途中でスキップ(0.5 → 0.55、0.62 → 0.69)していますので単純には比較できませんが。
この1年で、内部のアーキテクチャーにも手を入れました。特にインタプリタ本体の構造が変わりました。
Ver0.5ではグローバル変数に実行環境のスタックを持っていましたが、途中のバージョン(忘れた・・・Ver0.6付近)からは、スタックを、実行状態を保持するオブジェクトで持つように変更しました。
また、Ver0.69でライブラリを整理し大分洗練されてきたかと思います。
キャッシュ機能の実装、DB関係の充実
機能の実装ですが、大きなところではキャッシュ機能の実装があります。細かなところではDB関係の機能の充実、JSONの対応などがあります。最近では他社からの請負仕事以外はなるべくADPで作成するようにしており、他のプロジェクトのモックアップをADPで作成したりして、この1年で少しは鍛えられたかと思います。
マニュアルがそこそこ充実してきました
マニュアルが大分充実してきました。リファレンスマニュアルで一部抜けているところがありますが、そこはまだ仕様が変わる可能性があるのでそのままにしています(またはサボっている)。
マニュアルは英語版が欲しいところですが、現在のところ日本語版のみです。
Sourceforgeさんについて
当初はダウンロードのみということで使っていましたが、最近ではチケットシステムやSVNのリポジトリもSourceforgeさんのものをメインで使うようになりました。
ちなみに、
2011年上半期までの活発なプロジェクトにADPがランクインしました!
その他
LL Eventさんの方で実行委員を募集していましたので、応募してみましたところみごとにとおりました。
今年は、8/20に行われますが、Lightning Talkにも発表者として参加いたします。
80%の出来のADPを発表するのもどうかと思ったのですが、LL Eventに出るというのは目標だったので、早くも達成できたのでよかったです。
ということで次の記事は『次の1年間の目標』を書いてみます。
0.72に続きまして、WEBの表示系でまだ不具合が残っていましたので、再度の
リリースです。
AWPモード(WEBページの標準的な出力モード)で、改行をBRタグに変換していますが、0.72で pre タグ内では、BRタグに変換しないように改修を行ったのですが、その他にも色々ルールを加えた方がよろしいということで、0.73では以下のようになっています。
□AWPモード時で、BRタグに変換しない改行コード
・preタグ内(0.72から)
・tableタグ内でかつ th、td、captionタグ内でない場合
・ul、olタグ内でかつ li タグ内でない場合
・タグの終了直後の改行
Wordpressもそうですが、WEBのアプリを作っていて改行コードをBRタグに変換する処理を加えたくなりますが、結構悩ましかったりします。なので思い切ってそういうことはしないという方針もあるかと思いますが、いい感じで改行コードをBRタグに変換してくれるとそれはそれでありがたかったりしますのであえて挑戦したりしてます(まぁ記事を直すのが面倒というのもあるのですが・・・)。
前回のリリースから3週間ですが、Ver0.71のリリースです。
引き続きドキュメント執筆時に見つかった仕様の矛盾点の修正と幾つかの述語の追加を行っております。
■変更履歴
select述語の変更(ドキュメントに反映)
item述語の仕様変更(ドキュメントに反映)
述語の追加
raise json _json rearray ctimestr
整数型のサイズを32ビットから64ビットへ変更
加算演算子(+,+=)の文字列対応
また、
だじゃれくらうどのプロジェクトでモックアップをADPで作成しましたが、そのときのフィードバックも反映させています。
実際にADPを実用言語のレベルまで引き上げる為、色々なプログラムをADPで作成しています。まだまだ追加・修正等が発生しますが、なかなかよい言語になったかと思っています(自画自賛)。
だじゃれくらうど関連の成果は機会があれば発表したいですが、一部披露させていただきますと、ツイッターのハッシュタグを検索するというのがありまして、以下サンプルになります。
ソース(twearch.p)
+hserver('search.twitter.com');
+url_base('/search.json');
+prt_tweet($rec)
,$item == $rec['results'].each
,prtn( $item['created_at'], ',', $item['from_user'], ':', =futf8($item['text']))
,next;
+check($n), $n <> NIL, !;
+check($n), exit(0), !; # 終了
,$url = url_base + '?rpp=100&q=' + =arg(0).urlencode
,counter(1, 1, 15, $c)
,html( =hserver, 80, $url, "GET", $, $, $, $, $data)
,$rec == $data._json
,prt_tweet($rec)
,check($rec['next_page'])
,$url = url_base + $rec['next_page']
,sleep(1000)
,next
実行例(Windows)
以下の例のように、コマンドライン引数の -A 以降に検索するハッシュタグを指定します。
D:>adp twsearch.p -A dajare
Mon, 30 May 2011 13:19:31 +0000,teatime_avenue:足の血行が結構悪い。 #dajare
…いまいち。
Mon, 30 May 2011 13:19:15 +0000,Tomonobu1979:RT @mc1242: そうそう!先週金曜から
#dajare をつけてくれたダジャレは、ダジャレクラウド http://dajare1242.appspot.com
/wall.html が動いてまして、永遠に記録されます! QT @_gukkii: #mc1242 みんなでだ
じゃれを考えましょう!
・
・
ちなみに0.71のリリース直後に、バグが見つかったので、入れ替えております。
adpを引数なしで動かしたときのバージョン番号が 0.71.0082 のものはバグがあります(↑のコードを実行するとエラー終了します)。
0.71.0083 のものがバグフィックス版になります。
リリース後3時間で、そうダウンロードする人も多くないので、リリースのアップデートで対応しています。