私はいくつかの言語のClojureを学んでいるとき、構文の可読性と利便性が最も重要な問題です(多分これは間違っています)。
だから、Clojureは私に非常に魅力的ですが、維持するために多くの括弧があるかもしれません。
そして、私はいくつかの括弧を付けずにコードを書いてから、Clojureにコンパイルしてより良いものにするスクリプトがあれば検討しています。そのようなプログラムはこれまで存在していますか?
は(一度それはうれしいです、Schemeのためのインデント構文があると語った。どのようにClojureのでしょうか?)Clojureの括弧を追加するプログラムはありますか?
答えて
通常、あなたはあなたのためのブラケットの世話をするエディタやIDEを使用しています。
"rainbow parens"を持つことは特に便利です。つまり、かっこ内のレベルに合わせるためにカッコが色分けされていて、どのように並んでいるかを素早く確認できます。
いくつかのオプション:
- Eclipse用のプラグインを反時計 - 偉大なあなたはすでにあなたはClojureのJavaコードを混在する場合のEclipseのユーザーである場合。
- Emacs - Lispプログラマーの共通の選択肢です。それは簡潔だの、Clojureのコードは同等のJavaコードより少ない括弧を使用しているため、その一般的な注意
EmacsのためClojureのツールのかなり良いセットは、あります。
括弧に慣れると、実際にはJavaコードより読みやすくなります。読みやすくするために重要なのは、適切なインデントです。まともなIDEがコードブロックのインデントを修正します。
ただし、マクロで目的の操作を行うことができます。たとえば、スレッド化マクロ( - >)または..マクロ。より具体的な目的のために独自のマクロを書くことができます。
ここ例です:
ユーザー=>(STR(INC(整数/のparseInt "10"))) "11"
は ユーザー=>(のように書き換えることができる - >「10 "Integer/parseInt inc str) " 11 "
2ペアの節約! Woot!
元の質問に戻って、特定の状況で少ない括弧であいまいではないコードを書くことができれば、less-parensの構文を実際のClojureに展開するマクロを書くことができます。あなたはあなたが探しているものの例を持っていますか?
- 1. if(); do、セミコロンは括弧の直後にありますか?
- 2. else文の中括弧はありませんか?
- 3. すべての1行ループとIfと括弧を追加
- 4. OSX悪意のあるターミナルコマンド(など、コロン、括弧、中括弧、apersand、)
- 5. カーソルを親括弧に移動するvimコマンドはありますか?
- 6. 中括弧がない場合、プログラムはどうなりますか?
- 7. uncrustifyは二重括弧(C/Objective-C)の間にスペースを追加します
- 8. は+ =演算子(角括弧のための場所で追加)
- 9. stylecop:角括弧内の中括弧
- 10. 中括弧への接尾辞 - 括弧
- 11. Haskell用の完全な括弧はどこにありますか?
- 12. "(BluetoothManager)"の前後にあるこの括弧は何ですか?
- 13. Doctrine - 奇妙な移動括弧がクエリにあります
- 14. 大きなPHPファイルに括弧がありませんか?
- 15. マッチする括弧を数えるJavaプログラム
- 16. 変換または括弧
- 17. PHPネームスペース構文:中括弧と中括弧の違いは何ですか?
- 18. ハスケルの角括弧は何ですか?
- 19. Oracleテーブルの作成に右括弧がありません
- 20. ページにプログラムでコントロールをページに追加する方法はありますか?
- 21. プログラムでSystem.Drawing.Imageにテキストを追加する方法はありますか?
- 22. 起動スクリプトをローカルグループポリシーにプログラムで追加する方法はありますか?
- 23. Visual Studioツールボックスにカスタムコンポーネントをプログラムで追加する方法はありますか。
- 24. Xcodeで括弧をより知的に扱えるようにする方法はありますか?
- 25. swank-clojure replで一致した中括弧
- 26. アセンブリ角括弧は
- 27. マッチするpreg_match()と括弧
- 28. 新しいクラス名の後に角括弧を追加するのはいつですか?
- 29. Oracle SQL - Strange 'ORA-00907右括弧がありません'エラー
- 30. JSDoc @type中括弧は何ですか?