🦋 Welcome to Raku! raku.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: colabti.org/irclogger/irclogger_log/raku
Set by ChanServ on 14 October 2019.
guifa Altai-man_ : I can’t wait for jnthn++ to release RakuAST. It’s going to really help out with some of the Intl stuff (specifically with the formatters) 01:18
guifa feels a little weird giving his talk on internationalization because by next year things will be 10x better and cooler than this year 01:19
perlmaros hi, i'm currently strugging with react/supplies: i have an application with a main react block that should handle messages from a websocket supply (Cro::WebSocket::Client::Connection). whenever the connection closes i need to reopen it, which returns a new connection object with a new message supply. however then the main react block still has the original - now stale - supply. how do i pass the new supply to the main react block? afaict there are method 06:34
merge multiple suppies - but they always return a new supply instead of altering an existing supply.
Kaeipi perlmaros, that's a problem i've dealt with before 08:14
the way i handle it is to use a supply block instead of react for the connection, emit connection supplies to a Supplier, and use react with Supply.migrate on the connection supplier 08:15
JJMerelo releasable6: status 08:39
releasable6 JJMerelo, Next release in ≈2 days and ≈10 hours. 1 blocker. 143 out of 292 commits logged (⚠ 4 warnings)
JJMerelo, Details: gist.github.com/946f43e555e7bb0b07...bbe28e5292
JJMerelo Altai-man_ did you see my comment about IO::Glob? 08:55
Altai-man_ JJMerelo, yup, and replied. Blin is not for knowing what module in the ecosystem were broken so we could fix them, it's primary use is to know what in Rakudo was broken so that we could fix Rakudo. Yes, you may fixed the module, but the code it uses just became non-working for someone without a really great reason behind this. 09:03
s/module/modules/
s/it's/its/
Gh, need breakfast. 09:04
JJMerelo Altai-man_ not sure about that. It might have been coincidental. Or it might actually have fixed something that was used broken.
Altai-man_ JJMerelo, I still have not seen any real investigation of this proving what it is. Patching the tests to got it working again and releasing without knowing the real explanation is shooting in the dark hoping you won't kill someone. Maybe it concidentally won't. 09:06
JJMerelo Check out my comments to the issue and the related fixes. One of the tests that was failing was due to a patch that fixed something for Windows. 09:07
The other tests that were failing were actually incompatible with other tests that didn't fail. You fixed some, you broke some others.
Here is my take on the stuff github.com/zostay/raku-IO-Glob/issues/22 09:09
Altai-man_ The module worked just fine on 2020.05. If we release it right now, 2020.06 suddenly breaks it unless you do patching manually somewhere somehow. This is not how it should be. 09:12
I wonder if we can kindly ask lizmat to just look at the b63976a8f19e650fe3533562a5fa040d84535de8 results. I truly adore those efforts on making Rakudo faster. Yet it would be awesome to have both a speedup and no compat issues. 09:14
linkable6 (2020-05-21) github.com/rakudo/rakudo/commit/b63976a8f1 Make IO::Path.dir between 1.5x and 2.2x as fast
JJMerelo But the IO::Path.dir code that's affected by that change is actually in tests, not in the code.
Anyway, time for breakfast now.
Altai-man_ JJMerelo, enjoy! By the way, I'd like to ping you about docs UI later, there are some questions around. 09:17
jnthn I don't think it matters that the change is in the test rather than the code; it's still a change of behavior... 09:21
lizmat fwiw, I've looked at the IO::Glob issue for many hours already, and I'm starting to think the bisect is a red herring 09:30
JJ's work will help me get to the bottom of this today 09:31
Altai-man_ lizmat, does it pass if you revert?
lizmat a simple revert is not an option... already tried that 09:32
Altai-man_ Not suggesting, just wondering to check this way is a culprit.
lizmat no, if it had been a simple revert, I'd done it already
Altai-man_ :/
jnthn Is this the List -> Array in Match thing, or something else? 09:41
lizmat nope, that has been reverted already 09:44
this is about "." and ".." appearing (or not) in directory listings
complicating factor in this is that the JVM backend never produces "." and ".." 09:45
whereas MoarVM does, but they'r filtered out by default
but if you have an explicit test, the MoarVM needs to add "." and "..", because they are presented to the test on the MoarVM backend as well 09:46
jnthn lizmat: Ah, I see. What was the Array -> List resolution, btw? 09:47
lizmat IO::Glob's test fail because somehow the "." and ".." appear in the result tested against when they aren't expected
jnthn It occurred to me that while things may commit to Array, they probably don't depend on elements having been assigned rather than bound...
lizmat jnthn: I reverted the opt
jnthn Meaning you could mostly keep the opt
lizmat yeah, but since I'm reworking Match anyway, I didn't want to put any work in that anymore 09:48
in the rewrite, it *will* be an Array with bound values
unfortunately, the dir opts cannot be easily reverted 09:49
lizmat weekly: news.ycombinator.com/item?id=23560339 12:58
notable6 lizmat, Noted! (weekly)
El_Che I must say, that like rurban, I've always felt that “the first postmodern computer language” was an insult 13:05
tellable6 2020-06-17T21:29:48Z #raku <melezhik> El_Che - fyi - www.reddit.com/r/azuredevops/comme...perations/ 13:06
2020-06-17T22:09:37Z #raku <melezhik> El_Che - I've create home project and call it Spazure - Sparrow automation for Azure DevOps ))) - github.com/melezhik/Spazure
oddp "This is not beauty, beauty is Lisp or Forth" -- As someone who's worked with common lisp, various scheme and racket, lisp is definitely not pretty. Maybe on a superficial level, when looking at the base syntax alone. Everything beyound that is the same convoluted and smelly horsecrap as in any other language. 13:08
ShimmerFairy Lisp is beautiful in its uniformity, but that also comes with major downsides. Sometimes different things should look different. (I still don't think I fully get how macros differ from functions in Lisp, because their defns look so similar) 13:32
jast I think that downside is mainly a matter of what you're used to :) 13:36
lizmat I guess Raku has a similar thing wrt to public attributes and methods 13:53
lizmat $.foo doesn't tell you whether it is an attribute accessor or simply an instance method called "foo" 13:53
raku-bridge <tmtvl> I know it's a bland and meaningless statement, but beauty is in the eye of the beholder. I like twigils, but there's plenty of people to whom even regular sigils are an affront. 13:54
ShimmerFairy That's the main thing; talking about it like there's an objective truth to aesthetics is wrong in the first place. 14:27
jast side note, the difference between functions and macros is quite simple. if you pass a function an argument, it gets evaluated. if you pass a macro something, you get the unevaluated expression as a "data structure" 14:35
ShimmerFairy I think my confusion with macros comes from when docs use examples that don't really *need* macros, so I end up asking "couldn't this just be a function? what's the point of macros?" 15:06
moritz Hi all, I need a test reader or two for a chapter of Raku Fundamentals on web services with Cro (and declarative APIs), about 8 pages 16:09
anybody interested? please /msg me your email address 16:10
(more like 10 pages actually) 16:11
timotimo yo ustill have mine? :3 16:15
moritz that's the wakelift address? 16:19
sent 16:20
timotimo yes the one
thank you very much
MasterDuke moritz: i can
moritz it's my turn to thank you (and the other two volunteers so far; wait, three! :D )
timotimo big fan of tiemstamps 16:23
sena_kun moritz, you can find my email on github profile (Altai-man) if interested. :)
moritz sena_kun: thanks, sent! 16:25
MasterDuke timotimo: heh, just got there
moritz for context; an earlier chapter already develops a command line application for the same task (converting between ISO datetimes and POSIX/UNIX timestamps) 16:26
timotimo "start service" - start serving?
moritz zef + modules, higher-order functions, regexes, grammars, dynamic variables have all been discussed in previous chapters
timotimo: yes, good catch 16:27
timotimo i tend to forget which of <German English> is where it's wrong, but "in it's block form" shouldn't have an apostrophe? 16:33
timotimo and i'd perhaps also state that "all subscribed streams have finished" or error conditions to be cases where a react block finishes 16:34
moritz yes, the ' is wrong 18:00
and good catch, re react 18:01
timotimo wasn't there a thing in cro for dockerifying stuff? or does it already generate it for you when you "cro stub" a service? 18:21
Altai-man_ It does. 18:22
timotimo "everything stays the same" + else 18:24
i've gotten sidetracked, maybe everything i'd point out now is already known
perlmaros Kaeipi: thank you for the migrate hint
moritz timotimo: so far, the feedback has been very orthogonal :D 18:25
timotimo "add second get call" + a 18:26
moritz 18:27
timotimo "a bit of pain" + a (i believe) 18:28
"and tore it down" -> "and tear it down"
there was some document i forgot the name about that suggested making most things configurable via env vars, rather than commandline args; if i can find it again, maybe it'd make sense to point that out in your example, too 18:30
timotimo very slightly confused by the unix timestamps having a space before the comma in the test example 18:32
"block with our tests" + a 18:33
moritz fixing
timotimo: the whole 12 factor app thingy? not sure I want to go into that in the context of that chapter 18:34
timotimo that's the one, yeah
no problem
timotimo think on page 17 at the start you've confused request and response in the prose 18:35
you're testing that the response matches your expectations, not the request
AlexDaniel there's page 17?
ah 18:36
x)
timotimo and somehow the output of the test is in blockquote once and regular text another time
timotimo looks like "File index.htmlshould be placed" lacks a space 18:39
El_Che looking forward to the release. Thx to everyone working on it! 18:40
Altai-man_ releasable6, status
releasable6 Altai-man_, Next release in ≈2 days and ≈0 hours. 1 blocker. 143 out of 300 commits logged (⚠ 4 warnings)
Altai-man_, Details: gist.github.com/b612b98c7bd4492248...e582962985
timotimo end of page 18 has "a pretty [..] api endpoints"
Altai-man_ .oO ( still a massive blocker ahead ) 18:41
timotimo "we could have written just as well:" isn't right, but not sure what to suggest instead 18:42
lower middle of p20 has "just like get is a function [...], so is route {} just a function", which sounds odd 18:44
moritz timotimo: "we could have written instead" sounds better, ya? 18:46
I'll rephrase that 18:47
timotimo "...written this instead:" ? 18:48
page 21 seems to have very strange formatting issues? 18:49
MasterDuke if you want to keep the "just as well", then "we could just as well have written:" would work
timotimo ah, i think some code lbock wasn't terminated before putting more prose
timotimo "t ## Summary" probably accidentally prevented Summary from becoming a headline 18:55
timotimo not sure if it's worth mentioning in this context, but not only json can be automatically serialized by cro 18:57
you can extend that mechanism
MasterDuke the code example on page 14, why does it have the `+` before `$timestamp` in the `Date.new` call? 18:59
moritz MasterDuke: a left-over from sub MAIN() where it's actually an IntStr
I've removed it from the latest version
MasterDuke ok, i just reloaded 19:00
timotimo i can't reload the pdf, it was a mail attachment %)
MasterDuke "replace signal(SIGIINT) by" has an extra "I" 19:01
and `signal(SIGINT).merge(signal(SIGTERM)` is missing a final `)` 19:02
`my ($date_str, $time_str)` doesn't have padding spaces inside the parens, but `my ( $hour, $minute, $second )` does 19:04
and the subsequent DateTime.new call has one at the opening, but not the closing 19:05
AlexDaniel what's next? Trailing whitespace? x) 19:06
just kidding, yeah, it's good when the snippet doesn't look sloppy
moritz at least trailing whitespace don't show up in print :D 19:07
MasterDuke some of the code blocks aren't syntax highlighted 19:08
AlexDaniel yeah, I actually like when even things that are within the text are highlighted
MasterDuke page 17: "to he the" 19:10
AlexDaniel moritz: speaking of the small stuff, you can also put a comma after `:$application` (it's the last arg in the call) because you did after `application => routes(),` 19:11
moritz +1 19:12
AlexDaniel I like it, nameds are often changed so it can look good in git diff if you're not packing a lot of stuff on the same line 19:13
MasterDuke the iso input and result don't look the same (not sure if that's ok, but it seems a little weird) 19:14
MasterDuke `+$timestamp` on page 20 19:15
and `where $date-re` instead of `where &date-re`
"expects an block" should be "a block" 19:19
moritz roger 19:24
it's amazing how many small errors, inconsistencies and suboptimal wording one can make in just 10 pages... :-) 19:26
(but then, the rest of the book has undergone 5+ review phases already, and this chapter hasn't)
MasterDuke looks good, made sense, i could follow the code 19:38
moritz thanks! 19:39
cpan-raku New module released to CPAN! LibXML (0.5.1) by 03WARRINGD 19:43
Nasrudin I can do that in just one sentence :) 21:40
cpan-raku New module released to CPAN! LibXML (0.5.2) by 03WARRINGD 21:52
cpan-raku New module released to CPAN! Red (0.1.8) by 03FCO 23:37