個人的に再発明ブーム
なので、既にあるインターフェースライブラリをいろいろ作り直しています。今日はGMP, MPFR, MPCインターフェースを再発明しました。ただ私がGMPのインターフェースを作ると毎回毎回演算子が全部揃わないという難点が……。
http://panathenaia.halfmoon.jp/alang/ocaml/#4
元々は、http://ocamlplot.sourceforge.net/#gzにあるzlibとのインターフェースがLGPLということに気付いて、こんにゃろうと思ったのが始まりで。ご存知の通りzlibのライセンスはその名もzlibライセンスという超ゆるゆるのものです。言語間の橋渡しをしているだけの薄いラッパーごときがライセンスきつくするんじゃねえ、というところから始まって、in/out_channelだけでなくstringもバッファーに使いたいぞということは低層のinflate/deflateをO'Camlから使えるようにして(ry……という具合に延々と。
そういうわけですので、前々から置いてある分も含めて、私の作ったインターフェースライブラリは全部、元ライブラリのライセンスとBSDL*1のデュアルライセンスにします。都合のいい方で使ってください。そういうreadme.txtを付け足しました。
zlibの公式配布に含まれてるAdaのパッケージもLすら付かないGPLだったりするので、これもいつか書き直してやりたいのですが、それとは別にC→Adaの完璧なトランスレータを作る野望があって、それができたらzlib.hを変換して終了なので、でも実際にはいつまで経ってもできそうになくて、あうあう。
……こういう作業が目的化してるのはどうにかならないものか。