他の場所で何度も記述されているように(例:1、2、...)、haskellのスクリプトは非常に強力です。
また、簡単な方法はghc expression evaluation modeです。これは私が実際に使っているものです(私は本当にルビーのこの機能が好きです)。
少し例タスク:私は本当に詳細を知らないからでしょう
は「HEADと特定のリビジョン間のgitのdiffを含まれているすべてのフォルダを見つける」スクリプトのためのhaskellの式評価モード
git diff --stat 9e2b68 | ghc -e \
"getContents >>= return.(Data.List.nub).map(fst.break('/'==).head.words).lines"
これは、少し不格好に見えますghc -e
を使用しています。
興味深い部分がちょうどnub.map(fst.break('/'==).head.words).lines
であることを考えれば、実際の表現はちょっと気味悪いようです。
- ghcに使用するモジュールについて教えてもらうにはどのようにすればいいですか?フルネームで修飾する必要はありませんか?
- よく使うモジュールを含む設定ファイルをghcに送ってもらうことができますか?
私は、これらの種類のスクリプトに対して、私が使用する方法を改善するのに役立つ他の用途からいくつかの例を見ることに本当に感謝しています!
Sidenote:Commandline-fooのウィザードはおそらくこれを笑っているだろうが、私はhaskellとbashのスクリプトを使っているほうがずっと快適だと思う。モジュールについて
文字列関数の場合、私は 'interact'という文字列は少し複雑であると感じます:' ghc -e "interact $ String func>" 'これは 'ghc -e 'が$ unlinesと対話することでよく終わります。map( String func>)。" –
Nefrubyr
gitとHaskellの両方のファンとして、 "コマンドラインfoo wizard"の大部分ではない、あなたのgit関連のHaskellスクリプトのリストを掲載するブログ記事は、間違いなく私にとって興味深いものです! – MatrixFrog
@MatrixFrog gitに限らず、あなたにはまだ興味深いかもしれません:[GHC評価モードでのスクリプティング](http://blog.coldflake.com/post/12412650749/scripting-with-ghcs-evaluation-mode) – oliver