*I meant to write "clean architecture" :-)

On 23 July 2014 15:29, Daniel Kersten <[email protected]> wrote:

> Honestly, I'm against having core.async as anything other than a normal
> macro. The less built-in magic the better, plus its nice to know that
> almost everything I use, I could in theory build myself without hacking the
> language itself, should I ever want to. The more features that get special
> treatment by the compiler or runtime, the less this is true.
>
> Also, while I'm all for allowing macros to transform code in go blocks
> that contains <! and >! (and it seems in Clojure you can do this and this
> is merely a bug in cljs), I personally think that disallowing <! and >! in
> functions (outside of the technical limitations that we currently have) is
> not necessarily a terrible thing.
> I mean, sure, it would be nice to lift restrictions so that more powerful
> abstractions can be built on top and I would certainly be all for doing so,
> should somebody figure out a way to avoid the current technical
> limitations, but if this were to happen, I think everyone should still be
> very strongly discouraged from using <! and >! anywhere other than in the
> go block. It keeps the code simple by forcing the bulk of it to be nice
> pure functional code (at least in respect to channel operations) - the
> Clean, essentially - and this greatly helps understanding and testing of
> code IMHO.
>
> I guess, I would love for the ability only to build better abstractions,
> not for day to day use. But perhaps macros serve that purpose well enough
> already? (once the cljs bug is fixed, at least)
>
>
> On 23 July 2014 14:04, Kyle Cordes <[email protected]> wrote:
>
>> On Wednesday, July 23, 2014 at 2:06 AM, Tom Locke wrote:
>> > @Kyle - it's not a deep problem with Clojure extensibility but just a
>> bug in the ClojureScript implementation.
>> >
>>
>>
>> I agree it is not a problem per se; but the feature I would really like,
>> which I believe would require the approach I described, would be to allow
>> the full set of Clojure constructs to be composed arbitrarily with “go”.
>> For example a <! could live in a function, called by another function,
>> called via a protocol, via a macro, called itself via a multi method, in
>> another namespace, in another file, which happens to be called via a go
>> somewhere.
>>
>> (And I’d like a pony..  :-) )
>>
>> --
>> Kyle Cordes
>> http://kylecordes.com
>>
>>
>>
>> --
>> Note that posts from new members are moderated - please be patient with
>> your first post.
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "ClojureScript" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/clojurescript.
>>
>
>

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/clojurescript.

Reply via email to