[00:00] *** reportable6 left
[00:02] *** reportable6 joined
[00:25] *** jpn joined
[00:30] *** jpn left
[00:37] *** bigdata joined
[01:16] *** bigdata left
[01:37] *** rf left
[02:01] *** rf joined
[02:06] *** Util left
[02:25] *** teatwo left
[02:25] *** teatwo joined
[02:29] *** zapwai joined
[02:30] *** teatwo left
[02:30] *** teatwo joined
[02:47] *** teatwo left
[02:47] *** teatwo joined
[02:53] *** rf_ joined
[02:55] *** rf left
[03:07] *** jpn joined
[03:12] *** jpn left
[03:48] *** teatwo left
[03:50] *** teatime joined
[04:00] *** leah2 left
[04:05] *** rf_ left
[04:13] *** leah2 joined
[05:13] *** reportable6 left
[05:13] *** linkable6 left
[05:13] *** committable6 left
[05:13] *** evalable6 left
[05:13] *** notable6 left
[05:13] *** bisectable6 left
[05:13] *** sourceable6 left
[05:13] *** coverable6 left
[05:13] *** greppable6 left
[05:13] *** bloatable6 left
[05:13] *** statisfiable6 left
[05:13] *** shareable6 left
[05:13] *** nativecallable6 left
[05:13] *** squashable6 left
[05:13] *** unicodable6 left
[05:13] *** releasable6 left
[05:13] *** benchable6 left
[05:13] *** quotable6 left
[05:13] *** tellable6 left
[05:14] *** benchable6 joined
[05:14] *** linkable6 joined
[05:14] *** quotable6 joined
[05:14] *** reportable6 joined
[05:15] *** coverable6 joined
[05:15] *** bisectable6 joined
[05:15] *** unicodable6 joined
[05:15] *** shareable6 joined
[05:15] *** nativecallable6 joined
[05:15] *** greppable6 joined
[05:15] *** committable6 joined
[05:15] *** evalable6 joined
[05:16] *** notable6 joined
[05:16] *** squashable6 joined
[05:16] *** releasable6 joined
[05:16] *** tellable6 joined
[05:16] *** statisfiable6 joined
[05:16] *** sourceable6 joined
[05:16] *** bloatable6 joined
[05:25] *** zapwai left
[06:00] *** reportable6 left
[06:02] *** reportable6 joined
[07:02] *** benchable6 left
[07:02] *** coverable6 left
[07:03] *** coverable6 joined
[07:04] *** benchable6 joined
[07:24] *** jpn joined
[08:11] *** sena_kun joined
[08:31] *** jpn left
[08:49] *** bigdata joined
[09:00] *** jpn joined
[09:19] *** bigdata left
[09:38] *** Sgeo left
[10:30] *** jpn left
[10:33] *** jpn joined
[11:03] *** jpn left
[11:10] *** derpydoo left
[11:20] <tbrowder__> .tell Voldenet at least for my case, reading a file and generating the large hash is faster than putting it in a module and "use"ing it. i thought the .precomp would be the faster route, but it seems not. i don't have good time stats, but dynamic is definitely faster.

[11:20] <tellable6> tbrowder__, I'll pass your message to Voldenet

[11:41] <Voldenet> tbrowder__: that's surprising, I'd expect static data being loaded a lot faster

[11:41] <tellable6> hey Voldenet, you have a message: https://gist.github.com/329ab19a35598953e0494aaaf8fd1f05

[11:43] <Voldenet> the only good explanation is that generating the hash is cheap, but underlying data structures are somewhat heavy (so static data has the same cost, but with additional cost of loading the file)

[12:00] *** reportable6 left
[12:01] *** reportable6 joined
[12:59] *** jpn joined
[13:02] <tbrowder__> Voldenet: i may have fooled myself but i'll look closer later

[13:04] *** jpn left
[14:30] *** teatime left
[14:31] *** teatime joined
[14:36] *** teatwo joined
[14:39] *** teatime left
[15:05] *** dogbert17 joined
[15:17] *** guifa joined
[16:07] <[Coke]> https://github.com/Raku/doc/blob/main/doc/Language/contexts.rakudoc#L142 - this is not rendered as code, but as a paragraph. This is a recent-ish change that is causing several tests to fail in raku/doc

[16:07] <[Coke]> Not sure if we can craft a whateverable to highlight this, but will try to do a bisect to find it.

[16:08] <[Coke]> most other code blocks in that file? still fine, showing as "code" (That is, with a four space indent on render)

[16:13] <[Coke]> (rendering is using raku --doc ...)

[16:17] *** evalable6 left
[16:18] *** evalable6 joined
[16:21] <lizmat> [Coke] and without RAKUDO_RAKUAST=1 I assume

[16:22] <[Coke]> (We only run the extended tests on files that changed, so easy to miss something that changed behavior on an untouched doc file)

[16:22] <[Coke]> lizmat: correct.

[16:22] <[Coke]> ~500 more revisions to check. :)

[16:23] <lizmat> fwiw, I stay away from the old pod grammar / actions as far as I can

[16:24] <[Coke]> +1

[16:28] <[Coke]> crap.

[16:28] <[Coke]> False alarm - my cache of pod documents was bad.

[16:28] <[Coke]> (yet another reason to move to rakuast processing here, so I don't even need a cache)

[16:30] <lizmat> *phew*  and: indeed :-)

[16:31] <[Coke]> I *think* the cache is thread safe, but maybe not. I just wiped it, ran the one problematic test (warming the cache), and am now running all of xtest.

[16:32] <[Coke]> ... yup, all fine now. Sorry for the false alarm, liz.

[16:33] <lizmat> no worries  :-)

[16:33] *** ab5tract joined
[16:34] <[Coke]> as I recall, my one "blocker" to switching directly to rakuast is that it doesn't mimic --doc 100%. Is that a goal?

[16:34] <lizmat> --doc is identical afaik

[16:34] <[Coke]> I can submit tickets for discrepencies I find if you like.

[16:34] <lizmat> please do, they *should* produce the same output and do for the spectests that exist

[16:34] <[Coke]> ... ok. I thought I had found a lot of discrepencies, but maybe i was comparing against this janky cache.

[16:35] <lizmat> well, it took a *lot* of tweaking to get it byte-for-byte the same

[16:35] <lizmat> it handles the rakudoc of App::Rak 100%

[16:35] <lizmat> and that's a relative biggy

[16:37] *** synthmeat left
[16:44] <[Coke]>  if nqp::getenvhash()<RAKUDO_RAKUAST>

[16:44] <[Coke]> will that trigger only if it's truthy, or would a 0 also trigger it?

[16:45] <lizmat> m: use nqp; say "foo" if if nqp::getenvhash<RAKUDO_RAKUAST>

[16:45] <camelia> rakudo-moar 9db68fbef: OUTPUT: «===SORRY!=== Error while compiling <tmp>␤Undeclared routine:␤    if used at line 1␤␤»

[16:45] <lizmat> m: use nqp; say "foo" if  nqp::getenvhash<RAKUDO_RAKUAST>

[16:45] <camelia> rakudo-moar 9db68fbef: ( no output )

[16:45] <[Coke]> I assume that's empty vs. 0, though.

[16:46] <lizmat> RAKUDO_RAKUAST=0 raku -e 'use nqp; say "foo" if  nqp::getenvhash<RAKUDO_RAKUAST>'

[16:46] <lizmat> foo

[16:46] <lizmat> nope

[16:46] <lizmat> it's a string, not a number

[16:46] <lizmat> RAKUDO_RAKUAST= raku -e 'use nqp; say "foo" if  nqp::getenvhash<RAKUDO_RAKUAST>'

[16:46] <lizmat> (no output)

[16:46] <[Coke]> Thanks

[16:51] <[Coke]> RAKUDO_RAKUAST=1 raku --doc doc/Language/101-basics.rakudoc gets a compile time error

[16:51] <[Coke]> ... will let this whole thing run to completion and update my gist

[16:52] <lizmat> ok, will look at that one: at first sight it is an error in a sorry reporting

[16:54] <lizmat> looks like a =table error

[16:56] <[Coke]> If there's a pod6 bug that was previously undetected, I'm OK with updating the doc file.

[16:56] <lizmat> Table has a mixture of visible and invisible column-separator types

[16:56] <lizmat> in line '$line       'Ana Dave \| 3:0''

[16:57] <lizmat> line numbers are still off in RakuAST

[16:57] <lizmat> in error reporting: NYI

[16:57] <[Coke]> # You failed 222 tests of 419

[16:57] <[Coke]> https://gist.github.com/coke/0c72e45c4f5f41d3383085102b68e085

[16:58] <[Coke]> if it says "error occurred caching" it's a compile time error, if it's a doesn't match, it ran successfully but generated different output

[17:00] <lizmat> line 237, apparently \| is not interpreted as an escaped column divier

[17:00] <lizmat> line 237, apparently \| is not interpreted as an escaped column divider

[17:00] <lizmat> that's a problem in RakuAST that I need to look at  :-)

[17:01] <lizmat> consider that gist assigned to me :-)

[17:05] <[Coke]> I added it as a test in rakudoc to give you something you can run to check progress.

[17:05] <[Coke]> RAKUDO_AST_DOCS=1 xt/rakuast-compare.rakutest (without the var, it skips everything)

[17:05] <lizmat> thanks!

[17:14] *** bigdata joined
[17:14] *** bigdata left
[17:15] *** ab5tract left
[17:48] <ingy> https://github.com/acmeism/RosettaCodeData I updated this for the first time in years. (Conference driven development! :)

[17:49] <ingy> I had to rewrite the scraping tools, because of RC formatting changes.

[17:49] <ingy> THe good news is everything is a lot more accurate than in the past.

[17:50] <ingy> Also I added some simple data analysis tools, and they show Raku is doing well in RC

[17:50] <ingy> https://gist.github.com/ingydotnet/708276842a78d53b0061a0833e640118

[17:51] <ingy> Perl too!

[17:52] <[Coke]> ingy++

[18:00] *** reportable6 left
[18:03] *** reportable6 joined
[18:17] <[Coke]> lizmat: added an option, so you can do this: TEST_FILES=doc/Language/contexts.rakudoc RAKUDO_AST_DOCS=v  xt/rakuast-compare.rakutest

[18:17] <lizmat> thanks!

[18:17] <[Coke]> would only do it with one test file; but if you do, it also emits a diff.

[18:17] <[Coke]> er, commiting now

[18:26] <[Coke]> looks like X<|Reference,SlurpySentry> is getting rendered.

[18:26] <lizmat> yeah

[18:26] <[Coke]> that's prbably a huge number of the issues.

[18:26] <lizmat> think I found it, stupid thinko in a recent refactor

[18:31] <lizmat> and another one bites the dust: https://github.com/rakudo/rakudo/commit/93dd19f8db

[18:34] <[Coke]> rebuilding...

[18:34] <lizmat> ok, looks like the old doc::to::text is removing whitespace from X<>

[18:35] <lizmat> so X<foo |bar>baz    is rendered as "foobaz" rather than "foo baz"

[18:41] *** synthmeat joined
[18:42] <tbrowder__> hi, need some help with a test

[18:49] <[Coke]> now at 211 failures down from 222

[18:50] <[Coke]> gist updated

[19:00] *** kst left
[19:04] <tbrowder__> in a module repo i have a /bin/script. i want to run a lives-ok { run "./bin/script" } test. i test it by running raku -Ilib t/test.t and it fails with unable to find a module

[19:05] <tbrowder__> in the test.t i "use Test; use NecessaryModule:"

[19:06] <tbrowder__> the code is public on github.com/tbrowder/FontFactory

[19:09] <tbrowder__> s/:/;/

[19:09] <lizmat> and if you run it with -I. ?

[19:15] <tbrowder__> ah, i'll try that!

[19:17] <lizmat> generally, when testing a module as a developer, you should use -I. rather than -Ilib

[19:17] <lizmat> because -I. allows Raku to interpret the META6.JSON file

[19:21] <tbrowder__> ah, thanks! but it still didn't work on the single run. HOWEVER, using "mi6 test" did work and captured an error in the run.

[19:21] *** Sgeo joined
[19:24] <tbrowder__> actually, it looks like the failure to find module error was a red herring. reading more closely pointed out another failure msg from the tested script and module, and mi6 more clearly separated the two errors.

[19:25] <tbrowder__> glad to hear progress on the rakupod front!

[19:25] <lizmat> glad to hear you found it

[19:26] <tbrowder__> this sounding board helps!

[19:26] <lizmat> :-)

[19:42] *** kst joined
[19:49] <[Coke]> I'm one commit behind HEAD and lizmat has it down to 95 failures so far

[19:49] <[Coke]> building again...

[19:52] *** jpn joined
[20:00] *** jpn left
[20:04] <[Coke]> 49...

[20:09] *** rf joined
[20:09] <rf> lizmat: I think docs.raku.org is dead

[20:09] <lizmat> looks alive to me

[20:10] <[Coke]> 47

[20:10] <rf> I'm getting 404's on /language/hashmap

[20:10] <lizmat> if you're getting a 404, then it's not dead, that's a wrong lnk

[20:10] <lizmat> *link

[20:11] <lizmat> and probably worthy of making an issue

[20:11] <rf> Yeah if you look in raku-doc it seems to be effecting other people too

[20:11] <rf> For example the index is hanging

[20:19] *** sena_kun left
[20:22] <rf> Got a new module coming out monday :)

[20:25] <lizmat> nice

[20:44] *** whatnext joined
[20:50] <whatnext> hello all :)  what would you say is the most concise way of doing the following: say I have an arbitrary length array `@a`, and I want to create a new array composed of the first `$N` elements (if more than `$N` exist) or all elements if the length of `@a` is less than `$N` ?

[20:52] <gfldex> m: my @a = ^5; dd @a.head(3); dd @a.head(10);

[20:52] <camelia> rakudo-moar 101d3ca5d: OUTPUT: «(0, 1, 2).Seq␤(0, 1, 2, 3, 4).Seq␤»

[20:52] <gfldex> Not sure how head will deal with holes tho.

[20:54] <whatnext> ah I didn't know about `head` - thanks for the tip. What do you mean by "holes" ?

[20:55] <gfldex> Technically, a Positional may have discontinous indices. Punching holes into Array is hard and requires nqp-trickery;

[20:55] <gfldex> So you are unlikely to encounter them.

[20:56] <whatnext> ah ok... I think `head` will serve my purpose well then - thanks for that :)

[20:58] <gfldex> whatnext: in case you wish to deal with holes, here is a recipe: https://gfldex.wordpress.com/2022/09/29/rabbitholeing/

[20:58] *** jpn joined
[21:02] <whatnext> that looks pretty complex! Thanks I will bear it in mind :)

[21:19] *** deoac joined
[21:25] *** jpn left
[21:41] *** jpn joined
[22:00] <discord-raku-bot> <librasteve> m: say my $N = 3; my @a = 0..5; my @b = +@a > $N ?? @a[0..^$N] !! @a;

[22:00] <discord-raku-bot> <Raku eval>  3 

[22:01] <discord-raku-bot> <librasteve> my $N = 3; my @a = 0..5; my @b = +@a > $N ?? @a[0..^$N] !! @a; say @b;

[22:02] <discord-raku-bot> <librasteve> m: my $N = 3; my @a = 0..5; my @b = +@a > $N ?? @a[0..^$N] !! @a; say @b;

[22:02] <discord-raku-bot> <Raku eval>  [0 1 2] 

[22:04] <discord-raku-bot> <librasteve> m: my $N = 3; my @a = 0..1; my @b = @a.head: $N; say @b;

[22:04] <discord-raku-bot> <Raku eval>  [0 1] 

[22:11] *** jpn left
[23:11] *** quotable6 left
[23:11] *** reportable6 left
[23:11] *** coverable6 left
[23:11] *** notable6 left
[23:11] *** unicodable6 left
[23:11] *** committable6 left
[23:11] *** benchable6 left
[23:11] *** nativecallable6 left
[23:11] *** sourceable6 left
[23:11] *** linkable6 left
[23:11] *** bisectable6 left
[23:11] *** releasable6 left
[23:11] *** shareable6 left
[23:11] *** tellable6 left
[23:11] *** greppable6 left
[23:11] *** statisfiable6 left
[23:11] *** evalable6 left
[23:11] *** squashable6 left
[23:11] *** bloatable6 left
[23:11] *** shareable6 joined
[23:11] *** statisfiable6 joined
[23:11] *** unicodable6 joined
[23:12] *** notable6 joined
[23:12] *** sourceable6 joined
[23:13] *** coverable6 joined
[23:13] *** greppable6 joined
[23:13] *** squashable6 joined
[23:13] *** releasable6 joined
[23:13] *** quotable6 joined
[23:13] *** bisectable6 joined
[23:13] *** nativecallable6 joined
[23:13] *** tellable6 joined
[23:13] *** committable6 joined
[23:13] *** reportable6 joined
[23:14] *** evalable6 joined
[23:14] *** linkable6 joined
[23:14] *** bloatable6 joined
[23:14] *** benchable6 joined
[23:30] *** jpn joined
