Haskellでコマンドラインをパースする この記事では、optparse-applicativeというライブラリを用いてHaskellでコマンドラインのパースを行う方法を紹介します。 これは、柔軟なオプションの作成が可能でありながら、モジュールの分割が容易かつ型安全、小さいパーサーを組み合わせて大きなパーサーを作っていくのがコンセプトのHaskellらしいライブラリです。 optparse-applicativeのえらい点 ヘルプの自動生成 補完の自動生成 サブコマンドの作成が容易 目次 基本 コマンドライン引数とパーサーの対応付け こんなときどうする? おわりに 基本 optparse-applicativeの基本は、コマンドラインをパースして、コマンドラインを表現する代数的データ型に格納する、というものです。 まずはどのようなコマンドラインを受け付けるか設計して、それを表現する型を作
どうも。最近、Node.jsのCUIツール作りながら、「辛え、Haskellで書きたい、Haskell、Haskell書かしてくれ・・・・・・!」って感じの薬物中毒に陥ってる、弱いHaskellerです。まあ、Haskellに戻ったら戻ったで、辛いって言ってる気がするし、そういう性分なんでしょうね。 ということで、今日はCUIツールの基本、オプションパーサーについて書きたいと思います。 Haskellのオプションパーサ事情 Haskellのオプションパーサーは結構いろいろあります。だいたい、ここに載ってますが、主なものをちょっと紹介しておきましょう。 GetOpt: baseにあるやつ。弱い options: GetOptよりちょっと強いけど弱い optparse-declarative: tanakhさんの作った型レベルのやつ。強いけど、Optionをまとめるのが辛いのと、カスタムパーサ
brick is a Haskell terminal user interface (TUI) programming toolkit. To use it, you write a pure function that describes how your user interface should be drawn based on your current application state and you provide a state transformation function to handle events. brick exposes a declarative API. Unlike most GUI toolkits which require you to write a long and tedious sequence of widget creations
I'm releasing the optparse-generic library which uses Haskell's support for generic programming to auto-generate command-line interfaces for a wide variety of types. For example, suppose that you define a record with two fields:
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く