This is the best I can come with in a short time:
(ns higiebus.services.depcy-profiles
"Shortcut to common dependency profile")
(defmacro basic-service-deps
[]
`(do
(require [higiebus.services.config :as conf] [higiebus.services.loggers
:as log]
[clojure.string :as s])
(use [clojure.tools.trace])))
In the caller's name space:
(ns higiebus.services.aqueduct
"Implement sinks and risers as abstractions on top of concrete transports."
(:require [higiebus.adaptors.socket :as sock] [higiebus.services.queuemgr :as
q])
(:use [higiebus.services.depcy-profiles]))
(basic-service-deps)
There is a bit of information loss but if the dependency profiles are correctly
defined
it's probably bearable and not to numerous. I am juggling with the idea of
using this in our code base.
Especially when using some service portfolios, we have to spell a litany of
dependencies.
Now, how far should I go with this requires some thinking. I can probably
represent profiles
as data and add some functions to report what they are made of, provide a
single fn
to load profiles by name, allowing to compound them, ...
I'll play with this in the next couple of days.
Luc
On Sun, 11 Nov 2012 14:26:03 -0800
Mark Engelberg <[email protected]> wrote:
> I can relate to Denis' issue. I find it pretty common to have a
> common set of dependencies across every file in a project. Copying
> and pasting this header to every file and updating changes manually
> across every file doesn't feel like a very robust solution. This is
> something that has bothered me as well.
>
--
Luc P.
================
The rabid Muppet
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en