Quando indosso il mio cappello C, penso che forse Clojure idiomatico faccia la cosa semplice e controlli i valori di ritorno.Gestione degli errori idiomatici in Clojure
Quando ho messo il mio cappello Java (a malincuore, devo aggiungere), penso che dal momento che Clojure gira su JVM il modo naturale deve essere usare le eccezioni JVM.
Quando indosso il mio cappello funzionale, sto pensando che ci deve essere una sorta di costruzione monadica o macro di threading in grado di gestire gli errori in modo componibile.
Quindi qual è il modo idiomatico di gestire gli errori in un programma Clojure?
Si sente quasi che l'oither monade appartiene al core Clojure. Semplicemente lanciando un'eccezione, che ritengo sia tipica, si sente come un ritorno al modo imperativo di fare le cose. – Mario