kitlibをSML/NJとSML#に移植

kitlibというSMLライブラリをSML/NJSML#に移植しました*1。 #全く誰も嬉しくないと思いますが(^^;;


kitlibはMLKitという処理系を実装されているElsman先生が作っているSMLライブラリ集です。
元々はMLKitのソースコードと一緒に配布されていましたがライブラリとして切り出したようですね。*2


移植と言っても処理系依存の箇所はほとんど無いので、実際はMakefile(と.cmと.smi)を書いたくらいです。
ライブラリに含まれる機能としては 正規表現、Pickle(シリアライズ/デシリアライズ)、Map(コンテナ)等、ありがちな内容なのでsmlnj-libや他のライブラリが使えるならそちらを使えばいいと思いますが、この手の小回りの効くライブラリはいくつか選択肢にあると安心かも知れません。

注意

SML/NJとSML#はそれぞれ別の個所でpickle(バイナリシリアライザ)のテストに失敗する個所があるのでどれかの処理系が怪しいかも知れません。
あんまり突き詰めたくないのですが、やる気が出たら原因究明しようと思います。

*1:pull requestがスルーされているようなのでもう紹介しちゃいます

*2:他のSMLプロジェクトをガリガリ書いているようなのでそのためでしょう