Quindi, molto spesso nel tuo codice hai istruzioni / algoritmi come questo:
if (!myCollection.contains(unit))
throw new IllegalArgumentException(s"$unit is not available")
Il problema che ho con questo approccio che ingombra il codice sorgente - questo è particolarmente vero se hai bisogno di controlli approfonditi.
Stavo pensando se tali algoritmi, controlli, ecc. ripetitivi siano più risolvibili in scala, ad es. da un DSL?