I've also had a lot of success with Prismatic's Schema<https://github.com/Prismatic/schema/>library. I've found it to be a good middle ground between type hints, Protocols, etc, and a full blown type system, such as core.typed<https://github.com/clojure/core.typed> .
Hth Tim Washington Interruptsoftware.com <http://interruptsoftware.com> On Wed, Apr 9, 2014 at 7:22 AM, Colin Yates <colin.ya...@gmail.com> wrote: > Hi Fergal, > > Thanks for those links. I started using protocols and defrecords but I > (maybe mistakenly) got the impression that they were "frowned upon". As it > turns out, maps (typically with a :type key) and multi methods go a long > long way, but I still end up with fairly deep nesting of maps. > > Maybe that is the key - deep nesting of maps maybe cries out "one object > [data model] to rule them all" and I need to decompose it further. > > Without types almost all the type hints would be either the map of > sequence interface. It isn't so much the structure that is obscure, but > the semantics of what that structure is modelling. > > As I hinted at, I am sure it is because my implementation model is still > influenced too much by my OO background. > > Onwards and upwards as they say. > > Col > > > On Wednesday, 9 April 2014 11:37:52 UTC+1, Fergal Byrne wrote: > >> Hi Anthony, >> >> >> -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.