Fork me on GitHub

@jeremys: I've watched this talk a couple of times and it, and 'Clojure Applied' by Alex Miller, fill a need I have for resources on how to construct a Clojure application at a higher level than simple functional composition. I disagree with this argument 'you don't need patterns in a Lisp and patterns are missing language features'. Functional composition, idiomatic application of map, reduce, data structure destructuring are all very low level patterns. However, the 'how do I construct a non trivial application' seems to be left to the reader as an exercise in re-inventing the wheel so I like what Stuart, Alex and others are trying to do.


is there any differences in high level design between different languages? Modules, sub-systems, low coupling - it’s everywhere no matter what language is used. On high level I mean


I imagine there's a more of an overlap between architecture in any two imperative languages than between an imperative one and functional one.


Sure, things like CQRS, event sourcing, microservices and so on are language-agnostic


But practicalities of their implementation are not


You can't write Haskell as if you were writing Java.


So some example of how to apply those high-level ideas in practice would certainly be useful.


There are several important decisions to make, for example how to relate components and configuration. If you start with one abstraction trying to do it right, you'll need to find ways to do it right with the other abstractions that you need. If the environment makes these decisions for you, things are easy - Erlang goes that way.


We're struggling quite a bit getting components, configuration, decoupling and testability right.


@agile_geek: I didn't know about clojure applied nice!


@jeremys: just about the only book I've found that fills the void for intermediate level Clojurians


@agile_geek: That's exactly what I was just thinking watching the talk.


Alex and Ben should be applauded 👏


@agile_geek: > so I like what Stuart, Alex and others are trying to do. I am guessing at Component here, but I'm not sure who Alex is & what he wrote? 😛


Or if there's some other libs I might like.


there really are some good clojure books


Ah, yes. That is on my list. I quite like pragmatic programmer books. With the recommendation it fills my current need, it's definitely going to get bumped up.


and I was actually referring to Stuart's other efforts around highlighting best practice and desing patterns which is broader than just Component's (although that's part of the picture too)


@agile_geek: Any great links I might enjoy?


@dominicm: as I said the only book I know that aims at a holistic approach to designing an entire app.


Of Stuarts I mean 😛


Oddly, I'm not following his blog, I should.


Is there a way to define your own reader conditionals other than clj and cljs? Specifically wanting to distinguish windows, mac & unix platforms.


@pierre: I saw an article a few days ago about this, but it was a dirty dirty hack


It would actually be quite useful.


pierre: Earlier design discussions on reader conditionals proposed that, but the design was intentionally reduced to the keywords :clj :cljs :cljr :default (I think that is the complete list) to keep it from sprawling, I think.


@pierre: Another rationale for limiting the choices may have been to avoid significant extra complexity in tooling like IDEs.


Hi, any of the prismatic schema guys here? I think I found a weird bug that I would like to show as it is hard to describe


@sveri: could be some Prismatic girls around too?