shiratori
少し早いですが先に抜けます。「コンピュータシステムの理論と実装」10章の構文解析器をmegaparsecで作ってみようと思い、ドキュメントやチュートリアルを読みました
cabal --version
の出力をパースする処理のテストを通せました。次は取得した cabal --version
の出力に基づき処理を分岐するところです。cabal --version
の出力からcabal-installのバージョンを調べる処理を実装中ですNetWork.HTTP.Client.Manager -> PackageString -> Maybe VersionString -> [(FlagNameString, Bool)] -> IO PackageDescription
と genSourceWithExposedImports :: [PackageDescription] -> Data.Text.Lazy.Text
は書けました.あとは cabal install
の自動生成と, LICENSE
を自動で抜き出してくるコードを書く必要がありますね.Vector.Unboxed.modify
で immutable な Union-Find 木を作ってみますmodify
は TLE になりました。また Unbox
を vector-th-unbox
で実装すると、既存の Union-Find が約 2.5 倍高速になりました。