🦋 Welcome to the IRC channel of the core developers of the Raku Programming Language (raku.org #rakulang). This channel is logged for the purpose of history keeping about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | Logs can be inspected at colabti.org/irclogger/irclogger_log/raku-dev | For MoarVM see #moarvm
Set by lizmat on 26 April 2021.
00:01 reportable6 left 00:02 reportable6 joined 01:27 kvw_5_ joined 01:31 kvw_5 left 03:18 bisectable6 left, bloatable6 left, statisfiable6 left, quotable6 left, sourceable6 left, linkable6 left, committable6 left, evalable6 left, releasable6 left, reportable6 left, tellable6 left, coverable6 left, shareable6 left, squashable6 left, unicodable6 left, greppable6 left, nativecallable6 left, benchable6 left, notable6 left, committable6 joined, linkable6 joined, shareable6 joined, nativecallable6 joined 03:19 bisectable6 joined, greppable6 joined, coverable6 joined, quotable6 joined, squashable6 joined 03:20 reportable6 joined, bloatable6 joined, tellable6 joined, unicodable6 joined, benchable6 joined, squashable6 left, statisfiable6 joined, releasable6 joined 03:21 notable6 joined, evalable6 joined, squashable6 joined, sourceable6 joined 04:00 MasterDuke left 04:44 frost-lab joined 04:46 maggotbrain joined 06:02 reportable6 left, reportable6 joined 06:33 patrickb joined 06:42 patrickb90 joined 06:46 patrickb left 06:54 patrickb90 left 06:56 domidumont joined 07:08 frost-lab left 07:35 patrickb joined 07:50 frost-lab joined 07:58 MasterDuke joined 08:00 frost-lab left 08:17 frost-lab joined 09:40 evalable6 left, linkable6 left 09:42 linkable6 joined, evalable6 joined
Geth rakudo: b1e4350f28 | (Elizabeth Mattijsen)++ | src/core.c/io_operators.pm6
Move opening of standard handles into Rakudo::Internals

To make it possible to call it from other places later.
rakudo/REPL-now: 5 commits pushed by (Elizabeth Mattijsen)++ 10:22
lizmat just a rebase 10:23
10:44 donaldh left
releasable6 Next release in ≈3 days and ≈7 hours. There are no known blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft 11:00
Geth rakudo/REPL-now: bca6d72917 | (Elizabeth Mattijsen)++ | src/core.c/REPL.pm6
Make "exit" not exit, but just leave the repl-loop

But only if called from the repl() sub
12:02 reportable6 left 12:04 reportable6 joined 12:06 MasterDuke left 12:11 MasterDuke joined 12:14 patrickb left
Geth rakudo: 0bf10e2600 | (Elizabeth Mattijsen)++ | src/core.c/Array/Shaped.pm6
Partial fix for #4363

Fixes the my @a[1]; my @b[1]; @a = @b case.
12:28 linkable6 left 12:31 linkable6 joined
Geth rakudo: ede453e1f2 | (Elizabeth Mattijsen)++ | 2 files
Fix thinko in native shaped array generator script

Fixes #4363
12:43 linkable6 left 12:46 linkable6 joined
Geth roast: eebf73bb88 | (Elizabeth Mattijsen)++ | 2 files
Add tests for #4363
12:47 patrickb joined
Geth rakudo: 21a60e17e5 | (Elizabeth Mattijsen)++ | t/02-rakudo/reproducible-builds.t
Fix #4362

The :bin is superfluous, and it was previously ignored (until the sub versions of many io operators got refactored by yours truly).
12:59 linkable6 left 13:01 linkable6 joined
Geth rakudo/run-throw: 6408e94f64 | (Elizabeth Mattijsen)++ | src/core.c/Proc.pm6
Add :throw named argument to run()

Basically, this will just run the same logic as sinking, causing a failure to be thrown immediately, instead of silently continuing. And this not producing any output with :out.
Also some style changes to run() to make it better readable
rakudo: lizmat++ created pull request #4368:
Add :throw named argument to run()
13:23 uzl[m] left 13:30 uzl[m] joined, chansen_ left 13:33 chansen_ joined 13:42 chansen_ left 13:43 chansen_ joined 13:50 cog joined 13:59 vrurg left, vrurg_ joined 14:00 eater left 14:01 samcv_ joined, Kaiepi left, Kaiepi joined, patrickb left, samcv left, eaterof joined, mst joined 14:02 patrickb joined 14:20 b2gills left 14:21 b2gills joined
Geth rakudo: 1d8d05f5bc | (Elizabeth Mattijsen)++ | src/core.c/allomorphs.pm6
Fix #4368

First coerce the allomorph to a string, then create a Prozy for it
14:59 linkable6 left
lizmat actually, #4369 15:02
15:02 linkable6 joined
lizmat afk for a few hours& 15:04
15:30 linkable6 left 15:31 linkable6 joined 16:42 domidumont left
Geth rakudo/rakuast: 47ce5ad7a4 | (Jonathan Worthington)++ | 2 files
RakuAST node for \o, \x, and \c in regexes
[Coke] wonders if we need a roast test for that since we "got it wrong" so far? 17:17
17:22 patrickb left
lizmat [Coke]: we need a *lot* of allomorph related tests 17:26
MasterDuke i think [Coke] was referring to github.com/rakudo/rakudo/commit/47...dff160R509 17:41
17:42 samcv_ is now known as samcv, samcv left, samcv joined 18:02 reportable6 left 18:03 reportable6 joined
Geth rakudo: tbrowder++ created pull request #4371:
Provide a method returning a real 'posix' value
tbrowder .tell lizmat my horse bolted at the gate--sorry 18:19
tellable6 tbrowder, I'll pass your message to lizmat
lizmat tbrowder: no problem :-) 18:21
tbrowder but how would you improve what you already suggested (without lots of other changes)? 18:22
lizmat locally I already have: 18:23
$ r 'use v6.*; dd DateTime.now.posix'
$ r 'use v6.d; dd DateTime.now.posix'
tbrowder hm, lizmat the raku magician! 18:25
ah, the ~17 sec diff..been there, done that 18:26
internals? 18:27
lizmat no just lazy, waiting 17 seconds between running that piece of code :-)
or more like 20 actually 18:28
$ r 'use v6.* say DateTime.new(2021,5,18,20,30,42.5).posix' 18:35
$ r 'use v6.d say DateTime.new(2021,5,18,20,30,42.5).posix' 18:36
so no difference if you go by the same DateTime value
tbrowder so 6.* vs 6.d? that's cheating ;-D 18:41
well retro seems to be popular among some moderns 18:43
Geth rakudo/posix-real: 7d3dc5dc39 | (Elizabeth Mattijsen)++ | src/core.e/core_prologue.pm6
Make DateTime.posix return a fractional value in 6.e

This is really a proof-of-concept. It basically saves the DateTime class that is known at the beginning of parsing the 6.e core setting as "DateTimeD", and then creates a DateTime class that inherits from
  "DateTimeD". Several notes to make about this:
... (12 more lines)
18:46 MasterDuke left
Geth rakudo: lizmat++ created pull request #4372:
Make DateTime.posix return a fractional value in 6.e
lizmat tbrowder: 6.* is just short for 6.e.PREVIEW atm
tbrowder ok, thnx 18:48
wow, deep magic! makes my head hurt. can my PR be used before 'e'? 18:52
lizmat I'd like to hear jnthn's opinion about my proposal 18:53
tbrowder although that's kind of like the magic you showed me earlier to subclass DateTime 18:54
lizmat I feel moving forward, having posix return a Real value feels better than adding named args now
yeah, that was the inspiration :-)
tbrowder any updated estimate on release of e? 19:02
lizmat probably not before RakuAST lands, and that's Q4 by the looks of it now 19:05
19:15 camelia left 19:16 nine left 19:18 MasterDuke joined 19:22 japhb left 19:24 japhb joined 19:34 camelia joined 19:37 camelia left 19:38 nine joined 19:39 nine left 19:43 nine joined 19:45 camelia joined
Geth rakudo: 17c55f3ccb | (Elizabeth Mattijsen)++ | src/core.c/DateTime.pm6
Make DateTime.posix about 12x as fast

While looking at the code, and how it handled the "ignore timezone" option, it occurred to me that `posix` actually doesn't care about leap seconds. And the timezone is expressed in seconds. So the quick way to get a posix value is just to subtract the timezone value from the result of the Claus Tøndering algorithm.
Also make DateTime.posix a multi, so a. it can easily accomodate other candidates, and b. to make the common case (do *not* ignore timezone) much better optimizable.
lizmat tbrowder might like that :-)
tbrowder so, your PR gets closer to mine but with a bonus speed-up, nice! 20:04
mine has the same proto plus only three lines for my new multi (which would need a tweak... 20:05
i understand yr wanting to wait to move to 'e' for the real return, and as has been demoed in my latest roast merge, the 6.d user can get a real posix value with a modicum of work. 20:09
but, what is the downside of adding my multi now: a new multi to be deprecated in 'f'? 20:11
and two for the price of one in 'e'? 20:12
oh, the inpatience of youth :-) 20:13
Geth rakudo: ec8b1ae77a | (Elizabeth Mattijsen)++ | src/core.c/DateTime.pm6
Relax the return sig of DateTime.posix

To be compatible with any future versions
roast: stoned++ created pull request #735:
Add tests for substr-rw on allomorph types
roast: 54e060b0c5 | (Stoned Elipot)++ | S02-literals/allomorphic.t
Add tests for substr-rw on allomorph types

ref rakudo/rakudo#4369
roast: f3256405d3 | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | S02-literals/allomorphic.t
Merge pull request #735 from stoned/allomorph-substr-rw

Add tests for substr-rw on allomorph types
20:34 linkable6 left 20:37 linkable6 joined
lizmat tbrowder :-) 20:39
Geth rakudo/posix-real: 96b8126f54 | (Elizabeth Mattijsen)++ | src/core.e/core_prologue.pm6
Make DateTime.posix return a fractional value in 6.e

This is really a proof-of-concept. It basically saves the DateTime class that is known at the beginning of parsing the 6.e core setting as "DateTimeD", and then creates a DateTime class that inherits from
  "DateTimeD". Several notes to make about this:
... (12 more lines)
rakudo/posix-real: 517827f4d5 | (Elizabeth Mattijsen)++ | src/core.e/core_prologue.pm6
Update to new multi version of DateTime.posix

As a bonus, only the bare candidate needs to be defined.
tbrowder hm, have you tested against spectest? 20:52
lizmat yes 21:03
tbrowder cool! 21:08
22:01 dogbert17 joined 22:06 dogbert11 left
Geth nqp: MasterDuke17++ created pull request #723:
Use Win32 native API to get file changetime on JVM
japhb , plus 22:40
tbrowder well, i guess i'll have to add a real posix method to DateTime::Posix 22:51
er, DateTime::Julian 22:52
23:06 evalable6 left, linkable6 left 23:07 evalable6 joined 23:08 linkable6 joined 23:25 AlexDaniel` left 23:26 patrickbkr[m] left 23:43 AlexDaniel` joined 23:46 patrickbkr[m] joined 23:59 mst left