Typing Ruby

http://truby.sourceforge.jp/cgi-bin/hiki/hiki.cgi基本的な方針として,今後はWikiのほうにいろいろ書くようにします.英語用のWikiも欲しいが,まず自分がフォローできるのかが問題.でもまあこれはなるようになるとも思う.次に,英語用と日本語用でWiki…

down cast続き

down castであってたっけ・・・Typing Rubyで手も足も出ないのは,Rubyにおいて型付けが全く動的であり,down castが,ソースコードから検出できないことに起因する.逆に言えばdown castさえ検出できれば良いわけで,例えば次のようにしてユーザーサイドで…

限界

図形編集アプリケーションを作っていて, class IShape ... end class Polygon < IShape ... end class Line < IShape ... end class ShapeList ... endみたいな,図形を表現するクラス群があったとする.Lineは始点と終点の座標を保持する.Polygonは各頂点…

r81

上手く動くようになった.次はクラス定義の対応とかか.

r79

とりあえずmake releaseして実行ファイルが完成して,なんとなくチェックできるところまで実装.まだクラス定義も実装していないし,そもそも制約の検証にバグがあるけど,ほんの少しだけ遊べます.[samples/ex01-ok.rb] 1.to_s()当然OK.[samples/ex02-ng.r…

うがー

停止するための条件がわかんねーーー落ち着いて考えよう.

Type inference in Ruby

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/125594昨日か.うっかり見落としてた.ruby-listへの誤爆が無かったら,気付かないところだったよ.ruby-talkになんかpostすべきか. Type inference in Smalltalk-like languages has been st…

r77

docディレクトリに,アルゴリズムの概要を書いたテキストを追加 ほんとに概要だけあらあらと書いた.最低限の説明しかない.でも,用語の定義くらいきちんと書くべきだったか・・・あと一月で論文も書かないといけないので,その後,論文からコピペしてきち…

r76

制約の検証を多少実装 Ti.solve Cstrs.remove_transitives {t1 < t2, t2 < t3} => {t1 < t3}みたいな計算ができるようになった.t1 < t3を,Subtype.testを利用して処理するようTi.solveをプログラムすれば,動くようになるはず.それなりにTDDでやっている…

r73

再帰的でないSubtypeのチェックを少しだけ実装 エラーになるケースのテストが書いてない Makefileにsubst.mliを書くのを忘れてた Webページを多少修正 英語文を修正 日本語文を修正 SF.JPのプロジェクトWebページへのリンクを追加

罠がいっぱい

面倒なようでも一つずつテストを書いてバグを潰してゆくことが,全体的な効率の向上につながると痛感した. もう少し.

ocamldoc

そろそろ各モジュールが公開している関数を覚えきれなくなってきた.ocamldocでも使ってみようか.

Webページ

プログラミングに飽きて,Webページをごそごそ作る.いろんなWebページのスタイルシートを,切って貼ってして,それらしくなってきたような気がする.英語がshakaなので一度某に,見てもらうことにしたい.

標準ライブラリの型

視点を変えれば,別にコンピュータでDBを作らなくても,人数がいれば人手でやってもいいとも言える.例えば,wikiかなんかで手伝ってくれる人を探す,というのもありかなと.まあそれはものができてからの話.とりあえずは,主立ったクラスの主立ったメソッ…

"worse is butter"

今実装しているアルゴリズムに大きな問題が見つからなければ,今週末くらいに一度リリースしたいと考えています.ところで,どっかにRubyの標準ライブラリのタイプが書いてあるリファレンスみたいのってありませんかね? Integer < Object { + : Numeric -> …

Duck Type

Duck Typeってどういう意味なのか,なんとなくしかわからなかったので調べてみた.ちなみに,なんとなくというのは,VBのVariant型みたいのかな?という程度の理解である.http://brandish.xrea.jp/nucleus/index.php?itemid=184&catid=16によると,Ruby発祥…