This feature has been accepted and Michał is working on it, you can all follow the corresponding issue ( https://github.com/elixir-lang/elixir/issues/5009) and PR ( https://github.com/elixir-lang/elixir/pull/5010) :)
Andrea Leopardi [email protected] On Fri, Jul 15, 2016 at 3:19 PM, Ben Wilson <[email protected]> wrote: > Do we want to use #=> instead of => to make it clear it isn't showing some > kind of map like syntax? > > On Friday, July 15, 2016 at 9:14:05 AM UTC-4, Eric Meadows-Jönsson wrote: >> >> Another reason for the tag is that you can use it in a pipeline. If I >> have long pipeline I am debugging I like to sprinkle some `|> IO.inspect` >> between the lines to see what's going on in each pipeline stage. And when >> piping it's of course not possible to wrap the value in a tuple. >> >> Big +1 from me for this feature. >> >> On Fri, Jul 15, 2016 at 12:11 PM, Michał Muskała <[email protected]> >> wrote: >> >>> Ok, I will work on it. >>> >>> On 15 Jul 2016, at 12:07, José Valim <[email protected]> >>> wrote: >>> >>> Good points Andrea. Yes, let's ship this then. >>> >>> >>> >>> *José Valim* >>> www.plataformatec.com.br >>> Skype: jv.ptec >>> Founder and Director of R&D >>> >>> On Fri, Jul 15, 2016 at 12:00 PM, Andrea Leopardi <[email protected]> >>> wrote: >>> >>>> I love this feature, but I am against wrapping in a tuple because then >>>> you may wonder if you are inspecting a tuple or something with :tag. >>>> Instead, if you have "my list: ..." it will not be like any other inspected >>>> term, so very easy to understand. Wdyt? :) >>>> >>>> >>>> Andrea Leopardi >>>> [email protected] >>>> >>>> On Fri, Jul 15, 2016 at 11:57 AM, José Valim < >>>> [email protected]> wrote: >>>> >>>>> I like this suggestion. I am wondering though if the tagging should be >>>>> done by wrapping the input in a tuple: >>>>> >>>>> IO.inspect([1, 2, 3], tag: “my list”) >>>>> #=> {"my list", [1, 2, 3]} >>>>> >>>>> >>>>> If not, we should probably just print: "my list: [1, 2, 3]". >>>>> >>>>> >>>>> >>>>> *José Valim* >>>>> www.plataformatec.com.br >>>>> Skype: jv.ptec >>>>> Founder and Director of R&D >>>>> >>>>> On Fri, Jul 15, 2016 at 11:50 AM, Michał Muskała <[email protected]> >>>>> wrote: >>>>> >>>>>> Hello everybody. >>>>>> >>>>>> IO.inspect/2 is one of the most useful debugging tools, and I use it >>>>>> extremely often. The ability to stick `|> IO.inspect` in pretty much >>>>>> every >>>>>> part of the program is really powerful. Unfortunately when having >>>>>> multiple >>>>>> such calls it becomes hard to distinguish which output matches which >>>>>> call. >>>>>> The usual way to solve this is by inspecting something like >>>>>> {tag_name, value} instead of just value, but this has the unfortunate >>>>>> effect of breaking the pipe-ability and forces you to assign things into >>>>>> specific variables. >>>>>> >>>>>> I propose we add an option to IO.inspect called tag. It would simply >>>>>> print the tag before the output. How would it look like? >>>>>> >>>>>> IO.inspect([1, 2, 3], tag: “my list”) >>>>>> >>>>>> would print: >>>>>> >>>>>> my list => [1, 2, 3] >>>>>> >>>>>> The return value would obviously not change, so it would still be a >>>>>> list [1, 2, 3] in that case. This still allows IO.inspect to be pipe-able >>>>>> and gives us easily distinguishable output at the same time. I think this >>>>>> would streamline the debugging experience and make IO.inspect even more >>>>>> powerful. >>>>>> >>>>>> Michał. >>>>>> >>>>>> -- >>>>>> 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/E807B41E-B89A-43CD-B55D-60A742B55BBC%40muskala.eu >>>>>> . >>>>>> 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%2BUhyhgMDdNy0gJk2Pm_eafm_n6SBViXmjiq8AWepEBeQ%40mail.gmail.com >>>>> <https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4%2BUhyhgMDdNy0gJk2Pm_eafm_n6SBViXmjiq8AWepEBeQ%40mail.gmail.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/CAM9Rf%2BL60EKrTAaP0VZ%2BcsSnff5ffQuZVHOkS__qQdBTRmJi1Q%40mail.gmail.com >>>> <https://groups.google.com/d/msgid/elixir-lang-core/CAM9Rf%2BL60EKrTAaP0VZ%2BcsSnff5ffQuZVHOkS__qQdBTRmJi1Q%40mail.gmail.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/CAGnRm4KMZhzMGNCjoTRahwwmQzfc%2BPN6qsCTG54vJp12jjR2rA%40mail.gmail.com >>> <https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4KMZhzMGNCjoTRahwwmQzfc%2BPN6qsCTG54vJp12jjR2rA%40mail.gmail.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/A8797967-516A-408E-B4E5-C4E82794E184%40muskala.eu >>> <https://groups.google.com/d/msgid/elixir-lang-core/A8797967-516A-408E-B4E5-C4E82794E184%40muskala.eu?utm_medium=email&utm_source=footer> >>> . >>> >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> >> >> -- >> Eric Meadows-Jönsson >> > -- > 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/dbb8fc73-3bee-4ef3-9c13-2fcd60a4a0ff%40googlegroups.com > <https://groups.google.com/d/msgid/elixir-lang-core/dbb8fc73-3bee-4ef3-9c13-2fcd60a4a0ff%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/CAM9Rf%2BLNOUR29x7S23MqmYHuiYEkex420aqJhtQH5%3DPtyzLeEA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
