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.

Reply via email to