こんにちは: Java では、IDE を使用して複雑なデータ型の深さを「トラバース」した経験があります。
dog.getCollar().getCollarTag().getName();
ただし、Clojure では、静的型付けがないため、これは自明ではなくなります。ネストされたデータ構造から発生する可能性のある複合体に対して、どのように「防御」または Clojure を行うのでしょうか?
1) clojure データ構造の深さに対する推奨される「制限」は?
と
2) 非常に深くネストされたデータ構造を処理するための一般的なイディオム。これにより、リストをマップと間違えたり、変数名の大文字/小文字を正しく区別できないなどのエラーが防止されます。
ここで少しパラダイムから外れているように聞こえたら許してください... REPLで継続的にテストすることで、そのようなエラーが効率的に抑制される場合があります..しかし、確認するための他の方法があるかどうか疑問に思っていました.コンパイル時、そのコードは可能な限り正確です (つまり、単体テスト、IDE / emacs プラグインなど...)