|
09:33
finanalyst_ joined
09:34
finanalyst joined
09:44
[Tux] left
09:47
[Tux] joined
10:01
finanalyst_ left
|
|||||||||||||||||||||||||||||||||||||||
| [Tux] | I see deprecation messages. Should all `.perl` methods be replaced with `.raku`? | 10:26 | |||||||||||||||||||||||||||||||||||||
| librasteve_ | [Tux] yes, please | 10:28 | |||||||||||||||||||||||||||||||||||||
| [Tux] |
|
10:30 | |||||||||||||||||||||||||||||||||||||
| csv-test-xs 0.017 - 0.017 | |||||||||||||||||||||||||||||||||||||||
| tux.nl/Talks/CSV6/speed4-20.html / tux.nl/Talks/CSV6/speed4.html tux.nl/Talks/CSV6/speed.log | |||||||||||||||||||||||||||||||||||||||
| lizmat | yeah, it's about time, 6+ years later | 10:35 | |||||||||||||||||||||||||||||||||||||
|
11:31
finanalyst_ joined
12:07
finanalyst left
12:11
finanalyst_ left
|
|||||||||||||||||||||||||||||||||||||||
| timo | snitch can still be changed as it's experimental right? | 12:22 | |||||||||||||||||||||||||||||||||||||
| i'd like to be able to give context to different invocations of .snitch, like foo().snitch("foo value").map(...).grep(...).snitch("grepped transformed value").etc().etc() | 12:23 | ||||||||||||||||||||||||||||||||||||||
| i know i can supply a block but that's a little wordy since then i'll also have to put note or dd or say or whatever i want in there as well | |||||||||||||||||||||||||||||||||||||||
| ab5tract | that does sound kind of handy | 12:25 | |||||||||||||||||||||||||||||||||||||
| I believe it's technically "unreleased" and intended to land in v6.e | 12:26 | ||||||||||||||||||||||||||||||||||||||
| Whether it is officially marked as experimental, I don't know | |||||||||||||||||||||||||||||||||||||||
| timo | so .snitch({ "foo val: $_".note }) could become .snitch(:as("foo val")) or so | ||||||||||||||||||||||||||||||||||||||
| i have to `use v6.e.PREVIEW` for it to show up | |||||||||||||||||||||||||||||||||||||||
| ab5tract | then as far as I'm aware, it's free for alterations and tune-up | 12:27 | |||||||||||||||||||||||||||||||||||||
| lizmat | indeed | ||||||||||||||||||||||||||||||||||||||
| ++timo | |||||||||||||||||||||||||||||||||||||||
|
12:28
ChanServ sets mode: -o lizmat
|
|||||||||||||||||||||||||||||||||||||||
| timo | the "as" name should be bikeshed first | 12:28 | |||||||||||||||||||||||||||||||||||||
| lizmat | :comment ? | ||||||||||||||||||||||||||||||||||||||
| timo | tag? label? | ||||||||||||||||||||||||||||||||||||||
| lizmat | :desc ? | ||||||||||||||||||||||||||||||||||||||
| timo | desc isn't bad | ||||||||||||||||||||||||||||||||||||||
| how about an adverb to also put filename and line number where the snitch lives :D | 12:29 | ||||||||||||||||||||||||||||||||||||||
| lizmat | also, keeping Test's subtest in mind | ||||||||||||||||||||||||||||||||||||||
| "description" => { ... } | |||||||||||||||||||||||||||||||||||||||
| aka, a Pair:D candidate could use the key as the description | |||||||||||||||||||||||||||||||||||||||
| Zoffix++ for that idea in the past | |||||||||||||||||||||||||||||||||||||||
| timo | but with snitch, what would go in the other bit of the pair? | ||||||||||||||||||||||||||||||||||||||
| lizmat | the block? | 12:30 | |||||||||||||||||||||||||||||||||||||
| hmmm... | 12:31 | ||||||||||||||||||||||||||||||||||||||
| Str:D would just be the decsription, with the default ¬e as the snitcher | |||||||||||||||||||||||||||||||||||||||
| Pair:D would be the description as the key, and the block as the snitcher ? | 12:32 | ||||||||||||||||||||||||||||||||||||||
| just a block would be the snitcher without description ? | |||||||||||||||||||||||||||||||||||||||
| timo | not sure if it's really useful to have the description text and then the snitcher as a Pair, then it's almost shorter to write out the whole thing? | 12:33 | |||||||||||||||||||||||||||||||||||||
| `"foo val" => ¬e` vs `{ "foo val $_".note }` | |||||||||||||||||||||||||||||||||||||||
| lizmat | but by default .snitch would just note the invocant, no ? | 12:34 | |||||||||||||||||||||||||||||||||||||
| timo | "by default" meaning without any arguments at all? | ||||||||||||||||||||||||||||||||||||||
| lizmat | m: use v6.*; (1,2,3).snitc | ||||||||||||||||||||||||||||||||||||||
| camelia | No such method 'snitc' for invocant of type 'List' in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
| lizmat | m: use v6.*; (1,2,3).snitch | ||||||||||||||||||||||||||||||||||||||
| camelia | (1 2 3) | ||||||||||||||||||||||||||||||||||||||
| ab5tract | okay, it's kind of cheeky but what about .snitch(:ing("this") :) | 12:35 | |||||||||||||||||||||||||||||||||||||
| not really a serious suggestion | |||||||||||||||||||||||||||||||||||||||
| lizmat | m: use v6.*; note (1,2,3).snitch.map(*+2).snitch.map(*-7) | 12:40 | |||||||||||||||||||||||||||||||||||||
| camelia | (1 2 3) (3 4 5) (-4 -3 -2) |
||||||||||||||||||||||||||||||||||||||
| timo | in order to pun it, have "snitches" as well as "stitches" | 12:43 | |||||||||||||||||||||||||||||||||||||
| stitches is obviously how multiple snitches get connected together | 12:44 | ||||||||||||||||||||||||||||||||||||||
| one thing with a description is that we will now have to decide on if .Str or .gist or .raku get used for the stringification process | 12:46 | ||||||||||||||||||||||||||||||||||||||
| whereas until now, we just pass the value to the snitcher and that will then decide how stringification goes | |||||||||||||||||||||||||||||||||||||||
| so if you snitch with &dd you get raku, if you snitch with ¬e you get .gist | 12:47 | ||||||||||||||||||||||||||||||||||||||
| and put gives you .Str | |||||||||||||||||||||||||||||||||||||||
| lizmat | .snitch("foobar" => &put) | ||||||||||||||||||||||||||||||||||||||
| timo | that doesn't help unless we can ask &put "hey how would you stringify this?" before doing it so we can concat the description afterwards | 12:49 | |||||||||||||||||||||||||||||||||||||
| we can in theory call once for the description and once for the value, but then we get them on two lines for most cases | |||||||||||||||||||||||||||||||||||||||
| lizmat | ah, good point :-) | ||||||||||||||||||||||||||||||||||||||
| I guess .snitch("foobar") would be the same as: .snitch({ note "foobatr: $_.gist()" }) ? | 12:50 | ||||||||||||||||||||||||||||||||||||||
| *foobar | 12:51 | ||||||||||||||||||||||||||||||||||||||
| timo | should we make a decision up front which of .Str, .gist, or .raku would be the one users would want most often? | ||||||||||||||||||||||||||||||||||||||
| lizmat | I think .gist by default makes the most sense, as it will limit output for large data structures | 12:52 | |||||||||||||||||||||||||||||||||||||
| timo | fair | 12:57 | |||||||||||||||||||||||||||||||||||||
| hey, do you think we want to introduce a lexically scoped option of some kind that decides how snitch without arguments behaves in a whole file or block or whatever? | 12:58 | ||||||||||||||||||||||||||||||||||||||
| if that's a symbol that's exportable, a module like Data::Dump::Tree could have a :snitcher export tag | |||||||||||||||||||||||||||||||||||||||
| lizmat | &*SNITCHER ? | ||||||||||||||||||||||||||||||||||||||
| timo | for example, yeah | 13:00 | |||||||||||||||||||||||||||||||||||||
| we don't expect people to want extremely high performance for this feature, since outputting a lot to the terminal is also a great way to slow down your code just in general | 13:01 | ||||||||||||||||||||||||||||||||||||||
| lizmat | yup, especially with .fmt or printf | 13:02 | |||||||||||||||||||||||||||||||||||||
| timo | i feel like we need someone to provide pushback against overcomplicating this feature :D | 13:04 | |||||||||||||||||||||||||||||||||||||
| lizmat | hehe... KISS I guess | ||||||||||||||||||||||||||||||||||||||
| timo | i'll go for another one of these walks now, maybe i'll even have some thoughts | 13:08 | |||||||||||||||||||||||||||||||||||||
| apidock.com/ruby/Object/tap a friend pointed me at this method in ruby that does something like snitch except without the implicit output, you always have to "puts" or similar yourself if you want that | 13:09 | ||||||||||||||||||||||||||||||||||||||
| i wrote a funny "tunnel" operator a long time ago that's more like tap than snitch | 13:10 | ||||||||||||||||||||||||||||||||||||||
| lizmat | the whole point of .snitch was an easy way to see stages of transformation | 13:12 | |||||||||||||||||||||||||||||||||||||
| walk safely, enjoy the winter weather (snow is coming) | 13:13 | ||||||||||||||||||||||||||||||||||||||
| so I thought we had a possibility of adding methods to a class at runtime (at the expense of a global deopt) but it appears I was mistaken | 13:34 | ||||||||||||||||||||||||||||||||||||||
| ah, yes, found it | |||||||||||||||||||||||||||||||||||||||
| any addition to a class is *not* seen at the same call site | 13:36 | ||||||||||||||||||||||||||||||||||||||
| timo | I didn't have further great ideas about snitch | 14:49 | |||||||||||||||||||||||||||||||||||||
| .o( SnitchSeq ) | 14:53 | ||||||||||||||||||||||||||||||||||||||
| a Seq where every regular method like map and grep also outputs a little line about what it did | 14:54 | ||||||||||||||||||||||||||||||||||||||
| probably can't do much for when a Seq is passed into some "foreign" function and/or goes via the PositionalFallback or what have you | 14:55 | ||||||||||||||||||||||||||||||||||||||
| hm, there's at least one module out there that offers an "is logged" on many things, I wonder if there's already something for seqs like that | |||||||||||||||||||||||||||||||||||||||
| if we log that kind of thing in a structured manner, we could get something visualizable, too. but maybe that's a job for the debugger rather than for writing code to do that | 15:01 | ||||||||||||||||||||||||||||||||||||||
| i'm really looking forward to someone⢠making a visualizer for react/supply/whenever setups | 15:46 | ||||||||||||||||||||||||||||||||||||||
|
17:26
finanalyst_ joined
|
|||||||||||||||||||||||||||||||||||||||
| jdv | anyone against pushing the release a week? | 17:42 | |||||||||||||||||||||||||||||||||||||
| just scheduling on my end got messed up | 17:43 | ||||||||||||||||||||||||||||||||||||||
| lizmat | I'm not against | 17:45 | |||||||||||||||||||||||||||||||||||||
| Geth | rakudo/main: a3566826fe | (Justin DeVuyst)++ | docs/release_guide.pod pushing release out a week cause jdv scheduling |
17:47 | |||||||||||||||||||||||||||||||||||||
| jdv | last day of the month it is then | ||||||||||||||||||||||||||||||||||||||
| lizmat | ++jdv! | 17:50 | |||||||||||||||||||||||||||||||||||||
|
18:37
kjp left,
kjp joined
21:37
finanalyst_ left
21:46
[Coke] joined
22:03
librasteve_ left
23:34
Geth left,
Geth joined
|
|||||||||||||||||||||||||||||||||||||||