Cóż, to trudne pytanie. Co chcesz robić? Nie ma rzeczy, do których Clojure tak naprawdę nie nadaje się. Chodzi mi o to, że nie jest to zbyt dobre dla jednorazowych skryptów wiersza poleceń ze względu na czas uruchamiania JVM (chyba że używasz ciasta lub czegoś podobnego), ale można to powiedzieć o każdym języku JVM.
Clojure jest szczególnie odpowiedni do zadań współbieżnych. Został zbudowany od podstaw, aby być niesamowitym językiem do współbieżności, a jego system STM jest fantastyczny. Jeśli musisz zrobić jakieś poważne rzeczy związane z współbieżnością, Clojure może być szczególnie odpowiedni do tego zadania.
Należy jednak pamiętać, że Clojure jest językiem ogólnego przeznaczenia. Nie jest dostosowany tylko do określonych nisz, ale jest przydatny do wielu lub wszystkich rzeczy, do których mogą pasować inne języki JVM.
Clojure został zaprojektowany jako fantastyczny język sam w sobie, niekoniecznie jako język kleju. Możesz budować systemy od podstaw w Clojure bez bezpośredniego dotykania kodu Java. Nie chodzi o to, że nie tworzy przyjemnego języka klejowego, wiem, że wiele osób używało go jako takiego.
Jeśli masz coś na myśli, najlepiej jest rozważyć, jak będzie wyglądało rozwiązanie w jakimkolwiek języku, który jest opcją. Jeśli wygląda / czuje się lepiej w Groovy, wybierz Groovy. Oba są radykalnie różnymi językami i oba mają swoje cele.