00:03
patrickb left
00:04
rmmm joined
|
|||||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; }; role A { }; A.HOW does Metamodel::MyRoleHOW; A.^name.say | 00:05 | |||||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> Cannot declare our-scoped role inside of a role (the scope inside of a role is generic, so there is no unambiguous package to install the symbol in) at <tmp>:1 ------> 3*@pos, *%named) { say 'M… |
||||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; }; }; role A { }; A.HOW does Metamodel::MyRoleHOW; A.^name.say | ||||||||||||||||||||||||||||||||||||||
camelia | A | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; }; }; role A { }; A.HOW does Metamodel::MyRoleHOW; A.HOW.^name.say | ||||||||||||||||||||||||||||||||||||||
camelia | Perl6::Metamodel::ParametricRoleGroupHOW+{Metamodel::MyRoleHOW} | ||||||||||||||||||||||||||||||||||||||
jnthn | Xliff: The group contains all roles with the same short name | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; }; }; role A { }; A.HOW does Metamodel::MyRoleHOW; A.HOW.^name.say; class B does A { }; B.new | 00:06 | |||||||||||||||||||||||||||||||||||||
camelia | Perl6::Metamodel::ParametricRoleGroupHOW+{Metamodel::MyRoleHOW} | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; }; }; role A { }; A.HOW does Metamodel::MyRoleHOW; class B does A { }; B.new | ||||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
jnthn | Xliff: So given role R[::T] { } and role R[::T1, ::T2] { } then there's one parametric role group installed at R, holding the two parametric roles | ||||||||||||||||||||||||||||||||||||||
Xliff | jnthn: How come I don't see 'Mee'? | ||||||||||||||||||||||||||||||||||||||
Or 'Meee!'? | 00:07 | ||||||||||||||||||||||||||||||||||||||
specialize used to be called in this manner, now it's not. | |||||||||||||||||||||||||||||||||||||||
jnthn | Xliff: Not sure, that surprises me a bit | 00:08 | |||||||||||||||||||||||||||||||||||||
Xliff | And even that is different. A role defined inside a compunit is a Perl6::Metamodel::ParametricRoleHOW, not a ParametricRoleGroupHOW. | ||||||||||||||||||||||||||||||||||||||
jnthn | Oh!! | ||||||||||||||||||||||||||||||||||||||
Actually it's obvious | |||||||||||||||||||||||||||||||||||||||
Xliff | Maybe to you! :) | ||||||||||||||||||||||||||||||||||||||
jnthn | `does` happens at runtime, but compile-time composition happens at compile time | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; }; }; role A { }; A.HOW but Metamodel::MyRoleHOW; class B does A { }; B.new | ||||||||||||||||||||||||||||||||||||||
camelia | Died with X::Method::NotFound in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
jnthn | You need to do the mixin at compile time | 00:09 | |||||||||||||||||||||||||||||||||||||
Xliff | Hrm... best way to do that? | ||||||||||||||||||||||||||||||||||||||
jnthn | BEGIN | ||||||||||||||||||||||||||||||||||||||
Xliff | LOL! OK. | ||||||||||||||||||||||||||||||||||||||
That... does not help me a bit. | |||||||||||||||||||||||||||||||||||||||
jnthn | Well, obvious as in "compared to going through the source wondering what on earth" :) | ||||||||||||||||||||||||||||||||||||||
How so? | |||||||||||||||||||||||||||||||||||||||
Xliff | Well, I need to pun the roles via a trait_mod | 00:10 | |||||||||||||||||||||||||||||||||||||
jnthn | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; }; }; role A { }; BEGIN A.HOW does Metamodel::MyRoleHOW; class B does A { }; B.new | ||||||||||||||||||||||||||||||||||||||
camelia | Meee! 5===SORRY!5=== Error while compiling <tmp> Cannot find method 'collisions' on object of type Perl6::Metamodel::EnumHOW at <tmp>:1 |
||||||||||||||||||||||||||||||||||||||
jnthn | Um, what... | ||||||||||||||||||||||||||||||||||||||
Where did the enum come from... | 00:11 | ||||||||||||||||||||||||||||||||||||||
Oh...but it did output "Meee!" | |||||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; }; }; role A { }; BEGIN { A.HOW does Metamodel::MyRoleHOW; }; class B does A { }; B.new | ||||||||||||||||||||||||||||||||||||||
camelia | Meee! 5===SORRY!5=== Error while compiling <tmp> Cannot find method 'collisions' on object of type Perl6::Metamodel::EnumHOW at <tmp>:1 |
||||||||||||||||||||||||||||||||||||||
jnthn | Oh, it's 'cus `say` returns `True` :D | ||||||||||||||||||||||||||||||||||||||
Xliff | Ah. | ||||||||||||||||||||||||||||||||||||||
m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; Nil}; }; role A { }; BEGIN { A.HOW does Metamodel::MyRoleHOW; }; class B does A { }; B.new | |||||||||||||||||||||||||||||||||||||||
camelia | Meee! 5===SORRY!5=== Error while compiling <tmp> Cannot find method 'collisions' on object of type Perl6::Metamodel::ClassHOW at <tmp>:1 |
||||||||||||||||||||||||||||||||||||||
jnthn | Well, you need to actually return a specialization :) | 00:12 | |||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named --> Nil) { say 'Meee!'; Nil }; }; role A { }; BEGIN { A.HOW does Metamodel::MyRoleHOW; }; class B does A { }; B.new | ||||||||||||||||||||||||||||||||||||||
camelia | Meee! 5===SORRY!5=== Error while compiling <tmp> Cannot find method 'collisions' on object of type Perl6::Metamodel::ClassHOW at <tmp>:1 |
||||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named --> Nil) { say 'Meee!' }; }; role A { }; BEGIN { A.HOW does Metamodel::MyRoleHOW; }; class B does A { }; B.new | ||||||||||||||||||||||||||||||||||||||
camelia | Meee! 5===SORRY!5=== Error while compiling <tmp> Cannot find method 'collisions' on object of type Perl6::Metamodel::ClassHOW at <tmp>:1 |
||||||||||||||||||||||||||||||||||||||
Xliff | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; self; }; }; role A { }; BEGIN { A.HOW does Metamodel::MyRoleHOW; }; class B does A { }; B.new | ||||||||||||||||||||||||||||||||||||||
camelia | Meee! 5===SORRY!5=== Error while compiling <tmp> Cannot find method 'collisions' on object of type NQPClassHOW at <tmp>:1 |
||||||||||||||||||||||||||||||||||||||
Xliff | ?!? | ||||||||||||||||||||||||||||||||||||||
OK. Well one question answered... sorta. | 00:13 | ||||||||||||||||||||||||||||||||||||||
jnthn | m: role Metamodel::MyRoleHOW { method specialize (Mu \r, Mu:U \obj, *@pos, *%named) { say 'Meee!'; nextsame }; }; role A { }; BEGIN A.HOW does Metamodel::MyRoleHOW; class B does A { }; B.new | ||||||||||||||||||||||||||||||||||||||
camelia | Meee! | ||||||||||||||||||||||||||||||||||||||
jnthn | There we go :) | ||||||||||||||||||||||||||||||||||||||
Xliff | Ahhh! | ||||||||||||||||||||||||||||||||||||||
jnthn | Don't know if that's ultimately what you want, but delegating to the original implementation will do the job | 00:14 | |||||||||||||||||||||||||||||||||||||
Xliff | OK. Is there any way to delay some of this until run-time? | ||||||||||||||||||||||||||||||||||||||
Are trait_mods compile time? | |||||||||||||||||||||||||||||||||||||||
jnthn | Yes | ||||||||||||||||||||||||||||||||||||||
Xliff | OK. Great! | ||||||||||||||||||||||||||||||||||||||
jnthn | Can you define "some of this"? :) | ||||||||||||||||||||||||||||||||||||||
Ah, if trait application being compile time suffices, then fine :) | 00:15 | ||||||||||||||||||||||||||||||||||||||
Xliff | Yes. | ||||||||||||||||||||||||||||||||||||||
However I need to know if BEGIN time at the compunit level is enough. | |||||||||||||||||||||||||||||||||||||||
If I am compiling multiple compunits, will begin wait until all are compiled? | 00:16 | ||||||||||||||||||||||||||||||||||||||
s/begin/BEGIN/ | |||||||||||||||||||||||||||||||||||||||
jnthn | BEGIN is executed as soon as the compiler reaches it | ||||||||||||||||||||||||||||||||||||||
Well, after it's parsed it | |||||||||||||||||||||||||||||||||||||||
Modulo a hack to make sure it's eaten a heredoc | |||||||||||||||||||||||||||||||||||||||
Xliff | So I want to define a way to execute a piece of code for every comp unit compiled. | 00:17 | |||||||||||||||||||||||||||||||||||||
jnthn | If you're in a trait_mod then you're implicitly at compile time | ||||||||||||||||||||||||||||||||||||||
Xliff | So that I can then compose method aliases. | ||||||||||||||||||||||||||||||||||||||
jnthn | So no need to write BEGIN in one of those | 00:18 | |||||||||||||||||||||||||||||||||||||
Xliff | Method aliases are established at compile time, but due to how roles compose protos, those protos are NOT available until class composition time. | ||||||||||||||||||||||||||||||||||||||
s/protos/method candidate/ | 00:19 | ||||||||||||||||||||||||||||||||||||||
So I want to wait until the class is composed before I assign the method aliases established in the role. | 00:21 | ||||||||||||||||||||||||||||||||||||||
jnthn | Ah, hm. | 00:22 | |||||||||||||||||||||||||||||||||||||
Xliff | jnthn: See discussion here ... github.com/lizmat/Method-Also/issues/1 | ||||||||||||||||||||||||||||||||||||||
jnthn | That's an interesting one | ||||||||||||||||||||||||||||||||||||||
And probably needs more brain than I have left today | |||||||||||||||||||||||||||||||||||||||
Xliff | This was fixed a while ago... now we're back to square one. | ||||||||||||||||||||||||||||||||||||||
Yeah... well... *sigh* | |||||||||||||||||||||||||||||||||||||||
My stuff is broken until I can get this fixed again... and I still have partially eaten brain left. | |||||||||||||||||||||||||||||||||||||||
It's just so DISAPPOINTING to get something fixed and have it break again. | 00:23 | ||||||||||||||||||||||||||||||||||||||
This issue PROBABLY needs an internal fix and should not be left to module space. | |||||||||||||||||||||||||||||||||||||||
jnthn | If the problem is that you want to do something after protos have been produced, maybe you want to override incorporate_multi_candidates, callsame it, and then do your stuff | 00:25 | |||||||||||||||||||||||||||||||||||||
You probably don't want to really wait until after the class composition is totally done, otherwise you're after method cache handling | 00:27 | ||||||||||||||||||||||||||||||||||||||
Probably hooking in at the earliest point after the things you need are in place would work | 00:28 | ||||||||||||||||||||||||||||||||||||||
Xliff | So that would be incorporate_multi_candidates? | 00:29 | |||||||||||||||||||||||||||||||||||||
00:29
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
Xliff | I'm still trying to understand why it stopped working when punning to ParametricRoleHOW! | 00:30 | |||||||||||||||||||||||||||||||||||||
Kaiepi | oh boy, mixing in features to roles... | ||||||||||||||||||||||||||||||||||||||
doesn't sound fun | 00:31 | ||||||||||||||||||||||||||||||||||||||
Xliff | Worse... roles in the Metamodel! | ||||||||||||||||||||||||||||||||||||||
Kaiepi | i'm mixing in support for parameterization to subsets atm, and that's bad enough, let alone roles | ||||||||||||||||||||||||||||||||||||||
for different reasons though | 00:32 | ||||||||||||||||||||||||||||||||||||||
jnthn | Could be worse; you could have been the one that had to design and implement the whole thing in the first place... ;-) | 00:33 | |||||||||||||||||||||||||||||||||||||
Kaiepi | heh | ||||||||||||||||||||||||||||||||||||||
part of the problem is raku classes and roles don't always play nice with the nqp ones for rakudo's metamodels | |||||||||||||||||||||||||||||||||||||||
m: class FooHOW does Metamodel::MethodContainer { }; say FooHOW.^methods.^name | 00:34 | ||||||||||||||||||||||||||||||||||||||
camelia | List | ||||||||||||||||||||||||||||||||||||||
Kaiepi | m: class FooHOW does Metamodel::MethodContainer { }; say FooHOW.^method_table.^name | ||||||||||||||||||||||||||||||||||||||
camelia | Hash | ||||||||||||||||||||||||||||||||||||||
Kaiepi | wait what? | ||||||||||||||||||||||||||||||||||||||
jnthn | Return values get hllize'd | ||||||||||||||||||||||||||||||||||||||
Kaiepi | that was returning nqp::null() last time i tried | ||||||||||||||||||||||||||||||||||||||
i'll have to figure out what i was doing at the time for that to happen | 00:35 | ||||||||||||||||||||||||||||||||||||||
jnthn | Are you sure you're doing what you thing you're doing? YOu're calling a method on the meta-class of FooHOW, not on FooHOW | ||||||||||||||||||||||||||||||||||||||
Kaiepi | oh right | ||||||||||||||||||||||||||||||||||||||
jnthn | *think | ||||||||||||||||||||||||||||||||||||||
Kaiepi | m: class FooHOW does Metamodel::MethodContainer { method new_type() { Metamodel::Primitives.create_type: self.new } }; my constant Foo = FooHOW.new_type; say Foo.^methods.^name | 00:36 | |||||||||||||||||||||||||||||||||||||
camelia | Cannot iterate over a VMNull type object in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
Kaiepi | there we go | ||||||||||||||||||||||||||||||||||||||
jnthn | Urgh, yes | ||||||||||||||||||||||||||||||||||||||
I can guess how that happens; there's probably not an easy fix | |||||||||||||||||||||||||||||||||||||||
(Though surely a not-easy one is possible :)) | |||||||||||||||||||||||||||||||||||||||
Kaiepi | with parametric subsets, the issue i'm having rn is ensuring they can handle parameterizations without keeping state since raku attributes don't play nice either | 00:38 | |||||||||||||||||||||||||||||||||||||
luckily i've been learning haskell lately so there's a functional approach to this i can use to accomplish this | |||||||||||||||||||||||||||||||||||||||
*parameterizations with generics | 00:39 | ||||||||||||||||||||||||||||||||||||||
jnthn | sleep time o/ | 00:47 | |||||||||||||||||||||||||||||||||||||
Kaiepi | night | 00:50 | |||||||||||||||||||||||||||||||||||||
japhb | Is there a way to change the default method invocant constraint for a class so that all methods are constrained to be instance methods (or alternately, constrained to be class methods) unless otherwise specified? | ||||||||||||||||||||||||||||||||||||||
Having `::?CLASS:D: ` at the start of every signature is very cluttery | 00:52 | ||||||||||||||||||||||||||||||||||||||
Xliff | Oh... that would be nice. | 00:53 | |||||||||||||||||||||||||||||||||||||
japhb | Actually, I'd love to be able to default *all* of the type smilies to :D, then use :U or :_ explicitly for the other choices. I'm fairly certain that would not only de-clutter my code, but vastly reduce a big source of bugs -- it ought to be possible for people to say "Make me do extra work to allow undefined arguments". | 01:07 | |||||||||||||||||||||||||||||||||||||
Kaiepi | m: role Foo[\T] { say (try my ::?CLASS:D $ = T) // 'oops!' }; Foo[1].new | 01:26 | |||||||||||||||||||||||||||||||||||||
camelia | oops! oops! |
||||||||||||||||||||||||||||||||||||||
Kaiepi | generics mess with this though | ||||||||||||||||||||||||||||||||||||||
wait nvm that's a separate issue | 01:28 | ||||||||||||||||||||||||||||||||||||||
it'd be nice but i'm wary of what would happen if that were the case | 01:29 | ||||||||||||||||||||||||||||||||||||||
02:19
rmmm left
02:51
Kaiepi left
02:53
Kaiepi joined,
Kaiepi left
02:54
Kaiepi joined
02:55
Kaiepi left
02:56
Kaiepi joined
03:08
cognominal joined
03:10
Kaiepi left
03:11
Kaiepi joined,
cognomin_ left
03:14
cognomin_ joined
03:18
cognominal left
|
|||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates (|) { my \r := callsame; say 'HIII!'; r; }; }; role = | 04:27 | |||||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unable to parse role definition at <tmp>:1 ------> 3 := callsame; say 'HIII!'; r; }; }; role7⏏5 = expecting any of: generic role |
||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates (|) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; | 04:28 | |||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates (|) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; A.HOW does NewRoleHow; A.new.a('H') | ||||||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared name: NewRoleHow used at line 1. Did you mean 'NewRoleHOW'? |
||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates (|) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; A.HOW does NewRoleHOW; A.new.a('H') | ||||||||||||||||||||||||||||||||||||||
camelia | Str | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates (|c) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; A.HOW does NewRoleHOW; A.new.a('H') | ||||||||||||||||||||||||||||||||||||||
camelia | Str | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates (|c) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN A.HOW does NewRoleHOW; A.new.a('H') | 04:29 | |||||||||||||||||||||||||||||||||||||
camelia | Str | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates (|c) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN { A.HOW does NewRoleHOW; }; A.new.a('H') | ||||||||||||||||||||||||||||||||||||||
camelia | Str | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates (|c) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN { A.HOW does NewRoleHOW; }; A.new.a('H') | ||||||||||||||||||||||||||||||||||||||
camelia | Str | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates (|c) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN { A.HOW does NewRoleHOW; }; A.new.a('H') | 04:30 | |||||||||||||||||||||||||||||||||||||
camelia | Str | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN { A.HOW does NewRoleHOW; }; A.new.a('H') | 04:54 | |||||||||||||||||||||||||||||||||||||
camelia | Str | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN { A.HOW does NewRoleHOW; }; A.HOW.^name.say | 04:55 | |||||||||||||||||||||||||||||||||||||
camelia | Perl6::Metamodel::ClassHOW+{NewRoleHOW} | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN A.HOW but NewRoleHOW; A.HOW.^name.say | 04:56 | |||||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> An exception occurred while evaluating a BEGIN at <tmp>:1 Exception details: Died with X::Method::NotFound in code at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN A.HOW does NewRoleHOW; A.HOW.^name.say | ||||||||||||||||||||||||||||||||||||||
camelia | Perl6::Metamodel::ClassHOW+{NewRoleHOW} | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN A.HOW does NewRoleHOW; | ||||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { my \r := callsame; say 'HIII!'; r; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN A.HOW does NewRoleHOW; A.new.a(1) | 04:57 | |||||||||||||||||||||||||||||||||||||
camelia | Int | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { callsame; say 'HIII!'; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN A.HOW does NewRoleHOW; A.new.a(1) | ||||||||||||||||||||||||||||||||||||||
camelia | Int | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { callsame; say 'HIII!'; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN A.HOW does NewRoleHOW; | ||||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { callsame; say 'HIII!'; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN B.HOW does NewRoleHOW; | 04:58 | |||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
Xliff | m: role NewRoleHOW { method incorporate_multi_candidates ($obj) { callsame; say 'HIII!'; }; }; role B { multi method a (Str $a) { say 'Str'; }; multi method a (Int $i) { say 'Int'; }; }; class A does B { }; BEGIN { A.HOW does NewRoleHOW; B.HOW does NewRoleHOW; }; | ||||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
Xliff | jnthn: ^^^ ???? | ||||||||||||||||||||||||||||||||||||||
06:30
Kaiepi left
06:37
Kaiepi joined,
Kaiepi left
06:38
Kaiepi joined
06:39
Kaiepi left
06:40
discord61 joined,
Kaiepi joined,
discord6 left,
discord61 is now known as discord6
06:55
discord6 left,
discord6 joined
07:13
Kaiepi left
08:07
Kaiepi joined
08:23
Xliff left
09:16
Kaiepi left
09:22
Kaiepi joined
10:23
ufobat joined
10:37
jmerelo joined
|
|||||||||||||||||||||||||||||||||||||||
jmerelo | hey | 10:37 | |||||||||||||||||||||||||||||||||||||
tellable6 | 2019-11-30T14:35:13Z #raku <tbrowder> jmerelo post updated--basically done, but still some minor edits to make (i need to add another note), and i'll try to fix the wordpress issues with extra newlines. | ||||||||||||||||||||||||||||||||||||||
2019-11-30T19:03:57Z #raku <tbrowder> jmerelo i took 9 dec slot. though i'm happy to give it up if someone else wants it, but speak soon! | |||||||||||||||||||||||||||||||||||||||
2019-11-30T19:06:10Z #raku <tbrowder> jmerelo check yr email | |||||||||||||||||||||||||||||||||||||||
2019-12-01T00:04:15Z #raku <tbrowder> jmerelo wordpress is not showing my latest version!!!! wp sucks rocks | |||||||||||||||||||||||||||||||||||||||
2019-12-01T00:12:48Z #raku <tbrowder> jmerelo it looks like it's finally taken my update-whew! | |||||||||||||||||||||||||||||||||||||||
jmerelo clickbaits the first day of the Advent Calendar rakuadventcalendar.wordpress.com/2...perl-code/ | 10:38 | ||||||||||||||||||||||||||||||||||||||
Also, now Google search from the search slot actually searches docs.raku.org. Check it out at docs-stage.raku.org/ | 10:40 | ||||||||||||||||||||||||||||||||||||||
As usual, if everything's OK, I'll deploy to docs.raku.org | |||||||||||||||||||||||||||||||||||||||
Tanks rba++ for setting up this stating infrastructure. It's great for, well, staging changes before being deployed to the actual site. | |||||||||||||||||||||||||||||||||||||||
s/stating/staging/ | 10:41 | ||||||||||||||||||||||||||||||||||||||
10:50
sena_kun joined
|
|||||||||||||||||||||||||||||||||||||||
jmerelo | sena_kun: ready for today's advent calendar? | 10:58 | |||||||||||||||||||||||||||||||||||||
tonight, rather | 10:59 | ||||||||||||||||||||||||||||||||||||||
I see it's already scheduled. I'll add some links, if you don't mind. | 11:00 | ||||||||||||||||||||||||||||||||||||||
11:02
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
jmerelo | .tell sena_kun I've done a bit of editing here and there. Other than that, perfect! | 11:03 | |||||||||||||||||||||||||||||||||||||
tellable6 | jmerelo, I'll pass your message to sena_kun | ||||||||||||||||||||||||||||||||||||||
11:16
sena_kun joined
11:40
ufobat_ joined
11:43
ufobat left
11:50
ufobat joined
11:52
ufobat_ left
|
|||||||||||||||||||||||||||||||||||||||
Geth | ¦ rakudo: lizmat self-unassigned LTA: Heredocs give warning trouble with empty lines that are partially indented github.com/rakudo/rakudo/issues/2409 | 11:56 | |||||||||||||||||||||||||||||||||||||
11:58
MasterDuke left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | Files=1290, Tests=109646, 207 wallclock secs (27.95 usr 7.92 sys + 2915.13 cusr 261.17 csys = 3212.17 CPU) | 11:58 | |||||||||||||||||||||||||||||||||||||
[Tux] |
|
12:16 | |||||||||||||||||||||||||||||||||||||
12:31
ufobat left
|
|||||||||||||||||||||||||||||||||||||||
tbrowder | lizmat: does the heredoc issue seem hard to fix? | 12:40 | |||||||||||||||||||||||||||||||||||||
lizmat | tbrowder: I'm a complete noob wrt to heredocs, so I'm not the most efficient person to be responsible for fixing that issue | 12:41 | |||||||||||||||||||||||||||||||||||||
tbrowder | can it be fixed in Rakudo instead of nqp? | ||||||||||||||||||||||||||||||||||||||
lizmat | I have no idea | ||||||||||||||||||||||||||||||||||||||
tbrowder | ok, thnx | 12:42 | |||||||||||||||||||||||||||||||||||||
lizmat 's mind is in CoC land atm | |||||||||||||||||||||||||||||||||||||||
Geth | problem-solving/CoC: 48f4c51ebe | (Elizabeth Mattijsen)++ | solutions/meta/CoC.md Rework the "Responsibility" section |
12:44 | |||||||||||||||||||||||||||||||||||||
SmokeMachine | . | 12:55 | |||||||||||||||||||||||||||||||||||||
tellable6 | 2019-11-30T16:07:57Z #raku-dev <lizmat> SmokeMachine could you please check that Red survived github.com/rakudo/rakudo/commit/1d8d62d46d ? | ||||||||||||||||||||||||||||||||||||||
SmokeMachine | lizmat: I’ll take a look | 12:56 | |||||||||||||||||||||||||||||||||||||
13:02
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
SmokeMachine | thanks! | 13:04 | |||||||||||||||||||||||||||||||||||||
lizmat is off for some F1& | 13:05 | ||||||||||||||||||||||||||||||||||||||
13:17
sena_kun joined,
sena_kun left
13:30
MasterDuke joined
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | anyone know anything about this? "Tree-sitter - a new parsing system for programming tools" by Max Brunsfeld, www.youtube.com/watch?v=Jes3bD6P0To | 13:38 | |||||||||||||||||||||||||||||||||||||
jnthn | .tell Xliff You'd need to arrange for that to be overridden in the ClassHOW | 13:42 | |||||||||||||||||||||||||||||||||||||
tellable6 | jnthn, I'll pass your message to Xliff | ||||||||||||||||||||||||||||||||||||||
Geth | nqp: 4b3bb9c8c3 | (Stefan Seifert)++ | tools/templates/MOAR_REVISION Bump MoarVM for NativeCall's new serialize_lib_name attribute |
14:04 | |||||||||||||||||||||||||||||||||||||
rakudo: 55b3ed5626 | (Stefan Seifert)++ | 2 files Fix relocatability of bundled native libraries Native libraries (and other resource files) bundled with installed modules are supposed to be relocatable, i.e. their path is always relative to the current path of the repository. This is especially important for packaging as the module will get installed into a temporary build directory using the Staging repository. The generated files will be moved to their final location when ... (5 more lines) |
|||||||||||||||||||||||||||||||||||||||
14:09
sena_kun joined
15:02
sena_kun left
15:18
sena_kun joined
15:52
patrickb joined
15:56
jmerelo left
16:00
ufobat joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 7cfdd59823 | (Patrick Böker)++ | 18 files Rename PERL6_HOME to RAKUDO_HOME Same for Configure.pl parameter --perl6-home -> --rakudo-home. Stay backwards compatible by mapping --perl6-home to --rakudo-home and accepting both PERL6_HOME and RAKUDO_HOME environment variables. This commit does not yet touch any file system paths. These changes require a newer nqp_configure which the commit also pulls in. |
16:20 | |||||||||||||||||||||||||||||||||||||
rakudo: ab2ba1ab22 | (Patrick Böker)++ (committed using GitHub Web editor) | 18 files Merge pull request #3321 from patzim/perl6-to-rakudo-home Rename PERL6_HOME to RAKUDO_HOME |
|||||||||||||||||||||||||||||||||||||||
problem-solving/CoC: e2b18bf640 | (Elizabeth Mattijsen)++ | solutions/meta/CoC.md Make discrimination clause more specific |
16:22 | ||||||||||||||||||||||||||||||||||||||
16:28
ufobat left
|
|||||||||||||||||||||||||||||||||||||||
patrickb | .tell nine Can you have a look this PR please? -> github.com/rakudo/rakudo/pull/3282 | 16:33 | |||||||||||||||||||||||||||||||||||||
tellable6 | patrickb, I'll pass your message to nine | ||||||||||||||||||||||||||||||||||||||
17:00
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: patzim++ created pull request #3335: Make the raku symlinks relative |
17:06 | |||||||||||||||||||||||||||||||||||||
17:11
discord6 left,
AlexDaniel left,
vrurg left,
jjatria left,
moon-child left,
pochi left,
jnthn left,
klapperl left,
go|dfish left,
timotimo left,
patrickb left,
Geth left,
robertle left,
cognomin_ left,
dmc00 left,
nebuchadnezzar left,
TreyHarris left,
rba[m] left,
unicodable6 left,
committable6 left,
Demos[m] left,
kawaii left,
Kaiepi left,
maettu left,
samcv left,
[Coke] left,
japhb left,
lucs left,
moritz left,
jdv79 left,
b2gills left,
sjn left,
Ulti left,
timotimo[m] left,
quotable6 left,
bloatable6 left,
benchable6 left,
coverable6 left,
reportable6 left,
greppable6 left,
nativecallable6 left,
statisfiable6 left,
shareable6 left,
squashable6 left,
tellable6 left,
kubrat left,
rba left,
epony left,
EuAndreh[m] left,
zostay left,
MasterDuke left,
lizmat left,
releasable6 left,
notable6 left,
bisectable6 left,
tyil[m] left,
evalable6 left,
ZzZombo left,
AlexDaniel` left,
kurahaupo left
17:12
patrickb joined,
MasterDuke joined,
Kaiepi joined,
discord6 joined,
cognomin_ joined,
AlexDaniel joined,
ZzZombo joined,
Geth joined,
lizmat joined,
dmc00 joined,
vrurg joined,
robertle joined,
quotable6 joined,
releasable6 joined,
notable6 joined,
unicodable6 joined,
bloatable6 joined,
committable6 joined,
benchable6 joined,
coverable6 joined,
bisectable6 joined,
reportable6 joined,
nativecallable6 joined,
greppable6 joined,
statisfiable6 joined,
shareable6 joined,
squashable6 joined,
jjatria joined,
timotimo[m] joined,
tyil[m] joined,
EuAndreh[m] joined,
Demos[m] joined,
rba[m] joined,
AlexDaniel` joined,
maettu joined,
moon-child joined,
pochi joined,
nebuchadnezzar joined,
samcv joined,
[Coke] joined,
tellable6 joined,
japhb joined,
TreyHarris joined,
evalable6 joined,
b2gills joined,
epony joined,
sjn joined,
jnthn joined,
kubrat joined,
kurahaupo joined,
lucs joined,
camelia joined,
dogbert17 joined,
tony-o joined,
bartolin joined,
nine joined,
SyrupThinker joined,
masak joined,
tyil joined,
tobs joined,
Hotbees joined,
klapperl joined,
go|dfish joined,
timotimo joined,
Ulti joined,
moritz joined,
kawaii joined,
jdv79 joined,
rba joined,
zostay joined
|
|||||||||||||||||||||||||||||||||||||||
tbrowder | MasterDuke: looks pretty slick! | 17:13 | |||||||||||||||||||||||||||||||||||||
17:15
sena_kun joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 92a8a08f5d | (Elizabeth Mattijsen)++ | src/core.c/Int.pm6 Introducing .base("beer") and .base("camel") Yes, this isn't serious, but doesn't affect performance of Int.base at all, and it was too long ago since we added another easter egg to Rakudo. The amount of -Oseriousness was at a maximum. |
17:24 | |||||||||||||||||||||||||||||||||||||
17:40
AlexDaniel left
17:41
AlexDaniel joined,
AlexDaniel left,
AlexDaniel joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 314aa05e9b | (Aleks-Daniel Jakimenko-Aleksejev)++ | src/core.c/Int.pm6 Revert "Introducing .base("beer") and .base("camel")" This reverts frivolous commit 92a8a08f5dd073fe1d8c774bfbd52d916362afd7. “You think it's funny today” except that it's not even funny. |
17:55 | |||||||||||||||||||||||||||||||||||||
lizmat | wow, not even 30 minutes | 18:02 | |||||||||||||||||||||||||||||||||||||
ok, just about 30 minutes | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | :) | 18:03 | |||||||||||||||||||||||||||||||||||||
lizmat | is this the signal to remove all of the other easter eggs ? | ||||||||||||||||||||||||||||||||||||||
lizmat is a little disappointed | 18:04 | ||||||||||||||||||||||||||||||||||||||
sjn thinks there's too little humour and wit in software development in general | 18:05 | ||||||||||||||||||||||||||||||||||||||
sena_kun thought there is Raku Advent where people can show off tricks and write things like this one | 18:09 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel ping...? | |||||||||||||||||||||||||||||||||||||||
I am playing with sake all for releasing, resolving the arising questions... the one thing I am worrying right now is that won't I accidentally "release" nqp? as in, I have access to push. | 18:10 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | if you want to introduce fun stuff, please commit to whateverable :D | ||||||||||||||||||||||||||||||||||||||
sena_kun: no | |||||||||||||||||||||||||||||||||||||||
sena_kun | great | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | sena_kun: unless you run `sake human-upload` | 18:11 | |||||||||||||||||||||||||||||||||||||
and even that will fail | |||||||||||||||||||||||||||||||||||||||
sena_kun | .oO ( failures are welcome ) | ||||||||||||||||||||||||||||||||||||||
sena_kun continues to stare at logs | |||||||||||||||||||||||||||||||||||||||
lizmat goes off to do something else for the rest of the day | 18:17 | ||||||||||||||||||||||||||||||||||||||
18:26
ufobat joined
18:57
lucasb joined
19:00
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
japhb | lizmat: Idea for mixing in easter eggs -- a branch named something egg-related, like 'fritatta' because it's baked eggs with other stuff mixed in, that has all the patches for various easter eggs. If someone wants an up-to-date but eggy form of rakudo, they can just rebase that branch onto master and build it. :-) | 19:03 | |||||||||||||||||||||||||||||||||||||
nine | Wait...beer and camel are gone already? Wanted to try them on camelia but went for cooking first :( | 19:14 | |||||||||||||||||||||||||||||||||||||
tellable6 | 2019-12-01T16:33:42Z #raku-dev <patrickb> nine Can you have a look this PR please? -> github.com/rakudo/rakudo/pull/3282 | ||||||||||||||||||||||||||||||||||||||
19:17
sena_kun joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: a00628e0fb | (Patrick Böker)++ | tools/templates/moar/Makefile.in Make the raku symlinks relative This makes them work when relocated. |
19:19 | |||||||||||||||||||||||||||||||||||||
rakudo: 84ef864cb3 | (Patrick Böker)++ (committed using GitHub Web editor) | tools/templates/moar/Makefile.in Merge pull request #3335 from patzim/relative-raku-symlink Make the raku symlinks relative |
|||||||||||||||||||||||||||||||||||||||
rakudo/master: 5 commits pushed by (Patrick Böker)++ | |||||||||||||||||||||||||||||||||||||||
patrickb | .tell rba Now I'm at the point where I need external feedback to progress with the rakudo.org website changes. Any updates on the test server? | 19:23 | |||||||||||||||||||||||||||||||||||||
tellable6 | patrickb, I'll pass your message to rba | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | nine: try them on committable then | 20:02 | |||||||||||||||||||||||||||||||||||||
c: 92a8a08f5 say 42.base(‘beer’) | |||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦92a8a08: «🍻🍺🍻🍺🍻🍺» | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: MasterDuke17++ created pull request #3336: Fix "unused variable" compiler warnings in C ops |
20:03 | |||||||||||||||||||||||||||||||||||||
20:18
ufobat_ joined
20:22
ufobat left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | u: 🩂 | 20:22 | |||||||||||||||||||||||||||||||||||||
unicodable6 | AlexDaniel, U+1FA42 NEUTRAL CHESS BISHOP ROTATED TWO HUNDRED SEVENTY DEGREES [So] (🩂) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | what | ||||||||||||||||||||||||||||||||||||||
gist.github.com/Whateverable/5f092...dafee14a35 | 20:23 | ||||||||||||||||||||||||||||||||||||||
u: 🨆 | 20:24 | ||||||||||||||||||||||||||||||||||||||
unicodable6 | AlexDaniel, U+1FA06 WHITE CHESS KNIGHT ROTATED FORTY-FIVE DEGREES [So] (🨆) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | u: white chess knight | 20:26 | |||||||||||||||||||||||||||||||||||||
unicodable6 | AlexDaniel, U+2658 WHITE CHESS KNIGHT [So] (♘) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel, U+1FA06 WHITE CHESS KNIGHT ROTATED FORTY-FIVE DEGREES [So] (🨆) | |||||||||||||||||||||||||||||||||||||||
AlexDaniel, 11 characters in total (♘🨆🨍🨛🨢🨰🨷🩅🩎🩏🩐): gist.github.com/70c0843cbd039fc694...0812e87cad | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | github.com/ryn1x/Terminal-Spinners/issues/5 | 20:28 | |||||||||||||||||||||||||||||||||||||
20:32
ufobat_ left
21:01
sena_kun left
21:16
sena_kun joined
21:30
Xliff joined
21:48
travis-ci joined
|
|||||||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build passed. Patrick Böker 'Merge pull request #3335 from patzim/relative-raku-symlink | 21:48 | |||||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/619314597 github.com/rakudo/rakudo/compare/3...ef864cb321 | |||||||||||||||||||||||||||||||||||||||
21:48
travis-ci left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | m: my $a = ‘🐪’; for ^30 { say $a++ } | 21:58 | |||||||||||||||||||||||||||||||||||||
camelia | 🐪 🐫 🐫🐪 🐫🐫 🐫🐪🐪 🐫🐪🐫 🐫🐫🐪 🐫🐫🐫 🐫🐪🐪🐪 🐫🐪🐪🐫 🐫🐪🐫🐪 🐫🐪🐫🐫 🐫🐫🐪🐪 🐫🐫🐪🐫 🐫🐫🐫🐪 🐫🐫🐫🐫 … |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | e: my $a = ‘🐪’; for ^30 { say $a++ } | ||||||||||||||||||||||||||||||||||||||
evalable6 | 🐪 🐫 🐫🐪 🐫🐫 🐫🐪🐪 … |
||||||||||||||||||||||||||||||||||||||
AlexDaniel, Full output: gist.github.com/9bbd9af332dea12b87...3334dfc54f | |||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 77ffb06330 | (Elizabeth Mattijsen)++ | 3 files "I think that the source code is not the place where you make jokes by introducing special cases" I guess this is the consequence of Raku becoming a serious programming language. :-( |
22:18 | |||||||||||||||||||||||||||||||||||||
lizmat | I guess I should have stayed away from the keyboard this evening :-( | 22:23 | |||||||||||||||||||||||||||||||||||||
I will now | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | lizmat: I guess I'm wrong, actually | 22:36 | |||||||||||||||||||||||||||||||||||||
I totally forgot that ++ does that magic | |||||||||||||||||||||||||||||||||||||||
there was a ticket somewhere discussing .succ on strings, but as long as this behavior is there, you can do whatever | 22:37 | ||||||||||||||||||||||||||||||||||||||
beer or not beer, it's unpredictable anyway | |||||||||||||||||||||||||||||||||||||||
.oO( Tonight on Raku FM! AlexDaniel learns about ++ operator ) |
22:45 | ||||||||||||||||||||||||||||||||||||||
so both .succ and ++ on strings do the same, but there's also another behavior that you can get with .. | 22:46 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel shrugs and runs away | |||||||||||||||||||||||||||||||||||||||
m: my $x = ‘-42’; $x++; say $x | 22:49 | ||||||||||||||||||||||||||||||||||||||
camelia | -43 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | rrrright | ||||||||||||||||||||||||||||||||||||||
m: my $x = ‘-42’; say $x + 1 | |||||||||||||||||||||||||||||||||||||||
camelia | -41 | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 68cee0dd41 | (Daniel Green)++ | src/vm/moar/ops/perl6_ops.c Fix "unused variable" compiler warnings in C ops |
22:50 | |||||||||||||||||||||||||||||||||||||
rakudo: a707633755 | niner++ (committed using GitHub Web editor) | src/vm/moar/ops/perl6_ops.c Merge pull request #3336 from MasterDuke17/remove_unused_variables_in_c_code Fix "unused variable" compiler warnings in C ops |
|||||||||||||||||||||||||||||||||||||||
Xliff | m: my $x = -42; $x++; say $x; | 22:53 | |||||||||||||||||||||||||||||||||||||
camelia | -41 | ||||||||||||||||||||||||||||||||||||||
Xliff | m: my $x = '-42'; $x++; say $x; | ||||||||||||||||||||||||||||||||||||||
camelia | -43 | ||||||||||||||||||||||||||||||||||||||
Xliff | Ouch. | 22:54 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | Xliff: yeah I can't exactly blame myself for not remembering that ++ works on strings :D | ||||||||||||||||||||||||||||||||||||||
because it kinda doesn't :) | |||||||||||||||||||||||||||||||||||||||
Xliff | Can see that! LOL | ||||||||||||||||||||||||||||||||||||||
say 🐪 + 2 | 22:55 | ||||||||||||||||||||||||||||||||||||||
m: say '🐪' + 2 | |||||||||||||||||||||||||||||||||||||||
camelia | Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5🐪' (indicated by ⏏) in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
Xliff | m: say '🐪'.succ.succ | ||||||||||||||||||||||||||||||||||||||
camelia | 🐫🐪 | ||||||||||||||||||||||||||||||||||||||
Xliff | Actually, I don't see why that needs to come out. | ||||||||||||||||||||||||||||||||||||||
m: '⚀' | 22:56 | ||||||||||||||||||||||||||||||||||||||
camelia | WARNINGS for <tmp>: Useless use of constant string "⚀" in sink context (line 1) |
||||||||||||||||||||||||||||||||||||||
Xliff | m: my $a = '⚀'; $a.succ xx 7; $a.say | ||||||||||||||||||||||||||||||||||||||
camelia | ⚀ | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | Xliff: I guess it really doesn't matter what comes out of it, it's surprising anyway and .. range feature is more so | ||||||||||||||||||||||||||||||||||||||
Xliff | m: my $a = '⚀'; $a .= succ for ^7; $a.say | ||||||||||||||||||||||||||||||||||||||
camelia | ⚀⚁ | ||||||||||||||||||||||||||||||||||||||
Xliff | AlexDaniel: Any less surprising than ^^ | 22:57 | |||||||||||||||||||||||||||||||||||||
Another solution would be a tongue-in-cheek reference in the docs. | 22:58 | ||||||||||||||||||||||||||||||||||||||
Would take the "surprise" out of it and leave the character. | |||||||||||||||||||||||||||||||||||||||
AlexDaniel: Same with this... | 22:59 | ||||||||||||||||||||||||||||||||||||||
m: say ++'▁' | |||||||||||||||||||||||||||||||||||||||
camelia | Cannot resolve caller prefix:<++>(Str:D); the following candidates match the type but require mutable arguments: (Mu:D $a is rw) The following do not match for other reasons: (Bool $a is rw) (Int:D $a is rw --> Int:D) (M… |
||||||||||||||||||||||||||||||||||||||
Xliff | m: say (++'▁') | ||||||||||||||||||||||||||||||||||||||
camelia | Cannot resolve caller prefix:<++>(Str:D); the following candidates match the type but require mutable arguments: (Mu:D $a is rw) The following do not match for other reasons: (Bool $a is rw) (Int:D $a is rw --> Int:D) (M… |
||||||||||||||||||||||||||||||||||||||
Xliff | ?!? | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | put it in a variable | ||||||||||||||||||||||||||||||||||||||
Xliff | m: my $a = '▁'; say ++$a; | 23:00 | |||||||||||||||||||||||||||||||||||||
camelia | ▂ | ||||||||||||||||||||||||||||||||||||||
Xliff | But you get my point! | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | 😕 | ||||||||||||||||||||||||||||||||||||||
Xliff | If you think these are surprising, I think it's better we take all of these ranges and document them, rather than removing things because they are "surprising" | ||||||||||||||||||||||||||||||||||||||
23:01
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | Xliff: that's right, yes, beer doesn't matter as long as it does that | 23:01 | |||||||||||||||||||||||||||||||||||||
Xliff | m: "᱅".Int.say | 23:02 | |||||||||||||||||||||||||||||||||||||
camelia | 5 | ||||||||||||||||||||||||||||||||||||||
Xliff | m: my $wtf = "᱅"; $wtf .= succ xx 10000.rand; $wtf.say | ||||||||||||||||||||||||||||||||||||||
camelia | ᱃᱈᱃ | ||||||||||||||||||||||||||||||||||||||
Xliff | m: my $wtf = "᱅"; $wtf .= succ xx 10000.rand; $wtf.say. $wtf.Int.say | ||||||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unsupported use of . to concatenate strings; in Perl 6 please use ~ at <tmp>:1 ------> 3"; $wtf .= succ xx 10000.rand; $wtf.say.7⏏5 $wtf.Int.say |
||||||||||||||||||||||||||||||||||||||
Xliff | m: my $wtf = "᱅"; $wtf .= succ xx 10000.rand; $wtf.say; $wtf.Int.say | ||||||||||||||||||||||||||||||||||||||
camelia | ᱄᱁᱆᱆ 4166 |
||||||||||||||||||||||||||||||||||||||
23:02
travis-ci joined
|
|||||||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build passed. Patrick Böker 'Merge pull request #3282 from patzim/spectest-inlinep5-hint | 23:02 | |||||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/619314911 github.com/rakudo/rakudo/compare/8...4e5e464637 | |||||||||||||||||||||||||||||||||||||||
23:02
travis-ci left
|
|||||||||||||||||||||||||||||||||||||||
Xliff | I could swear I've seen these symbols, before... I'm looking at you, Stargate!!! | 23:03 | |||||||||||||||||||||||||||||||||||||
(kidding) | |||||||||||||||||||||||||||||||||||||||
AlexDaniel: And yes. Beer documents quite well. When you spill it on your shirt it quite visibly notes: "I'm drunk!" | 23:04 | ||||||||||||||||||||||||||||||||||||||
23:18
sena_kun joined
23:20
kurahaupo left
23:39
dmc00 left
|