00:05 Altai-man_ joined 00:06 sena_kun left 00:31 pmurias left 00:38 lucasb left 00:40 Altai-man_ left 01:23 MasterDuke left 05:08 quotable6 left, statisfiable6 left, coverable6 left, shareable6 left, reportable6 left, greppable6 left, releasable6 left, squashable6 left, nativecallable6 left, benchable6 left, bisectable6 left, unicodable6 left, bloatable6 left, notable6 left, committable6 left, coverable6 joined, reportable6 joined 05:09 shareable6 joined, greppable6 joined, squashable6 joined, bisectable6 joined, benchable6 joined, notable6 joined 05:10 quotable6 joined, nativecallable6 joined, bloatable6 joined, statisfiable6 joined, committable6 joined 05:11 unicodable6 joined, releasable6 joined 07:00 greppable6 left, benchable6 left, shareable6 left, reportable6 left, bisectable6 left, notable6 left, bloatable6 left, releasable6 left, committable6 left, coverable6 left, statisfiable6 left, squashable6 left, quotable6 left, unicodable6 left, nativecallable6 left, squashable6 joined, shareable6 joined, statisfiable6 joined, greppable6 joined, nativecallable6 joined 07:01 reportable6 joined, bisectable6 joined 07:02 coverable6 joined, benchable6 joined, committable6 joined, bloatable6 joined, unicodable6 joined 07:03 notable6 joined, releasable6 joined, quotable6 joined 07:34 jmerelo joined 07:54 ufobat joined 08:22 Xliff joined
nine And of course the last minute addition to the release branch breaks packaging: [ 161s] error: Symlink points to BuildRoot: /usr/bin/raku -> /home/abuild/rpmbuild/BUILDROOT/rakudo-2019.11-2.1.x86_64/usr/bin/rakudo 09:00
[ 161s] error: Symlink points to BuildRoot: /usr/bin/raku-debug -> /home/abuild/rpmbuild/BUILDROOT/rakudo-2019.11-2.1.x86_64/usr/bin/rakudo-debug 09:01
Seriously...I'm close to giving up
We've discussed the name of the language for a decade. Now we've finally got a decision and suddenly we cannot even wait for one release cycle to get binaries with the new name. 09:21
Despite there being the most trivial of workarounds for people who really can't wait to call raku instead of perl6, getting this in was suddenly more important than quality and the time of our packagers. 09:22
lizmat :-( 09:23
nine But who'd have thought that such a tiny addition could cause issues? 09:24
I did. And I said so. And was ignored.
lizmat so this means we're going to have a point release :-(
09:42 AlexDaniel left 10:22 jmerelo left
jnthn Urgh, I'd not noticed that make it into the release branch. I suggest any point release simply reverts it, not tries to fix it. 10:23
lizmat I understand nine was able to work around it... 10:24
jnthn lizmat: I think he meant there was a workaround for people who couldn't wait to start typing `raku` at the command line instead of `perl6` - which is to make a synlink for themselves.
In general, I really wish folks would treat the Raku name transition as a case of "move slowly and understand what you're doing", not "move fast and break stuff". 10:25
nine jnthn: I meant both. There would have been a trivial workaround to get raku and I worked around the issue with some hacks in the .spec file 10:40
jnthn nine: Ah, ok :) 10:41
11:15 sena_kun joined
Guest38485 nwc10: I actually had my RPi 4 standing vertically. It did help a little. Anyway I have since bought a flirc.tv/more/raspberry-pi-4-case 11:27
tellable6 Guest38485, I'll pass your message to nwc10
Geth rakudo: 9a9e82aa8e | (Elizabeth Mattijsen)++ | src/core.c/Map.pm6
Simplify a loop

This was effectively doing an nqp::clone, so use that.
12:04 AlexDaniel joined, AlexDaniel left, AlexDaniel joined, Altai-man_ joined
Guest38485 releasable: next 12:04
releasable6 Guest38485, Next release in ≈22 days and ≈6 hours. 1 blocker. 0 out of 56 commits logged (⚠ 457 warnings)
Guest38485, Details: gist.github.com/d13018a551bb8e89e9...1f9779b06e
Geth rakudo: f5583de40e | (Elizabeth Mattijsen)++ | src/core.c/Map.pm6
Simplify some Map.STORE internals

  - move the creation of the lowlevel hash into the private helper methods
  - remove the ? from :$DECONT, named parameters are optional by default
12:06 sena_kun left
AlexDaniel I don't agree with the proposed priorities. Raku executable affects many users, especially those who are just starting to use raku. There are tutorials out there that already recommend using raku in shebangs, which is obviously wrong, but we can't control other resources. 12:15
On the other hand, there are just a few packagers, and once there's a patch they can apply it themselves 12:16
we don't even need a point release, I think
of course feel free to pressure the next release manager to care more about this 12:18
but IMO the amount of pain a symlink could cause is miniscule compared to what people need to do to get rakudo working on other architectures
12:58 pmurias joined
nine How is having to workaround issues for every god damn single release fun? 13:03
AlexDaniel I didn't say it is fun, and I agree that it is LTA 13:16
nine And how good can a tutorial be that doesn't even get the name of the executable right?! 13:18
AlexDaniel also, it's not just one month of waiting. Ideally, sure, but distros tend to lag behind. Ubuntu is still at 2018.12 even though debian is at 2019.07.1 13:19
I understand your pain, and I hope the next release manager makes sure you don't have to suffer again because of last minute fixes 13:22
Altai-man_ .oO ( he needs to release Comma today first )
AlexDaniel but if I had to do this again I'd choose raku executable over packaging inconvenience 13:23
13:30 MasterDuke joined
lizmat m: use nqp; my $a := nqp::create(Map); say nqp::ishash(nqp::getattr($a,Map,q/$!storage/)) # jnthn, can we now be store that $!storage is auto-vivified into a nqp::hash ?? 13:33
camelia 1
lizmat s/store/sure/
jnthn lizmat: Pretty sure I made it so a while ago, yes 13:36
So as to remove all the various checks and get the hash methods a bit smaller
13:37 pmurias left 13:38 pmurias joined
lizmat jnthn right, and you planned something like that for $!reified as well, but that hasn't happened yet, right ? 13:39
|Tux| Rakudo version 2019.11-57-gf5583de40 - MoarVM version 2019.07.1-353-gd4f20a191
csv-ip5xs0.720 - 0.722
csv-ip5xs-206.358 - 6.626
csv-parser21.016 - 21.215
csv-test-xs-200.424 - 0.436
test5.807 - 6.483
test-t1.738 - 1.751
test-t --race0.845 - 0.881
test-t-2030.384 - 30.514
test-t-20 --race9.484 - 9.508
jnthn I tried it; it's much trickier
lizmat jnthn: trickier at the MoarVM / nqp level, or at the Raku level ? 13:41
jnthn Rakudo 13:42
lizmat because the absence of a defined $!reified is used as a semaphore, right ?
jnthn I forget exactly what, but I ended up with a lot of sad spectests
And it wasn't clear exactly why 13:43
lizmat I'm pretty sure that's because definedness of $!reified is used in branching
Geth rakudo: 05aff92266 | (Elizabeth Mattijsen)++ | src/core.c/Map.pm6
Ah, we don't need to make sure we have an nqp::hash

These are auto-vivified nowadays
rakudo: 488f21a6e4 | (Elizabeth Mattijsen)++ | src/core.c/Map.pm6
Lose samewith in Map creation

Sure, it is nice to have. And it works. But it cannot be optimized nor JITted because of the introspection going on. So don't use it in the core.
13:55 travis-ci joined
travis-ci Rakudo build failed. Elizabeth Mattijsen 'Simplify some Map.STORE internals 13:55
travis-ci.org/rakudo/rakudo/builds/618570414 github.com/rakudo/rakudo/compare/9...583de40ece
13:55 travis-ci left
lizmat only one job failed, restarted it 13:55
MasterDuke which bot used to report why a job failed? 14:01
lizmat not a bot: it's Travis itself that talks to the channel, afaik 14:03
MasterDuke i thought geth or something like that used to report "one job failed, because something didn't download" 14:04
one of zoffix's bots?
Geth rakudo: MasterDuke17++ created pull request #3329:
Fix warnings shown by now compiling with -Wextra
14:05 sena_kun joined 14:06 Altai-man_ left
Geth rakudo: a51268a198 | (Elizabeth Mattijsen)++ | src/core.c/Enumeration.pm6
NQPise internal ENUM_VALUES sub

Since a Map is needed at the end, we don't need to make a HLL Hash for that
rakudo: 540162c156 | (Daniel Green)++ | 2 files
Fix warnings shown by now compiling with -Wextra
rakudo: 25f0acfb24 | niner++ (committed using GitHub Web editor) | 2 files
Merge pull request #3329 from MasterDuke17/fix_warnings_in_c_code

Fix warnings shown by now compiling with -Wextra
14:24 pmurias left
Geth rakudo: vendethiel++ created pull request #3330:
Make Parameter's BUILD use named args
14:33 Ven_de_Thiel joined
Ven_de_Thiel o/ 14:33
nine \o 14:35
Ven_de_Thiel goes to tap jnthn++'s shoulder 14:38
lizmat: btw regarding #3330, there's currently :$optional and :$mandatory, maybe there should only be one? 14:42
14:43 pmurias joined
lizmat possibly, not sure 14:43
Ven_de_Thiel well, first this, no reason to change more than what's needed 14:44
15:05 robertle joined
Ven_de_Thiel m: my @params = Parameter.new; say Signature.new(:@params), Signature.new(:@params, :arity(1)), Signature.new(:@params, :count(1)); 15:13
camelia (Any --> Mu)(Any --> Mu)()
Ven_de_Thiel anyone know why passing `count` changes Signature.gist? I can't figure it out from the code.
lizmat in Signature.new: Num:D :$count = $arity.Num 15:14
I guess 1 != $arity.Num ? 15:15
Ven_de_Thiel m: my @params = Parameter.new; say Signature.new(:@params, :count(1.Num));
camelia (Any --> Mu)
Ven_de_Thiel O.o. lizmat++
lizmat yw :-)
Ven_de_Thiel Still, how come the type checking doesn't fail in Signature.new? :o 15:17
oh... Signature.new is a multi-method... so I guess it defaults to another new somewhere else... 15:18
jnthn oops
You know you're treading on rarely walked paths when... :) 15:19
Ven_de_Thiel Do you want me to change that as part of #3330 ? 15:22
jnthn Yeah, could do 15:24
We should add tests too
Geth rakudo: 8c4c42b848 | (Elizabeth Mattijsen)++ | src/core.c/Map.pm6
Revert "Simplify a loop"

This reverts commit 9a9e82aa8ede7d26ebdafa691d688788847eab7e.
This was a thinko, as $!storage does not need to be empty. I'm surprised this wasn't caught in spectest.
16:04 Altai-man_ joined 16:06 sena_kun left
Geth rakudo: 9c15d71705 | (Elizabeth Mattijsen)++ | src/core.c/Map.pm6
Fix a couple of unnecessary object creations

Make the internal methods always return self, and depend on that
16:18 Guest38485 left 16:19 Xliff left
Geth rakudo: 6a129499a1 | (Elizabeth Mattijsen)++ | src/core.c/Map.pm6
Make the :DECONT handling a dispatch issue

So normal Map creation will not suffer from checking for deconting
16:37 travis-ci joined
travis-ci Rakudo build failed. Elizabeth Mattijsen 'Lose samewith in Map creation 16:37
travis-ci.org/rakudo/rakudo/builds/618609073 github.com/rakudo/rakudo/compare/0...8f21a6e46d
16:37 travis-ci left 16:39 Xliff joined
Xliff o/ 16:39
tellable6 2019-11-29T14:27:43Z #raku <vrurg> Xliff I'll be afk most of the day today. But hope to be available tonight.
Xliff I've had to change my system. Everything in the old system was juryrigged so that /home/<user> would work, but the real location was /home/home/<user> 16:40
I have since changed this setup bind mount, but rakudo was using the /home/home version rather than the /home version (and paths were hardcoded by the build process!) 16:41
What's the best way to recompile rakudo so it will start picking things back up at /home/<user> ?
lizmat re travis: again a single job failed, restarted 16:42
AlexDaniel Altai-man_++
Altai-man_ also needs to do something with a fast, but horribly unstable connection that causes disconnects with irc 16:43
nine Xliff: just run Configure.pl again with the new --prefix 16:48
Xliff Is there a way to tell how Configure.pl was last run? 16:51
moritz your shell's history? 16:52
Xliff /home/cbwood/Projects/rakudobrew/versions/moar-blead/install/bin/moar: error while loading shared libraries: libmoar.so: cannot open shared object file
moritz though you can find the prefix in the generated Makefile
Xliff moritz: When I compile via rakudobrew that is NOT a viable strategy
.oO( I didn't know there was another way to run it than --gen-nqp --gen-moar --backends=moar :P )
Xliff And... WHY do I need libmoar.so when I am trying to rebuild from scratch?
moritz Ven_de_Thiel: gen-moar implies gen-nqp
Ven_de_Thiel so I guess there was another way :-)
moritz and I think it also implies --backends=moar 16:54
Altai-man_ perlfoundation.org is down? 16:55
perlfoundation.org is down.
nine Xliff: there's a config.status file
lizmat Altai-man_: not for me ?
Xliff Also --force-rebuild is also checking for status of nqp and moar and is failing.
Wasn't that supposed to rebuild regardless of existings of previous builds? 16:56
Altai-man_ lizmat, strange, isup.me checker says it is down, and I can't access it too. :S
Xliff OK, so I had to remove all of install/bin
AlexDaniel nine: there's hope :) If Altai-man gets strict monthly releases back then maybe things will get easier for you
Xliff ++ Compiling gen/moar/stage2/QASTNode.moarvm
Segmentation fault (core dumped)
OK, and this is a part of the problem I am having with later builds of rakudo. 16:57
Every, and I mean every time I try and build from source, there is always an issue. It's why I rakudobrew.
Little frustrated, here...
lizmat Altai-man_: It's just you. perlfoundation.org is up.
AlexDaniel nine: at the very least there'll be less motivation to do last minute fixes, which is what it was this time 16:58
nine Xliff: the irony is that rakudobrew may even have caused your rakudo build issues...
Xliff nine: Maybe so, but when I rakudobrew it works. 16:59
Generally there are always issues with the build system when I rebuild that are the problem. 17:00
Going back and re-running configure AGAIN seems to have solved the problem.
That speaks to me of a build system oversight and NOT a rakudobrew issue.
17:01 vrurg left
Geth rakudo: 1003bb9391 | (Elizabeth Mattijsen)++ | 3 files
Put up stubs for Dict / Tuple

  - please reconfigure after this commit
  - allows for easier switching between master and coming up branches
17:02 vrurg joined
Xliff And so switch from /home/home/cbwood to /home/cbwood, even tough the home dir is exactly the same one, I have lost my entire moar-blead installation. 17:03
Could not find NativeCall at line 715 in 17:04
17:06 vrurg left
Xliff OK. Have lost the ability to install zef because now Perl6 can't find NATIVECALL? 17:07
OK, guys. For what it's worth, a change in --prefix that is OUTSIDE of the build will completely screw over a perl6 install. 17:11
That kinda limits its potential when you have relocatable directories on a server.
Latest moar-blead is not finding NativeCall after build 17:12
17:13 vrurg joined, Ven_de_Thiel left 17:14 Kaiepi left 17:15 Kaiepi joined 17:17 vrurg left 17:24 Xliff left 17:38 Xliff joined 17:40 lucasb joined 17:47 Kaiepi left 17:49 Kaiepi joined 18:04 jmerelo joined 18:05 sena_kun joined
jmerelo AlexDaniel++ and vrurg++ for the new release 18:05
AlexDaniel and samcv++ and nine++ and everyone else :)
18:06 Altai-man_ left
jmerelo of course :-) 18:06
18:27 AlexDaniel left, AlexDaniel joined 18:28 AlexDaniel left, AlexDaniel joined 18:29 ufobat left
jmerelo December 9th slot of the Advent Calendar is still free github.com/Raku/advent/blob/master...9/schedule 18:37
If that's too early for you, I can shuffle them around and give you a later slot
lizmat jmerelo: was that intended to be here ? 18:38
jmerelo Well, that was a generic "you"
Point is, anyone wants to grab the remaining slot, just let me know, and in case Dec 9th is too early, let me know too. 18:39
Geth rakudo/add-Dict: b48a03083e | (Elizabeth Mattijsen)++ | src/core.e/Dict.pm6
Add support for Dict

  - add the Dict class, inheriting from Map
  - add the necessary logic to make e.g. my %d is Dict work
  - make sure a .Dict coercer is available
This to make the discussion about
rakudo: lizmat++ created pull request #3331:
Add support for Dict
18:51 pmurias left 18:56 MasterDuke left
Xliff Will .say output anything if called from a HOW package? 19:04
lizmat m: Int.HOW.say
camelia Perl6::Metamodel::ClassHOW.new
lizmat looks like ? 19:05
19:05 vrurg joined 19:06 entonian joined
Xliff lizmat: I am trying to get debugging output from say statements in a specialize() method and I am not seeing them. 19:06
19:06 entonian left
Xliff Yes. This is Method-Also... :) 19:07
I've run into a hard-to-track error condition and I need debugging from the HOW level
lizmat well, Method-Also was using whatever meta-op knowledge I had at the time 19:09
I'm afraid you're in uncharted territory from my side
Xliff Heh.
OK. I may have a clean-up PR for you. :/
lizmat looking forward to it! :-) 19:10
vrurg Xliff: if it happens in precompilation you won't get the output because it's intercepted somewhere in CompUnit::Precom* 19:18
19:18 pmurias joined
vrurg Xliff: just grep for for Proc::Async in there, you must be able to spot the location quickly. 19:18
With RAKUDO_MODULE_DEBUG it would output the stderr for you.
Xliff vrurg: I found the issue, but thanks for letting me know.
vrurg Xliff: was it the problem I needed me for? 19:19
Xliff No. It was not the problem you needed me for. ;) 19:20
THAT is #3075.
vrurg: Still working on it?
vrurg pardon, multitasking as much as possible. have just 10-20 minutes online. 19:21
Xliff lizmat: PR up. 19:25
vrurg Xliff: put it on hold for now. There is a bug causing raku to fail with SIGABRT. I lost ~4 days fighting 3075 before realized it's unrelated to what I do. :( 19:26
Xliff vrurg: Ah, pfft! 19:27
vrurg Now I hope jnthn would manage to get the problem fixed as he seemingly have an idea of what it might be.
Xliff OK
vrurg I would proceed under Linux VM. But frankly saying, got so much tired of that part of the code that need switching to another task in first place. 19:28
19:46 pmurias left 19:52 pmurias joined 19:53 vrurg left, vrurg joined 19:58 vrurg left 20:04 Altai-man_ joined 20:06 sena_kun left 20:12 Kaiepi left 20:17 Kaiepi joined 20:24 jmerelo left 20:30 travis-ci joined
travis-ci Rakudo build failed. Elizabeth Mattijsen 'Revert "Simplify a loop" 20:30
travis-ci.org/rakudo/rakudo/builds/618654290 github.com/rakudo/rakudo/compare/2...4c42b8482a
20:30 travis-ci left 20:41 travis-ci joined
travis-ci Rakudo build passed. Elizabeth Mattijsen 'Revert "Simplify a loop" 20:41
travis-ci.org/rakudo/rakudo/builds/618654290 github.com/rakudo/rakudo/compare/2...4c42b8482a
20:41 travis-ci left
Geth rakudo/add-Dict: d85abf2530 | (Elizabeth Mattijsen)++ | src/core.e/Dict.pm6
Make Dict a value-type

Which was one of the reasons we wanted to do this in the first place.
rakudo/add-Dict: d9a1ab0ced | (Elizabeth Mattijsen)++ | src/core.e/Dict.pm6
Make sure we always get the same .WHICH

We need to have a reproducable string, not dependend on random has key order, so handle everything on sorted keys.
Xliff What is a Dict? 21:05
lizmat: Are there docs for Dict, yet?
nine Xliff: modules.raku.org/dist/Tuple:cpan:ELIZABETH 21:07
Xliff nine: So Dict is a reimplementation of this Tuple? 21:15
21:15 travis-ci joined
travis-ci Rakudo build passed. Elizabeth Mattijsen 'Make the :DECONT handling a dispatch issue 21:15
travis-ci.org/rakudo/rakudo/builds/618671662 github.com/rakudo/rakudo/compare/9...129499a1ab
21:15 travis-ci left
nine Xliff: oh, that's Tuple, not dict. Anyway it's all about github.com/perl6/problem-solving/issues/135 21:18
Xliff nine: So is Dict an immutable Hash? 21:23
m: use 6.e.PREVIEW; 21:24
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
use used at line 1 (in Perl 6 please use "v" prefix for pragma (e.g., "use v6;", "use v6.c;") instead)
Xliff m: use 6.e-PREVIEW;
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
use used at line 1 (in Perl 6 please use "v" prefix for pragma (e.g., "use v6;", "use v6.c;") instead)
Xliff m: use v6.e.PREVIEW;
camelia ( no output )
Xliff m: use v6.e.PREVIEW; my %a = ( a => 1, b => 2, c => 3); my Dict $a = %a; $a<a>.say 21:25
camelia 5===SORRY!5===
Type 'Dict' is not declared
at <tmp>:1
------> 3 %a = ( a => 1, b => 2, c => 3); my Dict7⏏5 $a = %a; $a<a>.say
Malformed my
at <tmp>:1
------> 3W; my %a = ( a => 1, b => 2, c => 3); my7⏏5 Dict $a = %a; $a<a>.s…
Xliff LOL
22:05 sena_kun joined 22:07 Altai-man_ left 22:10 pmurias left 22:12 AlexDani` joined 22:13 AlexDaniel left 22:23 travis-ci joined
travis-ci Rakudo build passed. Elizabeth Mattijsen 'Put up stubs for Dict / Tuple 22:23
travis-ci.org/rakudo/rakudo/builds/618683525 github.com/rakudo/rakudo/compare/6...03bb93915d
22:23 travis-ci left
lizmat Xliff nine: Dict is the value-type of Map 22:27
a Map that that cannot have containers in it 22:28
and a .WHICH that will allow identical Dicts to be considered identical in e.g. Sets and object hashes
there is no doc for it yet, as I don't want to spend time on that until it is deemed fit for use in core 22:31
my %d is Dict = a => 42, b => 666 # one way of making a Dict
Dict.new( (a => 42, b => 666) ) # another
if merged, available with "use v6.e.PREVIEW" 22:32
Xliff lizmat: That basically means that the values inside the Dict are immutable, correct? 22:33
lizmat yup
Xliff \o/
So if I want consumers to get a hash, but not modify it in any way, I can use: %dont-touch-dis.Dict 22:34
lizmat yes
Xliff OK. 22:35
That solves a long-standing problem I had with p6-GtkPlus! :D
Hopefully it will make the jump from .c to .e easily enough.
lizmat I hope so too
Xliff I can just grab those sources to use until merged though, yes? 22:36
lizmat yeah, you could merge it locally, I guess ?
but yeah, you could just grab the new Dict.pm6 file
Xliff Yeah. Until merged and out of preview. 22:37
22:37 vrurg joined
lizmat I'm still toying with the idea of making a Dict actually a low level hash, like a Rakudo::Internals::IterationSet 22:37
Xliff :) 22:38
I was actually going to write something like this.
Saves me the time.
lizmat the pro would be less memory use, the con would be that it could not inherit from Map, so would need to add all of the logic as well
Xliff Actually, mine would have been less effective and not as well implemented.
lizmat actually, thanks to vrurg's work, you *can* already get a hash that is immutable, by calling .Map on it 22:39
that will also get rid of the containers
and make it immutable
Xliff Oh! NIFTY! 22:40
lizmat it just will not be a value-type, for object hashes and sets / bags / etc
Xliff lizmat++ vrurg++
lizmat m: my %h = a => 42; use nqp; dd nqp::iscont(%h.Map<a>)
camelia 0
lizmat m: my %h = a => 42; use nqp; dd nqp::iscont(%h<a>) 22:41
camelia 1
lizmat m: my %h = a => 42; use nqp; dd %h.Map.WHICH # not a value type
camelia ObjAt.new("Map|59131176")
Xliff lizmat: Could you take a quick look at Method-Also PR so I can install a proper version? 22:42
22:42 vrurg left
lizmat Xliff: I've left a comment :-) 22:43
Xliff Oh. Missed that.
Urgh. GMail has failed me.
lizmat: You might want to hit "Submit" ... not seeing it -- :) 22:44
lizmat aarggh
sorry 22:45
Xliff No worries
*sigh* 22:48
Also means I have to recompile 2-hours worth of P6 mods... :S
lizmat: Pushed 22:50
lizmat Xliff: ?? 22:51
Xliff lizmat: I fixed it and pushed
lizmat yeah, about the 2-hours worth of re-comp
Xliff Oh! That's how long it takes p6-GtkPlus and dependents to precompile 22:52
lizmat you need a faster machine ?
Xliff The extra hour is for me to notice
Um. No. 20threads @ 4GHz
p6-GtkPlus could use from a parallelizable build. 22:53
Need better Dependency resolution algorithm. Dependency::Sort is nice and all, but not that introspectable.
lizmat Xliff: new version of Method::Also on its way to CPAN 23:06
Xliff lizmat++
lizmat hmmm... re Dict: it's going to be hard to get the .Dict coercer in :-( 23:08
Xliff Ah. I can deal with .Map
23:17 AlexDani` is now known as AlexDaniel, AlexDaniel left, AlexDaniel joined
AlexDaniel so, we have Hash, Map, Set, Bag, Mix, SetHash, BagHash, MixHash… that's not including the roles (Associative, QuantHash, Setty, Baggy, Mixy) and some other stuff (Stash, PseudoStash) 23:27
and now we will be adding Dict and maybe Tuple? Or what's the situation with Tuple? 23:28
I totally see how the proposed Dict can be useful 23:29
but… what did we do wrong?
sena_kun kind of missed the discussion about Dict and Tuple 23:32
AlexDaniel for me the difference between Set, Bag, and Mix is not very clear. Intuitively I understand what a Set is or should be, and I guess it's exactly that, but for Bag and Mix I always need to check the docs
sena_kun Set is just elems, Bag is elems with a counter, and Mix is hmm.
Mix is where the counter is not an integer, but real 23:33
AlexDaniel sena_kun: github.com/perl6/problem-solving/i...-559862909
sena_kun AlexDaniel, was there a post from jnthn? as I clearly don't see it
AlexDaniel no 23:34
sena_kun this should be discussed 23:35
sena_kun runs away to sleep after releasing and writing posts
AlexDaniel sena_kun: there was a cro release? Congrats :)
sena_kun AlexDaniel, a Comma one. ;) 23:37
jnthn AlexDaniel: fwiw, I know Set and Bag from math class and they do what I expect based on that; I've no idea if "Mix" is mathematical terminology or really where it's from at all. It's the one of the three I've not used. 23:42
I can completely see the use case, I just do very little continuous math of any kind. :)
sena_kun jnthn, what about Dict/Tuple? 23:43
jnthn sena_kun: I've not had the time to think it over properly yet.
I'm a bit unsure on the Dict naming
I agree on the need for value types in the positional/associative space
I wonder a little if we should consider a productive naming scheme instead 23:44
23:44 sena_kun left
jnthn For example, I know there's Set/Bag/Mix, and that if I want a mutable one it's SetHash/BagHash/MixHash 23:45
And can kind of imagine ValueList, ValueMap, etc.
AlexDaniel ValueSetHash… 23:47
sorry :)
jnthn AlexDaniel: Crossed my mind, but the Hash suffix means mutable, and a value type should not be mutable. 23:48
AlexDaniel I wonder if just having some sort of table in the docs that clearly outlines the differences can help 23:49
I think we don't have that yet
jnthn Yeah.
AlexDaniel oh, we also have Enums! 23:50
jnthn I think List vs. Array vs. Seq is already quite a few "irregulars" to remember
Granted Seq is kind of on a different axis since it's not a storage type
AlexDaniel jnthn: even that I don't understand fully, to be honest 23:51
so seqs are kinda obvious but then… you can have them cached, huh?
on the other hand you can have lazy lists, right?
which are not seqs? but do the same thing that cached seqs do? 23:52
jnthn So I'm a tad wary of adding Tuple into the mix. ValueList at least means "OK, it's something like a List"
AlexDaniel as a user I have absolutely no idea :S
jnthn "Maybe Value means it's a value type"
Yeah, a cached Seq is really a way of making people have to care a bit less about the distinction 23:53
All of them can be lazy
(Array too)
AlexDaniel and as cherry on top, .list and .List are different. And don't even get me started on .is-lazy… 23:54
jnthn So you don't have to remember that as a distinction
I don't think I've ever used `is-lazy`, despite having made plenty of use of laziness. It's rare one wants to care. 23:55
All the .TypeName methods are coercions, so it's regular in that sense.
AlexDaniel yeah, that is somewhat understandable 23:56
jnthn Obviously, this stuff needs explaining better, and yeah, this really makes me wary of throwing Tuple and Dict into the mix.
To be clear: to add more names that don't clearly relate to the names of other things that let one say "oh, it's just a kind of that thing I already know"
I'm fine with adding types with these semantics. 23:57