ja...@booleanknot.com writes: > If I'm understanding right, the main difference between Leaven and > Component is that Leaven uses *defsystem* to specify an explicit start/stop > ordering, while Component uses its *using* function to define dependencies > between components, and works out the ordering itself.
Indeed. The result is a system definition that is open to extension via other protocols, and that can be instantiated without having to specify the dependencies between components at the same time, which feels more natural to me. I could be convinced about adding some sort of declarative description of inter-component dependencies to defsystem, but I'm not sure it is really necessary. Also, the fact it works with clojurescript. > Also, while this is a really minor thing, the naming of ILifeCycle kinda > bugs me. The "I" prefix is an abbreviation for "Interface", but ILifeCycle > is a protocol. Having used Om a fair bit recently, I was influenced by the naming of the protocols there. Hugo
signature.asc
Description: PGP signature