I hope -<> and <> becomes part of clojure core.

Q: How did you solve XYZ?
A: I used the Diamond Wand.


On Sat, Jan 18, 2014 at 1:36 AM, Alex Baranosky <
alexander.barano...@gmail.com> wrote:

> I think if you have to choose one that is idiomatic, you'd have to say it
> is as->, due to its inclusion in clojure.core.  I should start using that
> pattern...
>
>
> On Sat, Jan 18, 2014 at 12:47 AM, Jozef Wagner <jozef.wag...@gmail.com>wrote:
>
>> There is a Syntax threading library at
>> https://github.com/LonoCloud/synthread . See it in action at
>> http://www.infoq.com/presentations/Macros-Monads
>>
>>
>> On Sat, Jan 18, 2014 at 9:18 AM, Jordan Berg <jordannealb...@gmail.com>wrote:
>>
>>> You can also use as-> in 1.5+
>>>
>>> (-> 2
>>>     (+ 2)
>>>     (as-> x (* 1 x 3)))
>>>
>>> I like this a bit more than the (#()) approach, personally
>>>
>>> On Sat, Jan 18, 2014 at 12:07 AM, Alex Baranosky
>>> <alexander.barano...@gmail.com> wrote:
>>> > What I think is the interesting part of the question is the inclusion
>>> of the
>>> > word "idiomatic". I'm not sure swiss-arrows is idiomatic... that said I
>>> > don't know what would be considered idiomatic here.a
>>> >
>>> > One solution I know of for examples like this is:
>>> >
>>> > (-> 2
>>> >      (+ 2)
>>> >      (#(* 1 % 3)))
>>> >
>>> > I'm not sure this is idiomatic either, but it at least has the benefit
>>> of
>>> > requiring no additional dependencies.
>>> >
>>> >
>>> >
>>> > On Fri, Jan 17, 2014 at 11:29 PM, t x <txrev...@gmail.com> wrote:
>>> >>
>>> >> You win. :-)
>>> >>
>>> >>
>>> >> On Fri, Jan 17, 2014 at 11:26 PM, Shaun Gilchrist <
>>> shaunxc...@gmail.com>
>>> >> wrote:
>>> >>>
>>> >>> https://github.com/rplevy/swiss-arrows
>>> >>>
>>> >>>
>>> >>> On Fri, Jan 17, 2014 at 11:05 PM, t x <txrev...@gmail.com> wrote:
>>> >>>>
>>> >>>> I have the following:
>>> >>>>
>>> >>>> (defn helper [initial funcs]
>>> >>>>   (loop [fns funcs
>>> >>>>          ans initial]
>>> >>>>     (if (empty? fns)
>>> >>>>       ans
>>> >>>>       (recur (rest fns)
>>> >>>>              (list (first fns) ans)))))
>>> >>>>
>>> >>>> (defmacro => [initial & funcs]
>>> >>>>   (helper initial funcs))
>>> >>>>
>>> >>>> (macroexpand-1
>>> >>>>  '(=> 2
>>> >>>>       #(+ % 2)
>>> >>>>       #(* 1 % 3)))
>>> >>>>
>>> >>>>
>>> >>>> Is there something part of the idiomatic clojure / clojure core
>>> which
>>> >>>> does the above? Basically, I like the idea of -> and -->, but I
>>> find that I
>>> >>>> can't always guarantee (1) last element or (2) 2nd element.
>>> >>>>
>>> >>>> The above lets me place the argument directly via #%
>>> >>>>
>>> >>>> Question: is there something part of idiomatic clojure / clojure
>>> core
>>> >>>> that already does the above?
>>> >>>>
>>> >>>> Thanks!
>>> >>>>
>>> >>>> --
>>> >>>> --
>>> >>>> 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.
>>> >>>
>>> >>>
>>> >>> --
>>> >>> --
>>> >>> 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.
>>> >>
>>> >>
>>> >> --
>>> >> --
>>> >> 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.
>>> >
>>> >
>>> > --
>>> > --
>>> > 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.
>>>
>>> --
>>> --
>>> 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.
>>>
>>
>>  --
>> --
>> 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.
>>
>
>  --
> --
> 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.
>

-- 
-- 
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