beancount, ledger, hledgetの違い
This content is a draft and will not be included in production builds.
Ledger
Section titled “Ledger”2003年8月にJohn Wiegleyが開発を開始したテキスト管理の会計システムとデータフォーマットの総称。コマンドラインツールは主にC++で記述されているらしい。
ledger vs hledger vs beancount or how to choose the right cli clientで本人が登場して開発時期を表明していた。
Hledger
Section titled “Hledger”Ledger をHaskellで書き直し、構文も拡張した派生物。派生とはいうがデータの互換性はない。
Beancount
Section titled “Beancount”2008年頃、Ledger を参考にMartin BlaisがPythonで実装した会計システムで、そのモチベーションは以下にまとめられている(とても長い)。この人はもともと会計業務に携わっていたらしい。
ledger vs hledger vs beancount or how to choose the right cli clientでは、Martin Blaisが以下のような違いがあると述べている。
- 在庫棚卸資産の相互相殺処理方法
- 原価基準の取り扱い
- 取引のバランス調整ルール
- 通貨換算処理の仕組み(原価ベースではない)
- 勘定科目を5種類のいずれかに限定する制約
- 仮想勘定やバランス調整仕訳のサポートが明示的に欠如している点
- 宣言文の順序依存性が保証されていないこと
- 拡張性を提供する仕組み(独自の言語ではなくPythonを使用)
これらの違いを詳しく書いたドキュメント(とても長い)がA Comparison of Beancount and Ledgerとして公開されている。
使うならこれがいいかなと思うので、Beancountである程度調べたことをまとめる。