🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). Log available at irclogs.raku.org/raku/live.html . If you're a beginner, you can also check out the #raku-beginner channel!
Set by lizmat on 6 September 2022.
00:06 reportable6 left 00:08 reportable6 joined 00:14 Nemokosch left
gfldex lizmat: I can answer the question in your latest blogpost. :) I wanted to hyper stuff that was otherwise unhyperable. 00:20
00:22 euandreh left 00:23 euandreh joined 00:38 TieUpYourCamel left 01:09 Kaiepi left 01:45 deoac left 01:53 TieUpYourCamel joined
guifa ugexe tonyo: seems I'm still having some issues with a module getting into fez. It's about 80 MB on disk, 20 MB compressed. Could that be causing it some issues? i haven't gotten an e-mail from fez saying there's any problem, and locally it's giving me success. Only thing it's complaining about is a few files in resources not included in META6 but I don't think that should block listing, right? 02:38
leont POST limits? 02:45
avuserow if we want to support arbitrarily large module uploads, AWS S3 lets a service give a "ticket" of sorts to the client to upload to a specific path for a limited time. that would offload the upload work onto S3. Then you can have the client ping the service again when the upload is done and resume from there. 02:47
02:48 sortiz left
avuserow since S3 is a defacto standard for object storage APIs, this may work elsewhere too 02:48
I don't remember the exact APIs but I know where to find the info if that's something we want to do. I do know that it wouldn't require fez to depend on a full S3 client, so that's nice 02:49
02:55 habere-et-disper left
guifa leont: maybe? I feel like I can't possibly be the largest module on fez right now though 02:56
02:56 razetime joined
guifa actually, I take that back. I probably can ha 02:57
03:14 euandreh left 03:19 euandreh joined 03:23 euandreh left
tonyo avuserow: that's what fez uses for upload, guifa I'll take a l9ok at the logs but am in a very rural so cell is not great 03:32
guifa tonyo: no rush. My module can still exist in p6c space for the time being. I'll just update the META6 on github to use git: instead of zef: to avoid install errors via that ecosystem 03:34
guifa feels bad for being the guy that breaks things
tonyo it's fine, this issue is plaguing me at the moment and having trouble tracking it down so real time logging/response is nice
03:35 bigdata joined
tonyo finanalyst is the other person who seems to trigger this frequently 03:35
guifa if there's any logs on my end I can send to help, def let me know and I can do whatever. I'm around most evenings / weekends (eastern time, I think you're pacific yeah?) 03:36
03:36 razetime left
tonyo guifa can you drop the dist somewhere i can download? you can make it retain with `fez upload --save-autobundle`, yours looks like it's just timing out 03:37
or you can email to me? if that's preferred then i'll pm you my email 03:39
03:51 euandreh joined
guifa tonyo: alrighty just made a new attempt using --save-autobundle. I'll PM you a link 03:54
04:01 razetime joined 04:45 euandreh left 04:51 euandreh joined, Guest42 left 04:57 ToddAndMargo joined
ToddAndMargo anyone on newbie duty tonight? 04:57
Rakudo 2022.07 05:01
05:01 euandreh left
ToddAndMargo Is going bananas with `exit(1)` when run as and administrator.  Run as a regular uses it is fine. 05:01
Cowardly Exiting.  Bummer Dude ... 05:03
Cannot resolve caller protect(Lock:U: Block:D); none of these signatures matches:
    (Lock:D: &code, *%_)
  in method setup at C:\Program Files\Rakudo\share\perl6\core\sources\A37F26876B58371B70EDD889AD69F064C90AC2C6 line 296
  in method setup at C:\Program Files\Rakudo\share\perl6\core\sources\A37F26876B58371B70EDD889AD69F064C90AC2C6 line 366
  in sub raku-nativecall at C:\Program Files\Rakudo\share\perl6\core\sources\A153F63283BF744FD66BF7212910E5F389384F6E (NativeCall::Dispatcher) line 46
  in sub MessageBox at Windows.RaidCheck.pl6 line 129
  in sub GetRaidStatus at Windows.RaidCheck.pl6 line 115
  in block <unit> at Windows.RaidCheck.pl6 line 142
Is there something I should know about running as an administrator?
bananas with plain old `exit` too 05:21
`&*EXIT` does the same thing 05:25
`die` also does the same thing 05:27
05:41 renormalist left 05:47 renormalist joined 05:57 mykhal left, esh left, daxim left, CIAvash left, AlexDaniel left, zups left, esh joined, mykhal joined, daxim joined, zups joined 06:00 AlexDaniel joined, CIAvash joined 06:07 reportable6 left 06:08 xinming left, xinming joined 06:09 reportable6 joined 06:21 perlbot left, gordonfish left, ecocode left, hexology left, Demos[m] left, tadzik left, ecocode joined, perlbot joined 06:22 perlbot left, perlbot joined, hexology joined, gordonfish joined, Demos[m] joined 06:29 tadzik joined 06:53 Kaiepi joined 06:59 Kaipei joined 07:02 Kaiepi left 07:54 razetime left 08:12 Sgeo left 08:26 razetime joined 08:30 jjido joined 08:39 derpydoo joined 08:40 abraxxa-home joined
Geth Raku-Steering-Council/main: 79b20ea75d | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | README.md
:bug: :memo:

Thanks @MasterDuke17 !
09:08
09:25 ToddAndMargo left
bartolin ToddAndMargo: That looks like the problem described in github.com/rakudo/rakudo/issues/5096. I'd guess that Rakudo hasn't write permissions for a precomp directory when running as administrator. 10:08
tellable6 bartolin, I'll pass your message to ToddAndMargo
10:19 sena_kun joined 10:31 euandreh joined 10:33 linkable6 left 10:35 linkable6 joined
Nemokosch also can be related to the thing described by Demos[m] 11:21
11:34 abraxxa-home left 11:37 habere-et-disper joined 11:46 euandreh left 11:48 abraxxa-home joined 12:07 reportable6 left 12:09 reportable6 joined
Geth infrastructure-doc: 037695bc02 | (Tom Browder)++ (committed using GitHub Web editor) | README.pod
Update README.pod
12:22
¦ doc: edehont self-unassigned .shape is missing from the documentation github.com/Raku/doc/issues/411 12:25
tbrowder hi, can anyone tell me how to get github actions badges for the three separate OS we test modules for on github? thnx. 12:37
lizmat three different .yml files ?
Anton Antonov <@755062053282119803> Do you do (frequently) conversions from Markdown to HTML? 12:38
lizmat tbrowder: the name: field in the test.yml is what becomes the name of the action badge ?
afk& 12:39
12:40 antononcube joined
antononcube tbrowder Do you do (frequently) conversions from Markdown to HTML? 12:40
tbrowder lizmat: i'll look there, thnx 12:42
yes, i asked skaji how to get separate badges showing separate results 12:43
for win, macos, and linux. i got that, now i just need to distinguish each 12:44
antononcube: hm, not regularl, but to use wordpress i do 12:45
(ugh)
actually, pod to html or pod to markdown, i've never found a completely satisfactory path :-( 12:46
antononcube @trbrowder You can use pandoc (see pandoc.org) to do Markdown to HTML conversions, but lately I am not happy with it. So, I implemented Markdown-to-HTML in "Markdown::Grammar". 12:49
BTW, you can "just paste" Markdown code in WordPress and get fairly good results. (At least with WordPress page styles I am using...) 12:51
12:52 lichtkind joined
tbrowder yes, pandoc for me has not worked so well but i was trying to get from text to .docx 12:55
12:55 epony left
tbrowder i think getting the styles right is part of my complaint about wp 12:56
lizmat: that did the trick, thanks! i'll make that the default in mi6-helper 12:58
antononcube @tbrowder Good to know. 13:01
@lizmat I think you should have a directory "notebooks" in your GitHub/lizmat/articles repository. 13:02
tbrowder antononcube: but i'm trying to make rakupod my text source for everything, so pod to html is or will be used more for my projects
antononcube @tbrowder I see. I have to say my publication efforts are not POD-centric. I prefer Markdown because of its ubiquitous support. (Especially on GitHub.) 13:04
13:11 abraxxa-home left 13:22 antononcube left 13:26 none joined
none Hi. what is the raku equivalent of htonl(3) for serialization ?  Is there such a thing for 64 bits integer. linux.die.net/man/3/htonl 13:29
I want network serialization order to be architecture independant. And the serialized integers will be read in C with ntohl(3) 13:36
13:37 bigdata left
guifa none: I'm not sure if there's a specific function, but buf8 objects have read/write methods that include an option for endianess 13:38
none guifa seems to do what I want. kthx. docs.raku.org/type/Buf#Methods_on_...and_later) 13:40
guifa also if I get some time later today that sounds like a neat module, I might put one together with a few options/optimizations 13:41
13:50 none left 14:00 epony joined
tbrowder antononcube: can you get a centered string in Markdown? 14:05
tellable6 tbrowder, I'll pass your message to antononcube
perryprog tbrowder yes? 14:08
<p style="text-align: center;">Blah blah blah</p>
14:10 codesections joined 14:12 epony left 14:13 lichtkind left 14:14 epony joined 14:17 habere-et-disper left
tbrowder yes, but how do you express that in Markdown? 14:17
14:21 codesections left 14:30 codesections joined
Anton Antonov <@755062053282119803> Markdown is supposed to accept all HTML code. 14:30
<@755062053282119803> Well... maybe not all HTML... Please, see here: www.markdownguide.org/basic-syntax/#html 14:31
perryprog daringfireball.net/projects/markdo...philosophy is probably better
just since that's the basis of any other MD variant 14:32
Anton Antonov @perryprog Sure! 14:37
14:52 deoac joined
tbrowder well, rakupod allows complex attributes and its up to the rakupod renderers to use them. granted, we’re not there yet. 15:14
15:37 jjido left
Nemokosch tbrowder: so skaji does bother to communicate with you? 😡 15:46
tbrowder yes, just takes some time, i'm learning in my old age to be more patient... 15:47
Nemokosch I created a PR for mi6 almost 2 months ago with no feedback whatsoever 15:49
tried to connect him in IRC DM's as well, nothing at all
tbrowder i am about to release another mi6-helper that creates 3 test badges. the three badges are very helpful for those modules that have windows problems. the usually good test on linux is ruined when using just one badge. 15:50
perryprog I wonder what the age distribution of raku users is compared to other new-ish languages 🤔 15:53
tbrowder i think he is very busy with, for him, much more important stuff. but his mi6 code is very instructive for creating instrospective modules
is that the json spacing pr? 15:55
perryprog: sounds like a good project 15:56
perryprog nooo stats is scary 15:59
Nemokosch this tbh 16:02
tbrowder: you cannot be so busy that you can't take 5 minutes to give the slightest "sorry can't deal with it in the foreseeable future feedback". I just find it disrespectful that you can't value the other person't time enough for doing that. 16:04
perryprog Yes, you can be that busy.
Nemokosch absolutely not 16:05
tbrowder i’m not sure he checks the project that often
Nemokosch especially not claim to be as busy when you do bother to answer other's questions in the meantime 16:06
yeah well, 2 months is indeed not often. That's why I've been trying to take up on Ddt. However, it's also not easy to consult with someone who admittedly doesn't use Raku anymore
by the way github.com/Raku/infrastructure-doc is this repository used for anything? 16:08
tbrowder re skaji: the big dogs here could ask skaji to release App::Mi6 to become a raku community project. 16:25
re infra: it doesn't look like it 16:26
Nemokosch for App::Mi6 - I wish that happened to Ddt as well originally but for now I'm trying to secure it. 16:27
Another problem is: who reviews, merges, publishes community repos? Because if it ends up at a couple of people who aren't willing to do it or don't have time, we end up with the same situation. 16:29
16:37 evalable6 left, linkable6 left 16:38 evalable6 joined, linkable6 joined
tbrowder the advantage is it's there and under community control and easier to change the maintainer 16:44
16:46 Kaipei left
tbrowder we could i guess dup skaji's code but that's not a good thing. approval is the way to go imho. most of the use has been when author's have passed away i believe, or voluntarily relinquished rights 16:46
*authors 16:54
btw, mi6-helper was created because skaji didn't want to do those mods and i really liked the module but with my own tweaks. 16:57
16:57 sena_kun left 16:58 Sgeo joined 16:59 sena_kun joined
guifa my understanding is that the comcomunity repos were there to be "claimed" by someone who wanted to take over maintenance 17:01
otherwise, maybe that's a topic for the RSC to discuss — maybe a few community members could be appointed to accept PRs for as yet unadopted projects (but not be expected to do bug fixing if bugs are found — others could do that and submit a PR) 17:02
tbrowder guifa: that’s sounds like more the truth vs my statement, but still… 17:05
17:23 euandreh joined 17:29 razetime left 17:34 MoC joined 17:42 jjido joined 17:44 deoac left
Nemokosch I mean I'm not against the "socialist" approach of shared ownership, it does have advantages 17:58
The problem is, rather, that the so-called "big dogs" don't seem to be doing much management 18:00
In which case one might ask: why do we have a steering council if not for this?
To be honest, it's borderline upsetting when you see another CAT spec. Is there nothing else to do? 18:04
18:06 reportable6 left 18:08 derpydoo left 18:09 reportable6 joined
lizmat The problem is that many people think there are sone so-called big dogs, while these people just happened to not step back when others did 18:14
ugexe why would one expect a bureaucratic group to have the required expertise to merge PRs? we don't need people to click the merge button, we need people to understand the various projects as a whole, to understand the current and potentially future design considerations, etc 18:15
for instance what if openssl was in the community repos - why should one expect someone on the rsc has any of the requisite knowledge to know a PR is legit, safe, etc? 18:16
Nemokosch the task of RSC isn't to merge PR's, sure. It is a task of RSC, though, to make sure there are people _willing to deal with_ those PRs and _grant access_ to them 18:17
lizmat Nemokosch: and you're thus implying that the RSC doesn't do that? 18:18
tellable6 lizmat, I'll pass your message to Nemokosch
Nemokosch also, I do think the RSC is mostly defined as a _management_ authority, not a language design/engineering team
don't take it personally because I clearly don't mean it for you in the first place - but basically yes, that's all I can see 18:20
and while codesections was definitely among the people who inspired me to start Raku, I have to say I'm particularly disappointed by the apparent lack of his activity
18:21 Kaipei joined
El_Che wow, lots of backlog. 18:21
What and who is the big dogs?
lizmat there's only one person on the RSC that is able to do full-time Raku, and that'd be me
ugexe be the change you want to see
lizmat all of the other people have jobs and lives outside of Raku 18:22
what ugexe said
ask not what you the RSC can do for you, ask what you can do for Raku 18:23
Nemokosch and that's what I am doing, yes, with a job and "living outside of Raku" as much as I don't sacrifice my own time for it - which was very little recently
and I am hitting walls
ugexe hitting your head against something until it works is the mark of a typical software engineer 18:24
Nemokosch hitting walls, because I'm no authority, I can't just go ahead and write whatever I want, I can't merge my own pull requests, and so on, and so forth
because I spend ours writing a comprehensive issue of a certain topic and I get no feedback whatsoever in months, and I can't just go ahead and make decisions about how hypering should work, for example 18:25
ugexe i used to be at that point ~10 years ago, arguing with people like nine about CUR changes, until i became an authority 18:26
Nemokosch Mind you, I don't even want to make these decisions. But there is an apparent lack of interest and care 18:27
Also, please at least keep in mind that I have been mocked right here for not being useful enough with 1 year of presence, along with $dayjob, to do Rakudo stuff for example 18:29
Now, vrurg doesn't have time to set off with the Rakudo-ish crashcourse. I'm not blaming him or anything but please do realize that there are limits that the average Joe can barely change at all
ugexe somehow those of us who were averages joes 10 years ago were able to persist our way into big dogness without any rakudo courses 18:30
like if you want it to be easy and fast yeah thats probably not going to happen 18:31
but if you come up with a solid design for something, explain it well, and implement a draft then then the only thing stopping you from ultimately merging it (anyone can get a commit bit) is someone else having to grok all your work and finding issues 18:32
tbrowder i meant nothing but respect for the term "big docs;" referring to the known experts 18:33
*dogs
of sound mind and full of community spirit 18:34
18:38 p6steve joined
p6steve m: my $l := (1,(2,3),4); for $l { .say } 18:38
camelia 1
(2 3)
4
tellable6 2022-09-08T12:51:13Z #raku <ugexe> p6steve: declare it in meta6 under 'resources' as `libraries/lib`, and then have Build.pm generate the file to resources/libraries/
2022-09-17T10:23:43Z #raku <lizmat> p6steve: you're creating a Proc::Async object with the Promise returned by "run" ?
2022-09-17T10:29:19Z #raku <lizmat> p6steve: that feels wrong: Proc::Async.new: run
2022-09-24T13:23:12Z #raku <El_Che> p6steve: you should give podman a go. You can run the same setup on mac, win and linux and no root needed on Linux to run the containers
p6steve my $l := (1,(2,3),4); for $l { .say }
evalable6 1
(2 3)
4
p6steve OK - that's iterating over the top level of a List 18:39
but...
my $l := (1,(2,3),4); sub fn($m) { for $m {.say} }; fn($l)
evalable6 (1 (2 3) 4)
p6steve when I pass the List to a sub, it gets put in a container and then does not iterate (ie. there is only one iteration) 18:40
(i) I imagined that an argument would be passed as a (bound) reference
(ii) this container now changes the single argument behaviour, what is the best idiom to prevent this? 18:41
Nemokosch ugexe: if your argument is "I had harder so don't ever complain", well... I don't think that's a good argument
you have my respect for it but in return, do respect when I say I don't see it as a perspective to be where you are now in another 10 years 18:42
ugexe you're convinced the average joe cant do certain things, and I gave you evidence suggesting otherwise 18:43
lizmat m: my $l := (1,(2,3),4); sub fn($m is raw) { for $m {.say} }; fn($l)
camelia 1
(2 3)
4
lizmat m: my $l := (1,(2,3),4); sub fn($m) { for $m {.say} }; fn($l)
camelia (1 (2 3) 4)
lizmat m: my $l := (1,(2,3),4); sub fn(\m is raw) { for m {.say} }; fn($l)
camelia 1
(2 3)
4
lizmat p6steve ^^ 18:44
p6steve lizmat: thanks ... the is raw is what I need
Nemokosch not *convincing* evidence, though 😄
lizmat p6steve: but that only works if the source is not in a container
m: my $l = (1,(2,3),4); sub fn(\m is raw) { for m {.say} }; fn($l)
camelia (1 (2 3) 4)
lizmat m: my $l = (1,(2,3),4); sub fn(@m) { for @m {.say} }; fn($l) 18:45
camelia 1
(2 3)
4
lizmat p6steve: if you know the arg is always going to be a list, why don't say that in the signature ?
18:47 MoC left
p6steve m: my $l := (1,(2,3),4); sub fn(List $m) { for $m {.say} }; fn($l) 18:48
camelia (1 (2 3) 4)
Nemokosch by the way, in some sense, an @argument is decontainerized if it comes from a Positional source, no?
or at least it isn't further containerized
p6steve m: my @l := (1,(2,3),4); sub fn(@m) { for @m {.say} }; fn(@l)
camelia 1
(2 3)
4
p6steve lizmat: this is yet another occasion where raku is surprising, but on reflection does things right - so in this case, I can see that the "easy" way to pass a list of things is to follow the perl roots (ie use an Array and @) ... 18:49
lizmat perhaps strangely consistent, yes 18:51
p6steve lizmat: and the easy path with scalars is that the "reference" that gets passed is the container and you need is raw to suppress this
lizmat you should really not think of references in Raku :-) 18:52
now, why a $ in a signature actually creates a new ro container, is something that I've wondered as well, and asked jnthn, but am afraid I forgot the answer to that question 18:53
instead of binding to the deconted value of the argument 18:54
Geth doc/lizmat-is-deterministic: 8c67799271 | (Elizabeth Mattijsen)++ | doc/Type/Iterator.pod6
Document Iterator.is-deterministic
18:55
p6steve nemokosch: yes - I think you are right which is that the sub call will try to do stuff in a perlish way so the basic operation is to pass scalars around is a $ (and I guess that an Array is a container)
Geth doc: lizmat++ created pull request #4122:
Document Iterator.is-deterministic
18:57
Nemokosch wasn't "strangely consistent" the blog of masak? 19:02
lizmat yes 19:03
Nemokosch <@928301352029937715> (p6steve for IRC folks) I think terminology is a bit hard around here. An Array is a container... of some sort. It's definitely something .VAR.WHAT can return 19:04
however, from all I understood so far, it doesn't make sense to talk about the decontainerisation of an Array 19:06
a "decontainerized Array" is still an Array, it's like a NOP
the way I try to think of this is that a Scalar is like a box (like a gift box) while an Array (or a Hash) is like a grid
you can unwrap a box but you cannot unwrap a grid - a grid is a topology, not an entity 19:08
19:19 abraxxa-home joined
lizmat an Array is *not* a container. it is an object with containers 19:19
an array can be within a container, sure, but it is *not* a container 19:20
m: my $a = [1,2,3]; $ an Array in a container
camelia ===SORRY!=== Error while compiling <tmp>
Two terms in a row
at <tmp>:1
------> my $a = [1,2,3]; $⏏ an Array in a container
expecting any of:
infix
infix stopper
statement end
statemen…
lizmat m: my $a = [1,2,3]; # an Array in a container
camelia ( no output )
lizmat m: my $a = [1,2,3]; say $a # an Array in a container
camelia [1 2 3]
lizmat m: my $a = [1,2,3]; say $a.VAR.WHAT 19:26
camelia (Scalar)
lizmat m: my $a := [1,2,3]; say $a.VAR.WHAT
camelia (Array)
Nemokosch how to put it... Array is not a value type. Unfortunately, not even List is a value type - but there is a not-so-subtle difference: an array _provides_ mutation by managing Scalar containers, while a list just allows the presence of mutable data 19:31
(I think Array descending from List is a similar conceptual failure to Failure descending to Nil but that's beside the point now)
moreover, quite importantly, Array is the default type of an @-sigilled variable, which could be rephrased as (correct me if I'm wrong with this): Array is the only type you can put into an @-sigilled variable without any binding involved 19:33
lizmat the Array object needs more attributes than a List object
if List would inherit from Array, it would need to carry around useless attributes
the Array object has an attribute for the container descriptor 19:34
the thing that let's you say "my Int @a" to force only Ints being allowed
the List object allows anything to be bound to it, including Scalar objects 19:35
19:38 derpydoo joined 19:55 Kaipei left 19:57 deoac joined 20:04 abraxxa-home left 20:13 jjido left
Nemokosch I mean yeah, I think the relation of Array and List is not of child and parent but two siblings 20:39
20:46 Kaipei joined
p6steve well docs.raku.org/type/Array#Routines_...class_List List seems to provide a lot of routines to Array - of course they are siblings for Positional and Iterable roles - guess you could imagine a role that abstracts these instead, but both seem to be reasonable design choices... 21:16
Nemokosch yeah but I think it's odd to model a List as someting that could or could not provide mutation-related features. It's rather a trait/characteristic of a List that it deliberately does not provide these things 21:19
You know, like the square and the rectangle in OO models 21:20
to extend a conceptually fixed thing into a conceptually flexible thing feels like something that can cause problems every now and then 21:21
but at the end of the day, this is not a big problem with the introduction of e.g ValueLists 21:22
rather just an oddity that comes up every time you need to talk about "a List" _as opposed to_ "an Array"
p6steve from a user point of view, I am pretty happy that a List is a fixed length basic grid with the Routines described that can be inherited & then functionally extended to be variable length (splice, push, pop) and to have container enforcement (all items must be containers and the container type can be policed) 21:33
I agree that ValueLists which will also conceptually inherit from List, but add value enforcement (all items must not be containers all the way down) will add some more value and help with immutability / performance 21:37
21:39 deoac left 21:47 guifa_ joined 21:49 guifa left 21:55 epony left 22:18 mykhal left 22:22 epony joined
guifa_ "Array is the only type you can put into an @-sigilled variable without any binding involved" eh.... you can also type it at declaration 22:24
m: my @a is List = <a b c>; say @a.WHAT 22:25
camelia (List)
Nemokosch fair enough. Tbh I'm not a big fan of type annotations in general, and I wouldn't say Raku encourages complex type signatures anyway 22:27
Demos[m] does raku have an ordered associative container I can use
like a self-balancing tree of some description
Geth doc: c76c09d7e9 | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | doc/Type/Iterator.pod6
Document Iterator.is-deterministic (#4122)
22:31
linkable6 Link: docs.raku.org/type/Iterator
22:32 linkable6 left 22:34 linkable6 joined 22:44 Kaipei left
guifa_ Demos: I think lizmat has one 22:45
raku.land/zef:lizmat/Hash::Ordered
22:56 sena_kun left
Demos[m] ah, I want them ordered by the key 22:58
not the order of insertion
23:00 deoac joined
Nemokosch I'm a bit afraid to ask but why do you need it to be ordered by structure, rather than sorting them later on or something? 23:02
Demos[m] I mean because that seems like the natural thing to do, and it's more efficient if I need to insert after sorting 23:03
23:05 mykhal joined
Nemokosch okay well... in this context, I'd assume that you wouldn't be looking for a "pure Raku" implementation of the thing but something that is about as effective as a built-in Hash. In which case, I don't know if somebody wrote such a thing. 23:06
my bet would be if liz didn't then probably noone else did either. Not many people are used to working with the underlying (sub-)language of Rakudo
Demos[m] well, I was wondering if there was some builtin 23:07
ugexe well one reason hashes are fast is because they dont have to worry about insertion order at all 23:08
Demos[m] I mean sure. but BTrees are also really quite fast
Nemokosch mind you, by the way, this was about key ordering 23:10
ugexe that doesn't really matter, an insertion needs to be put somewhere specific in this request which requires figuring out where 23:11
i suppose it matters if you're looking for something implementing the order you want though 23:12
Nemokosch well yes I guess, you need something that reflects the order, so typically the location of the item 23:15
23:35 habere-et-disper joined 23:39 deoac left
github.com/FCO/OrderedHash hmm 23:43
ugexe: why didn't you mention this if you are involved? 😄 23:44
oh okay, it seems that was a minor change 23:49
23:50 Sauvin left 23:54 Sauvin joined