clara-rulesというライブラリがにわかに自分の中で話題になっていたのでさっとまとめてみた。 概要・特徴 ルールエンジンの実装を提供するライブラリ ドメインの知識をコードから分離する clj/cljs両方で利用できる Javaからも自然に利用できる 作者本人による講演のビデオもある [1] [2] より最近の講演のビデオもある ルール?エンジン? エキスパートシステムに出自がある プログラマーが足り無い状況で、ビジネスユーザーがプログラマーを介することなく問題を解決できることが魅力で一時期流行ったが限界があった clara-rulesは現実的にどのようなルールでもコードであるという視点で、ビジネスユーザーではなくプログラマーをターゲットにしている 解決できること 何かロジックがあったとして、関数の呼び出しとして表現すると、そのロジックが必要とする情報を渡す/受けとることを明示的に書く
![clara-rulesの世界(1) - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/2f6ab0e2e11a0430356838e8dcc4d94e8996bde1/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9Y2xhcmEtcnVsZXMlRTMlODElQUUlRTQlQjglOTYlRTclOTUlOEMlMjgxJTI5JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz01YzA0YzE1MDJiOTY5NjEzOTZhYTVkOTcxMThhODBmMg%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwaWt1MDAwODg4JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1lYTBjNWQwMGVmZGM2NGJlMjk5YTg0ZDhhMzY2MTgxNQ%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D81886dbe704b0798240112e436c94376)