00:25
leont left
00:54
Altai-man_ joined
00:56
sena_kun left
02:13
AlexDani` joined
02:15
AlexDaniel left
02:28
vrurg left
02:29
vrurg joined
02:32
vrurg_ joined
02:33
vrurg left
02:55
sena_kun joined
02:56
Altai-man_ left
03:37
vrurg_ is now known as vrurg
04:53
softmoth__ left
04:54
Altai-man_ joined
04:56
sena_kun left
06:03
[TuxCM] left
06:55
sena_kun joined
06:57
Altai-man_ left
|
|||||||||||||||||||||||||||||||||||||||
[Tux] |
|
07:06 | |||||||||||||||||||||||||||||||||||||
07:50
leont joined
|
|||||||||||||||||||||||||||||||||||||||
sena_kun | releasable6, status | 08:15 | |||||||||||||||||||||||||||||||||||||
releasable6 | sena_kun, Next release in ≈5 days and ≈10 hours. 1 blocker. 143 out of 287 commits logged (⚠ 4 warnings) | ||||||||||||||||||||||||||||||||||||||
sena_kun, Details: gist.github.com/4739d87294b82c0edc...d4fa1b1110 | |||||||||||||||||||||||||||||||||||||||
sena_kun | RFC: gist.github.com/Altai-man/b0d23ec5...37cddf3bc9 | 08:47 | |||||||||||||||||||||||||||||||||||||
08:54
Altai-man_ joined
08:57
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | Files=1306, Tests=111379, 216 wallclock secs (29.12 usr 8.41 sys + 3020.47 cusr 284.51 csys = 3342.51 CPU) | 09:08 | |||||||||||||||||||||||||||||||||||||
AlexDani` | Altai-man_: does it have to be separate from docs? | 09:56 | |||||||||||||||||||||||||||||||||||||
09:56
AlexDani` is now known as AlexDaniel,
AlexDaniel left,
AlexDaniel joined
|
|||||||||||||||||||||||||||||||||||||||
Altai-man_ | AlexDaniel, I think - yes, though I expect them to share new UI as they do now, so not so different. Docs describe language itself. Examples website describe something like transition from "English task -> Raku" and "Concept -> Usages" for the first idea described, and a manual for the second idea. | 09:59 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | that's just needless separation | ||||||||||||||||||||||||||||||||||||||
I'm reading the document and for every point I'm pretty much thinking “yeah, because it's not part of the docs” | 10:00 | ||||||||||||||||||||||||||||||||||||||
combining the website will also allow more or less seamless linking between both | 10:01 | ||||||||||||||||||||||||||||||||||||||
websites* | |||||||||||||||||||||||||||||||||||||||
Here's an example, wanna learn more? Here are the docs. | |||||||||||||||||||||||||||||||||||||||
Here are some docs. Wanna see how it can be used for practical tasks? Here are some examples. | |||||||||||||||||||||||||||||||||||||||
Altai-man_ | Number of docs UI/navigation issues will be fixed with new design. A complete re-design of docs structure is out of scope. And more resources (if they are more or less good in terms of quality) is better than less. There are tons of sites around describing the same things in java/python/whatever and they don't think in terms of "Oh, but we have langauge docs already". | 10:02 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | whatever. | 10:03 | |||||||||||||||||||||||||||||||||||||
Altai-man_ | More pages -> more visibility -> more google, attention, people, stuff like TIOBE etc. | 10:04 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | there are countless smaller websites we have (or had) that just rot and don't get enough dev attention | 10:07 | |||||||||||||||||||||||||||||||||||||
all because somebody thought that it's a good idea to create a separate website | |||||||||||||||||||||||||||||||||||||||
now, I can *maybe* understand that for things like alerts.perl6.org, although in hindsight it was a mistake | 10:08 | ||||||||||||||||||||||||||||||||||||||
but examples.raku.org is extremely doc-like | |||||||||||||||||||||||||||||||||||||||
Altai-man_ | The discussion is about reviving one of these sites in terms which are more suitable for 2020, not 2008, not creating a completely different, new thing. | 10:09 | |||||||||||||||||||||||||||||||||||||
But maybe you are correct. | |||||||||||||||||||||||||||||||||||||||
AlexDaniel, can you please describe how do you imagine the doc website structure which incorporates some of the things described (cookbook, showoffs for features)? | 10:10 | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | At the very least, the detailed examples of features can be accomplished just by making the documentation more detailed. The cookbook portion would definitely be a separate category of pages on the docs.raku.org website, if part of it at all. | 10:13 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | where's the latest version? | 10:15 | |||||||||||||||||||||||||||||||||||||
examples.perl6.org | |||||||||||||||||||||||||||||||||||||||
this redirects to p6c.dev, and examples.raku.org is just the default server page | |||||||||||||||||||||||||||||||||||||||
the docs are already structured somewhat, just have an Examples tab just like we had before (I guess it was removed because examples. subdomain was down or was just bad?) | 10:17 | ||||||||||||||||||||||||||||||||||||||
rba | This domain mismatch I could fix. Content not though. | ||||||||||||||||||||||||||||||||||||||
tellable6 | 2020-06-11T10:00:56Z #raku <patrickb> rba There are two new versions of rakubrew (v10 and v11) on rooster.uber.space/patcloud/index....EJLQDZcjbf Can you upload? | ||||||||||||||||||||||||||||||||||||||
Altai-man_ | ShimmerFairy, extermely detailed documentation can be seen as both merit and de-merit. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | I don't think I ever complained about too detailed documentation :) | 10:19 | |||||||||||||||||||||||||||||||||||||
ShimmerFairy | The only problem with detailed documentation is if you're really bad at writing, because then you're really bad at writing for a long time. | 10:20 | |||||||||||||||||||||||||||||||||||||
Altai-man_ | AlexDaniel, just having an url from docs to examples website does not solve the main problem I am trying to tackle: categories on example website are rotten and not targeted to potential users. See the ticket in user-experience repo describing that. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | I'm saying it can be a tab with its own categories | 10:22 | |||||||||||||||||||||||||||||||||||||
or maybe an index of some sort | |||||||||||||||||||||||||||||||||||||||
ShimmerFairy | (also, minor note: I don't think publishing euler problem solutions is a good idea, both because the euler people really don't like it when people do that, and because they're supposed to be puzzles you have to work out yourself) | 10:23 | |||||||||||||||||||||||||||||||||||||
Altai-man_ | AlexDaniel, roger. Imagining we have a single website for docs. Besides "language", "types", we now also have "examples" tab. You go there. What stuff can you see there and how is it organized, based on (possibly revised or re-organized) examples we have? | 10:26 | |||||||||||||||||||||||||||||||||||||
nine | Wherever they are, it would be beneficial if examples were at least linked from appropriate places in the docs. | 10:41 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | Altai-man_: if there are some major categories then we can have subtabs. Otherwise maybe something like docs.raku.org/language.html ? | 10:43 | |||||||||||||||||||||||||||||||||||||
a lot of categories on p6c have just a few examples: examples.p6c.dev/categories/module...ement.html | 10:44 | ||||||||||||||||||||||||||||||||||||||
I mean, I can't give you a definite answer, that needs to be figured out | 10:46 | ||||||||||||||||||||||||||||||||||||||
Altai-man_ | AlexDaniel, oh, sorry, I miswrote that. I meant structure of content itself. Now we have categories like Rosettacode, 99 problems, answers to perlmonks questions and so on. | ||||||||||||||||||||||||||||||||||||||
Do you suggest they should leave as that, just more integrated into docs website or? | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | shouldn't 99 problems be a single page with a ToC? | 10:47 | |||||||||||||||||||||||||||||||||||||
Altai-man_ | s/leave/be left/ | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | yea, I see docs integration and categorization as two separate questions | ||||||||||||||||||||||||||||||||||||||
for example, once somebody implement editable&runnable snippets on the docs website, we shouldn't need to duplicate that effor for a separate website | 10:48 | ||||||||||||||||||||||||||||||||||||||
Altai-man_ | Whatever it is designed into, UI does not matter much right now. In fact, I am trying to get opinions about structure of the website to pass it to a designer, because you can really plan UI without knowing how the content is organized. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | so it's much easier to implement differences where we need them instead of reimplementing everything else just because something sounds like a different concept | ||||||||||||||||||||||||||||||||||||||
just looking at it briefly: 99 problems should be a single page, Rosettacode should simply be a link (or a set of links) to rosettacode, Cookbook is another single page, Euler should be removed according to ShimmerFairy, Rosalind is perhaps similar to Euler (I don't know), Tutorial section should be moved to Doc tutorials (we already have them), … | 10:53 | ||||||||||||||||||||||||||||||||||||||
and just remove questionable examples | 10:55 | ||||||||||||||||||||||||||||||||||||||
10:55
sena_kun joined
10:56
patrickb joined
|
|||||||||||||||||||||||||||||||||||||||
patrickb | o/ | 10:57 | |||||||||||||||||||||||||||||||||||||
tellable6 | 2020-06-14T11:26:30Z #raku-dev <AlexDaniel> patrickb: but nevermind, just letting you know. I just changed the dep in whateverable and it should be fine | ||||||||||||||||||||||||||||||||||||||
hey patrickb, you have a message: gist.github.com/67e9aa965be37cfe59...514a8ebf24 | |||||||||||||||||||||||||||||||||||||||
10:57
Altai-man_ left
|
|||||||||||||||||||||||||||||||||||||||
sena_kun | o/ | 10:57 | |||||||||||||||||||||||||||||||||||||
Kaiepi | m: my ($a, $b, @c) = "no_op :confprog".split(/\s+/); say $a, " ", $b, " ", @c | 11:52 | |||||||||||||||||||||||||||||||||||||
camelia | no_op :confprog [g] | ||||||||||||||||||||||||||||||||||||||
Kaiepi | where's the g in @c coming from? | ||||||||||||||||||||||||||||||||||||||
MasterDuke | bisectable6: old=2020.05.1 my ($a, $b, @c) = "no_op :confprog".split(/\s+/); say $a, " ", $b, " ", @c | 11:54 | |||||||||||||||||||||||||||||||||||||
bisectable6 | MasterDuke, Bisecting by output (old=2020.05.1 new=219199b) because on both starting points the exit code is 0 | ||||||||||||||||||||||||||||||||||||||
MasterDuke, bisect log: gist.github.com/8882a9106335b03420...ed7fd97a6d | |||||||||||||||||||||||||||||||||||||||
MasterDuke, (2020-06-06) github.com/rakudo/rakudo/commit/9c...809b506f73 | |||||||||||||||||||||||||||||||||||||||
MasterDuke | lizmat: ping ^^^ | 11:55 | |||||||||||||||||||||||||||||||||||||
sena_kun | Kaiepi, can you please create a rakudo ticket? | ||||||||||||||||||||||||||||||||||||||
Kaiepi | sure | ||||||||||||||||||||||||||||||||||||||
lizmat | m: dd "no_op :confprog".split(/\s+/) | 11:58 | |||||||||||||||||||||||||||||||||||||
camelia | ("no_op", ":confprog").Seq | ||||||||||||||||||||||||||||||||||||||
lizmat | Kaiepi: ^^ is that what you expect ? | ||||||||||||||||||||||||||||||||||||||
Kaiepi | i think that's what it should be | ||||||||||||||||||||||||||||||||||||||
lizmat | that's what it is... but somehow the last char of the string winds up in @c weird | 11:59 | |||||||||||||||||||||||||||||||||||||
Kaiepi | tools/update_ops.p6 in moarvm is failing for me, that line in particular in src/core/oplist doesn't seem to get parsed right | ||||||||||||||||||||||||||||||||||||||
lizmat | yes, please a ticket: I'll look at it after the RWN | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | m: my ($a, $b, @c) = "no_op :confprod".split(/\s+/); say $a, " ", $b, " ", @c | 12:03 | |||||||||||||||||||||||||||||||||||||
camelia | no_op :confprod [d] | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | just wanted to make sure it really was taking the last character instead of just grabbing a 'g' from somewhere | ||||||||||||||||||||||||||||||||||||||
lizmat | m: my $i := "a b".split(/\s+/).iterator; dd $i.pull-one for ^3 # pull-one seems to work ok | 12:05 | |||||||||||||||||||||||||||||||||||||
camelia | "a" "b" IterationEnd |
||||||||||||||||||||||||||||||||||||||
jnthn | What about push-all? | ||||||||||||||||||||||||||||||||||||||
lizmat | m: "a b".split(/\s+/).iterator.push-all(my $b := IterationBuffer.new); dd $b # ok as well | ||||||||||||||||||||||||||||||||||||||
camelia | ("a", "b") | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | m: my ($a, $b, $c) = "no_op :confprod".split(/\s+/); say $a, " ", $b, " ", $c | ||||||||||||||||||||||||||||||||||||||
camelia | no_op :confprod (Any) | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | @c has to be an array var, it seems | 12:06 | |||||||||||||||||||||||||||||||||||||
lizmat | I think it *could* be that the iterator is called once *after* it has returned IterationEnd | ||||||||||||||||||||||||||||||||||||||
which would be a breach of contract | 12:08 | ||||||||||||||||||||||||||||||||||||||
the old iterator guarded against that, I think | |||||||||||||||||||||||||||||||||||||||
anyways... will look more in depth later | |||||||||||||||||||||||||||||||||||||||
timotimo | sena_kun: any particular reason to deploy cro rather than a fully static site? | 12:33 | |||||||||||||||||||||||||||||||||||||
sena_kun | timotimo, for docs or for examples? For docs: 1)better search without shipping a huge json; 2)easy ability to add checkboxes for serving e.g. 6.c, 6.d, 6.e docs, or having a light and dark color theme, more customization without huge urls; 3)easier serving of cross-pages (like docs.raku.org/routine/tail)... There are downsides, of course. | 12:38 | |||||||||||||||||||||||||||||||||||||
timotimo | thinking only of examples at this moment | 12:39 | |||||||||||||||||||||||||||||||||||||
i guess with the right design for the routes, setting up a http cache with days worth of expiration time could be doable | 12:41 | ||||||||||||||||||||||||||||||||||||||
will want to survive the inevitable slashdotting when one of the examples is deemed "ridiculous" by some community somewhere and suddenly thousands of people want to check it out at once | 12:42 | ||||||||||||||||||||||||||||||||||||||
sena_kun | timotimo, for examples: easier updates, I'd say. You can just throw in more examples and they will be served instead of re-generating everything or creating a rather complicated caching as was done with docs. And cro can be behind nginx with caching as well, so it is not like we are picking one over another. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | github.com/Raku/doc/issues/2906#is...-512984314 github.com/Raku/doc/issues/1246 | ||||||||||||||||||||||||||||||||||||||
I think there were more | |||||||||||||||||||||||||||||||||||||||
sena_kun | Yeah, just wanted to post those urls, AlexDaniel++ for beating me to it. | 12:43 | |||||||||||||||||||||||||||||||||||||
I mean, you can technically add more and more things on top of serving static files, of course. | 12:44 | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | When it comes to standard-specific information (like v6.c vs v6.d), I will always love the way en.cppreference.com handles marking things for different C and C++ standards. | 12:45 | |||||||||||||||||||||||||||||||||||||
sena_kun | github.com/Raku/doc/issues/2910 | ||||||||||||||||||||||||||||||||||||||
github.com/Raku/doc/issues/2929 | |||||||||||||||||||||||||||||||||||||||
That might be a nice solution, compared to having a distinction as java, python docs do with different versions. Still, we don't have a unified UI for this and right now it boils down to people writing "Added in 20XX.XX" alike notes. | 12:48 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | ShimmerFairy: can you elaborate? Is it just notes like (C++20) ? | 12:49 | |||||||||||||||||||||||||||||||||||||
because yeah, that's exactly what people are doing right now | 12:50 | ||||||||||||||||||||||||||||||||||||||
except that there's no unification and no styling | |||||||||||||||||||||||||||||||||||||||
ShimmerFairy | Yeah, it's those markers they put next to function signatures. The really nice thing is when parts of sentences are wrapped up in a box with the tag next to it, makes it really easy to tell what applies when. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | I like it. Simple. | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | If Pod support was up to speed, then you could write modules that'd let you do things like This function M<std:until-6.d|takes no arguments> M<std:since-6.d|takes 1 argument>. | 12:51 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | example here: docs.raku.org/language/unicode#Ent..._sequences | 12:52 | |||||||||||||||||||||||||||||||||||||
or: docs.raku.org/routine/ready | 12:53 | ||||||||||||||||||||||||||||||||||||||
12:54
Altai-man_ joined
|
|||||||||||||||||||||||||||||||||||||||
Altai-man_ | I am assuming the focus is changing from "A plan to revive examples (and get a new UI for docs for free)" to "A plan to improve docs with new UI and extend it to provide sections with examples, cookbooks and such (eventually abandoning examples repo)". | 12:54 | |||||||||||||||||||||||||||||||||||||
ShimmerFairy | In general I think cppreference gets it right with documenting a language (especially one specified with the mountain of legalese that ISO regularly produces) | 12:55 | |||||||||||||||||||||||||||||||||||||
12:56
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
ShimmerFairy | I think the general focus is "present examples that aren't hyper-focused on one method/sub/etc.", whatever direction that takes. | 12:56 | |||||||||||||||||||||||||||||||||||||
12:57
Altai-man_ is now known as sena_kun
|
|||||||||||||||||||||||||||||||||||||||
lizmat | notable6: weekly | 13:21 | |||||||||||||||||||||||||||||||||||||
notable6 | lizmat, 4 notes: gist.github.com/c1edb9687e6028dd98...159c99e6c1 | ||||||||||||||||||||||||||||||||||||||
13:26
mst left,
mst joined
|
|||||||||||||||||||||||||||||||||||||||
sena_kun | lizmat, noting just to make sure, please don't include the examples thing in the weekly if you plan to. | 13:26 | |||||||||||||||||||||||||||||||||||||
13:30
mst left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | I won't | 13:30 | |||||||||||||||||||||||||||||||||||||
13:30
mst joined,
mst left,
mst joined
|
|||||||||||||||||||||||||||||||||||||||
jnthn | greppable6: |@ | 13:31 | |||||||||||||||||||||||||||||||||||||
13:31
greppable6 left
|
|||||||||||||||||||||||||||||||||||||||
jnthn | o.O | 13:31 | |||||||||||||||||||||||||||||||||||||
13:32
greppable6 joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | y5 | 13:32 | |||||||||||||||||||||||||||||||||||||
greppable6: |@ | |||||||||||||||||||||||||||||||||||||||
jnthn: that's an interesting failure mode for sure… | |||||||||||||||||||||||||||||||||||||||
13:32
greppable6 left
|
|||||||||||||||||||||||||||||||||||||||
jnthn | Too many results, maybe? | 13:33 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | it has some protections against that | ||||||||||||||||||||||||||||||||||||||
[email@hidden.address] Main process exited, code=killed, status=9/KILL | |||||||||||||||||||||||||||||||||||||||
greppable6: |@ | |||||||||||||||||||||||||||||||||||||||
tellable6 | AlexDaniel, I'll pass your message to greppable6 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | eh | ||||||||||||||||||||||||||||||||||||||
jnthn: it's probably eating so much memory that the bot is just killed | 13:34 | ||||||||||||||||||||||||||||||||||||||
13:34
greppable6 joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | greppable6: |@ | 13:34 | |||||||||||||||||||||||||||||||||||||
13:35
greppable6 left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | yep, that's what happens | 13:35 | |||||||||||||||||||||||||||||||||||||
13:35
greppable6 joined
|
|||||||||||||||||||||||||||||||||||||||
jnthn | Ah, OK | 13:35 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | so too many results indeed, but in a weirdly bad way :) | ||||||||||||||||||||||||||||||||||||||
jnthn | greppable6: |% | 13:36 | |||||||||||||||||||||||||||||||||||||
Wonder if that's just as bad | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | jnthn: probably, that's a perl5 regex btw | ||||||||||||||||||||||||||||||||||||||
13:36
greppable6 left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | so |% is what, empty string or % ? I'm not sure | 13:36 | |||||||||||||||||||||||||||||||||||||
jnthn | ah, I was wanting it literally :) | ||||||||||||||||||||||||||||||||||||||
13:38
greppable6 joined
|
|||||||||||||||||||||||||||||||||||||||
jnthn | Curiously, CORE.setting has many more instances of flattening named args than positional ones | 13:39 | |||||||||||||||||||||||||||||||||||||
lizmat | jnthn: that;s because we cannot dispatch on an empty %_ | 13:40 | |||||||||||||||||||||||||||||||||||||
jnthn | Well, the properly seems true of modules too (though not for that reason) | 13:41 | |||||||||||||||||||||||||||||||||||||
MasterDuke | greppable6: \|(@|%) | 13:42 | |||||||||||||||||||||||||||||||||||||
greppable6 | MasterDuke, 2406 lines, 366 modules: gist.github.com/104ae9f26b8c810338...cb7736da14 | ||||||||||||||||||||||||||||||||||||||
tellable6 | 2020-06-15T13:33:46Z #raku-dev <AlexDaniel> greppable6: |@ | ||||||||||||||||||||||||||||||||||||||
jnthn | Thanks, that's quite inteersting. | 13:47 | |||||||||||||||||||||||||||||||||||||
Of course, hard to tell from some of the code I'm seeing what kind of morphic it is | 13:48 | ||||||||||||||||||||||||||||||||||||||
But I suspect polymorphism is represented much more often in flattening callsites than in non-flattening ones | 13:49 | ||||||||||||||||||||||||||||||||||||||
However, megamorphic ones seem to be in a relative minority | |||||||||||||||||||||||||||||||||||||||
In many cases where named ones are used for options, there's a small set of possible options in the context they're being used | 13:50 | ||||||||||||||||||||||||||||||||||||||
Often, potentially, an empty set | |||||||||||||||||||||||||||||||||||||||
It also seems quite a few of the positional ones are a variable, but relatively small, number of arguments | 13:51 | ||||||||||||||||||||||||||||||||||||||
I suspect there's quite a few polyvariant cases in those that actually are megamorphic...there's seemingly little literature about this. | 14:00 | ||||||||||||||||||||||||||||||||||||||
(That is, the actually callsite is megamorphic, but if you were to analyze it by caller, it would not be.) | 14:01 | ||||||||||||||||||||||||||||||||||||||
*actual | |||||||||||||||||||||||||||||||||||||||
lizmat | notable6: weekly reset | 14:24 | |||||||||||||||||||||||||||||||||||||
notable6 | lizmat, Moved existing notes to “weekly_2020-06-15T14:24:03Z” | ||||||||||||||||||||||||||||||||||||||
14:31
MasterDuke left
14:36
mst left,
mst joined
14:52
MasterDuke joined
14:54
Altai-man_ joined
14:56
patrickb left
14:57
sena_kun left
15:04
patrickb joined
|
|||||||||||||||||||||||||||||||||||||||
lizmat | and yet another Rakudo Weekly News hits the Net: rakudoweekly.blog/2020/06/15/2020-...proaching/ | 15:14 | |||||||||||||||||||||||||||||||||||||
[Coke] wonders if he's going to miss the cloud conference having already dropped the 10 bucks. :) | 15:15 | ||||||||||||||||||||||||||||||||||||||
lizmat | the 10 bucks are well spent anyway :-) | 15:27 | |||||||||||||||||||||||||||||||||||||
[Coke] | oh, absolutely. | ||||||||||||||||||||||||||||||||||||||
nine | So, I've managed to rebase the now 4.5 years old precomp-singleprocess branch onto master and it looks like I've gotten pretty far the last time I've worked on it. | 15:43 | |||||||||||||||||||||||||||||||||||||
Getting errors in make test like "P6M Merging GLOBAL symbols failed: duplicate definition of symbol SubtestsSkipped" | 15:44 | ||||||||||||||||||||||||||||||||||||||
I think I know what's happening though: SubtestsSkipped is actually X::SubtestsSkipped, i.e. an exception class, so it gets put into the setting's X package. If that setting is the same that's used in the program that started the precompilation, we find the symbol already there when merging globals from the loaded module after precompilation | 15:46 | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 077300c56c | (Elizabeth Mattijsen)++ | src/core.c/Rakudo/Iterator.pm6 Make sure push-all doesn't push when exhausted Fixes R#3758. The sample code would call "pull-one" twice, and then call "push-all" to fill the array. A next call to "pull-one" would have returned an IterationEnd. The push-all did not account for the situation where the iterator was basically exhausted, but had not seen an IterationEnd yet. I wonder how many other iterators suffer from this shortcoming. But that's for another day. |
15:55 | |||||||||||||||||||||||||||||||||||||
linkable6 | R#3758 [open]: github.com/rakudo/rakudo/issues/3758 [BLOCKER][regex][regression] Strange issue with assignments to Str.split's return value | ||||||||||||||||||||||||||||||||||||||
roast: b4ff353c95 | (Elizabeth Mattijsen)++ | S32-str/split.t Add tests for R#3758 |
|||||||||||||||||||||||||||||||||||||||
15:59
mst left,
mst joined
|
|||||||||||||||||||||||||||||||||||||||
lizmat | afk for a few hours& | 16:01 | |||||||||||||||||||||||||||||||||||||
16:38
patrickb left
16:53
MasterDuke left
16:55
sena_kun joined
|
|||||||||||||||||||||||||||||||||||||||
jdv79 | [Coke]: why you missing? | 16:56 | |||||||||||||||||||||||||||||||||||||
16:57
Altai-man_ left
|
|||||||||||||||||||||||||||||||||||||||
[Coke] | jdv79: ? | 17:04 | |||||||||||||||||||||||||||||||||||||
oh, the conferene. I didn't schedule any time off from work | |||||||||||||||||||||||||||||||||||||||
jdv79 | i normally watch the videos at work as soon as they are avail... | 17:15 | |||||||||||||||||||||||||||||||||||||
you can't chew bubblegum and walk at the same time?;) | |||||||||||||||||||||||||||||||||||||||
nine | Ok, using a terrible hack to convince MoarVM to load the setting again (even if it's already loaded) shows that this isn't a path to follow. A comp unit has dependencies which are identified by an SC ID (usually a SHA1), so while a setting or module may get loaded again and live separately, when looking up a dependency we will still confuse it with already loaded ones | 17:30 | |||||||||||||||||||||||||||||||||||||
17:44
JRaspass joined
18:14
mst left,
mst joined
18:52
MasterDuke joined
18:54
Altai-man_ joined
18:57
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
releasable6 | Next release in ≈4 days and ≈23 hours. 1 blocker. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft | 19:00 | |||||||||||||||||||||||||||||||||||||
19:37
lichtkind joined
19:52
lichtkind left
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp: 1bb332ecd5 | (Elizabeth Mattijsen)++ | src/QRegex/Cursor.nqp Attempt to document NQPMatchRole attributes With the emphasis on attempt: any additional information / fixes / elaborations would be very welcome. |
20:06 | |||||||||||||||||||||||||||||||||||||
nine | It may be that simply ignoring the duplication definition of symbol error will be the way to go. | 20:26 | |||||||||||||||||||||||||||||||||||||
When I do that I even get native call tests to pass which requires several nested precompilations. And on a repeated run it loads the precompiled files and works without error. The catch is that it records a dependency on the script that caused the precompilation to happen first | 20:29 | ||||||||||||||||||||||||||||||||||||||
So the next task is to find out which object gets put into the precomp file that's dragging in this dependency. | |||||||||||||||||||||||||||||||||||||||
jnthn | nine: Any measurements on how much time it saves? | 20:30 | |||||||||||||||||||||||||||||||||||||
nine | Not yet. Those unwanted references make it hard to get to the interesting programs with large numbers of dependencies | 20:35 | |||||||||||||||||||||||||||||||||||||
timotimo | any reason we can't build something much like the heap snapshot dumper but for serialization? | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: f11d750844 | (Elizabeth Mattijsen)++ | src/core.c/Match.pm6 Copy comments of NQPMatchRole to Match No functional changes, just adding some documentation for core developers. |
20:36 | |||||||||||||||||||||||||||||||||||||
20:40
mst left,
mst joined
20:55
sena_kun joined
|
|||||||||||||||||||||||||||||||||||||||
nine | timotimo: well I'm gonna need some tool to uncover this. The question will be what tool exactly? | 20:56 | |||||||||||||||||||||||||||||||||||||
20:57
Altai-man_ left
|
|||||||||||||||||||||||||||||||||||||||
jnthn | Would a heap snapshot not help, in that you can see what objects reference which others? | 21:02 | |||||||||||||||||||||||||||||||||||||
And see what an SC references | |||||||||||||||||||||||||||||||||||||||
In principle I guess one could build something that gives the path from an SC to an object, if one exists | |||||||||||||||||||||||||||||||||||||||
21:03
lichtkind joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | roast: 0cdb45466f | (Christian Bartolomäus)++ | S04-statements/loop.t [JVM] Skip failing test With an upcoming change the failure mode for this test will change to aborting. Since the test didn't work for the JVM backend anyway it seems tolerable to skip it for now. |
21:05 | |||||||||||||||||||||||||||||||||||||
timotimo | true, the incidents of an SC object could be a good first step? | ||||||||||||||||||||||||||||||||||||||
22:54
Altai-man_ joined
22:57
sena_kun left
23:07
JRaspass left
|