🦋 Welcome to Raku! raku.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: colabti.org/irclogger/irclogger_log/raku
Set by ChanServ on 14 October 2019.
00:13 Wahnberger left 00:22 jaldhar_ left, jaldhar_ joined 00:23 jaldhar_ left 00:24 jaldhar_ joined 00:34 jaldhar_ left, jaldhar_ joined, chloekek left 00:38 wildtrees left 00:39 jaldhar_ left 00:40 jaldhar_ joined 00:41 jaldhar_ left 00:42 RubioTerra left, jaldhar_ joined 00:46 Altai-man_ left
SmokeMachine xinming: I've started implementing json for SQLite (github.com/FCO/Red/commit/57e86fea...77cb84a19) if you would like to take a look... 00:57
00:57 jaldhar_ left 00:58 jaldhar_ joined
SmokeMachine xinming: an example www.irccloud.com/pastebin/RgUpYYHa/ 00:58
01:16 ZzZombo_ joined 01:19 ZzZombo_ is now known as ZzZombo 01:41 jaldhar_ left 01:42 jaldhar_ joined 01:48 veesh_ joined 01:50 veesh left 01:51 veesh_ is now known as veesh
xinming SmokeMachine: I don't think we need to enable update support for json columns, The reason is, app level support is enough. Even in Pg, IIRC, If we want to update the json column, We'll have to update the whole column too. 01:57
02:07 jaldhar_ left 02:08 jaldhar_ joined 02:10 jaldhar_ left, jaldhar_ joined 02:12 jaldhar_ left, jaldhar_ joined
guifa .tell senakun I just looked back at my calendar code, it was apparently a lot more alpha status than beta status like I thought and so def not usable for what you needed. Sorry if you ended up spending more time than necessary realizing that in testing 02:19
tellable6 guifa, I'll pass your message to sena_kun
SmokeMachine xinming: we need it, because one may need, for example, update a Json field in a json column for every record on a table... and looping for every row, and updating isn’t a good idea... 02:21
02:39 Xliff joined
Xliff . 02:40
02:43 hythm joined
Xliff o/ 02:44
hythm Xliff, wondering if you know off the top of your head, when selecting GTK FlowBox children by clicking the mouse button and drag to form a rectangle, the current behavior is selecting all the children range between button press to button release... is there a way to change this to select only the children under the formed rectangle? 03:03
Xliff Hmmm...
That's a hardcoded GTK thing.
I will have to look into it.
Yeah. It's built into flowbox. 03:04
developer.gnome.org/gtk3/stable/gt...ectionMode
hythm ok thanks, I thought its some kind of a setting, like SELECT_MODE_MULTIPLE or something,, i searched online but did not find anything useful 03:05
Xliff That looks to be the only control you have.
You do have GTK_SELECTION_MULTIPLE
hythm right, this is the one that allow selecting multiple childrens
Xliff Yes. 03:06
But how the children are selected is left to the flowbox implementation.
hythm makes sense... i thought its common thing, as for example its most natural,,, like selecting multiple files in a file manager application 03:07
Xliff Unfortunately, I don't know of a way to do what you suggest without reimplenting flowbox, which is non-trivial.
And probably best left to C code. 03:08
hythm got it
Xliff You would have to do CTRL-click to have precise selection options. 03:09
Your way makes more sense, though.
hythm yes, thats what im doing
Xliff :)
03:18 stoned75 joined 03:31 stoned75 left
ZzZombo m: my $a = 1, $b := $a;$a = Nil;dd $b 03:39
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '$b' is not declared
at <tmp>:1
------> 3my $a = 1, 7⏏5$b := $a;$a = Nil;dd $b
ZzZombo m: my $a = 1;my $b := $a;$a = Nil;dd $b
camelia Any $a = Any
ZzZombo Why does this report `$a` rather than `$b`?
Xliff You bound $b to $a 03:40
03:49 jaldhar_ left, jaldhar_ joined 04:23 hythm left
Xliff What's the best way to recompile perl6 after rakudobrew has installed it? 04:52
Also: Why am I getting this -- Unhandled exception: Missing or wrong version of dependency 'gen/moar/Grammar.nqp' (from 'gen/moar/perl6.nqp') 04:54
Trying to rebuild nqp in nqp/ I get this -- Unhandled exception: Missing or wrong version of dependency 'gen/moar/stage2/MASTNodes.nqp' (from 'gen/moar/stage2/NQP.nqp') 04:56
dir 05:19
05:27 wamba joined 06:05 jmerelo joined 06:23 Geth left 07:00 wamba left 07:42 jmerelo left 08:11 Xliff left 08:31 xinming_ joined 08:33 xinming left 08:38 mid_home left 09:03 scimon joined
scimon Morning 09:03
09:10 sena_kun joined
ZzZombo m: Blob.new.^methods>>.say 09:23
camelia STORE
allocate
read-int8
read-int16
read-int32
read-int64
read-int128
read-uint8
read-uint16
read-uint32
read-uint64
read-uint128
read-num32
read-num64
read-bits
read-ubits
Capture
Numeric
Int
bytes
chars
deco…
ZzZombo m: Blob.new.write(my $a=1).say
camelia No such method 'write' for invocant of type 'Blob'
in block <unit> at <tmp> line 1
ZzZombo m: Blob.new.write-uint8(my $a=1).say
camelia No such method 'write-uint8' for invocant of type 'Blob'
in block <unit> at <tmp> line 1
ZzZombo m: Buf.new.^methods>>.say 09:24
camelia write-int8
write-int16
write-int32
write-int64
write-int128
write-uint8
write-uint16
write-uint32
write-uint64
write-uint128
write-num32
write-num64
write-bits
write-ubits
pop
shift
reallocate
splice
push
append…
ZzZombo m: Buf.new.write-uint8(my $a=1).say
camelia Too few positionals passed; expected 3 or 4 arguments but got 2
in block <unit> at <tmp> line 1
ZzZombo m: Buf.new.append(my $a=1).say
camelia Buf:0x<01>
09:30 Altai-man_ joined 09:32 sena_kun left
ZzZombo m: class C[Int $a] { method m(){$a.say}};C[1].new.say 09:34
camelia 5===SORRY!5=== Error while compiling <tmp>
Unable to parse class definition
at <tmp>:1
------> 3class C7⏏5[Int $a] { method m(){$a.say}};C[1].new.
expecting any of:
generic role
ZzZombo m: role R[Int $a] { method m(){$a.say}};R[1].new.say
camelia R[Int].new
ZzZombo m: role R[Int $a] { method m(){$a.say}};R[1].new.m.say
camelia 1
True
SmokeMachine m: class C { method ^parametize(Mu:U $type) { $type } }; say C[Int] 09:35
camelia 5===SORRY!5=== Error while compiling <tmp>
C cannot be parameterized
at <tmp>:1
------> 3tize(Mu:U $type) { $type } }; say C[Int]7⏏5<EOL>
09:36 donaldh joined
SmokeMachine m: class C { method ^ parameterize(Mu:U $type) { $type } }; say C[Int] 09:46
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> 3class C { method7⏏5 ^ parameterize(Mu:U $type) { $type } };
SmokeMachine m: class C { method ^parameterize(Mu:U $type) { $type } }; say C[Int] 09:47
camelia ===SORRY!===
Too many positionals passed; expected 2 arguments but got 3
SmokeMachine m: class C { method ^parameterize($, Mu:U $type) { $type } }; say C[Int]
camelia (Int)
09:47 wamba joined 10:11 wamba left
ZzZombo SmokeMachine: what's the first argument for the method? 10:14
SmokeMachine ZzZombo: the own object… all `$obj.^method(|c)` is the same as `$obj.HOW.method($obj, |c)` 10:15
ZzZombo ah, I see. What does it return? 10:16
SmokeMachine ZzZombo: what do you mean? 10:18
ZzZombo Scratch that. How do I actually get the parameter to the class this way? 10:19
To replicate `method m(){$a.say}` in the earlier sample.
10:32 daxim left
SmokeMachine m: class C { method ^parameterize($self, Mu:U $type) { my $new = $self.HOW.new_type: :name(“{ $type.^name }[{$self.^name}]”); $new.^add_parent: $self; $new.^compose; $new }; method m { self.say } }; C[Int].new.m # ZzZombo ? 10:32
camelia Int[C].new
SmokeMachine the opposite! 10:33
m: class C { method ^parameterize($self, Mu:U $type) { my $new = $self.HOW.new_type: :name(“{ $self.^name }[{$type.^name}]”); $new.^add_parent: $self; $new.^compose; $new }; method m { self.say } }; C[Int].new.m
camelia C[Int].new
SmokeMachine ZzZombo: why would you like to do something like that? 10:34
10:38 daxim joined 10:40 cpan-raku left 10:41 cpan-raku joined, cpan-raku left, cpan-raku joined 10:47 tyil left 10:48 tyilanmenyn joined
ZzZombo Well, yes, but why not let to just define parametric classes the same way as roles? 11:04
jnthn Why not just write a role if you want parametricity? 11:09
But ultimatey, the answer is becuase type parameters are lexical, and that implies immutability, but classes are open. 11:13
Also, from a design perspective, roles are the means for re-use, and classes for instance management, and being parametric is primarily a re-use thing. 11:14
11:22 wamba joined 11:31 sena_kun joined 11:33 Altai-man_ left 11:47 joule joined 11:54 daxim left 11:59 ggoebel left, daxim joined 12:19 wamba left
ZzZombo m: -> returns 42 { 41 } 12:26
camelia 5===SORRY!5=== Error while compiling <tmp>
Invalid typename 'returns' in parameter declaration.
at <tmp>:1
------> 3-> returns7⏏5 42 { 41 }
AlexDaniel m: say -> --> 42 { }() 12:27
camelia 42
ZzZombo m: -> --> 42 { 41 } 12:34
camelia WARNINGS for <tmp>:
Useless use of constant integer 41 in sink context (line 1)
ZzZombo m: -> --> 42 { return 41 }
camelia 5===SORRY!5=== Error while compiling <tmp>
No return arguments allowed when return value 42 is already specified in the signature
at <tmp>:1
------> 3-> --> 42 { return 41 7⏏5}
12:35 jaldhar_ left 12:36 patrickb joined, jaldhar_ joined
patrickb . 12:36
tellable6 2019-11-08T10:04:40Z #raku-dev <El_Che> patrickb: set-env.sh is problematic. It set relative paths in the PATH: export PATH=./../bin:./../share/perl6/site/bin:...
patrickb .tell El_Che That's fatal. I get absolute paths. How did you manage to do that? To which shell is /bin/sh linked to on your system? 12:39
tellable6 patrickb, I'll pass your message to El_Che
ZzZombo m: multi sub {} 12:42
camelia 5===SORRY!5=== Error while compiling <tmp>
An anonymous routine may not take a multi declarator
at <tmp>:1
------> 3multi sub {}7⏏5<EOL>
El_Che patrickb: bash on ubuntu 19.10, not linked to dash and the like
ZzZombo m: only sub {}
camelia 5===SORRY!5=== Error while compiling <tmp>
An anonymous routine may not take a only declarator
at <tmp>:1
------> 3only sub {}7⏏5<EOL>
ZzZombo a only
:/
patrickb El_Che: When I execute that script with bash, I also don't get relative paths. This will be an interesting bug to track down. How did you call that script? Just `./set-env.sh` ? 12:44
oh have to leave now
back in the evening
12:44 patrickb left
El_Che no prob 12:46
12:53 jaldhar_ left 12:54 jaldhar_ joined
xkr47 oh my, it looks like raku is sucking me in like perl5 did 20 years ago 12:54
El_Che xkr47: that's the secret plan 12:55
12:56 jaldhar_ left, jaldhar_ joined
xkr47 I just love that you have `.Str`, `.gist` and `.perl` on all objects 12:59
and how say uses it etc
El_Che xkr47: yeah, consistency and a huge std-lib are big plusses 13:05
13:06 jaldhar_ left
xkr47 p6: say /foo/[0][0][0][0] 13:06
camelia /foo/
13:06 jaldhar_ joined
xkr47 it is funnay! 13:06
I don't know what happens yet, but it's interesting to try to figure out :)
sena_kun xkr47, IIRC what lizmat explained to me about this, when you are using indexing on scalars, they are turned into a single-item list, you take its first element, and again and again. 13:10
tellable6 2019-11-06T23:16:34Z #cro <japhb> sena_kun Content-Disposition header?
hey sena_kun, you have a message: gist.github.com/6102db6b4f85829e53...1ccc1f1958
lizmat m: say 42[0]
camelia 42
lizmat m: say 42[0][0][0][0]
camelia 42
xkr47 :D
so everything is a list! :D 13:11
13:12 jaldhar_ left, jaldhar_ joined 13:14 jaldhar_ left, jaldhar_ joined 13:16 jaldhar_ left, jaldhar_ joined
ZzZombo m: 42 [say] 24 13:19
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing infix inside []
at <tmp>:1
------> 0342 [7⏏5say] 24
expecting any of:
bracketed infix
infix
infix stopper
ZzZombo m: 42 [&say] 24 13:20
camelia WARNINGS for <tmp>:
4224
Useless use of &say in sink context (line 1)
ZzZombo wut 13:21
13:22 lucasb joined 13:30 Altai-man_ joined 13:33 sena_kun left 13:34 Xliff joined
Xliff o/ 13:35
13:47 jaldhar_ left 13:48 jaldhar_ joined 13:49 abraxxa joined
abraxxa why does this not match a single comment line? 13:49
token comment { '#' \N* }
13:50 kktt joined, jaldhar_ left, jaldhar_ joined
abraxxa ah, token comment { '#' \N*\n } does match <comment>* 13:50
what's the best practise of not capturing linefeeds? 13:51
13:52 chloekek joined, chloekek left
jnthn If you want to eat something but exclude it from the capture, use <( and/or )> 13:53
token comment { '#' \N* )> \n } or so
abraxxa or?
I came up with: token comment { <.ws> <( '#' \N* )> \n } 13:54
13:54 tyilanmenyn is now known as tyil
abraxxa that allows whitespace before the # which happens in the Filehol config files I have to parse 13:54
jnthn That also works :)
13:55 chloekek joined
abraxxa thanks! 13:56
down to one unparsable file now
token comment { <.ws> <( '#' \N* )> \n <.ws> } 13:57
that now also works for a comment line followed by an indented config line
all files parse ;)
weekend! bye! 13:58
13:59 abraxxa left 14:03 wamba joined
xkr47 how Do I quickest find the implementation of some routine or method? like the source code.. 14:04
14:04 Xliff left
xkr47 like Str for example 14:05
Altai-man_ source: help
I am not sure the great bot for that is online...
xkr47 is there a cli for it? p6doc obv would be a great place..
14:06 wamba left
jnthn m: say .file, ":", .line for Str.^lookup("flip") 14:06
camelia SETTING::src/core.c/Str.pm6:3005
14:06 wamba joined
ZzZombo If only that could be turned easily into a link to the file in the repo? 14:07
14:07 wamba left
xkr47 yeah! 14:07
wait, we've got raku, we can do it! 14:08
jnthn In some not too distant Comma version, we'll also figure out some way to point at CORE.setting sources and so be able to jump to them in the IDE also :)
ZzZombo What is Comma? 14:09
jnthn A Raku IDE
14:09 wamba joined
xkr47 can has! 14:09
jnthn commaide.com/
Altai-man_ so someone volunteers to maintain github.com/zoffixznet/perl6-sourceable ? :)
jnthn Wonder if it can be brought into the general whateverable fold :) 14:10
Altai-man_ I think whateverable is maintained by AlexDaniel, who is pretty (ok, very) busy, so would be nice to have another person to look into it. 14:11
AlexDaniel yeah, I'd gladly run and maintain it
anyone can PR it to whateverable :)
14:11 jaldhar_ left 14:12 jaldhar_ joined
xkr47 how do you do `$foo =~ s/x/y/r`` 14:12
AlexDaniel btw I also have a draft of synopsebot based on whateverable
timotimo m: my $foo = "hello"; $foo ~~ s/e/u/; say $foo 14:13
camelia hullo
AlexDaniel but yeah, maybe I'll get to commit it next week after the release
xkr47 ugh
14:13 ZzZombo left, ZzZombo joined
ZzZombo Wait, can Comma be integrated, with say Android Studio, since that based on IntelliJ? 14:13
timotimo yeah, comma is available as a plugin, too 14:14
14:14 wamba left
timotimo it's not guaranteed to work 100%, but it'll surely do most of what it's supposed to do 14:14
Altai-man_ technically - yes, in reality your mileage may vary.
timotimo one issue is jetbrains based IDEs that don't have the concept of "SDK" 14:15
webstorm has that problem
Altai-man_ most issues I saw with webstorm were because working with sdk interesting there.
yes
timotimo you can't tell comma where to find your perl6 stuff, because it relies on the intellij code to manage that and offer the UI and all that
Altai-man_ so no nice completion and "undefined" are everywhere, but you still have local things and editing.
timotimo Altai-man_: you think it could just take paths from an env var?
AlexDaniel Altai-man_: wanna try making a PR for sourcebot? This file you just throw away, whateverable does all that for you: github.com/zoffixznet/perl6-source...rceable.p6
Altai-man_: then you just take this file and call it Sourceable.p6 github.com/zoffixznet/perl6-source...urcery.pm6 14:16
or maybe not, you can keep it as a lib too 14:17
Altai-man_ timotimo, technically we can, but we probably don't want to do it silently and default-y. what if a user wants to use various binaries?
I think the sane option is to detect if we're in idea or not and if not add an action for sdk setting
AlexDaniel Altai-man_: here's the shortest bot: github.com/perl6/whateverable/blob...allable.p6
ZzZombo I don't want yet another IDE just for Raku, so I'd like to know if Comma is better than, say, Raku extension for Atom or VS Code?
xkr47 ===SORRY!=== Error while compiling:
:: not yet implemented
timotimo comma understands perl6 code 14:18
Altai-man_ AlexDaniel, will see what I can do tomorrow! Thanks for your guidelines. Also need to revive some my PRs to roast...
timotimo it has its own parser
El_Che ZzZombo: Comma is based on Intellij and/or and Intellij plugin
timotimo full-featured parser
El_Che Intellij has lots of support for many languages and formats
AlexDaniel Altai-man_: then after adapting the code just a little bit `sake debug:sourceable` should run the bot, that's about it
Altai-man_ AlexDaniel, saved those instructions, thanks. inb4: history 14:19
xkr47 m: my $f = Str.^lookup("flip"); my $u = $f.file; $u ~~ s!SETTING\:\:!github.com/rakudo/rakudo/blob/master/!; say $u ~ "#L" ~ $f.line
camelia github.com/rakudo/rakudo/blob/mast...m6#L3005
»
xkr47 it worked! 14:20
AlexDaniel Altai-man_: fwiw you can also use Whateverable as an external lib, like here: github.com/FCO/RedBot/tree/whateverable
Altai-man_: but I'd recommend not to if you want me to run it :) 14:21
that is, just commit it to whateverable repo
chloekek Hello. 14:26
AlexDaniel o/
chloekek It's been a while since I used Raku. 14:27
Seems Rakudo is still at the same version, neat. 14:28
timotimo that's a positive way to express that we haven't released in a little while 14:31
chloekek Means I don't have to update my nix package. :) 14:32
timotimo no packages need to be nixed 14:34
SmokeMachine jnthn: Would you mind if I do a feature request for Comma? Whould that be possible to Comman follow meta-methods? I mean, if I cmd+click something like `$model.^columns` it go to `MetamodelX::Red::Model.columns()`?
chloekek I forgot what part of integrating raku with nix was so much work, but it wasn't rakudo. 14:37
Ah it was dealing with repositories, distributions, and install-dist.p6.
timotimo m: say [(0 xx 10).keys] 14:39
camelia [0 1 2 3 4 5 6 7 8 9]
chloekek And generating the PERL6LIB environment variable, especially. 14:40
timotimo ^- this is how to make a range from 0 to n-1 in javascript :P
chloekek m: say [(0 xx 10)]
camelia [0 0 0 0 0 0 0 0 0 0]
chloekek Ah yeah of course. 14:41
timotimo [...Array(10).keys()]
jnthn SmokeMachine: Can request it, though it's not quite trivial to make happen :) 14:43
chloekek LiveScript has syntax [x til y] and it generates an IIFE with a for loop in it.
Meh, materialized ranges. 14:44
timotimo what's an IIFE? 14:45
chloekek An immediately-invoked function expression; (function() { ... })()
Basically what Raku has the do keyword for; do { ... }
So that you can put statements where expressions are expected. 14:46
m: my $x = 1; my \y := $x; y = 2; say y; 14:48
camelia 2
ZzZombo Ah, can somebody explain the `handles` trait and it's practical use? 14:50
lizmat is there something lacking in docs.raku.org/language/typesystem#...it-handles ? 14:53
ZzZombo I don't understand why would one use that, the page does nothing to explain that I'm afraid. 14:55
timotimo ah, good to know 15:03
"handles" is to make delegation trivial so that you can compose instead of derive
like, you don't have to derive from Array just to add a method or two if you can just put the array into an attribute and have all its methods forwarded 15:04
(and also: you can then easily plop in arbitrary types that conform to the methods)
SmokeMachine jnthn: it would make my life so much easier... 15:07
timotimo that will require comma to understand EXPORTHOW properly 15:11
currently iirc it just has a list of stuff that it understands to be class-like: monitor, actor, model
jnthn Yeah, it doesn't track EXPORTHOW at all 15:17
SmokeMachine jnthn: is this track planned? 15:18
15:21 GxD joined, GxD left
jnthn Eventually, though wasn't high on the todo list since there (until Red) wasn't really that much call for it 15:22
That said, being able to auto-complete meta-methods would probably fall out of the work
Altai-man_ m: Int.HOW.^methods.say; 15:25
camelia (archetypes new new_type add_fallback compose roles role_typecheck_list is_composed setup_junction_fallback find_method_fallback has_fallbacks set_name set_shortname name shortname WHY set_why set_language_version lang-rev-before ver auth api set_ver …
15:30 sena_kun joined
timotimo the original question was to go-to-definition for meta methods 15:31
jnthn Yeah, but resolution and auto-complete fall out of the same mechanism, pretty much 15:32
15:32 Altai-man_ left
timotimo right 15:33
15:37 wamba joined
SmokeMachine jnthn: the next one is just an wish… but would that be possible, some day, to add Red’s model here? usercontent.irccloud-cdn.com/file/.../image.png 15:47
I know that’s probably too much... 15:48
ZzZombo "Traits are subs declared in the form trait_mod<VERB>, where VERB stands for the name like is, does or handles." -- this suggests it's possible to create custom traits with arbitrary names, but that's wrong AFAIK.
m: multi trait_mod:<asd>(Routine $a) { dd $a };sub s asd {} 15:49
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> 3it_mod:<asd>(Routine $a) { dd $a };sub s7⏏5 asd {}
expecting any of:
new name to be defined
SmokeMachine ZzZombo: maybe bacause asd isn’t a verb?! (jusgt kidding...)
15:49 jaldhar_ left 15:50 jaldhar_ joined
jnthn "I can't be asd" sounds verby to me :P 15:54
SmokeMachine: That one is significantly easier; please give us a wish list. Actually I'm surprised `monitor` isn't there as an option already.
SmokeMachine jnthn: I thought monitor and actor would be there already... 15:56
jnthn Well, they kind of imply a chain of consequences: you need the `use` needing the `use` might imply a META6.json `depends`, etc. 15:58
16:10 Xliff joined
SmokeMachine jnthn: but is that possible to include that? 16:11
16:12 chloekek left
Xliff vrurg: You around? Applied patch and recompiled, but still no luck. 16:16
jnthn SmokeMachine: Yeah, make an issue 16:22
16:25 ubz-dih_ left
SmokeMachine jnthn: issues 59 and 60 were created... 16:32
jnthn Thanks! 16:33
16:38 lizmat_ joined
vrurg Xliff: send me the instructions, I would try locally. Will be away for a while though. 16:38
SmokeMachine jnthn: another question: when I do `given 42 { when :is-prime {...} }` while I’m writing the `:is-prime` should comma auto-complete that? 16:39
sena_kun SmokeMachine, `.is-prime` maybe? But nope, Comma doesn't take candidates from `given` (yet). 16:41
SmokeMachine sena_kun: no, :is-prime...
sena_kun o.O
16:41 lizmat left
SmokeMachine m: say 42 ~~ :is-prime 16:41
sena_kun m: given 42 { when :is-prime { 42.say } }
camelia False
( no output )
SmokeMachine m: say 2 ~~ :is-prime
camelia True
jnthn No, since it's actually just a totally ordinary Pair
16:41 lizmat_ is now known as lizmat
sena_kun ah, I remember, it is something about smartmatching against Pair... 16:42
I see
no, it can't autocomplete that
SmokeMachine jnthn: but isn’t every ordinary pair in an smart-match mean a method call?
jnthn Pairs are just used for too many htings...
*things
I guess if we know we're in a smart-match context maybe we can though 16:43
sena_kun `.is-prime` would be another question because it is a call and we can do things for guessing what's the topic
jnthn Like pair after ~~ for after when
*or after when
SmokeMachine Is `42 ~~ :is-prime` is a call as is `42.is-prime`... 16:44
jnthn Not really, it's :is-prime.ACCEPTS(42)
SmokeMachine jnthn: but it’s being called internally… I mean the &is-prime runs somehow… right? 16:45
jnthn Yes, it's one multi candidate of ACCEPTS
multi method ACCEPTS(Pair:D: Mu $other) { 16:46
nqp::if(
nqp::can($other,(my $method := $!key.Str)),
($other."$method"().Bool === $!value.Bool),
SmokeMachine So, wouldn’t it make sense to auto-complete?
16:46 Tirifto joined
jnthn SmokeMachine: It's a very special case, and we'd only want it to auto-complete when it's quite likely to be useful 16:46
It should be possible, though
Similarly, we could auto-complete pairs in argument lists with the names of the accepted named arguments of the target of the call :) 16:47
SmokeMachine jnthn: and sorry for all this odd requests...
jnthn They're all quite reasonable. :) Just not all totally easy. ;-)
But that's never stopped us so far :D 16:48
SmokeMachine jnthn: that would be wonderful! but wouldn’t *%_ make it herder?
jnthn Well, yeah, then we don't have any guidance on what to offer :)
Xliff hi, jnthn!
Any progress on github.com/jnthn/p6-io-socket-asyn...issues/44?
SmokeMachine s/herder/harder/
m: my method bla {}.signature.say 16:49
camelia (Mu: *%_)
jnthn Xliff: No, it makes no sense whatsoever; I did wonder if it was a generic NativeCall bug (some setup race in there), but failed to reproduce such
SmokeMachine jnthn: I mean that *%_ ^^ 16:50
Xliff jnthn: You were never able to reproduce?
jnthn Xliff: Pretty sure I tried doing so and didn't...
Xliff jnthn: OK. I will try and rerun with latest rakudo and update the bug. Maybe it got fixed?! %) 16:51
I love it when bugs grow legs and walk away.
jnthn Xliff: Possibly :) If it's still there for you, let me know
Xliff jnthn: Will do. Thanks!
17:02 scimon left 17:06 jaldhar_ left, jaldhar_ joined 17:07 patrickb joined 17:13 jaldhar_ left 17:14 jaldhar_ joined 17:19 jaldhar_ left 17:20 jaldhar_ joined 17:21 jaldhar_ left 17:22 jaldhar_ joined 17:27 jaldhar_ left 17:28 jaldhar_ joined 17:30 jaldhar_ left, Altai-man_ joined, jaldhar_ joined 17:31 jaldhar_ left 17:32 patrickb left, jaldhar_ joined, sena_kun left 18:12 jaldhar_ left, jaldhar_ joined 18:27 jaldhar_ left 18:28 jaldhar_ joined 18:29 wamba left 18:32 lucasb left 18:43 jaldhar_ left 18:44 jaldhar_ joined 18:48 wildtrees joined 18:50 jaldhar_ left
Xliff vrurg: Is there a way I can check to see if your patch is applied, programmatically? 19:02
vrurg Xliff: perhaps in a hacky way, by checking Stash for TAKE-SNAPSHOT method. 19:03
Xliff: I'd like you to test the case from 3075 on your side. Because if you get a problem on your HEAD that could be something unrelated. 19:04
Xliff Yeah. It's not there. WTF? 19:10
I patched the files. :/
So I install via rakudobrew. What's the best way to insure I rebuild properly?
vrurg You could actually checkout directly from my repo and checkout rakudo_3075 branch 19:18
Xliff OK. URL? 19:19
vrurg github.com/vrurg/rakudo/tree/rakudo_3075
Xliff ./Configure.pl --gen-moar --gen-nqp ? 19:21
vrurg Right. 19:23
19:30 sena_kun joined, sena_kun left 19:32 Altai-man_ left
Xliff vrurg: OK, rakudo built, however now I can't build zef. 19:51
Missing or wrong version of dependency 'core#sources/70EBDA25F44EBFF8734F739F5779D64914083409 (CompUnit::Repository::Staging)' (from 'core#sources/1C08282E0E9C9AD04D60AE924EF6A2DD50636161 (NativeCall::Compiler::GNU)' 19:52
vrurg Does rakudo pass make test?
Xliff Yeah. Might be my environment. Not sure. 19:53
I've got your bin aliased to 'perl6', but the rakudobrew'd version is still on PATH 19:54
vrurg Xliff: just run with the full binary path. 19:59
Xliff kk 20:00
vrurg When I test I often run ~/src/.../perl6
Xliff Using full path, still get same error. 20:01
Let me move zef out of perl6 tree 20:02
Still same. But with zef?!
vrurg Xliff: try make test in rakudo's build dir. 20:06
Xliff That's where I ran it the first time. 20:07
vrurg PR fails on travis and I can't reproduce the problem. Perhaps you have it too.
Ok, then I'll need to get back to it and try installing zef from scratch. Frankly saying, I have it and required modules pre-installed. 20:08
Presumably, PR breaks it.
Xliff :(
Think it's something with the Stash? 20:09
vrurg Will see. Leave it for now. 20:10
Xliff OK
20:27 patrickb joined 21:00 kktt left, kktt joined 21:04 cpan-raku left 21:05 cpan-raku joined, cpan-raku left, cpan-raku joined 21:28 chloekek joined 21:30 joule left 22:14 MasterDuke joined 22:54 MasterDuke left 22:56 kktt left 22:59 chloekek left 23:04 patrickb left 23:08 jaldhar_ joined 23:28 jaldhar_ left 23:29 jaldhar_ joined