Hey Gary,

Thanks for the references. Those videos were awesome!

I think Cristophe definitely hit the nail on the head with this 
slide<http://www.slideshare.net/cgrand/dsl-5537797/21> about 
the challenges of binding. Though, I'm not sure I fully get what he meant 
by "binding specs" and "capturing specs". Do you happen to know of any more 
resources on that topic?

I took another attempt <https://gist.github.com/bellkev/7653342> at my 
"deftemplate" syntax with a gradual progression from 
data->functions->macros as discussed by Cristophe. This approach left me 
with something similar to one of my earlier samples that copied leiningen's 
"defproject" syntax very heavily.

The only issue I have with this new syntax it seems overly 
data-like/keyword-heavy. For example this section:

:my-second-condition [:cfn=
                       [:cfn-inmap :my-mapping :first-level-key-one 
:second-level-key-two]
                       [:cfn-ref :my-parameter]]


Could be replaced by this:

my-second-condition (cfn= (cfn-inmap my-mapping :first-level-key-one 
:second-level-key-two)
                               (cfn-ref my-parameter))

Which I feel is much more readable, with the cfn-whatever functions simply 
returning specially-formatted string maps. Except, my-mapping and my-parameter 
aren't defined as vars in the data-structure-like syntax, so I would have to do 
some of that funky symbol-grabbing/walking in a macro that people seem to be 
cautioning against...

-- 
-- 
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/groups/opt_out.

Reply via email to