Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2017-02-02

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:03 gfldex lolibloggedforcale2: https://gfldex.wordpress.com/2017/​02/02/cale2-asked-a-hard-question/
00:08 gfldex WP tried to be clever again :-|
00:11 timotimo "Today cale2 refused to asked an easy question instead" what is this grammar %)
00:12 timotimo man, wordpress really is hell
00:12 gfldex i think i got it now
00:12 gfldex it ate a <pre> again :-/
00:13 timotimo yeah, and it ate at least one list between <>
00:13 timotimo in the @a.pick(*) example
00:13 timotimo and in the multi sub  whatever case, too
00:14 gfldex i'm cleary updating it faster then you can read it :->
00:14 timotimo could be
00:14 timotimo i find the last sentence of the post could be interpreted to be rather mean
00:15 timotimo and personally i'd have put a note about "multiple * in a WhateverCode make multiple arguments" or something
00:15 timotimo just a tiny hint
00:15 pyrimidine joined #perl6
00:15 samcv pretty is good
00:15 * timotimo holds a pretty grudge
00:17 gfldex the last sentence is the best I could come up with to shoehorn a link to the docs in
00:18 gfldex whereby WTFM works better then RTFM
00:19 timotimo "what the fucking manual"? :)
00:20 samcv wtf Manuel!
00:20 hobbs timotimo: I've read a few of those
00:20 timotimo oh manuel, what have you done this time
00:21 timotimo hobbs: pardon me, a few of what?
00:21 hobbs what the fucking manuals
00:21 hobbs documentation with high WTF content :)
00:21 samcv where's the fucking manual
00:22 gfldex there are write-only manuals
00:22 timotimo ah, hehehe
00:22 timotimo samcv: where's the fucking manual, lebowski?
00:22 samcv docs.perl6.org
00:22 timotimo hm. you could totally make a gif out of that scene with that wording
00:22 gfldex i actually meant Write The Fucking Manual, what really works better then reading them
00:22 timotimo "let me look again, i think the docs are somewhere down there"
00:23 hobbs clearly you're not a perl golfer
00:24 hobbs s/clearly/obviously/
00:24 gfldex m: constant term:<ℵ₀> = Inf; constant term:<ℵ₁> = Inf; multi sub infix:«<»(ℵ₀, ℵ₁){ True }; say ℵ₀ < ℵ₁;
00:24 camelia rakudo-moar 738493: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Invalid typename 'ℵ' in parameter declaration.␤at <tmp>:1␤------> 3t term:<ℵ₁> = Inf; multi sub infix:«<»(ℵ7⏏5₀, ℵ₁){ True }; say ℵ₀ < ℵ₁;␤»
00:25 samcv sub foo($a where * < 10) === sub foo($a where {$_ < 10}) ??
00:25 gfldex m: multi sub infix:«<»(2, 1){ True }; say 2 < 1;
00:25 camelia rakudo-moar 738493: OUTPUT«True␤»
00:26 timotimo yup
00:27 travis-ci joined #perl6
00:27 samcv sub foo(*@a where {.all ~~ Int}){}
00:27 travis-ci Doc build passed. Will "Coke" Coleda 'update bug report notes for #1077'
00:27 travis-ci https://travis-ci.org/perl6/doc/builds/197411799 https://github.com/perl6/doc/com​pare/2219c6929a4e...33c216bf4ab0
00:27 travis-ci left #perl6
00:27 samcv seems you can't do (*@a where *.all ~~ Int); doesn't seem to work right
00:29 TimToady m: say *.all ~~ WhateverCode
00:29 camelia rakudo-moar 738493: OUTPUT«True␤»
00:29 brokenchicken m: say (*.all ~~ 'meow') ~~ WhateverCode
00:29 camelia rakudo-moar 738493: OUTPUT«WhateverCode object coerced to string (please use .gist or .perl to do that)␤  in block <unit> at <tmp> line 1␤False␤»
00:29 brokenchicken it ain't currying over the ~~
00:30 TimToady nope, it's one of the exeptions
00:30 brokenchicken don't need it in that particular case either, 'cause it thunks; (*@a where .all ~~ Int) should work
00:30 TimToady note it doesn't curry on the RHS either, or you'd be surprised
00:31 TimToady m: say so Int.ACCEPTS((1,2,3).all)
00:31 camelia rakudo-moar 738493: OUTPUT«True␤»
00:32 TimToady can always write it like that
00:32 brokenchicken not with a *.all curry
00:33 TimToady nope, currying has to stop somewhere, and we never curry from inside argument lists to normal functions/methods
00:33 brokenchicken m: sub (*@a where Int.ACCEPS: .all with *.item) { say @a }(1, 2, 3)
00:33 camelia rakudo-moar 738493: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Malformed parameter␤at <tmp>:1␤------> 3sub (*@a where Int.ACCEPS: .all with 7⏏5*.item) { say @a }(1, 2, 3)␤»
00:33 brokenchicken aww
00:33 brokenchicken Need moar parentheses
00:33 brokenchicken m: sub (*@a where (Int.ACCEPS: .all with *.item)) { say @a }(1, 2, 3)
00:33 camelia rakudo-moar 738493: OUTPUT«No such method 'ACCEPS' for invocant of type 'Int'␤  in sub  at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
00:33 brokenchicken m: sub (*@a where (Int.ACCEPTS: .all with *.item)) { say @a }(1, 2, 3)
00:33 camelia rakudo-moar 738493: OUTPUT«Constraint type check failed for parameter '@a'␤  in sub  at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
00:33 brokenchicken Oh well
00:34 brokenchicken m: dd so 42 ~~ (1, 2, 3).item.all
00:34 camelia rakudo-moar 738493: OUTPUT«Bool::False␤»
00:34 brokenchicken I see
00:34 brokenchicken Is there an identity method. That just returns self for any object?
00:35 TimToady m: say 42.self
00:35 camelia rakudo-moar 738493: OUTPUT«42␤»
00:35 brokenchicken doh :) It's .self :)
00:35 brokenchicken m: sub (*@a where (Int.ACCEPTS: .all with *.self)) { say @a }(1, 2, 3)
00:35 camelia rakudo-moar 738493: OUTPUT«Constraint type check failed for parameter '@a'␤  in sub  at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
00:35 brokenchicken Oh well
00:36 gfldex where is .self defined?
00:36 TimToady m: sub (*@a where (Int.ACCEPTS: .all)) { say @a }(1, 2, 3)
00:36 camelia rakudo-moar 738493: OUTPUT«[1 2 3]␤»
00:36 brokenchicken gfldex: in Mu
00:38 TimToady m: sub (*@a where @a.all ~~ Real) { say @a }(1, 2, 3)
00:38 camelia rakudo-moar 738493: OUTPUT«[1 2 3]␤»
00:38 TimToady m: sub (*@a where @a.all ~~ Int) { say @a }(1, 2, 3)
00:38 camelia rakudo-moar 738493: OUTPUT«[1 2 3]␤»
00:38 brokenchicken m: sub (*@a where *.all.&{Int.ACCEPTS: $_}) { say @a }(1, 2, 3)
00:38 camelia rakudo-moar 738493: OUTPUT«[1 2 3]␤»
00:41 brokenchicken m: sub (*@a where *.all ∈ Int.Range) { say @a }(1, 2, 3)
00:41 TimToady that probably curries
00:41 camelia rakudo-moar 738493: OUTPUT«(timeout)»
00:42 TimToady however, it probably also flattens Int.Range
00:42 brokenchicken m: dd Int.Range
00:42 camelia rakudo-moar 738493: OUTPUT«(-Inf, -Inf, -Inf, -Inf, -Inf, -Inf, -Inf, -Inf, -Inf, -Inf... lazy list)␤»
00:42 TimToady we don't really do infinite sets...
00:42 brokenchicken m: sub (*@a where .all ~~ Int.Range) { say @a }(1, 2, 3)
00:42 camelia rakudo-moar 738493: OUTPUT«[1 2 3]␤»
00:43 TimToady that's why it's called "smart" :P
00:43 brokenchicken :)_
00:44 Geth ¦ doc: 1f1947b763 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Mu.pod6
00:44 Geth ¦ doc: doc Mu.self
00:44 Geth ¦ doc: review: https://github.com/perl6/doc/commit/1f1947b763
00:44 TimToady m: say i ~~ Int.Range
00:44 camelia rakudo-moar 738493: OUTPUT«True␤»
00:45 TimToady hrmmm
00:45 TimToady m: say i.Int
00:45 camelia rakudo-moar 738493: OUTPUT«Can not convert 0+1i to Int: imaginary part not zero␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
00:45 TimToady m: say i < Inf
00:45 camelia rakudo-moar 738493: OUTPUT«Can not convert 0+1i to Real: imaginary part not zero␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
00:47 aindilis joined #perl6
00:47 brokenchicken s: Int.Range, 'ACCEPTS', \(i)
00:47 SourceBaby brokenchicken, Sauce is at https://github.com/rakudo/rakudo/b​lob/7384939/src/core/Range.pm#L419
00:48 aborazmeh joined #perl6
00:48 aborazmeh joined #perl6
00:48 brokenchicken m: say i after -Inf
00:48 camelia rakudo-moar 738493: OUTPUT«True␤»
00:49 brokenchicken That's why.
00:50 brokenchicken m: say i cmp -Inf
00:50 camelia rakudo-moar 738493: OUTPUT«More␤»
00:50 brokenchicken hmmmm
00:50 brokenchicken m: say i cmp -42
00:50 camelia rakudo-moar 738493: OUTPUT«More␤»
00:50 brokenchicken m: say i cmp 42
00:50 camelia rakudo-moar 738493: OUTPUT«Less␤»
00:51 Geth ¦ doc: d4d9df69a9 | (Wenzel P. P. Peppmeyer)++ | doc/Language/syntax.pod6
00:51 Geth ¦ doc: doc term:<> (could do with better example)
00:51 Geth ¦ doc: review: https://github.com/perl6/doc/commit/d4d9df69a9
00:51 TimToady it shouldn't really be using cmp for that
00:51 TimToady cmp tries hard to work across types
00:51 brokenchicken s: &infix:<after>, \(i, -Inf)
00:51 SourceBaby brokenchicken, Sauce is at https://github.com/rakudo/rakudo/​blob/7384939/src/core/Any.pm#L479
00:51 brokenchicken Yeah, it's just (a cmp b) > 0
00:52 brokenchicken TimToady: so before/after should throw on Complex<->Real comparisons unless img. part is zero?
00:52 TimToady a numeric range should be using <=>, I'd think
00:52 brokenchicken m: say i <=> 42
00:52 camelia rakudo-moar 738493: OUTPUT«Can not convert Complex to Real: Complex is not numerically orderable␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
00:53 brokenchicken Aha. Cool.
00:54 TimToady m: say 'bb' ~~ 'a'..'z'
00:54 camelia rakudo-moar 738493: OUTPUT«True␤»
00:55 brokenchicken :(
00:55 TimToady that's correct
00:55 brokenchicken Huh?
00:55 brokenchicken m: say eager 'a'..'z'
00:55 camelia rakudo-moar 738493: OUTPUT«(a b c d e f g h i j k l m n o p q r s t u v w x y z)␤»
00:55 brokenchicken but it's not one of items?
00:55 TimToady nope, ranges are, er, ranges, not sequences
00:56 skids joined #perl6
00:56 TimToady gotta use any('a'..'z') for that
00:56 brokenchicken Ah ok
00:57 TimToady m: say 'zoo' ~~ 'a'..'z'
00:57 camelia rakudo-moar 738493: OUTPUT«False␤»
00:57 TimToady you want to carp, carp about that one :)
00:57 brokenchicken I don't get how 'zz' fits in 'a'..'z' range tho
00:57 brokenchicken I mean 'bb'
00:57 brokenchicken and 'zz' doesn't
00:58 brokenchicken m: say 'bbbbbbbb' ~~ 'a'..'z'
00:58 camelia rakudo-moar 738493: OUTPUT«True␤»
00:58 brokenchicken hehe
00:58 brokenchicken m: say 'bbbaaaabbbbb' ~~ 'a'..'z'
00:58 camelia rakudo-moar 738493: OUTPUT«True␤»
00:59 brokenchicken m: say 'bbbaaaabbbbb' ~~ 'z'..'a'
00:59 camelia rakudo-moar 738493: OUTPUT«False␤»
00:59 TimToady m: say 'a!!!!!' ~~ 'a'..'z'
00:59 camelia rakudo-moar 738493: OUTPUT«True␤»
00:59 TimToady m: say "a\0" ~~ 'a'..'z'
00:59 camelia rakudo-moar 738493: OUTPUT«True␤»
00:59 TimToady m: say "a\0" ~~ 'a' ^.. 'z'
00:59 camelia rakudo-moar 738493: OUTPUT«True␤»
01:05 kurahaupo__ joined #perl6
01:06 john51 joined #perl6
01:13 pyrimidine joined #perl6
01:20 cpage_ joined #perl6
01:21 brokenchicken Simply using `(nqp::istype(a, Numeric)||nqp::istype(b, Numeric) ?? a <=> b !! a cmp b) < 0` for before/after doesn't work
01:21 brokenchicken Spectest fails, like with 'a'..*
01:22 brokenchicken .oO( add Numeric, Numeric candidate... )
01:23 brokenchicken But then we get weirdness like `'42' after i` gives something, but `42 after i` says can't make a Real outta i
01:23 brokenchicken m: say '42' after i
01:23 camelia rakudo-moar 738493: OUTPUT«True␤»
01:23 brokenchicken m: say '-42' after i
01:23 camelia rakudo-moar 738493: OUTPUT«False␤»
01:23 Ben_Goldberg joined #perl6
01:25 brokenchicken hm, maybe it's fine, since cmp uses .Stringy in that case
01:26 agentzh joined #perl6
01:27 brokenchicken You know what'd be a cool bot feature? You give it two ops and it tells you which one got higher precedence
01:27 brokenchicken m: &infix:«>».prec.say
01:27 camelia rakudo-moar 738493: OUTPUT«{}␤»
01:27 brokenchicken hmm
01:36 cpage_ joined #perl6
01:40 brokenchicken Can't get precedence of an op programatically?
01:40 brokenchicken what's .prec?
01:41 brokenchicken m: &infix:«+».prec.say
01:41 camelia rakudo-moar 738493: OUTPUT«{assoc => left, prec => t=}␤»
01:41 brokenchicken oh, you can. Wonder why there's nothing for `>`
01:46 pierrot joined #perl6
01:47 geekosaur joined #perl6
01:49 astj joined #perl6
01:49 brokenchicken m: say i <=> Inf
01:49 camelia rakudo-moar 738493: OUTPUT«Less␤»
01:50 brokenchicken And the rabbit hole deepens :P
01:51 MasterDuke samcv: did you see my comment about ternaries? i tested on your code, about 5-10% faster
01:52 samcv no i didn't MasterDuke
01:52 samcv which part?
01:52 brokenchicken m: say i <=> 42
01:52 camelia rakudo-moar 738493: OUTPUT«Can not convert Complex to Real: Complex is not numerically orderable␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
01:52 brokenchicken s: &infix:«<=>», \(i, 42)
01:52 SourceBaby brokenchicken, Sauce is at https://github.com/rakudo/rakudo/bl​ob/7384939/src/core/Complex.pm#L477
01:52 brokenchicken I don't get how that managed to throw
01:53 brokenchicken m: say i <=> 42.Complex
01:53 camelia rakudo-moar 738493: OUTPUT«Can not convert Complex to Real: Complex is not numerically orderable␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
01:53 brokenchicken m: say 42.Complex
01:53 camelia rakudo-moar 738493: OUTPUT«42+0i␤»
01:53 brokenchicken m: say i <=> <42+0i>
01:53 camelia rakudo-moar 738493: OUTPUT«Can not convert Complex to Real: Complex is not numerically orderable␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
01:53 brokenchicken :S wtf
01:53 brokenchicken s: &infix:«<=>», \(i, <42+0i>)
01:53 SourceBaby brokenchicken, Sauce is at https://github.com/rakudo/rakudo/bl​ob/7384939/src/core/Complex.pm#L467
01:53 mspo m: say 0i.perl
01:53 camelia rakudo-moar 738493: OUTPUT«<0+0i>␤»
01:54 brokenchicken # Fail unless imaginary parts are relatively negligible, compared to real parts.
01:54 brokenchicken I see
01:54 brokenchicken A bit of a confusing error, since I thought it was trying to convert X to Real
01:55 brokenchicken m: say Inf.Complex
01:55 camelia rakudo-moar 738493: OUTPUT«Inf+0i␤»
01:57 brokenchicken Seems there's a bit of a glitch either in that thing or in the =~= op involving Infs
01:57 brokenchicken .oO( how did I manage to start debugging this instead of playing my video games :/ )
01:58 MasterDuke samcv: replacing https://gist.github.com/samcv/566950400b06​3ba3a1e680a888a1c339#file-decmp-p6-L57-L62 with `%decomp_spec{$cp}<type> = nqp::eqat(nqp::atpos(@dec, 0), '<', 0) ?? nqp::shift(@dec) !! 'Canonical'` was faster
01:59 samcv ah
02:01 brokenchicken tis the tolerance computation. Ends up being Inf
02:03 samcv thanks
02:03 MasterDuke np
02:04 travis-ci joined #perl6
02:04 travis-ci Doc build passed. Will "Coke" Coleda 'learn new label'
02:04 travis-ci https://travis-ci.org/perl6/doc/builds/197420375 https://github.com/perl6/doc/com​pare/33c216bf4ab0...d91d921bcb40
02:04 travis-ci left #perl6
02:04 dugword joined #perl6
02:10 brokenchicken m: say <42+42i> after <42+43i>
02:10 camelia rakudo-moar 738493: OUTPUT«False␤»
02:10 brokenchicken m: say <42+42i> after <42+41i>
02:10 camelia rakudo-moar 738493: OUTPUT«True␤»
02:11 agentzh joined #perl6
02:14 brokenchicken TimToady: ^ that now throws. Should it work? The <=> allows Complex comparison only if imaginary parts are negligible compared to Real parts. While with `cmp` just `cmp`s real/imaginary parts separately
02:14 brokenchicken I wish I knew more about Complex numbers :(
02:15 SmokeMachine m: role R[::T] {has T:U $.t} #is that right?
02:15 camelia rakudo-moar 738493: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable definition of type T:U requires an initializer␤at <tmp>:1␤------> 3role R[::T] {has T:U $.t7⏏5} #is that right?␤    expecting any of:␤        constraint␤»
02:15 brokenchicken Don't know if `cmp` on Complex is wrong or my patch to before/after for Complex is wrong.
02:16 SmokeMachine m: role R[::T] {has T $.t}
02:16 camelia rakudo-moar 738493: ( no output )
02:16 SmokeMachine m: role R[::T] {has T:_ $.t}
02:16 camelia rakudo-moar 738493: ( no output )
02:16 SmokeMachine m: role R[::T] {has T:U $.t = T}
02:16 camelia rakudo-moar 738493: ( no output )
02:16 brokenchicken m: role { has Int:U $.t }
02:16 camelia rakudo-moar 738493: ( no output )
02:16 brokenchicken weird
02:16 brokenchicken SmokeMachine: I'm no expert, but it looks buggy to me
02:17 SmokeMachine brokenchicken: yes... weird...
02:17 SmokeMachine brokenchicken: to me to...
02:17 SmokeMachine too
02:17 SmokeMachine that would make sense with T:D
02:18 SmokeMachine m: role R[::T] {has T:D $.t}
02:18 camelia rakudo-moar 738493: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable definition of type T:D requires an initializer␤at <tmp>:1␤------> 3role R[::T] {has T:D $.t7⏏5}␤    expecting any of:␤        constraint␤»
02:24 brokenchicken .ask TimToady should `<42+42i> after <42+41i>` throw? It used to work, but now that I made `after` use `<=>` for Numeric+Numeric it only works if img part is negligible https://github.com/rakudo/rakudo/commit/ab3162c127
02:24 yoleaux brokenchicken: I'll pass your message to TimToady.
02:28 cale2 joined #perl6
02:35 brokenchicken I think I misunderstood TimToady :) I now see in the log he said the numeric *range* should use <=> not before/after
02:35 TimToady no, it shouldn't throw; I was talking about changing Range's smartmatch, not changing cmp
02:35 yoleaux 02:24Z <brokenchicken> TimToady: should `<42+42i> after <42+41i>` throw? It used to work, but now that I made `after` use `<=>` for Numeric+Numeric it only works if img part is negligible https://github.com/rakudo/rakudo/commit/ab3162c127
02:36 brokenchicken :D
02:36 brokenchicken OK. Thanks for clarifying :)
02:39 brokenchicken added it to my todo list to fix tomorrow evening
02:39 pyrimidine joined #perl6
02:41 TimToady cmp has to stay mellow, so we can always sort a list
02:46 brokenchicken Yeah, makes sense :)
02:46 brokenchicken 'night \o
02:47 ilbot3 joined #perl6
02:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
02:52 melezhik joined #perl6
03:10 cpage_ joined #perl6
03:11 Actualeyes joined #perl6
03:20 dugword joined #perl6
03:24 xtreak joined #perl6
03:28 travis-ci joined #perl6
03:28 travis-ci Doc build passed. Will "Coke" Coleda 'link to "how to report a bug" ; closes #1077'
03:28 travis-ci https://travis-ci.org/perl6/doc/builds/197421011 https://github.com/perl6/doc/com​pare/d91d921bcb40...e6cd18d3143d
03:28 travis-ci left #perl6
03:31 agentzh joined #perl6
03:35 cdg joined #perl6
03:37 Sgeo joined #perl6
03:38 noganex_ joined #perl6
03:56 pyrimidine joined #perl6
04:04 zacts joined #perl6
04:29 agentzh joined #perl6
04:40 hartenfels joined #perl6
04:50 geekosaur joined #perl6
04:58 Cabanoss- joined #perl6
04:59 itcharlie left #perl6
05:00 agentzh joined #perl6
05:23 agentzh joined #perl6
05:24 CIAvash joined #perl6
05:27 Xliff joined #perl6
05:56 Xliff joined #perl6
05:57 cpage_ joined #perl6
06:00 rurban joined #perl6
06:05 cpage_ joined #perl6
06:06 cpage_ joined #perl6
06:09 cog_ joined #perl6
06:09 noganex joined #perl6
06:12 stmuk_ joined #perl6
06:13 wamba joined #perl6
06:13 _28_ria joined #perl6
06:13 inokenty joined #perl6
06:14 japhb joined #perl6
06:14 sunnavy joined #perl6
06:14 sivoais joined #perl6
06:15 captain-adequate joined #perl6
06:16 lep-delete joined #perl6
06:16 cpage_ joined #perl6
06:18 Celelibi joined #perl6
06:21 breinbaas joined #perl6
06:27 avuserow joined #perl6
06:29 TEttinger joined #perl6
06:33 cgfbee joined #perl6
06:35 hartenfels1 joined #perl6
06:35 domidumont joined #perl6
06:37 masak lol, I blog'd! http://strangelyconsistent.org/blog/deep-git
06:42 domidumont joined #perl6
06:51 RabidGravy joined #perl6
07:00 xtreak joined #perl6
07:09 tadzik :o
07:15 darutoko joined #perl6
07:26 bjz joined #perl6
07:26 KDr2 joined #perl6
07:35 astj_ joined #perl6
07:49 domidumont joined #perl6
07:51 matt_ joined #perl6
07:57 moritz masak++
08:09 tokomer joined #perl6
08:21 zakharyas joined #perl6
08:32 jast masak: very good post. one minor nitpick: git knows two different meanings for 'merge'. one is commit-level merge, one is file-level three-way merge. the latter is used in rebase, cherry-pick etc., too, so technically those conflicts can still be called merge conflicts. :)
08:35 tokomer joined #perl6
08:41 bjz_ joined #perl6
08:41 rurban joined #perl6
08:42 dakkar joined #perl6
08:50 samcv nice my UCD-gen.p6 script is now fast enough that it takes only 80 minutes to finish the slowest routine ;)
08:51 zacts joined #perl6
08:51 samcv faster on my laptop i think but that 80 minutes was on the bisectable server
08:51 samcv running again to see how my latest speedups have fared
08:51 xtreak joined #perl6
09:00 astj joined #perl6
09:01 matt_ joined #perl6
09:06 Vynce joined #perl6
09:09 samcv i-i think maybe it's slowing down because it has too many keys in the hash?
09:10 samcv toward the end of the file it seems to be very very slow, and i'm not sure if it's caused by collisions in the hash library?
09:10 samcv it starts getting super slow around 1048576 items in it
09:13 lizmat hows memory usage going ?
09:13 samcv uh using 6% of my memory, i have 16GB
09:15 samcv not at a million yet on the current run, but at a million it seems like
09:15 samcv i mean it probably slows down before amillion, but it's most perceptible cause that's like almost at the end of the fgile
09:15 samcv and it still takes minutes to get to the end
09:18 xtreak joined #perl6
09:21 lizmat hmmm....
09:21 samcv could be caused by hash collisions maybe? or something else?
09:21 andrzejku joined #perl6
09:22 lizmat I'm not sure how we hash nowadays: I seem to recall it was changed not too long ago by jnthn
09:22 andrzejku hey people
09:22 andrzejku I know that some of you are web developers
09:22 andrzejku tell me please how do you prototype your apps
09:22 andrzejku do you use some prototype tools?
09:22 andrzejku or just a pencil
09:23 samcv so the file has 30,000 lines it it. maybe i'll make a timer every 1,000 lines so i can get some data about this
09:29 ufobat joined #perl6
09:29 samcv wow so i get to use `gather/take` for the first time now
09:29 samcv always wanted to use this
09:39 pyrimidi_ joined #perl6
09:45 Actualeyes joined #perl6
09:50 Geth ¦ doc: d1788cadb3 | (Samantha McVey)++ | util/trigger-rebuild.txt
09:50 Geth ¦ doc: Trigger rebuild to pull in atom-language-perl6 v1.14.0
09:50 Geth ¦ doc: review: https://github.com/perl6/doc/commit/d1788cadb3
09:50 samcv andrzejku, i often find thinking about any computer stuff drawing can help.
09:50 samcv i really should employ that more often tbh
09:57 agentzh joined #perl6
09:58 masak jast: interesting point. tempted to include that as an aside in the post ;)
10:06 riatre joined #perl6
10:08 rindolf joined #perl6
10:13 riatre joined #perl6
10:18 samcv lizmat, here's a CSV of timings taken every 500 lines https://gist.github.com/samcv/6​290f3ac066760949ba66ab5347e65c2
10:20 samcv that one doesn't look particularly bad
10:20 samcv but definitely gets higher as it goes on
10:20 arnsholt Those are timings *between* each batch, not cumulative, right?
10:20 samcv not cummulative
10:21 samcv err wait that's not all of them i think
10:21 samcv err maybe it is
10:21 samcv yeah that's all that showed up at least
10:21 samcv running it again though
10:23 samcv i think it might not be measuring a very last number
10:24 samcv which is where it's the slowest but
10:25 samcv Took 1137.77617592 secs to process 30564 and 37.2260 ms/line
10:26 samcv that doesn't sound right
10:26 samcv it can't have taken that little time
10:26 abraxxa joined #perl6
10:26 samcv i guess 18 sounds close though
10:27 samcv it maybe is just taking a long time to process lines which apply to a range of codepoints hmm
10:28 samcv so maybe it's somewhat that. it does seem to get slower as it goes on but i think most of the slowdown could be those lines which it has apply for thousands of cp's
10:28 samcv i will change it so that it takes timings every 1000 cp's instead of per lines of the file
10:29 samcv but it's weird because i timed how long it'd take to apply a pretty big range in a test file and it was pretty fast
10:29 samcv but that was with a previously empty hash, not wit one with almost a million things in it
10:30 astj joined #perl6
10:32 astj joined #perl6
10:33 samcv yeah it looks like that's what's slowing down it. i'm unsure how to make this faster argh
10:33 bjz joined #perl6
10:35 samcv i mean it shouldn't take THAT long to bind 65,000 keys? but all the keys are identical
10:35 melezhik_ joined #perl6
10:35 melezhik_ Hi!
10:35 samcv i'm using nqp::bindkey(%points, $cp_s, $hashy);
10:35 melezhik_ need a little help with regexp
10:35 samcv fire away melezhik_
10:35 samcv arnsholt, is it possible it's duplicating the object?
10:36 melezhik_ I want to match none empty symbols between '[' and ']'
10:36 astj joined #perl6
10:36 cpage_ joined #perl6
10:36 samcv none empty?
10:36 samcv what does that mean
10:36 AlexDaniel joined #perl6
10:36 melezhik_ in perl5 I would have /\[(\S+)\]/
10:37 melezhik_ how to say this in perl6?
10:37 samcv / '[' ( \S+ ']' ) /
10:37 samcv that should work
10:37 melezhik_ s/none empty/none spaces/
10:37 samcv you don't need the space
10:37 melezhik_ samcv: thanks, will try
10:37 samcv that i put in my example. but in perl 6 spaces are not significant
10:38 melezhik_ yeah, I know
10:38 jast the exact same expression as in perl5 works for me, too
10:38 melezhik_ but I still perl5 in mind as for the regex, so it's hard for me every time I start writting perl6 ones , hehh (:
10:39 * moritz blatantly advertises the regexes and grammar chapter in https://leanpub.com/perl6
10:41 tokomer joined #perl6
10:44 eiro joined #perl6
10:44 CIAvash melezhik_: also /'[' ~ ']' (\S+)/
10:46 melezhik_ CIAvash: -  thanks
10:46 melezhik_ Indeed my initial perl6 regex was fine, but I used $1 instead of $0 (:
10:47 melezhik_ I forgot that perl6 starts count numbered captures with $0
10:49 abraxxa joined #perl6
10:54 araujo joined #perl6
10:54 cschwenz joined #perl6
10:54 araujo joined #perl6
10:55 cschwenz left #perl6
10:57 espadrine joined #perl6
11:00 AlexDaniel joined #perl6
11:04 xtreak joined #perl6
11:04 xtreak joined #perl6
11:07 cpage_ joined #perl6
11:10 masak m: multi sub trait_mod:<is>(Routine $r, :$ohhai!) is export(:DEFAULT, :traits) {}; sub foo($x) is ohhai {}
11:10 camelia rakudo-moar 18e6f0: ( no output )
11:10 masak ...but...
11:11 masak m: multi sub trait_mod:<is>(Routine $r, :$ohhai!) is export(:DEFAULT, :traits) {}; sub foo($x) is ohhai($x) {}
11:11 camelia rakudo-moar 18e6f0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Can't use unknown trait 'is ohhai' in a sub declaration.␤at <tmp>:1␤    expecting any of:␤        rw raw hidden-from-backtrace hidden-from-USAGE␤        pure default DEPRECATED inlinable nodal␤    …»
11:11 masak why is the trait suddenly unknown when I pass it a parameter? :)
11:11 brokenchicken melezhik_: that can be avoided with named captures: /'[' ~ ']' $<stuff>=\S+/
11:11 masak m: multi sub trait_mod:<is>(Routine $r, :$ohhai!) is export(:DEFAULT, :traits) {}; sub foo($x) is ohhai(42) {}
11:11 camelia rakudo-moar 18e6f0: ( no output )
11:11 brokenchicken melezhik_: and you use $<stuff> to access it
11:11 masak oh, it's only when I give it an $x from the parameter list
11:11 arnsholt samcv: Hard to say. But you could very well be running into performance issues in large hashes
11:12 masak m: multi sub trait_mod:<is>(Routine $r, :$ohhai!) is export(:DEFAULT, :traits) {}; my $x; sub foo() is ohhai($x) {}; say "alive"
11:12 camelia rakudo-moar 18e6f0: OUTPUT«alive␤»
11:12 masak everything works except passing an `$x` from the parameter list. that's what I thought.
11:12 samcv arnsholt, it seems it made it hugely faster by moving some stuff from the sub it called into the calling sub
11:12 samcv and it was not much code in there anyway so idk
11:12 arnsholt samcv: At any rate, there does look to be at least one non-trivial GC-pause in the timings you posted: Most of them are tens of seconds, but one's 10 seconds
11:12 samcv so that seems the bulk of the issue
11:12 masak problem is, `$x` is in *scope* at that point, but (due to timing issues) it doesn't really make *sense* to pass `$x` to the trait
11:12 arnsholt Ah, cool
11:13 masak we should probably have a dedicated error message for this, just in case other people are as unreasonable as I am :P
11:13 samcv also doing for %points.keys  -> $code; i get Use of uninitialized value <element> of type Any in string context.
11:13 samcv Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
11:13 samcv in block  at ./UCD-gen.p6 line 366
11:14 samcv and i have no clue what it can't use in a string context and $code is populated with the key inside the body of the for loop
11:14 samcv it functions perfectly so i used to have a quietly on there. but that makes it slower so
11:14 samcv i need to figure out how to solve this :\
11:16 samcv this is the code https://github.com/samcv/UCD/bl​ob/master/UCD-gen.p6#L362-L366
11:20 confundus joined #perl6
11:23 samcv even if i do `my @iter = %points.keys.List;` i still get the problem when iterating over @iter
11:24 samcv oh looks like it's not the iterating but another place. himm. nvm then
11:26 arnsholt masak: Should parameters be in scope for a trait application though?
11:26 arnsholt That sounds odd, to me
11:30 jnthn To do otherwise would mean a scope "hole"
11:30 jnthn It's not really a scoping problem, more a timing problem.
11:31 masak what jnthn++ said
11:31 masak (and what I hinted at above)
11:31 masak the scoping is right, IMHO
11:31 masak we have similar timing problems in a lot of places in the language, though
11:31 jnthn my $x; BEGIN { say $x }
11:32 masak right
11:32 jnthn You could make a similar argument that $x should not be in scope in this case :)
11:32 masak it's just the parameters/trait one just occurred to me :)
11:32 jnthn :)
11:32 _Vasyl joined #perl6
11:33 brokenchicken m: my $x; BEGIN { say $x }
11:33 camelia rakudo-moar 18e6f0: OUTPUT«(Any)␤»
11:34 brokenchicken m: multi sub trait_mod:<is>(Routine $r, Mu :$ohhai!) is export(:DEFAULT, :traits) {}; sub foo($x) is ohhai($x) {}
11:34 camelia rakudo-moar 18e6f0: ( no output )
11:34 brokenchicken ah
11:34 as_ joined #perl6
11:35 as_ I am looking at the example at https://docs.perl6.org/language/regexes#^,_Start_of_String_and_$,_End_of_String
11:35 as_ and it looks like the first example with heredoc and $ does not work
11:35 as_ say so $str ~~ /safe   $/; returns false
11:35 as_ $ does not match the \n at end of line
11:36 as_ rakudo: say so "a\nb" ~~ /b$/;
11:36 camelia rakudo-moar 18e6f0: OUTPUT«True␤»
11:36 as_ rakudo: say so "a\nb\n" ~~ /b$/;
11:36 camelia rakudo-moar 18e6f0: OUTPUT«False␤»
11:37 brokenchicken as_: right. Do you mind fixing it by adding \n in both examples that use $?
11:37 brokenchicken It's in this file: https://github.com/perl6/doc/blob​/master/doc/Language/regexes.pod6
11:37 as_ what do you mean? $ should match in both cases?
11:38 brokenchicken as_: the examples with $ are missing \n before $
11:39 as_ so it's different from Perl 5's behavior?
11:39 brokenchicken Yes.
11:40 masak brokenchicken: in the good ol' Parrot days, doing crazy enough timing-issue things could actually get you a Null PMC Access exception. :P
11:40 jnthn masak: That was more a pre-nom thing than a Parrot thing, to be fair.
11:40 masak (because the lookup literally failed hard enough to crash the program when it didn't find an initialized lexpad)
11:40 masak jnthn: oh, you might be right.
11:41 samcv i gotta go bed. night all o/
11:41 brokenchicken as_: may be worth mentioning in one of 5-to-6 tuts too. I don't see it here: https://docs.perl6.org/language/5​to6-nutshell#Regular_Expressions_(_Regex_/_Regexp_)
11:41 jnthn It wasn't until the nom changes that we got a decent story on BEGIN-time symbols handling.
11:41 brokenchicken as_: And that page is in this file: https://github.com/perl6/doc/blob/ma​ster/doc/Language/5to6-nutshell.pod6
11:41 masak jnthn: but unless I'm mistaken, I still managed a small few of them post-nom (but pre-moar) too
11:41 jnthn Surely, yes :)
11:42 masak jnthn: I remember figuring that story out together with Rakudo, so to speak
11:42 masak the cardinal rule seems to be "at worst, you get the static lexpad"
11:42 jnthn Right
11:45 jnthn And yeah, I remember plenty of time/beer spent discussing those bits :)
11:45 confundus Hi, do I need to use eval to convert a dynamically built string into a pattern?
11:46 moritz confundus: on, / <$string> / does tht
11:46 moritz *that
11:46 jnthn /<$the-string-with-the-pattern/>
11:46 jnthn oops, what moritz said :)
11:46 moritz s/on/no/
11:46 moritz m: my $pattern = 'a.*'; say 'abacus' ~~ /<$pattern>/
11:46 camelia rakudo-moar 18e6f0: OUTPUT«「abacus」␤»
11:46 confundus moritz: oh, I see.
11:46 moritz m: my $pattern = 'a.*u'; say 'abacus' ~~ /<$pattern>/
11:46 camelia rakudo-moar 18e6f0: OUTPUT«「abacu」␤»
11:47 masak also, these good people decided to rename it to EVAL with all-capitals
11:48 astj joined #perl6
11:49 moritz ... and decided to overdo it a bit by *also* requiring a pragma
11:49 moritz EVAL 'say 42'
11:49 moritz m: EVAL 'say 42'
11:49 camelia rakudo-moar 18e6f0: OUTPUT«42␤»
11:49 moritz ... but not in camelia? or is that gone?
11:50 confundus maybe it has the monkey pragmas turned on?
11:50 moritz maybe.
11:50 telex joined #perl6
11:50 samcv nice full build down to 445.45815766 seconds! for UCD database using perl 6!
11:50 samcv \o/. and now off to bed
11:51 masak moritz: I thought the all-caps was already overdoing it...
11:51 brokenchicken confundus: moritz, it doesn't have anything turned on. The pragma cries only when you do dangerous things
11:51 samcv no, you can eval a string that's static
11:51 brokenchicken m: my $x = '42'; EVAL "say $x"
11:51 camelia rakudo-moar 18e6f0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤EVAL is a very dangerous function!!! (use the MONKEY-SEE-NO-EVAL pragma to override this error,␤but only if you're VERY sure your data contains no injection attacks)␤at <tmp>:1␤------> 3my $x = '42'; …»
11:51 samcv without turning on any pragmas
11:51 samcv static strings are fine
11:52 brokenchicken m: my $x = '42'; "say $x".EVAL # and there's a ticket for this
11:52 camelia rakudo-moar 18e6f0: OUTPUT«42␤»
11:53 brokenchicken eh. It's not Perl 5. You don't need EVAL as often.
11:53 astj joined #perl6
11:55 ocbtec joined #perl6
11:56 brokenchicken And there are more subtle ways to introduce a sploit in your code
11:57 brokenchicken m: my $x = 'say 42'; /<{$x}>/
11:57 camelia rakudo-moar 18e6f0: ( no output )
11:58 brokenchicken Don't even remember what it was. Some regex interpolataion
12:00 brokenchicken and it'd complain about monkey eval thing
12:01 brokenchicken m: my $x = "{say 'all your base are belong to us'}"; "x" ~~ /<$x>/
12:01 camelia rakudo-moar 18e6f0: OUTPUT«all your base are belong to us␤»
12:01 brokenchicken would've thought that would be it :/
12:01 brokenchicken mc: my $x = "{say 'all your base are belong to us'}"; "x" ~~ /<$x>/
12:01 committable6 brokenchicken, ¦«2015.12»: all your base are belong to us
12:01 * brokenchicken shrugs
12:02 brokenchicken oh
12:02 brokenchicken m: my $x = q|{say 'all your base are belong to us'}|; "x" ~~ /<$x>/
12:02 camelia rakudo-moar 18e6f0: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0␤Prohibited regex interpolation (use the MONKEY-SEE-NO-EVAL pragma to override this error,␤but only if you're VERY sure your data contains no injection attacks)␤at /home/camelia/EVAL_0:1␤…»
12:02 brokenchicken :D it *is* it :)
12:02 user9 joined #perl6
12:09 sufrostico joined #perl6
12:14 masak arnsholt: could you check if I got this approximately right? :) https://github.com/masak/007/issues/221
12:19 lukaramu joined #perl6
12:32 arnsholt masak: Was just looking at it in my mailbox, as a matter of fact!
12:33 rindolf joined #perl6
12:35 arnsholt masak: Commented
12:44 masak \o/
12:45 arnsholt I like the double-dot syntax for it, incidentally
12:49 confundus joined #perl6
13:00 titsuki joined #perl6
13:06 masak arnsholt: oh, it's `;` in Smalltalk?
13:06 masak where did I get `..` from, then? I must've seen it *somewhere*
13:10 lizmat_ joined #perl6
13:10 gregf_ samcv: i just had a glance at the code in that repo and some of the methods are quite huge :/
13:12 lep-delete i think dart has ..
13:12 bjz joined #perl6
13:14 arnsholt masak: Yeah, it's semicolon in ST. Fits quite well with period as the statement terminator, actually
13:19 masak lep-delete: that might be it
13:20 masak arnsholt: it does. SmallTalk feels in general like it thought quite hard about punctuation.
13:20 masak arnsholt: and it's a bit crazy that we use semicolon for "terminate statement" in so many languages...
13:20 masak arnsholt: people who read it with its literal meaning must look at a C program and ask "when will this program ever get to the point!?"
13:20 arnsholt =D
13:21 arnsholt Yeah, it's pretty odd once you start thinking about it
13:22 arnsholt Also, Smalltalk is rapidly earning points on my "favourite programming languages" list
13:22 arnsholt It's a very interesting excercise in minimalism
13:27 masak I just re-finished http://worrydream.com/EarlyHistoryOfSmalltalk/ -- a very refreshing read. so I would tend to agree. :)
13:28 masak my favorite sentence this time around: "What I got from Simula [about the promise of OOP] was that you could now replace bindings and assignment with *goals*."
13:30 masak I'll try to start thinking of methods as abstracted goals of an object, to see how that feels
13:30 arnsholt There was a really cool comment by Alan Kay on HN (I think) where he contrasted the reactions of Dahl and Nygaard (the Simula guys) to Smalltalk
13:31 arnsholt One of them was indifferent and didn't see the point, while the other was super-enthusiastic =)
13:32 masak arnsholt: let me know if you find it :>
13:32 arnsholt Ah yes: https://news.ycombinator.com/item?id=10967103
13:34 ggoebel joined #perl6
13:34 masak "low-pass filter" is a wonderful expression -- I find it happens to a lot of things
13:35 masak it's something to do with echo chambers, and different communities having different understandings of the world
13:35 * [Coke] sees masak use 'mechanize' where coke has used 'weaponize' locally. Wonder if that's all due to my US upbringing. :)
13:37 [Coke] samcv: instead of triggering a rebuild of latest module by committing whitespace, can we explicitly declare which version we're depending on, so 'getting the latest' actually changes the version number? (making the commit "real")
13:38 masak [Coke]: I think I almost wrote "automate" in that spot, fwiw.
13:40 [Coke] masak: I hear "operationalize" many times here at work, and I always mentally substitute "weaponize".
13:40 [Coke] and there is a difference between operationalize and automate, sure.
13:41 [Coke] Oh! Dayjob! Hey, everyone, I'm getting laid off (but it's fine)
13:41 brokenchicken :(
13:41 masak [Coke]: we'rehiring we'rehiring we'rehiring
13:42 brokenchicken Whom are you hiring?
13:42 masak (and we're pretty awesome and have the highest density of Perl 6 people second to colomon's one-person startup) :P
13:42 lizmat masak: more or less than 50%  :-)
13:43 lizmat ?
13:43 masak ok, so maybe we're third on that list :P
13:43 lizmat hehe  :-)
13:43 masak but we're pretty high is my point!
13:43 perlpilot masak: how about density of Perl 6 work?  ;)
13:43 [Coke] ooh, maybe I could tip the scales.
13:43 [Coke] ... I mean figuratively. of course I can literally. :)
13:44 masak perlpilot: depends how you look at it. I've definitely written Perl 6 for $work things. and Perl 6 figures indirectly in a *lot* of ways
13:46 espadrine joined #perl6
13:52 rurban joined #perl6
13:55 [Coke] I did manage to get a Perl 6 program running here at $dayjob, which I felt good about.
13:56 [Coke] win 28
13:56 [Coke] ... *cough*
13:56 ggoebel joined #perl6
13:59 agentzh joined #perl6
14:03 KDr2 joined #perl6
14:04 bwisti joined #perl6
14:11 masak 'night, #perl6
14:14 ufobat joined #perl6
14:15 sammers joined #perl6
14:15 brokenchicken night
14:18 araujo joined #perl6
14:19 araujo joined #perl6
14:21 araujo joined #perl6
14:22 araujo joined #perl6
14:22 araujo joined #perl6
14:23 kurahaupo joined #perl6
14:24 AlexDaniel joined #perl6
14:44 stux|RC joined #perl6
14:46 jdv79 what's 28?
14:47 brokenchicken A number below 42.
14:49 rurban left #perl6
14:50 gregf_ a number tbp
14:51 DrForr My first thought was that it was a Perfect number, but it's not. I've seen it in a common sequence though.
14:53 DrForr Oh, it is. 6,28,496,8128...
14:54 Khisanth joined #perl6
14:54 cdg joined #perl6
14:54 DrForr Ah, right, *all* of the divisors. 1+2+4+7+14
14:56 cdg joined #perl6
14:59 abraxxa joined #perl6
15:00 brokenchicken m: ($_ %%  *)(6).say given 3
15:00 camelia rakudo-moar 833fe4: OUTPUT«Use of uninitialized value of type Any in numeric context␤  in whatevercode  at <tmp> line 1␤True␤»
15:01 brokenchicken how come it's unintiliazited?
15:01 brokenchicken m: (* %% $_)(6).say given 3
15:01 camelia rakudo-moar 833fe4: OUTPUT«Attempt to divide 6 by zero using infix:<%%>␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
15:01 brokenchicken m: (*.&[%%]: $_)(6).say given 3
15:01 camelia rakudo-moar 833fe4: OUTPUT«Attempt to divide 6 by zero using infix:<%%>␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
15:01 skids joined #perl6
15:01 brokenchicken Oh, OK then
15:02 brokenchicken Thought the last one worked.
15:02 brokenchicken m: $_ = 42; sub foo { say $_ }; foo  # and this is basically why it doesn't work; the closure got its own $_
15:02 camelia rakudo-moar 833fe4: OUTPUT«(Any)␤»
15:04 brokenchicken m: subset Perfect of Int where {^$^v .grep($v %% *).sum eq $v}; say 28 ~~ Perfect
15:04 camelia rakudo-moar 833fe4: OUTPUT«True␤»
15:04 brokenchicken yey
15:06 brokenchicken m: subset Perfect of Int where {$^v eq sum ^$v .grep: $v %% *}; say 6 ~~ Perfect
15:06 camelia rakudo-moar 833fe4: OUTPUT«True␤»
15:08 sena_kun joined #perl6
15:09 Geth ¦ ecosystem/take-over-net-xmpp: 6cfb7e89ac | (Bahtiar Gadimov)++ | META.list
15:09 Geth ¦ ecosystem/take-over-net-xmpp: Take over Net::XMPP
15:09 Geth ¦ ecosystem/take-over-net-xmpp:
15:09 Geth ¦ ecosystem/take-over-net-xmpp: I updated the project to current Socket API & merged outstanding pull requests. Given that the current `Net::XMPP` library isn't working at all with the current `Perl 6.c` version, the author is barely active on GitHub and seems to ignore PRs I assume he isn't interested in it any more. May I take over?
15:09 Geth ¦ ecosystem/take-over-net-xmpp:
15:09 Geth ¦ ecosystem/take-over-net-xmpp: I'm engaged in the XMPP community and currently working on improving and extending the XMPP support for Perl6, so I will actively maintain this project.
15:09 Geth ¦ ecosystem/take-over-net-xmpp: review: https://github.com/perl6/e​cosystem/commit/6cfb7e89ac
15:09 Geth ¦ ecosystem: kalkin++ created pull request #294: Take over Net::XMPP
15:09 Geth ¦ ecosystem: review: https://github.com/perl6/ecosystem/pull/294
15:10 brokenchicken .oO( just release your own version... )
15:14 user9 joined #perl6
15:16 [Coke] do we need take over? what brokenchicken said.
15:16 [Coke] how will zef/panda react if we have two things of the same name?
15:17 brokenchicken Good question.
15:17 [Coke] guess we should try it out!
15:17 brokenchicken This really pushes more toward we need a sane ecosystem
15:18 brokenchicken jdv79: have you gave any thought on 6CPAN thing? What's the status?
15:20 mst [Coke]: I suspect it will turn out to be worth having some sort of 'transfer of authority' mechanism to simplify continuity for downstream users, even if the perl6 system will still work without it
15:21 brokenchicken Agreed. But something more formalized. Not a "author didn't merge my PR yet, so I'm taking over the module"
15:24 cale2 joined #perl6
15:25 [Coke] I edit template/footer.html; run 'perl6 htmlify.p6 --no-highlight --sparse=100' - doesn't look like it pulled in the footer change.
15:25 cdg_ joined #perl6
15:26 [Coke] I've also seen that sort of thing cause the perl6/ org on github to get a copy, which i don't want to be the norm, either.
15:26 [Coke] we have enough issues with core stuff atm.
15:26 brokenchicken the atom stuff?
15:27 brokenchicken atom highlighter
15:27 [Coke] I specifically disabled highlights - no, I'm literally changing the <footer> tag in the template.
15:29 [Coke] ugh, sparse doesn't impact the svg generation.
15:30 user9 joined #perl6
15:31 mst brokenchicken: oh, sure, I'm just saying that while the authority system is an excellent last line of defence against disappearing authors and other issues, I don't think we should set a precedent of using it as the first line of defence
15:32 eroux joined #perl6
15:32 jdv79 brokenchicken: in the middle of picking up the pieces
15:33 jdv79 got sidetracked playing with perl6 but that conc bug fixes that distraction:)
15:33 brokenchicken :)
15:35 khw joined #perl6
15:36 _Vasyl joined #perl6
15:39 jnthn .oO( Does that mean I shouldn't look into the bug too hurriedly? :) )
15:39 Geth ¦ ecosystem/take-over-net-xmpp: 56bdcbb712 | (Bahtiar Gadimov)++ | META.list
15:39 Geth ¦ ecosystem/take-over-net-xmpp: Take over Net::XMPP
15:39 Geth ¦ ecosystem/take-over-net-xmpp:
15:39 Geth ¦ ecosystem/take-over-net-xmpp: I updated the project to current Socket API & merged outstanding pull requests. Given that the current `Net::XMPP` library isn't working at all with the current `Perl 6.c` version, the author is barely active on GitHub and seems to ignore PRs I assume he isn't interested in it any more. May I take over?
15:39 Geth ¦ ecosystem/take-over-net-xmpp:
15:39 Geth ¦ ecosystem/take-over-net-xmpp: I'm engaged in the XMPP community and currently working on improving and extending the XMPP support for Perl6, so I will actively maintain this project.
15:39 Geth ¦ ecosystem/take-over-net-xmpp: review: https://github.com/perl6/e​cosystem/commit/56bdcbb712
15:39 brokenchicken .seen retupmoca
15:39 yoleaux I saw retupmoca 8 Jun 2016 21:09Z in #perl6: <retupmoca> m: say ('a'..'d').rotor(2 => -1).perl;
15:42 eroux joined #perl6
15:44 gdonald joined #perl6
15:47 brokenchicken mst: what is Perl 5's process for takeover? I thought I saw a document somewhere describing it.
15:48 wamba joined #perl6
15:48 mst brokenchicken: basically "try and contact the author every way you can think of, cc-ing modules@perl.org, and if they don't respond after 4 weeks or so we'll do an adoption"
15:48 brokenchicken Thanks.
15:51 El_Che mst has some war stories :)
15:52 [Coke] our pod to html might be borked. Seeing lots of constructs uselessly wrapped in <p> tags.
15:52 [Coke] https://validator.w3.org/nu/?doc​=https%3A%2F%2Fdocs.perl6.org%2F
15:52 brokenchicken Hah. There's even a news story for this dude who's module we're debating: http://www.mlive.com/news/grand-rapids/index.s​sf/2014/08/why_one_wyoming_resident_decid.html
15:52 mst we also handle "actually, the original author is dead"
15:52 mst which is always hilarious
15:55 tadzik wow
15:56 brokenchicken fact of life :)
15:59 El_Che Wow. Open carry looks so onreal. It reminds me of Westworld.
15:59 Geth ¦ ecosystem: 7339d78115 | (Bahtiar Gadimov)++ | META.list
15:59 Geth ¦ ecosystem: Take over Net::XMPP (#294)
15:59 Geth ¦ ecosystem: review: https://github.com/perl6/e​cosystem/commit/7339d78115
15:59 * brokenchicken doesn't understand American obsession with weapons.
16:00 mst hysterical raisins
16:02 El_Che I wonder if the people that carry guns in the open are the same that carry cellphones in the the type of pockets in the 90s
16:02 El_Che :)
16:04 ilmari my dad still carries his cellphone (sony xperia z3 compact, iirc) in a belt pouch
16:05 El_Che ilmari: belt pouches used to be very popular in the day
16:05 El_Che ilmari: it was before the time before people checked their phone every minute
16:07 ilmari I used to have a transparent-front pouch with a belt clip for my nokia 1611
16:08 ilmari because it was too big to fit in a pocket
16:08 ilmari but when I got a 3210 that wasn't necessary any more
16:10 pyrimidine joined #perl6
16:11 Geth ¦ ecosystem: 4961f66df2 | (Zoffix Znet)++ | README.md
16:11 Geth ¦ ecosystem: Write down a suggested process for module take over
16:11 Geth ¦ ecosystem:
16:11 Geth ¦ ecosystem: - based on Perl 5's practices
16:11 Geth ¦ ecosystem: - not sure if perl6-users@perl.org is the best list to CC the email to; replace with anything better.
16:11 Geth ¦ ecosystem: review: https://github.com/perl6/e​cosystem/commit/4961f66df2
16:15 gfldex brokenchicken: the module takeover process should include "check the bloody license"
16:15 El_Che ilmari: I think this was my first phone and it was rather small (in 1997): http://www.gsmarena.com/ericsson_gf_788e-110.php
16:16 gfldex my first phone looked like this: https://upload.wikimedia.org/wikip​edia/commons/e/ed/Telefon04_2.jpg
16:16 ilmari El_Che: I remember that one
16:16 Vynce joined #perl6
16:16 ilmari we had a gray https://en.wikipedia.org/wiki/Ericofon
16:18 ilmari my brother had a http://www.gsmarena.com/nokia_6150-10.php, later I had a http://www.gsmarena.com/nokia_6210-12.php
16:18 El_Che gfldex: lol
16:18 El_Che gfldex: I hope it came with a long cable
16:19 El_Che the ericophone is pretty leet
16:19 gfldex it didn't but that wasnt a problem because we didn't use it much. We actually visited out friends and family in person
16:20 gfldex and we smoked and got drunk much more often back in the days
16:20 gfldex at the other hand depressions where pretty rare
16:21 Geth ¦ ecosystem: 8be9d267bf | (Zoffix Znet)++ | README.md
16:21 Geth ¦ ecosystem: Ask to check licenses before a take over; gfldex++
16:21 Geth ¦ ecosystem: review: https://github.com/perl6/e​cosystem/commit/8be9d267bf
16:23 wamba joined #perl6
16:23 dugword joined #perl6
16:26 agentzh joined #perl6
16:33 cdg joined #perl6
16:45 donaldh joined #perl6
16:51 donaldh What does this mean in a grammar: '{' ~ '}' [<option>*]
16:51 brokenchicken donaldh: any number of <option> tokens inside '{'
16:51 brokenchicken donaldh: any number of <option> tokens inside '{' and '}'
16:51 moritz donaldh: it's another way to write '{' <option> '}', but with options for better error reporting
16:51 brokenchicken donaldh: '{' <option>* '}' basically (no idea hwy the brackets are there)
16:52 donaldh And does the <option> part need to be inside '[' and ']' ?
16:52 moritz if the closing } isn't matched, a FAILGOAL method will be called, which you can define to do proper error reporting
16:52 brokenchicken moritz: I saw that written before... What does it mean? What sort of better error reporting
16:52 brokenchicken Ah :)
16:53 moritz donaldh: I don't know the relative precedence of ~ vs *, so I err on the side of too many brackets
16:53 donaldh Is it documented anywhere, do you know?
16:53 brokenchicken m: grammar { token TOP { '[' ~ ']' .+ }; method FAILGOAL (|c) { say c } }.parse: '[meow'
16:53 camelia rakudo-moar f2894d: OUTPUT«\("']' ")␤P6opaque: no such attribute '$!pos' in type Cursor when trying to get a value␤  in regex TOP at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
16:53 brokenchicken m: grammar { token TOP { '[' ~ ']' .+ }; method FAILGOAL (|c) { say c; exit } }.parse: '[meow'
16:53 camelia rakudo-moar f2894d: OUTPUT«\("']' ")␤»
16:53 brokenchicken cool
16:54 moritz passing the regex text is... a bit lazy though, no?
16:55 donaldh nice. Thanks brokenchicken++ and moritz++
16:55 devmikey joined #perl6
16:55 moritz m: grammar { token TOP { \[ ~ \] .+ }; method FAILGOAL($goal) { die "cannot find $goal near position {self.pos}" }}.parse: '[moep'
16:55 camelia rakudo-moar f2894d: OUTPUT«cannot find \]  near position 5␤  in method FAILGOAL at <tmp> line 1␤  in regex TOP at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
16:55 moritz m: grammar { token TOP { \[ ~ \] \w+ }; method FAILGOAL($goal) { die "cannot find $goal near position {self.pos}" }}.parse: '[moep bla]'
16:55 camelia rakudo-moar f2894d: OUTPUT«cannot find \]  near position 5␤  in method FAILGOAL at <tmp> line 1␤  in regex TOP at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
16:55 moritz that's where it starts to get interesting
16:56 brokenchicken :)
16:56 moritz (the grammar chapter of https://leanpub.com/perl6 doesn't talk about FAILGOAL; should I add it?)
16:56 moritz it does discuss self.pos, extracting a line number from that etc.
16:56 donaldh In what scope should FAILGOAL be declared?
16:56 timotimo it ought to be a method in the grammar
16:57 donaldh Would be very good to have a FAILGOAL example in your book, yes.
16:57 cdg_ joined #perl6
16:58 moritz donaldh: ok, will try to come up with something
16:58 pyrimidine joined #perl6
16:59 cale2 Did anyone do https://adventofcode.com/ with P6?
17:00 araujo joined #perl6
17:00 araujo joined #perl6
17:00 araujo joined #perl6
17:02 * moritz hasn't
17:02 stux|RC joined #perl6
17:04 brokenchicken I saw some people pop up asking for pointers for its challenges in December. Forget who.
17:07 robertle joined #perl6
17:13 FROGGS joined #perl6
17:20 TimToady note that any book that talks about %*LANG is probably going to be wrong shortly
17:21 araujo joined #perl6
17:21 araujo joined #perl6
17:22 _Vasyl joined #perl6
17:22 st_elmo joined #perl6
17:23 eliasr joined #perl6
17:29 TimToady gfldex: it appears you have a <> eaten before the .pick in multi sub foo(Whatever){ .pick };
17:29 donaldh resurrecting p6-pb for 2017.01 and protobuf3 if anyone is interested: https://github.com/donaldh/p6-pb
17:30 brokenchicken m: say i ~~ -1..1
17:30 camelia rakudo-moar f2894d: OUTPUT«False␤»
17:31 brokenchicken m: say <0+0i> ~~ -1..1
17:31 camelia rakudo-moar f2894d: OUTPUT«True␤»
17:31 brokenchicken \o/
17:31 TimToady m: say 0.5 ~~ -1..1
17:31 camelia rakudo-moar f2894d: OUTPUT«True␤»
17:32 TimToady m: say <.5+0.0000000000000000000000000000001i> ~~ -1..1
17:32 camelia rakudo-moar f2894d: OUTPUT«True␤»
17:33 TimToady it's a really skinny line on the complex plane
17:34 brokenchicken Yeah. It was bigger in my first version that used <=>, 'cause there it scales to real parts
17:34 brokenchicken m: say i <=> 200000000000000000000
17:34 camelia rakudo-moar f2894d: OUTPUT«Less␤»
17:34 brokenchicken So I used a .Real instead that just uses imaginary part =~= 0
17:35 TimToady that seems fine to me
17:36 TimToady given that most real imaginary numbers are gonna have an exponent within an order of magnitude of 0 one way or the other
17:38 gfldex TimToady: fixed, every time I fix one thing WP eats something else :(
17:38 TimToady in fact, for some reason, most complex numbers used in real life tend to get scaled units that keep things near (1+1i) or so
17:38 TimToady gfldex: yeah, WP sucks that way (too)
17:39 timotimo it sucks a lot, yeah
17:39 timotimo every year we come one tiny step closer to finally writing our own blog software, at least for the advent calendar
17:39 domidumont joined #perl6
17:40 domidumont joined #perl6
18:03 domidumont joined #perl6
18:05 lostinfog joined #perl6
18:05 cdg joined #perl6
18:10 perlpilot cale2: re adventofcode.   I did some of 2015 with Perl 6, but haven't looked at 2016
18:10 rurban joined #perl6
18:15 rurban left #perl6
18:27 cale2 If someone wants to make an Oauth module, How should it be organized in the ecosystem? Auth::Oauth1 and Auth::Oauth2 as separate modules?
18:35 dugword joined #perl6
18:46 agentzh joined #perl6
18:48 bwisti joined #perl6
18:58 tyilanmenyn joined #perl6
19:00 rurban joined #perl6
19:02 rurban joined #perl6
19:10 pyrimidine joined #perl6
19:19 sufrostico joined #perl6
19:38 labster joined #perl6
19:41 sena_kun tbrowder, ping.
19:47 tbrowder hi, sena_kun
19:48 tbrowder sena_kun: what can I do for you?
19:49 tbrowder timotimo++
19:50 espadrine joined #perl6
19:50 sena_kun tbrowder, hello! Not like I'm some kind of guy who gives work to everyone, but there are https://github.com/perl6/doc/pull/1172 - this PR and I'm not sure about it. I'm curious, are it suitable simplifications here.
19:51 sena_kun tbrowder, your quality check will be greatly appreciated.
19:53 tbrowder i'll be happy to take a look...
19:54 sena_kun And there are one more thing to check(or even rewrite, but I hope to avoid it), but later.
19:57 buggable joined #perl6
19:59 moritz .tell donaldh there's now a FAILGOAL example and short explanation in https://leanpub.com/perl6. Enjoy!
19:59 yoleaux moritz: I'll pass your message to donaldh.
20:00 tbrowder sena_kun: i saw something the other day about travis limiting build times--is that why the PR is failing?
20:01 bjz joined #perl6
20:02 sena_kun tbrowder, yes. It became quite a problem nowadays, but we live with it somehow.
20:03 dugword joined #perl6
20:04 tbrowder i'm having trouble sorting through all the changes, but i'll see if i can get a good diff on my host.
20:06 sena_kun tbrowder, there are a bunch of re-formatted examples, you can omit them, since I'm working on this part now. I'm interested in text in-between.
20:08 tbrowder ok
20:08 curt_ joined #perl6
20:10 curt_ Can you use NativeCall to call a C function that takes variable arguments (e.g. printf()"?
20:10 curt_ I've faked it by importing the symbol multiple times with different arguments, but it is awkward -- is there a better way?
20:16 RabidGravy I don't think so
20:16 yoleaux 31 Jan 2017 22:22Z <brokenchicken> RabidGravy: be sure to report your breakages so we iron everything out in v6.d.PREVIEW and not leave it until v6.d ;)
20:21 geekosaur curt_, no and your solution is likely not portable; ABIs can change behavior for varargs functions (e.g. switching from some args in registers to all on stack)
20:24 dugword joined #perl6
20:27 rurban joined #perl6
20:27 brokenchicken heh, so now I'm a leading Perl 6 developer? https://www.nu42.com/2017/02/p​erl6-programmer-frowning.html
20:29 brokenchicken Ah, that's bdfoy's pet ape nanis
20:29 * brokenchicken closes the page without reading further
20:30 El_Che brokenchicken: you misread
20:30 perlpilot brokenchicken: you get too worked up about those two.   That's not good for your health
20:30 El_Che brokenchicken: you're the leading non-cooperative developer
20:31 El_Che :)
20:32 brokenchicken And he wonders why I refered to him as a pet. That's because when I pointed out to bdfoy his example in the book was broken and he started deleting my replies, nanis was in the shadows thumbing up bdfoy's responses and thumbing down my responses.
20:34 sena_kun TEH DRAMA </sorry, I couldn't keep it within myself>
20:34 * lizmat wonders what she could do to unbreak the brokenchicken
20:34 El_Che vodka soaked corn
20:36 tbrowder i'm trying atom again and wonder if there is a package that will show a list of subs, classes, and vars on the menu bar like emacs p6 mode?
20:37 sena_kun tbrowder, offtopic: emacs can show such a list? Did you mean your patched mode or default p6 mode?
20:37 tbrowder sena_kun: i say go for it and merge your PR!
20:37 tbrowder patched mode (on perl6)
20:38 brokenchicken nanis, and posting a screenshot with errors on Twitter accompanied with "adventures in Perl 6" makes it sound like the stuff's really broken when in reality you've built from a random dev commit. If you really meant to "be helpful by pointing out what the devs are missing" and not mock our efforts, you would report the bug on a bug tracker or tell us about it on IRC.
20:38 brokenchicken ugh
20:38 Vynce joined #perl6
20:38 sena_kun tbrowder, ah, okay. Couldn't test it. I wonder where hinrik is...
20:38 brokenchicken Why did I even go to perl 5's reddit -_
20:39 lizmat brokenchicken: that's Perl's reddit, afaik
20:39 sena_kun tbrowder, thanks for all your work! Merging it now...
20:39 Geth ¦ doc: bd26cbe750 | (Antonio Quinonez)++ | doc/Language/exceptions.pod6
20:39 Geth ¦ doc: edits to exceptions pod
20:39 Geth ¦ doc: review: https://github.com/perl6/doc/commit/bd26cbe750
20:39 Geth ¦ doc: 1a9471cddf | (Antonio Quinonez)++ | doc/Language/exceptions.pod6
20:39 Geth ¦ doc: removed my <<<< marker
20:39 Geth ¦ doc: review: https://github.com/perl6/doc/commit/1a9471cddf
20:39 Geth ¦ doc: af89aa5b1b | Altai-man++ | doc/Language/exceptions.pod6
20:39 Geth ¦ doc: Merge pull request #1172 from antquinonez/exceptions-cleanup
20:39 Geth ¦ doc:
20:39 Geth ¦ doc: edits to exceptions pod
20:40 Geth ¦ doc: review: https://github.com/perl6/doc/commit/af89aa5b1b
20:40 brokenchicken lizmat: what's broken with me?
20:40 lizmat well, the name suggests something's broken  :-)
20:41 lizmat but I don't know what
20:41 TimToady the chicken is bro' named "ken"
20:42 lizmat .oO( brogijoechicken )
20:49 Tonik joined #perl6
20:52 robertle can a Grammar not do incremental parsing? as in I get the text piece by piece and feed it into the Grammar?
20:52 [Coke] m: say Grammar.^methods
20:52 camelia rakudo-moar f2894d: OUTPUT«No such method 'gist' for invocant of type 'NQPRoutine'␤  in block <unit> at <tmp> line 1␤␤»
20:53 [Coke] m: say Grammar.^methods>>.name
20:53 camelia rakudo-moar f2894d: OUTPUT«(parse subparse parsefile FAILGOAL upper CAPHASH CALL_SUBRULE !reduce_with_match !protoregex DYNQUANT_LIMITS !fresh_highexpect !BACKREF-LATEST-CAPTURE !DYNQUANT_LIMITS orig !cursor_start !protoregex_nfa !protoregex_table RECURSE !cursor_more !cursor_pass !…»
20:53 robertle I played with subparse, but that does not appear to be it
20:54 [Coke] can you clarify what you're expecting?
20:56 robertle yeah, assuming a text T which leads to some behavior when I do $mygrammar.parse(T), so e.g. actions being called
20:56 jit joined #perl6
20:57 robertle any T1 .. Tn being fed to the grammar with subsequent calls of parse_incremental() (or so), will lead to the same actions if T1 ~ T2 ~ ... ~ Tn eq T
20:57 [Coke] ok, but subparse is supposed to be exactly like parse in that regard; do you have a short example showing that doesn't work?
20:57 robertle say I write a grammar for a network protocol, or something in a file
20:57 robertle ok, I'll try again with subparse
20:58 robertle and report back what the problem is
20:58 jnthn You'll need to manage a buffer yourself
20:58 [Coke] I don't think that exists, no.
20:58 jnthn And use subparse to eat what's available so far
20:58 [Coke] (you sent a lot more after my first response. :)
20:58 jnthn I did something like that in the Stomp message parser module
20:58 [Coke] jnthn++
20:58 jnthn There's no built-in thing for it yet
20:58 jnthn The STOMP example is probably relevant though, 'cus that *is* parsing a network protocol :)
20:58 TimToady we have ideas for lazy strings, but we're lazy programmers
20:59 robertle where can I find this STOMP?
20:59 robertle is the grammar internally not a state machine?
21:01 robertle yeah, lazy strings would be a more functional way of looking at the problem than that "pushing" incremental parsing
21:01 cpage_ joined #perl6
21:01 mspo STOMP the mq thing?
21:02 RabidGravy yeah it works and everything
21:02 robertle got it: https://github.com/jnthn/p6-stomp​/blob/master/lib/Stomp/Parser.pm6
21:04 robertle jnthn: so you append and try to parse until parsing suceeds, when it does you remove the stuff acceptred by the parser
21:04 perlpilot robertle: it sounds to me like you want a parse that can be incomplete (or "succeed in the middle") or something and then pick up from where you left off.
21:04 robertle perlpilot: totally
21:05 robertle jnthn: so if I feed you byte by byte, you attempt to parse the whole thign again and again? just trying to understand...
21:06 Mithaldu joined #perl6
21:06 perlpilot robertle: I don't think we're there yet.  You have to build a string that can be completely parsed (perhaps with some left overs) and feed those strings to a grammar one at a time.
21:06 Mithaldu brokenchicken: you said this a bit back: "I pointed out to bdfoy his example in the book was broken and he started deleting my replies" are you saying replies on reddit were deleted?
21:06 robertle ok, uinderstood. and the difference between parse and subparse is whether it accepts a string that has extra stuff at the end?
21:07 perlpilot robertle: yeah
21:08 Mithaldu lizmat: and yeah, the perl reddit is for both. i've had to delete a lot of reports of people trying to get rid of the perl6 things
21:08 lizmat Mithaldu++  :-)
21:08 Mithaldu :)
21:09 perlpilot robertle: https://docs.perl6.org/routine/subparse
21:10 agentzh joined #perl6
21:10 [Coke] parse must match the whole string.
21:11 robertle perlpilot: yeah, I did read that and tried it. was just wondering whether there is a current way to do the incremental part, avoiding to re-parse parts until the match is complete. but the approach in the stomp module is ok, I'll do that!
21:11 robertle thanks!
21:11 jnthn robertle: Yes, you understood what I@m doing right
21:12 jnthn robertle: It re-parses. It's just that in this case that's probably not too bad; we're getting a packet at a time, not a byte at a time
21:12 robertle not when I'm sending you the packets ;)
21:13 pyrimidine joined #perl6
21:14 ugjka joined #perl6
21:14 jnthn :P
21:16 samcv good * #perl6
21:17 sena_kun samcv, 0/
21:19 brokenchicken Mithaldu: no, it was in bdfoy's private repo for the LP6 previews
21:19 Mithaldu aight
21:20 Mithaldu i'd be annoyed if that happened on reddit, and do have the tools to track it down if necessary
21:20 brokenchicken Well, brian and I have been at "war" ever since the module naming argument from like a decade ago :) I'm not surprised he was deleting my replies.
21:21 Mithaldu well, i have two views on this
21:21 Mithaldu for one, he still has me banned on twitter for criticizing him
21:21 [Coke] u: { .uniname ~~ / 'LLAMA' /}
21:21 unicodable6 [Coke], Found nothing!
21:21 [Coke] u: { .uniname ~~ / 'CAMEL' /}
21:21 Mithaldu for the other, your name-calling is uncalled for, and comparing it to someone mistakenly attributing more status to you than you have is not very elegant
21:21 unicodable6 [Coke], U+1F42A DROMEDARY CAMEL [So] (🐪)
21:21 unicodable6 [Coke], U+1F42B BACTRIAN CAMEL [So] (🐫)
21:22 Mithaldu wow, different camels
21:23 TEttinger joined #perl6
21:23 lizmat m: my $c = "🐪"; $c++; say $c
21:23 camelia rakudo-moar f2894d: OUTPUT«🐫␤»
21:23 zakharyas joined #perl6
21:23 Mithaldu if everyone calmed down a little some value could be extracted from sinan's breaking-stuff skills
21:24 brokenchicken Mithaldu: fair enough. It's uncalled for. But the only reason he calls me "leading Perl 6 developer" is to misrepresent Perl 6.
21:24 brokenchicken Just as his Tweets
21:24 brokenchicken I don't for a second believe he has any interest in Perl 6's wellbeing.
21:25 Mithaldu right, so if he tweets about bugs, ask him to report it and for repro steps
21:25 Mithaldu either he gives you something useful
21:25 Mithaldu or the intention of his posting, if negative, is laid bare
21:28 perlpilot indeed
21:28 brokenchicken I'm just gonna stop talking to people.
21:28 brokenchicken Gonna write code instead.
21:29 Mithaldu not a bad thing either :)
21:29 brokenchicken Someone merge https://github.com/MoarVM/MoarVM/pull/518 when Travis's approves it and I'll do bumps and write the tests
21:29 * brokenchicken relocates.
21:29 Mithaldu also, you could try and see what rakudo currently does with msvc
21:30 samcv it's sad there are people that only want to talk badly about perl 6 but have no intention on actually seeing it improve
21:30 Mithaldu samcv: it's not clear whether that is actually the case here
21:31 samcv oh
21:31 Mithaldu there's someone who's upset, and got some responses that were less than quality, by people also upset
21:31 Mithaldu and it seems to have been going on for some time with complicating factors
21:31 samcv :\
21:33 jnthn There's something wrong with MSVC? Ticket?
21:33 jnthn (I know there was a build bustage there a few weeks back 'cus I fixed it.)
21:33 Mithaldu jnthn: no ticket, but let me get you a short summary
21:34 jnthn No, because I'm tired and won't do anything with it
21:34 Mithaldu ok, then i won't
21:35 RabidGravy It would be better if there was a ticket surely
21:35 jnthn Indeed
21:35 jnthn Well, if somebody else wants to make the ticket...
21:36 jnthn Please, folks, encourage problems to get ticketed. We don't always manage to get to tickets as fast as would be nice, but it's the best way of things not being totally forgotten.
21:37 Mithaldu i don't know enough to make a useful ticket
21:37 domidumont joined #perl6
21:37 Mithaldu i was going to make a summary so you could tell me whether the summary would be worth reporting
21:37 Mithaldu but then you told me no
21:37 Mithaldu so what now? :P
21:37 jnthn Well, OK, go on... :)
21:38 samcv is `if @a { }` equivilent to `if @a.elems` ?
21:38 jnthn samcv: No
21:38 lizmat @a.Bool
21:38 samcv what checks does so @a do?
21:38 Mithaldu jnthn: sinan posted about his msvc compiled p6 failing to respond well to ^Z or ^D for this code: perl6 -e "for $*IN.lines -> $x { say $x }"
21:38 jnthn samcv: If @a has lazy parts, if @a will only make sure there's at least one element. .elems will force it to reify everything
21:38 brokenchicken samcv, the former would reify at most one elem, the latter all of them
21:39 samcv kk
21:39 Mithaldu he seems to expect it to exit, but it doesn't
21:39 samcv very good then
21:39 Mithaldu someone else noted the msi installed version handles that fine
21:39 jnthn Hmm
21:40 RabidGravy version of msvc and the compile options might help someone reporoduce
21:40 * samcv is very happy the bitfield packing code i wrote is working perfectly :)
21:41 Mithaldu also, the stuff generated by configure seems to not make nmake happy in regards to directory separators: https://www.nu42.com/2017/02/rakudo-​star-2017-01-nmake-test-message.png
21:41 Mithaldu RabidGravy: was gonna say i don't nkow, but apparently v14 amd64
21:41 jnthn ^D
21:41 jnthn
21:41 jnthn ^Z
21:41 jnthn
21:41 jnthn At least in the MSVC build I have it doesn't seem to exit either
21:42 Mithaldu oh good, you have a repro then :)
21:42 jnthn My gut feeling is that it'd be a Windows issue rather than a compiler-specific issue...
21:42 jnthn Though if it worked for somebody then that's a tad odd
21:42 Mithaldu sec
21:42 jnthn I wonder what console whoever it worked for was using
21:42 RabidGravy samcv, anything I can steal for https://github.com/jonathanstowe/Util-Bitfield ?
21:43 Mithaldu jnthn: this person reported it working for them: https://twitter.com/joshuam​y/status/826685435606806528
21:43 samcv possibly RabidGravy
21:43 Mithaldu if you don't have twitter i can ask them
21:43 Mithaldu also, should i throw the info so far on rt then?
21:44 samcv compute-packing(List of pairs); basically * => bitfield-width
21:44 Mithaldu actually i don't even know how to report perl6 bugs
21:44 robinsmidsrod joined #perl6
21:44 samcv so for my UCD-gen.p6 i supply it with a list of property-name => bitwidth
21:44 samcv and it spits back out at me the optimal ordering of those things
21:44 lizmat Mithaldu: send an email to rakudobug@perl.prg
21:44 Mithaldu lizmat: cheers
21:44 lizmat *.org
21:44 Mithaldu :D
21:44 samcv you can put anything you want in the keys, but the module only uses the bitwidth to sort them, though it is determinalistic and always gives the same result
21:45 Mithaldu ok, gonna wait and see what jnthn says then :)
21:45 samcv [:Numeric_Value_Numerator("7"), :Canonical_Combining_Class(1), :Joining_Group("7"), :XID_Start(1), :Line_Break("6"), :Numeric_Type(2), :Word_Break("5"), :Joining_Type(3), :Grapheme_Cluster_Break("5"), :General_Category_1(3), :Bidi_Class("5"), :East_Asian_Width(3), :Numeric_Value_Denominator("4"), :General_Category_2(4), :Jamo_Short_Name("6"), :XID_Continue("1"), :White_Space("1"), :Variation_Selector("1"), :Uppercase("1"), :Unified_Ideograph("1"),
21:45 samcv :Terminal_Punctuation("1"), :Soft_Dotted("1"), :Sentence_Terminal("1"), :Radical("1"), :Quotation_Mark("1"), :Prepended_Concatenation_Mark("1"), :Pattern_White_Space("1"), :Pattern_Syntax("1"), :Other_Uppercase("1"), :Other_Math("1"), :Other_Lowercase("1"), :Other_ID_Start("1"), :Other_ID_Continue("1"), :Other_Grapheme_Extend("1"), :Other_Default_Ignorable_Code_Point("1"), :Other_Alphabetic("1"), :Noncharacter_Code_Point("1"), :NFKD_QC("1"),
21:45 samcv :NFKC_QC("1"), :NFKC_CF("1"), :NFD_QC("1"), :NFC_QC("1"), :Math("1"), :Lowercase("1"), :Logical_Order_Exception("1"), :Join_Control("1"), :Ideographic("1"), :ID_Start("1"), :ID_Continue("1"), :IDS_Trinary_Operator("1"), :IDS_Binary_Operator("1"), :Hyphen("1"), :Hex_Digit("1"), :Grapheme_Link("1"), :Grapheme_Extend("1"), :Grapheme_Base("1"), :Full_Composition_Exclusion("1"), :FC_NFKC("1"), :Extender("1"), :Expands_On_NFKD("1"), :Expands_On_NFKC("1"),
21:45 samcv :Expands_On_NFD("1"), :Expands_On_NFC("1"), :Emoji_Presentation("1"), :Emoji_Modifier_Base("1"), :Emoji_Modifier("1"), :Emoji("1"), :Diacritic("1"), :Deprecated("1"), :Default_Ignorable_Code_Point("1"), :Dash("1"), :Changes_When_Uppercased("1"), :Changes_When_Titlecased("1"), :Changes_When_NFKC_Casefolded("1"), :Changes_When_Lowercased("1"), :Changes_When_Casemapped("1"), :Changes_When_Casefolded("1"), :Cased("1"), :Case_Ignorable("1"),
21:45 brokenchicken whoa
21:45 samcv :Bidi_Mirrored("1"), :Bidi_Control("1"), :Any("1"), :Alphabetic("1"), :ASCII_Hex_Digit("1")]
21:45 samcv woah didn't mean to paste that much :\
21:45 Mithaldu samcv: good job :D
21:46 samcv but that's what it spits back out at me, and i supply it just pairs with keys whatever i want and values which are bitwidth
21:46 brokenchicken Mithaldu: fwiw, the errors sinar saw were found and excluded in star release
21:46 brokenchicken Mithaldu, I forget now, but there may evem be a ticket for that
21:46 Mithaldu brokenchicken: are you certain you mean the ^D / ^Z ones?
21:47 jnthn Mithaldu: https://github.com/MoarVM/MoarVM/issues/519
21:47 Mithaldu jnthn++ <3
21:48 Mithaldu jnthn: i also bumped joshuamy and will report back if he lets me know more details
21:50 samcv m: my @a; my @b = 3; @a.push(@b.pop() orelse die "oh no")
21:50 camelia rakudo-moar f2894d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unable to parse expression in argument list; couldn't find final ')' ␤at <tmp>:1␤------> 3my @a; my @b = 3; @a.push(@b.pop()7⏏5 orelse die "oh no")␤    expecting any of:␤        infix␤       …»
21:50 samcv anybody know why i get this error?
21:50 brokenchicken Mithaldu, as I recall the errors were about readline or something and ^D^Z were broken. I installed latest star and got no errors and ^D worked (not ^Z). I asked sinar for version, he gave me a dev build version, I askdd star release manager about it and he said he had to work around the issue for the release and I told sinar he should use the release version
21:50 brokenchicken That's how I recall it
21:50 Mithaldu brabo: jnthn just repro'd that: https://github.com/MoarVM/MoarVM/issues/519
21:50 Mithaldu erg
21:50 brokenchicken That's on default Windows7 command prompts
21:50 Mithaldu brokenchicken: ^
21:50 Mithaldu please provide details in that bug report?
21:52 Mithaldu brokenchicken: which release manager?
21:52 * jnthn finally found some time to fix https://github.com/jnthn/g​rammar-debugger/issues/13
21:56 robertle is there something crazy slow or special about IO::Socket::INET accept() ??
21:57 jnthn Well, only that at present we implement sync I/O atop of libuv's async I/O, which gives a bit of overhead.
21:57 jnthn But I can't imagine it's all that much
21:57 jnthn We'll likely change that at some point in the not too distance future, though.
21:58 brokenchicken Mithaldu: stmuk_
21:59 robertle ok, I'll do some more digging... I wrote a super silly fully-sync blocking http server, all of 50 lines! of course total nonsense, just fooling around. but it is awfully slow compared to a perl5 equivalent
21:59 Mithaldu brokenchicken: ok, so probably not joshuamy
21:59 robertle and it seems to spend all it's time in accept(), which is kinda fair after all that could be just waiting for a connection. but there are plenty of incoming connections, and as I said a perl5 equivalent is much fater...
22:00 brokenchicken Nope
22:00 jnthn robertle: Hm, oddness.
22:00 jnthn Guess we can perf it etc. also
22:00 * jnthn off to rest
22:00 jnthn 'night, #perl6
22:01 brokenchicken Mithaldu: as for reporting stuff... Just email to rakudobug@perl.org   It's fine if it's just a summary or whatever. A brief ticket is better than no ticket at all.
22:01 brokenchicken night
22:01 Mithaldu brokenchicken: yeah, liz already told me :)
22:01 Mithaldu ciao o/
22:01 brokenchicken \o
22:01 Mithaldu oh wait, you mean jnthn :D
22:01 Mithaldu well
22:01 Mithaldu i'm happy something good came out of that
22:01 Mithaldu brokenchicken, if you can find the ticket again, please let me know
22:03 geekosaur joined #perl6
22:05 kurahaupo joined #perl6
22:07 sufrostico joined #perl6
22:09 Geth ¦ doc/language-section-examples: b729c96505 | Altai-man++ | util/extract-examples.p6
22:09 Geth ¦ doc/language-section-examples: Make extract-examples script recognize `only` token and add an exclude list for Language/ section
22:09 Geth ¦ doc/language-section-examples: review: https://github.com/perl6/doc/commit/b729c96505
22:09 Geth ¦ doc/language-section-examples: 9fc71c30c2 | Altai-man++ | 27 files
22:09 Geth ¦ doc/language-section-examples: First stage of examples reworking in Language/ directory
22:09 Geth ¦ doc/language-section-examples: review: https://github.com/perl6/doc/commit/9fc71c30c2
22:10 dalek Pod-To-HTML/coke/html-test: 0b44eb2 | coke++ | t/09-Html.t:
22:10 dalek Pod-To-HTML/coke/html-test: Add a test for =pod Html
22:10 dalek Pod-To-HTML/coke/html-test:
22:10 dalek Pod-To-HTML/coke/html-test: Issue #23
22:10 dalek Pod-To-HTML/coke/html-test: review: https://github.com/perl6/Po​d-To-HTML/commit/0b44eb2aa4
22:10 yoleaux 30 Jan 2017 21:04Z <[Coke]> dalek: please switch this bot to use Geth.
22:11 [Coke] geth: source?
22:12 [Coke] someone have the instructions for that?
22:12 sena_kun [Coke], what do you want to do?
22:13 [Coke] change the webhook to use geth instead of dalek.
22:13 [Coke] nevermind, googledi t
22:13 sena_kun Anyway I can't help you here. :)
22:14 MasterDuke joined #perl6
22:14 brokenchicken Mithaldu: no, but I found the conversation of me pointing out sinar's tweet and asking about the issue they encountered: https://irclog.perlgeek.de/pe​rl6-dev/2017-01-04#i_13853892
22:14 Geth ¦ Pod-To-HTML/coke/html-test: 0b44eb2aa4 | (Will "Coke" Coleda)++ | t/09-Html.t
22:14 Geth ¦ Pod-To-HTML/coke/html-test: Add a test for =pod Html
22:14 Geth ¦ Pod-To-HTML/coke/html-test:
22:14 Geth ¦ Pod-To-HTML/coke/html-test: Issue #23
22:14 Geth ¦ Pod-To-HTML/coke/html-test: review: https://github.com/perl6/Po​d-To-HTML/commit/0b44eb2aa4
22:15 Mithaldu brokenchicken: that's only about half the issue
22:15 [Coke] .tell dalek update that repo to use Geth instead: Change the webhook to http://geth.perl6.party/?chan=#perl6-dev (or #moarvm for moarvm), Content-type: application/json and "Send me everything."
22:15 yoleaux [Coke]: I'll pass your message to dalek.
22:16 [Coke] would appreciate it if https://github.com/perl6/Pod-To-HTML/pulls/24 got some review.
22:16 brokenchicken heh
22:16 brokenchicken [Coke]: why do you always include question marks with bot commands? :)
22:16 brokenchicken Geth: source
22:16 Geth brokenchicken, Source at https://github.com/perl6/geth To add repo, add an 'application/json' webhook on GitHub pointing it to http://geth.perl6.party/?chan=#perl6 and choose 'Send me everything' for events to send | use `ver URL to commit` to fetch version bump changes
22:17 brokenchicken https://github.com/perl6/Pod-To-HTML/pull/24
22:17 [Coke] brokenchicken: because it's more natural. And all of my bots allow it. :)
22:17 brokenchicken :)
22:18 [Coke] weird, wonder how I botched the s there
22:18 [Coke] danke.
22:18 brokenchicken [Coke]: =begin Html  <-- for me it'd be weird to write it that way. I'd use =begin HTML
22:18 sena_kun [Coke], do you (want to) review my docs PR this time?
22:18 [Coke] brokenchicken: sure, but we already have code that does that, and pod-to-html seems to allow for it (see linked source in linked issue to PR)
22:18 [Coke] sena_kun: URL?
22:19 brokenchicken Geth: source?
22:19 Geth brokenchicken, Source at https://github.com/perl6/geth To add repo, add an 'application/json' webhook on GitHub pointing it to http://geth.perl6.party/?chan=#perl6 and choose 'Send me everything' for events to send | use `ver URL to commit` to fetch version bump changes
22:19 sena_kun [Coke], just a moment, I'm finishing it now...
22:19 brokenchicken geth: source?
22:19 brokenchicken Ahhhh
22:19 [Coke] brokenchicken: But even if you wrote HTML, it'd still not pass it through raw. :|
22:19 [Coke] brokenchicken: :)
22:19 [Coke] sena_kun: will have to do it later this evening.
22:21 pyrimidine joined #perl6
22:22 Geth ¦ doc: Altai-man++ created pull request #1176: Language section examples reworking (part two)
22:22 Geth ¦ doc: review: https://github.com/perl6/doc/pull/1176
22:23 robertle is this interesting?? Spesh: get_osr_deopt_index failed
22:23 Geth ¦ doc/language-section-examples: 19 commits pushed by (Antonio Quinonez)++, (Wenzel P. P. Peppmeyer)++, (Will "Coke" Coleda)++, (Zoffix Znet)++, (Samantha McVey)++, Altai-man++
22:23 Geth ¦ doc/language-section-examples: review: https://github.com/perl6/doc/c​ompare/9fc71c30c2...32b2eb8571
22:25 brokenchicken hehe
22:27 sena_kun [Coke], I've requested your review just now. There are nothing special though, just some preparation work. I've reviewed it twice and checked a look of all changed pages in a browser, so it should be fine.
22:29 sena_kun And we need to un-skip signatures from operators.pod6, since they're working now. But it definetely will be only after some sleep. 'night, #perl6.
22:29 brokenchicken night
22:36 brokenchicken robertle: no idea, but a wild guess is failing to do something is bad :)
22:38 perlpilot looks like spesh had trouble pessimizing something
22:39 robertle this happens only when I do --profile
22:41 robertle anyway, good night...
22:41 brokenchicken night
22:42 Vynce joined #perl6
22:45 girafe joined #perl6
22:49 pyrimidine joined #perl6
22:50 rurban joined #perl6
22:53 brokenchicken Seems both the build for my PR and for the PR from 2 days ago say "build canceled": https://travis-ci.org/Moar​VM/MoarVM/builds/197770188
22:53 brokenchicken no explanation :/
23:02 El_Che brokenchicken: there is a max of 50m runtime on travis
23:05 brokenchicken brabo: yeah, but MoarVM builds in like 20 seconds :/
23:05 El_Che are you using the compiler of the guy that popped in yesterday? ;)
23:05 brokenchicken No.
23:06 brokenchicken El_Che: rakudo builds take time, but MoarVM is fast to build
23:12 gdonald joined #perl6
23:16 stmuk_ with reference to R* Windows linenoise issues this has been mentioned in the Errata at https://perl6.org/downloads/
23:18 stmuk_ I'm not finding the twitter traffic particularly helpful
23:21 pyrimidine joined #perl6
23:25 nemsys joined #perl6
23:27 stmuk_ https://rt.perl.org/Public/​Bug/Display.html?id=128632
23:32 lep-delete joined #perl6
23:34 brokenchicken aww... I was hoping the issue was fixed when I couldn't produce it anymore :()
23:35 brokenchicken Oh wait.
23:35 brokenchicken I think there's a dupe ticket for that
23:35 Geth ¦ perl6.org: 2db7f5bfda | (Steve Mynott)++ | source/downloads/index.html
23:35 Geth ¦ perl6.org: explicity mention Linenoise as problematic on windows
23:35 Geth ¦ perl6.org: review: https://github.com/perl6/p​erl6.org/commit/2db7f5bfda
23:35 brokenchicken Yeah: https://rt.perl.org/Ticket/Displ​ay.html?id=130192#ticket-history
23:36 BenGoldberg joined #perl6
23:37 Mithaldu i still can't imagine how linenoise plays into code that looks like it uses only builtins, but whatever
23:38 Mithaldu it's probably also a good idea to actually include errata in the tarball itself, as that position for that knowledge is absolutely tribal knowledge
23:38 Mithaldu and errata should be date-stamped
23:38 stmuk_ well the problem with that is that generally issues are only reported *after* the release
23:38 brokenchicken Mithaldu: there's logic that mixes in its functionality into REPL: https://github.com/rakudo/rakudo/b​lob/nom/src/core/REPL.pm#L226-L269
23:38 Mithaldu sure, so you make a point release to include the mention of the brokenness
23:39 brokenchicken Seems a lot of effort.
23:39 stmuk_ if you think that's a good idea you produce a point release
23:39 brokenchicken :D
23:40 * brokenchicken doesn't see release notes for 2017.01 in https://github.com/rakudo/st​ar/tree/master/docs/announce
23:40 brokenchicken But what I was gonna suggest is to include the URL to errata page in the announcement in visible page. So if folks encounter issues they'd know where to look first
23:41 Mithaldu brokenchicken: actually that seems like a good compromise
23:41 Mithaldu have the readme mention the place to look for possible issues
23:41 brokenchicken +1
23:42 stmuk_ git grep for November to find the January release ;)
23:42 stmuk_ https://github.com/rakudo/star/blo​b/master/docs/announce/2017.01.md
23:42 stmuk_ PRs welcome!
23:42 brokenchicken Oh, it *is* there, I just misread it as 2016.07 -_-
23:42 brokenchicken I need to take a break from computer :P
23:43 stmuk_ I have thought about removing all pre Xmas announcements
23:43 stmuk_ there are too many
23:43 brokenchicken And I haven't forgotted about adding-back the 'archive' on the downloads page, as I promised. I've just been lazy :}
23:44 stmuk_ you don't seem to have been that lazy to me :)
23:44 stmuk_ anyway I thought the windows linenoise fairly minor compared with the twitter reports of windows roast failures
23:45 stmuk_ which I've never seen myself
23:45 Mithaldu brokenchicken: that REPL code makes me want to refactor that horrid christmas tree with all these unnecessary nodes
23:45 Mithaldu https://github.com/rakudo/star/pull/85
23:46 Mithaldu readme pr done
23:46 Mithaldu oh god, that entire file
23:47 Mithaldu why are there so many if { ...; return } else { ...; } constructs?
23:47 Mithaldu does perl 6 still have postfix if?
23:48 stmuk_ ok I'll merge it even although retrospective accounces don't work in order to make in more likely to go into the next announce
23:48 Mithaldu stmuk_: if you have better ideas, i'm not married to it :)
23:48 stmuk_ no that's a useful addition .. thanks
23:49 Mithaldu cheers
23:50 Mithaldu stmuk_: i'm also confused what you mean with the announce, given that the edit was to readme
23:51 stmuk_ oh sorry you are right I'm tired
23:51 Mithaldu :)
23:56 stmuk_ anyway sleep and then FOSDEM!
23:58 Mithaldu stmuk_: thanks, and enjoy :)
23:59 Actualeyes joined #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo