wiem, w pewnym momencie w moim kodzie, że lista ma tylko jeden element, więc uzyskanie go zClojure :: uzyskać pojedynczy element z listy i rzutów wyjątkiem jeśli lista zawiera więcej niż 1 elementy
(first alist)
Ale chciałbym również, aby kod się zepsuł, jeśli lista zawiera więcej niż jeden element, aby ostrzec mnie przed błędnym stanem. Jaki jest idiomatyczny sposób osiągnięcia tego w Clojure?
Tak. Ta odpowiedź. – dfreeman
'(tylko [1 zero])' ilustruje błąd w tym rozwiązaniu. –
@AlexBaranosky Chcesz wyjaśnić? '(następny [1 nil])' to ''(zero)' i '(zero?' (zero))' to 'false'. Tak więc '(tylko [1 zero])' zgłasza błąd potwierdzenia jako pożądany. –