SoooooOooooo multimethods and protocols suck for interactive development and I think there is a better “meander” alternative which is… just write patterns for the polymorphic inputs! However I don’t want to be limited to making the patterns siblings…. what I’d like to do (I think) is def a bunch of strategies and then say try all these strategies and see if one passes.
Like:
(ns a.a)
(def a (s/rewrite [pattern] [output]))
(ns b.b)
(def b (s/rewrite [patternb] [outputb])
(ns x.core)
(def POLYMORPHIC (s/try a/a b/b))
But I don’t think s/try
exists(Seems like something I should be able to do though)