Please open up a bug report!
*José Valimwww.plataformatec.com.br <http://www.plataformatec.com.br/>Founder and Director of R&D* On Wed, Jan 31, 2018 at 12:27 AM, Po Chen <[email protected]> wrote: > Hi Jose, > > I just tried going with parens, the formatter does not seem to keep parens > either in this case.. > > > On Wednesday, 31 January 2018 03:13:41 UTC+11, José Valim wrote: >> >> In the with proposal we explain that "with" was meant to mirror >> for-comprehensions. It has been also discussed that nowhere in Elixir we >> traverse the body retrieving expressions and that's not a precedent we want >> to introduce in the core language itself. >> >> >> >> *José Valimwww.plataformatec.com.br >> <http://www.plataformatec.com.br/>Founder and Director of R&D* >> >> On Tue, Jan 30, 2018 at 4:08 PM, OvermindDL1 <[email protected]> wrote: >> >>> I'm still quite curious why `with` is not entirely in the body like >>> `cond` and `case` and so forth is (ditto with `for`), so it'd be: >>> >>> ```elixir >>> with do >>> %{x: x} <- y >>> x >>> end >>> ``` >>> >>> It follows the pattern of cond and so forth, no weird comma's needed, no >>> weird prefix `do:` or so forth, you only need to split on `<-`, etc.... >>> >>> >>> On Tuesday, January 30, 2018 at 5:55:58 AM UTC-7, José Valim wrote: >>>> >>>> Good call Ben! The formatter will rewrite it though, while it does keep >>>> parens. >>>> >>>> >>>> >>>> *José Valimwww.plataformatec.com.br >>>> <http://www.plataformatec.com.br/>Founder and Director of R&D* >>>> >>>> On Tue, Jan 30, 2018 at 1:46 PM, Ben Wilson <[email protected]> >>>> wrote: >>>> >>>>> This is achievable with `\` btw: >>>>> >>>>> with \ >>>>> %{x: x} <- y >>>>> do >>>>> x >>>>> end >>>>> >>>>> >>>>> On Tuesday, January 30, 2018 at 7:39:07 AM UTC-5, Po Chen wrote: >>>>>> >>>>>> Ah I thought `with` was part of the language, then I realized how >>>>>> small the language core is. >>>>>> Now I wish the language is actually a little bigger :S mixed feelings. >>>>>> >>>>>> Thanks for the reply! >>>>>> >>>>>> On Tuesday, 30 January 2018 23:20:49 UTC+11, José Valim wrote: >>>>>>> >>>>>>> Imagine you have this code: >>>>>>> >>>>>>> foo = 1 >>>>>>> bar = 2 >>>>>>> foo bar do >>>>>>> :ok >>>>>>> end >>>>>>> >>>>>>> Would you expect it to be equivalent to: >>>>>>> >>>>>>> foo = 1 >>>>>>> bar = 2 >>>>>>> foo >>>>>>> bar do >>>>>>> :ok >>>>>>> end >>>>>>> >>>>>>> It isn’t because “foo” in its own line is a valid expression. >>>>>>> Replace “foo” by “with” and you can see why your proposed syntax doesn’t >>>>>>> work. >>>>>>> >>>>>>> If you want to write it as you proposed, you need to use parens: >>>>>>> >>>>>>> foo = 1 >>>>>>> bar = 2 >>>>>>> foo( >>>>>>> bar >>>>>>> ) do >>>>>>> :ok >>>>>>> end >>>>>>> -- >>>>>>> >>>>>>> >>>>>>> *José Valimwww.plataformatec.com.br >>>>>>> <http://www.plataformatec.com.br/>Founder and Director of R&D* >>>>>>> >>>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "elixir-lang-core" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/elixir-lang-core/a644c670- >>>>> f090-4eaf-a0df-fa47333519b8%40googlegroups.com >>>>> <https://groups.google.com/d/msgid/elixir-lang-core/a644c670-f090-4eaf-a0df-fa47333519b8%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>>> For more options, visit https://groups.google.com/d/optout. >>>>> >>>> >>>> -- >>> You received this message because you are subscribed to the Google >>> Groups "elixir-lang-core" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion on the web visit https://groups.google.com/d/ms >>> gid/elixir-lang-core/bbf54f61-ffc4-46e3-b69f-5bbc03f0df70% >>> 40googlegroups.com >>> <https://groups.google.com/d/msgid/elixir-lang-core/bbf54f61-ffc4-46e3-b69f-5bbc03f0df70%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> -- > You received this message because you are subscribed to the Google Groups > "elixir-lang-core" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit https://groups.google.com/d/ > msgid/elixir-lang-core/3831e575-c289-4e37-9171- > de95b8ae2477%40googlegroups.com > <https://groups.google.com/d/msgid/elixir-lang-core/3831e575-c289-4e37-9171-de95b8ae2477%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "elixir-lang-core" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4%2BKG7b1H21Jrn%3DTs0-1fgoZij%2BA0LtiVRcjHWKtV31U8g%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
