WAF, フレームワークが実装を持つことの意義、それが共有されることの意義ももちろんあると思っていて、たとえばセキュリティ対策、バッドノウハウ、そういったものについては実装ごと共有される意義があると思う。

ところで少なくない「実装」を持つフレームワークは、オープンソースで公開のもとに開発されなければいけないと思う。いろんな人に使われることで実装の色付けがどんどん薄まっていくことが期待される。

Rails は強い思想があって、それがもはやひとつの仮想言語、コミュニケーションのプロトコルのひとつにさえなりうるものである、というところがすごいと思うし、ある意味でフレームワークの極地だと思う。Rails の好きなところはそういう強い思想があるところで、嫌いなところは大きな実装があることだ。

実装という点で見たとき理想的なフレームワークに近いのはやはり Sinatra のほうだと思う。これでもけっこう大きい、と思うけれど *1

でも Sinatra は小さくも十分に拡張できる仕組みを持っていて、エコシステムもそれなりにできあがっている。Sinatra Extension と Rack middleware の組み合わせで、かなり不自由なく実装を共有できる。

*1:主に DSL が付属するところ