Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-12-14

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:00 AlexDaniel not sure how would that make a difference
00:00 samcv idk for my bot i just wrote to a file then ran a command line program on that file
00:00 cdg joined #perl6
00:00 samcv seems simpler
00:01 AlexDaniel yea but I guess your command line program wasn't a second piece of code its author wrote :)
00:01 samcv yeah
00:02 dalek perl6-most-wanted: 2c33138 | (Paweł Szulc)++ | most-wanted/modules.md:
00:02 dalek perl6-most-wanted: Removed UNIX::Daemonize
00:02 dalek perl6-most-wanted:
00:02 dalek perl6-most-wanted: Can be found at https://github.com/hipek8/p6-UNIX-Daemonize
00:02 dalek perl6-most-wanted: review: https://github.com/perl6/perl6​-most-wanted/commit/2c33138697
00:04 AlexDaniel u: diamond
00:04 unicodable6 AlexDaniel, U+20DF COMBINING ENCLOSING DIAMOND [Me] (◌⃟)
00:04 unicodable6 AlexDaniel, U+22C4 DIAMOND OPERATOR [Sm] (⋄)
00:04 unicodable6 AlexDaniel, U+233A APL FUNCTIONAL SYMBOL QUAD DIAMOND [So] (⌺)
00:04 unicodable6 AlexDaniel, https://gist.github.com/6110​d9652997c176d304b404cd997822
00:05 phatbot And it's not really my fault actually... It JSON-encodes stuff and ships it with HTTP::Tinyish (so `curl`)
00:06 AlexDaniel u: 🔷🔶
00:06 unicodable6 AlexDaniel, U+1F537 LARGE BLUE DIAMOND [So] (🔷)
00:06 unicodable6 AlexDaniel, U+1F536 LARGE ORANGE DIAMOND [So] (🔶)
00:06 AlexDaniel blue and orange???
00:06 samcv u: Lo
00:06 unicodable6 samcv, U+00AA FEMININE ORDINAL INDICATOR [Lo] (ª)
00:06 unicodable6 samcv, U+00BA MASCULINE ORDINAL INDICATOR [Lo] (º)
00:06 unicodable6 samcv, U+01BB LATIN LETTER TWO WITH STROKE [Lo] (ƻ)
00:06 AlexDaniel is there a “color” property? :-/
00:06 samcv unicode property?
00:06 samcv no
00:07 AlexDaniel samcv: I do not think this is going to work :|
00:07 samcv there are 108 properties and that is not one of them
00:07 * samcv double checks just in case
00:07 samcv yeah no
00:08 AlexDaniel I'm not sure what happens exactly, but something just eats a lot amount of memory at some point
00:09 phatbot Are you using any regexes?
00:10 samcv it's probably something wrong with HTTP::Tinyish
00:10 phatbot it basically just shells out to `curl`
00:10 AlexDaniel phatbot: I don't think so
00:10 samcv oh does it?
00:10 phatbot Yup
00:11 phatbot Doesn't even work if curl is not installed
00:11 phatbot AlexDaniel: read the sauce, Luke :)
00:11 phatbot https://github.com/skaji/perl6-HTTP-Tinyish​/blob/master/lib/HTTP/Tinyish/Curl.pm6#L23
00:11 phatbot https://github.com/skaji/perl6-HTTP-Tinyish​/blob/master/lib/HTTP/Tinyish/Curl.pm6#L44
00:12 AlexDaniel phatbot: I mean, I'm not using any regexes
00:13 phatbot Ah
00:13 phatbot I forgot I asked that :)
00:13 phatbot But I saw buggable nom ram due to a regex
00:14 samcv evalable6, say "\0"
00:14 evalable6 samcv, rakudo-moar 7b84adc: OUTPUT«␀»
00:14 samcv evalable6, for ^1000 { say "\0" }
00:14 evalable6 samcv, rakudo-moar 7b84adc: OUTPUT«␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤​␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀​␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤␀␤…»
00:14 evalable6 samcv, Full output: https://gist.github.com/
00:14 AlexDaniel samcv: so the question is: what should be done with control characters in gists?
00:14 phatbot hehe
00:14 samcv it's probably just the null byte doing it
00:15 samcv just remove it
00:15 samcv before gisting
00:15 AlexDaniel remove or replace with ␦ ?
00:15 samcv well... null bytes are against RFC for IRC protocol
00:15 samcv you only need to remove the null byte
00:15 AlexDaniel hm
00:15 samcv just replace with \0
00:15 AlexDaniel no, there's a cool character for it
00:16 samcv because NULL is a unicode property name
00:16 samcv u: null
00:16 AlexDaniel :|
00:16 samcv but
00:16 phatbot .u ␀
00:16 samcv \0 is not any unicode property
00:16 yoleaux U+2400 SYMBOL FOR NULL [So] (␀)
00:16 samcv while that is
00:16 samcv so \0 is not found anywhere in it
00:16 unicodable6 joined #perl6
00:16 AlexDaniel u: null
00:16 unicodable6 AlexDaniel, U+0000 NULL [Cc] (control character)
00:16 unicodable6 AlexDaniel, U+2400 SYMBOL FOR NULL [So] (␀)
00:16 unicodable6 AlexDaniel, U+1D159 MUSICAL SYMBOL NULL NOTEHEAD [So] (𝅙)
00:17 samcv so just make it \0
00:17 AlexDaniel why not ␀ ??
00:17 samcv because that's a different codepoint
00:17 AlexDaniel \0 is two different codepoints
00:17 samcv yes
00:17 samcv so you can tell it's not the literal character
00:17 samcv because it doesn't match any unicode name or property
00:18 AlexDaniel well, then how would you be able to tell that \0 are not just literal characters
00:18 AlexDaniel nah, I'll go with ␀ I think
00:18 samcv because there's no \0 unicode character? lol
00:19 samcv i would have said NULL but that is a unicode name
00:20 araujo joined #perl6
00:22 evalable6 joined #perl6
00:22 AlexDaniel evalable6: .chr.say for ^256
00:22 evalable6 AlexDaniel, rakudo-moar 003e654: OUTPUT«Cannot test 003e654dd6614f101c36151f290a95d4fa76cd0b (Commit exists, but a perl6 executable could not be built for it)»
00:22 AlexDaniel :O
00:22 AlexDaniel rly?
00:23 phatbot I just pushed it. Still building it?
00:23 phatbot Just = 9m ago
00:23 samcv AlexDaniel, http://lornajane.net/posts/20​12/posting-raw-data-with-curl
00:24 AlexDaniel phatbot: no, it does not work that way. It does not know about new builds before they are actually built
00:24 samcv so yeah it's not working because you are sending the stream to the command that way, sending it with a file would not have the problem
00:24 AlexDaniel phatbot: I'll delete it to give it another go, let's see…
00:24 AlexDaniel samcv: can you open a bug report for HTTP::Tinyish ?
00:24 samcv sure
00:27 samcv i think i can fix it tho
00:27 samcv maybe
00:27 phatbot Quick read through code tells me it's already using a file: https://github.com/skaji/perl6-HTTP-Tinyish​/blob/master/lib/HTTP/Tinyish/Curl.pm6#L121
00:28 AlexDaniel evalable6: .chr.say for ^256
00:28 evalable6 AlexDaniel, rakudo-moar 003e654: OUTPUT«␀␊␁␊␂␊␃␊␄␊␅␊␆␊␇␊␈␊␉␊␊␊␋␊␌␊␦␎​␊␏␊␐␊␑␊␒␊␓␊␔␊␕␊␖␊␗␊␘␊␙␊␚␊␛␊␜␊␝␊␞␊␟␊ ␊!␊"␊#␊$␊%␊&␊'␊(␊)␊*␊+␊,␊-␊.␊…»
00:28 evalable6 AlexDaniel, Full output: https://gist.github.com/
00:28 samcv oh?
00:28 phatbot The original author is pretty skilled in programming, so I doubt there'd be such an obvious issue.
00:29 samcv may need the --binary-data
00:29 samcv command line option for curl
00:29 samcv i think that's the issue
00:29 samcv it's sending it as text
00:29 phatbot Right now it uses --data-binary is that the same?
00:29 samcv err i meant --data-binary
00:29 samcv it does that already hm
00:30 phatbot evalable6: source
00:30 evalable6 phatbot, https://github.com/perl6/whateverable
00:31 AlexDaniel ummm
00:31 samcv well then maybe without that would make it work
00:31 _28_ria joined #perl6
00:31 AlexDaniel m: say ‘abc’.trans(‘a’ => ‘X’, ‘a’ => ‘Z’, ‘c’ => ‘C’)
00:31 camelia rakudo-moar 003e65: OUTPUT«ZbC␤»
00:31 AlexDaniel m: say ‘abc’.trans(‘a’ => ‘X’, ‘a’ => ‘Z’, /c/ => ‘C’)
00:31 camelia rakudo-moar 003e65: OUTPUT«XbC␤»
00:32 AlexDaniel should I expect any order?
00:32 AlexDaniel commit: all say ‘abc’.trans(‘a’ => ‘X’, ‘a’ => ‘Z’, ‘c’ => ‘C’)
00:32 AlexDaniel commit: all say ‘abc’.trans(‘a’ => ‘X’, ‘a’ => ‘Z’, /c/ => ‘C’)
00:33 committable6 AlexDaniel, https://gist.github.com/291e​40850df56c95e2100ec2db9fab81
00:33 phatbot s: ‘abc’, 'trans', \(‘a’ => ‘X’, ‘a’ => ‘Z’, ‘c’ => ‘C’)
00:33 SourceBaby phatbot, Sauce is at https://github.com/rakudo/rakudo/b​lob/003e654/src/core/Str.pm#L2361
00:33 committable6 AlexDaniel, https://gist.github.com/b3bd​4d235f1d897f56923824707c2e45
00:34 AlexDaniel bisect: say ‘abc’.trans(‘a’ => ‘X’, ‘a’ => ‘Z’, ‘c’ => ‘C’)
00:34 bisectable6 AlexDaniel, Bisecting by output (old=2015.12 new=003e654) because on both starting points the exit code is 0
00:34 bisectable6 AlexDaniel, bisect log: https://gist.github.com/fe87​e642d0332a578bf66f2fee760a72
00:34 bisectable6 AlexDaniel, (2016-02-19) https://github.com/rakudo/rakudo/commit/​cce7ca3533ead78af8e587b70f9d0351141775f6
00:34 samcv err or maybe
00:34 TEttinger joined #perl6
00:34 samcv it could be github's things don't allow post's with null bytes
00:34 AlexDaniel and yet another optimization that changed the behavior a lil bit
00:35 phatbot Never happy! :)
00:35 AlexDaniel mmm wait, that's the wrong commit
00:35 AlexDaniel commit: cce7ca353^,cce7ca353 say ‘abc’.trans(‘a’ => ‘X’, ‘a’ => ‘Z’, ‘c’ => ‘C’)
00:35 committable6 AlexDaniel, ¦«cce7ca353^»: XbC␤¦«cce7ca3»: ZbC
00:35 AlexDaniel ah no, that's the right one
00:36 AlexDaniel so, previously the ones on the left had more priority, kind of
00:36 samcv ok at least the 'gist' command line program made a gist with a null byte
00:38 phatbot it looks like a problem in JSON::Fast
00:38 phatbot it's too ... fast
00:38 phatbot star: use JSON::Fast; dd to-json "\0"
00:38 camelia star-m 2016.10: OUTPUT«"\"\0\""␤»
00:39 samcv oo
00:39 phatbot star: use JSON::Fast; print to-json "\0"
00:39 camelia star-m 2016.10: OUTPUT«"␀"»
00:39 phatbot star: use JSON::Tiny; print to-json "\0"
00:39 camelia star-m 2016.10: OUTPUT«"\u0000"»
00:39 phatbot star: print Rakudo::Internals.to-json: "\0"
00:39 camelia star-m 2016.10: OUTPUT«No such method 'to-json' for invocant of type 'Rakudo::Internals'␤  in block <unit> at <tmp> line 1␤␤»
00:39 AlexDaniel m: say “\0”
00:39 camelia rakudo-moar 003e65: OUTPUT«␀␤»
00:39 phatbot star: print to-json: "\0"
00:39 camelia star-m 2016.10: OUTPUT«Cannot resolve caller to-json(...); none of these signatures match:␤    (Version:D $v, :$indent = 0, :$first = 0)␤    (Real:D $d, :$indent = 0, :$first = 0)␤    (Bool:D $d, :$indent = 0, :$first = 0)␤    (Str:D $d, :$indent = 0, :$first = 0)␤    (Pos…»
00:39 phatbot star: print to-json "\0"
00:39 camelia star-m 2016.10: OUTPUT«"\u0000"»
00:41 phatbot u: t p
00:41 unicodable6 phatbot, U+0010 DATA LINK ESCAPE [Cc] (control character)
00:41 unicodable6 phatbot, U+001D INFORMATION SEPARATOR THREE [Cc] (control character)
00:41 unicodable6 phatbot, U+001C INFORMATION SEPARATOR FOUR [Cc] (control character)
00:41 unicodable6 phatbot, https://gist.github.com/b03e​0ff9009d6b08d1de95e431bd0ed9
00:41 phatbot unicodable6: you stupi
00:41 unicodable6 phatbot, Found nothing!
00:41 phatbot .u t p
00:41 yoleaux U+01AB LATIN SMALL LETTER T WITH PALATAL HOOK [Ll] (ƫ)
00:41 yoleaux U+061E ARABIC TRIPLE DOT PUNCTUATION MARK [Po] (؞)
00:41 yoleaux U+0752 ARABIC LETTER BEH WITH THREE DOTS POINTING UPWARDS BELOW [Lo] (ݒ)
00:41 phatbot 0.o
00:42 samcv All Unicode characters may be placed within the
00:42 samcv quotation marks, except for the characters that must be escaped:
00:42 samcv quotation mark, reverse solidus, and the control characters (U+0000
00:42 samcv through U+001F).
00:42 phatbot Well... to me that looks like t separated by space followed by p
00:42 AlexDaniel yea? So what do you want to do with it?
00:42 phatbot And there was a nul char before p
00:42 AlexDaniel null character on IRC???
00:42 samcv that's not allowed....
00:42 samcv that's the only not allowed character on irc
00:42 AlexDaniel commit: all my %x = ‘a’ => 42, ‘a’ => 69; say %x
00:43 committable6 AlexDaniel, https://gist.github.com/e69f​083846eb7546a2076e412219c900
00:43 AlexDaniel is this something I can rely on?
00:44 samcv which AlexDaniel ?
00:44 AlexDaniel … not sure how to find a test for that in roast
00:44 samcv about the null byte or something else
00:44 samcv oh
00:44 samcv that commit
00:44 samcv thing
00:44 dj_goku joined #perl6
00:44 phatbot grap
00:44 phatbot note to self: git commit after git adding before you git reset --hard ~_~
00:45 samcv :(
00:45 phatbot AlexDaniel: fix to Pastebin::Gist pushed
00:45 AlexDaniel phatbot: and what is this fix going to do?
00:45 AlexDaniel ah, I can see myself…
00:46 samcv i made an issue for json fast
00:46 AlexDaniel :-|
00:46 AlexDaniel not sure I like this fix, but yea, okay
00:46 phatbot AlexDaniel: create a gist properly instead of croaking?
00:46 samcv what is the fix
00:47 phatbot I'm not gonna mangle user's data.
00:47 samcv oh ok
00:47 phatbot samcv: swap broken JSON encoder to non-broken
00:47 samcv i mean the fix is to have json fast replace json the rigth chars
00:47 phatbot Surival of the fittest :)
00:47 samcv it only replaces one of the 15 disallowed or whatever
00:48 samcv though the other 14 are not very common
00:48 samcv err more than that. but
00:54 samcv u: { .unimatch('Emoji') }
00:54 unicodable6 samcv, Found nothing!
00:55 samcv m: "🐧".uniprop('sc')
00:55 camelia rakudo-moar 003e65: ( no output )
00:55 samcv m: "🐧".uniprop('sc').say
00:55 camelia rakudo-moar 003e65: OUTPUT«Common␤»
00:56 samcv so we don't support the Emoji boolean either
00:57 samcv should i open moarvm bugs on github or RT?
00:58 phatbot samcv: I believe github.
00:58 samcv kk
00:59 aborazmeh joined #perl6
00:59 aborazmeh joined #perl6
01:03 AlexDaniel phatbot: yeah, much better -_-
01:03 AlexDaniel it throw
01:04 AlexDaniel Input (4333 characters) is not a valid JSON string  in sub from-json at ………… (JSON::Tiny) line 59
01:04 samcv guess there were 10 more properties than i knew about
01:04 AlexDaniel throws*
01:04 samcv so at least 118 unicode properties
01:05 samcv AlexDaniel, wait but you are putting the gist inside JSON data structure right?
01:05 samcv but you are saying it throws if you parse the bad json
01:05 AlexDaniel samcv: that's what Pastebin::Gist does, I guess
01:06 samcv but it shouldn't throw if you try and encode it right
01:06 phatbot AlexDaniel: haha
01:06 kurahaupo joined #perl6
01:06 phatbot star: use JSON::Tiny; say to-json "x"x4333
01:06 camelia star-m 2016.10: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3use JSON::Tiny; say to-json "x"7⏏5x4333␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statem…»
01:07 phatbot star: use JSON::Tiny; say to-json "x" x 4333
01:07 camelia star-m 2016.10: OUTPUT«"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx…»
01:07 phatbot Oh, FROM json :o
01:07 phatbot AlexDaniel: what did you attempt to paste?
01:07 AlexDaniel phatbot: .chr.say for ^256
01:08 Ven joined #perl6
01:11 cyphase joined #perl6
01:13 astj joined #perl6
01:13 timotimo hey phatbot
01:13 timotimo if you already "git add"ed things, you can use "git fsck --lost-found" or what's it called to get your code back
01:13 phatbot oh, neat
01:16 phatbot star: use LWP::Simple; use JSON::Fast; say (from-json LWP::Simple.get: 'http://temp.perl6.party/Broken.json')<id>
01:16 camelia star-m 2016.10: OUTPUT«93b46259b3be867c36da3b6318940bc8␤»
01:16 canopus joined #perl6
01:16 phatbot haha
01:16 phatbot AlexDaniel: well, JSON::Tiny can encode this stuff, but only JSON::Fast can decode it :P
01:16 AlexDaniel /o\
01:16 phatbot star: use LWP::Simple; use JSON::Tiny; say (from-json LWP::Simple.get: 'http://temp.perl6.party/Broken.json')<id>
01:16 camelia star-m 2016.10: OUTPUT«Input (4071 characters) is not a valid JSON string␤  in sub from-json at /home/camelia/star-2016.10/share/perl6/site/so​urces/9B467EEF9267A777BB53BAA2F19BE2C9D756BEED (JSON::Tiny) line 59␤  in block <unit> at <tmp> line 1␤␤»
01:17 BenGoldberg joined #perl6
01:17 phatbot And Perl 5's JSON::Meth can decode it too, so there's ain't nothing wrong with that json
01:18 phatbot I'm glad tho. It makes it a good argument to dissuade people from poking in Rakudo's internals to use built-in JSON encoder to avoid a module dep :P
01:20 samcv build in json encoder?
01:20 samcv oh json meth is a core module?
01:20 phatbot samcv: JSON::Meth is my Perl 5 JSON module.
01:21 phatbot samcv: we do have a built-in encoder/decoder, but that's just for META files.
01:21 samcv ah k
01:21 phatbot hm... OTOH we allow some free-form text content... I bet we choke on something then :/
01:21 BenGoldberg joined #perl6
01:22 samcv imo from::json should warn but not throw for json that just has errors
01:22 samcv i mean it can still be decoded
01:22 samcv with control chararcters in there. even though you are not supposed to do that
01:22 phatbot it uses a grammar, so that's just grammar failing
01:22 samcv ah
01:22 phatbot m: RAKUDO_NO_DEPRECATIONS=0; from-json '"x"'
01:22 camelia rakudo-moar a5dc98: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared name:␤    RAKUDO_NO_DEPRECATIONS used at line 1␤␤»
01:23 phatbot m: %*ENV<RAKUDO_NO_DEPRECATIONS>=0; from-json '"x"'
01:23 camelia rakudo-moar a5dc98: OUTPUT«Invalid JSON: "x"␤  in block <unit> at <tmp> line 1␤␤Saw 1 occurrence of deprecated code.␤=======================================​=========================================␤Sub from-json (from GLOBAL) seen at:␤  <tmp>, line 1␤Please use JSON::F…»
01:23 phatbot star: use LWP::Simple; use JSON::Tiny; say (from-json LWP::Simple.get: 'http://temp.perl6.party/Broken.json')<id>
01:23 camelia star-m 2016.10: OUTPUT«Input (4071 characters) is not a valid JSON string␤  in sub from-json at /home/camelia/star-2016.10/share/perl6/site/so​urces/9B467EEF9267A777BB53BAA2F19BE2C9D756BEED (JSON::Tiny) line 59␤  in block <unit> at <tmp> line 1␤␤»
01:23 phatbot star: use LWP::Simple; say (from-json LWP::Simple.get: 'http://temp.perl6.party/Broken.json')<id>
01:23 camelia star-m 2016.10: OUTPUT«Invalid JSON: {"url":"https://api.github.com/gists/93​b46259b3be867c36da3b6318940bc8","forks_url":"https://api.github.com/gists/93b46​259b3be867c36da3b6318940bc8/forks","commits_url":"https://api.github.com/gists/93b462​59b3be867c36da3b6318940bc8/commits","id":"9…»
01:26 samcv m: say Rakudo::Internals::JSON.to-json('hi')
01:26 camelia rakudo-moar a5dc98: OUTPUT«"hi"␤»
01:26 samcv lol
01:27 samcv nifty
01:27 samcv m: say Rakudo::Internals::JSON.to-json("')
01:27 camelia rakudo-moar a5dc98: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unable to parse expression in double quotes; couldn't find final '"' ␤at <tmp>:1␤------> 3say Rakudo::Internals::JSON.to-json("')7⏏5<EOL>␤    expecting any of:␤        argument list␤        d…»
01:27 samcv m: say Rakudo::Internals::JSON.to-json("\0")
01:27 camelia rakudo-moar a5dc98: OUTPUT«"\u0000"␤»
01:28 tailgate how do I sort the keys of bag by how many times they appear?
01:28 phatbot tailgate: .sort: *.value ?
01:29 phatbot it may be .sort: :by{ .value }
01:29 phatbot m: bag(<a a a b c c>).sort.say
01:29 camelia rakudo-moar a5dc98: OUTPUT«(a => 3 b => 1 c => 2)␤»
01:29 phatbot m: bag(<a a a b c c c c>).sort.say
01:29 camelia rakudo-moar a5dc98: OUTPUT«(a => 3 b => 1 c => 4)␤»
01:29 phatbot m: bag(<a a a b c c c c>).sort(*.value).say
01:29 camelia rakudo-moar a5dc98: OUTPUT«(b => 1 a => 3 c => 4)␤»
01:29 phatbot m: bag(<a a a b c c c c>).sort(-*.value).say
01:29 camelia rakudo-moar a5dc98: OUTPUT«(c => 4 a => 3 b => 1)␤»
01:29 phatbot tailgate: ^
01:29 tailgate thanks
01:31 SmokeMachine nine: on case of ToUse Use and main, the INIT block worked... trying on Test::Fuzz...
01:34 SmokeMachine :(
01:35 samcv this is a nice site http://unicode.org/cldr/utility/properties.jsp i just found this section of the unicode site today
01:35 samcv sadly it's not really as easy to find as it should be
01:35 samcv writing these uniprop tests is now 15x easier
01:35 kalkin-_ left #perl6
01:36 kalkin-_ joined #perl6
01:36 kalkin- joined #perl6
01:37 kalkin- When i do zef install Task::Star it results in Failed to find dependencies: nqp
01:39 kalkin- Hmm looks like a simple zef update solved this issue o_O
01:44 SmokeMachine nine: I rewrote that example to be loser to my real problem... https://gist.github.com/FCO/8b​b0f2459b294af3930ea0731e71f10e
01:46 samcv what http://unicode.org/consort​ium/adopt-a-character.html
01:47 samcv "
01:47 samcv Oakland A’s became the official sponsor of the baseball emoji today…"
01:47 samcv wtf am i reading
01:47 samcv i would say this was BS except it's on the unicode.org website
01:47 AlexDaniel samcv: wtf is this
01:47 samcv ^
01:48 samcv http://unicode.org/consorti​um/adopted-characters.html
01:48 samcv goddamit jason jenkins
01:48 samcv sponsoring poop emoji. srsly wtf
01:49 samcv Zoffix Znet (for Perl 6 community)
01:51 AlexDaniel m: say 0x130BA.chr
01:51 camelia rakudo-moar a5dc98: OUTPUT«𓂺␤»
01:51 AlexDaniel m: say 0x130BA.uniname
01:51 camelia rakudo-moar a5dc98: OUTPUT«EGYPTIAN HIEROGLYPH D053␤»
01:51 samcv u: U+FFFD
01:51 unicodable6 samcv, U+FFFD REPLACEMENT CHARACTER [So] (�)
01:51 samcv what
01:51 samcv somebody sponsored that one
01:52 samcv i think it's literally supposed to be a box with a question mark
01:52 samcv Each adoption is permanent.
01:52 AlexDaniel samcv: I see no null byte there
01:52 samcv i know
01:53 samcv u: 1F98B.uniprop('Sponsor').say
01:53 unicodable6 samcv, U+0031 DIGIT ONE [Nd] (1)
01:53 unicodable6 samcv, U+0046 LATIN CAPITAL LETTER F [Lu] (F)
01:53 unicodable6 samcv, U+0039 DIGIT NINE [Nd] (9)
01:53 unicodable6 samcv, https://gist.github.com/595c​c673169c862bc6f3b1bf75266388
01:53 samcv m: 1F98B.uniprop('Sponsor').say
01:53 camelia rakudo-moar a5dc98: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Confused␤at <tmp>:1␤------> 17⏏5F98B.uniprop('Sponsor').say␤    expecting any of:␤        whitespace␤»
01:53 samcv well wasn't gonna work anyway
01:53 samcv but
02:01 zilti joined #perl6
02:04 kalkin-_ joined #perl6
02:08 chris2 joined #perl6
02:09 tailgate what is the perl6 way to say "Strings that DO NOT match this regex"
02:11 itcharlie_linux joined #perl6
02:12 samcv !~~
02:12 samcv All character adoptions are permanent. Adoption of a specific character at the limited gold and silver levels is on a first-come, first-served basis.
02:13 samcv 1000 dollars and perl 6 could be the only one with a butterfly emoji
02:13 AlexDaniel tailgate: what are you actually trying to do?
02:14 zilti1 joined #perl6
02:15 samcv u: 🈚
02:15 unicodable6 samcv, U+1F21A SQUARED CJK UNIFIED IDEOGRAPH-7121 [So] (🈚)
02:15 samcv :(
02:15 samcv m: "🈚".uniname.say
02:15 camelia rakudo-moar a5dc98: OUTPUT«SQUARED CJK UNIFIED IDEOGRAPH-7121␤»
02:15 samcv oh my internet lagged
02:15 samcv that's not what it's called tho
02:16 samcv but i guess that sorta makes sense because it doesn't use any of the emoji data files
02:17 samcv it's called the Japanese Q[“free of charge” button]
02:17 samcv er
02:17 samcv Q[Japanese “free of charge” button] fancy quotes not added by me
02:18 samcv also did you know that the # sign is an emoji?
02:18 samcv u: ⏏️
02:18 unicodable6 samcv, U+23CF EJECT SYMBOL [So] (⏏)
02:18 unicodable6 samcv, U+FE0F VARIATION SELECTOR-16 [Mn] (◌️)
02:19 samcv well it gets that name correct
02:20 samcv its emoji name is 'eject button' though i think all the emoji names have lowercase except for the ones that don't
02:20 samcv err have only their normal name
02:21 samcv http://www.unicode.org/Publi​c/emoji/5.0//emoji-data.txt
02:21 zilti2 joined #perl6
02:25 zilti3 joined #perl6
02:29 zilti4 joined #perl6
02:33 [particle] joined #perl6
02:37 zilti joined #perl6
02:39 [particle] joined #perl6
02:55 zilti joined #perl6
03:06 rburkholder joined #perl6
03:06 SmokeMachine some one could give me some feedback of my second draft of perl6 advent calendar post? It's the "Generative Test" draft...
03:09 noganex joined #perl6
03:09 MasterDuke SmokeMachine: link?
03:10 itcharlie_linux joined #perl6
03:12 SmokeMachine MasterDuke: https://perl6advent.wordpress.com/?p=5676
03:13 MasterDuke i don't have access to it there, but if you put it somewhere else i'll take a look
03:15 SmokeMachine MasterDuke: 1 sec!
03:16 SmokeMachine MasterDuke: https://gist.github.com/FCO/e9​c9815a059919b624ca3a0d73e10c77
03:19 MasterDuke https://gist.github.com/FCO/e9c9815a059919​b624ca3a0d73e10c77#file-gistfile1-txt-L27 "Looks that it do not accept Strs" should probably be "Looks like it does not accept Strs"
03:20 SmokeMachine MasterDuke: thanks!
03:21 MasterDuke "I didn't think every possibility of arguments." should probably be "I didn't think of every possibility for arguments."
03:21 SmokeMachine MasterDuke: thanks again!
03:23 MasterDuke "giving it (100, by default) entry data" i'd probably replace "entry data" with "different arguments"
03:24 SmokeMachine MasterDuke: changed! :)
03:24 kalkin-_ m: say ' '...'~'; say(<foo>, ' '...'~', <bar>);
03:24 camelia rakudo-moar a5dc98: OUTPUT«(  ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ 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 [ \ ] ^ _ ` 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 { | } ~)␤(foo                                                          …»
03:25 kalkin-_ m: say(<foo>, ' '...'~', <bar>);
03:25 camelia rakudo-moar a5dc98: OUTPUT«(foo                                                                                                                                                                                                       ...)␤»
03:25 MasterDuke "To test that our function, its simple like doing this:" might be better as "To test our function, all that's required is:"
03:25 kalkin-_ why? is the lsit constructed so weirdly?
03:25 kalkin-_ is this is a bug or a misunderstanding on my side
03:26 MasterDuke "What that means?" should be "What does that mean?"
03:26 SmokeMachine MasterDuke: Great! Thanks!
03:26 kalkin-_ m: my @a = <foo>, ' '...'~', <bar>; # this will hang
03:27 camelia rakudo-moar a5dc98: OUTPUT«(timeout)»
03:27 MasterDuke "And $a and $b should have a types." could probably just be "$a and $b should have types."
03:27 SmokeMachine MasterDuke: I'm sorry about my terrible english...
03:28 MasterDuke SmokeMachine: no worries, it's perfectly understandable
03:28 pyrimidine joined #perl6
03:28 itcharlie_linux Hello I want to update the  prerequisites documentation for Rakudo Perl ( http://rakudo.org/how-to-get-rakudo/#Install​ing-Rakudo-Star-Source-Prerequisites-Debian )  on Ubuntu to include libssl-dev as one of the packages to install.  $ panda install Task::Star will fail if libssl-dev is not installed.  Anyone here can do that or know where should I go?
03:28 kalkin-_ m: my @a = <foo>, 'a'...'z', <bar>; say @a; # this works flawlessly
03:28 camelia rakudo-moar a5dc98: OUTPUT«[foo 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 bar]␤»
03:29 SmokeMachine MasterDuke: :)
03:29 MasterDuke "isn't on perl6 ecosystem yet." to "isn't in the perl6 ecosystem yet."
03:30 SmokeMachine MasterDuke: Corrected!
03:31 MasterDuke good post, hope Test::Fuzz makes it into the wild soon
03:31 SmokeMachine MasterDuke: thank you! :) I think it can be very helpful...
03:33 SmokeMachine MasterDuke: any other advice? should I explain more anything? or less?
03:35 yeltzooo joined #perl6
03:36 tbrowder i need to use a p5 excel xlsx reader for a p6 prog. any suggestions for easiest to use and problem free with inline perl5?
03:38 MasterDuke itcharlie_linux: you might try contacting stmuk, phatbot, or moritz, they could probably point you to where the code for rakudo.org is
03:38 itcharlie_linux thank you MasterDuke
03:41 MasterDuke SmokeMachine: "If you read carefully the function" works, but "If you carefully read the function" is a little more natural
03:41 seatek joined #perl6
03:42 SmokeMachine MasterDuke: thanks (that was my first try... but I changed... :( )
03:43 MasterDuke oh, and "There's my incredible sum function:". again it work, but "Here's my incredible sum function:" is a little more natural
03:44 SmokeMachine MasterDuke: Thank you again!
03:52 MasterDuke SmokeMachine: i think you'd be fine with the post as is, but i'm also slightly curious about how the generators work. even if you don't feel like explaining them, a link to the repo would let someone explore the code
03:53 SmokeMachine MasterDuke: great idea!
03:53 MasterDuke kalkin-_: the hanging definitely seems like a bug, mind submitting a report?
04:09 AndyBotwin joined #perl6
04:13 leedo_ joined #perl6
04:17 AlexDaniel download badge????
04:21 itcharlie_linux left #perl6
04:35 SmokeMachine MasterDuke: I'll explain about generators... I think that was a good idea!
04:35 SmokeMachine MasterDuke: but, if you are curious (before I write it) you can take a look if you want: https://github.com/FCO/Test-Fuzz
04:36 SmokeMachine MasterDuke: the "generator engine" is here: https://github.com/FCO/Test-Fuzz/blo​b/master/lib/Test/Fuzz/Generator.pm6
04:39 SmokeMachine MasterDuke: Today I only have generators for Int, UInt and Str... but if you use any type, the Test::Fuzz will try to discover whats the best generators to use...
04:40 SmokeMachine MasterDuke: for example: if you use a subset Prime of Int where {.defined or .is-prime}... it will use the Int generator and grep Prime
04:41 SmokeMachine MasterDuke: and if you use Any, it will try to discovery every generator that's a subtype of Any (actually all 3 (Int, UInt and Str))
04:41 aborazmeh joined #perl6
04:41 aborazmeh joined #perl6
04:43 SmokeMachine MasterDuke: and if you don't specify the smiley :D it will try to find every type objects that's a subtype of your type.
04:43 SmokeMachine MasterDuke: Im sorry about the flood...
04:46 MasterDuke SmokeMachine: cool, could pretty much put that in as a paragraph
04:48 SmokeMachine MasterDuke: :) great idea! Saving it to polish it tomorrow...
04:49 SmokeMachine MasterDuke: last question (and thank you very much!) Did you like the Test::Fuzz? Do you think its useful?
04:55 labster joined #perl6
04:55 SmokeMachine good night #perl6!
04:56 BenGoldberg To all persons who live 🌎, good night, and to persons who live 🌍, good morning.
05:02 _28_ria joined #perl6
05:21 leego joined #perl6
05:24 xtreak joined #perl6
05:44 samcv u: EARTH GLOBE
05:45 unicodable6 samcv, U+1F30D EARTH GLOBE EUROPE-AFRICA [So] (🌍)
05:45 unicodable6 samcv, U+1F30E EARTH GLOBE AMERICAS [So] (🌎)
05:45 unicodable6 samcv, U+1F30F EARTH GLOBE ASIA-AUSTRALIA [So] (🌏)
05:46 samcv trying to think how i can add those three to my compose key
05:46 samcv i mean which shortcuts to use
05:48 Cabanossi joined #perl6
05:49 geekosaur joined #perl6
05:53 pyrimidi_ joined #perl6
05:59 geekosaur joined #perl6
06:00 rurban joined #perl6
06:16 domidumont joined #perl6
06:27 mawkish_ joined #perl6
06:33 geraud joined #perl6
06:33 samcv m: '('.uniprop('Alpha').say
06:33 camelia rakudo-moar a5dc98: OUTPUT«False␤»
06:34 samcv m: '('.uniprop('Digit').say
06:34 camelia rakudo-moar a5dc98: OUTPUT«0␤»
06:34 samcv m: '('.uniprop('Number').say
06:34 camelia rakudo-moar a5dc98: OUTPUT«0␤»
06:34 samcv not sure what onimgura's \p{Digit} does but it allows parens..
06:36 TimToady joined #perl6
06:40 Tonik joined #perl6
06:41 xtreak joined #perl6
06:42 samcv wait nm i think i just accidently used a - in a char class...
06:42 samcv good thing i'm adding tests for this
06:45 bjz joined #perl6
06:48 darutoko joined #perl6
06:50 geraud1 joined #perl6
06:50 RabidGravy joined #perl6
06:52 geekosaur joined #perl6
06:54 cibs joined #perl6
06:54 brillenfux joined #perl6
06:56 kaare__ joined #perl6
07:08 mr-foobar joined #perl6
07:15 bjz joined #perl6
07:18 RabidGravy boom!
07:21 [ptc] RabidGravy: o/
07:21 [ptc] RabidGravy: nice advent post, btw :-)
07:22 RabidGravy :)
07:23 pierre_ joined #perl6
07:24 RabidGravy right I'd better get off and ruin some Perl 5
07:24 pierre_ joined #perl6
07:24 RabidGravy catch you all later :)
07:24 xtreak joined #perl6
07:31 moritz good morning
07:32 domidumont joined #perl6
07:33 samcv atom's package management publishing thing is annoying.... tried to put out v1.9.6... so it fails partway through because i didn't have gnome-keyring working, even tho i put in my token from the site instead (it errored weirdly)
07:33 mawkish_ joined #perl6
07:33 samcv then i couldn't fix it because github won't let me remove tags on the site :(
07:33 samcv and i can't do 1.9.6.1
07:33 samcv it wouldn't let me
07:33 samcv good morning moritz
07:34 thayne joined #perl6
07:35 samcv the biggest problem is it tags it before it does other checks
07:35 samcv and if the tag exists already it won't let you do it
07:37 mawkish_ joined #perl6
07:38 domidumont joined #perl6
07:40 geekosaur joined #perl6
07:46 cognominal joined #perl6
07:46 susmus joined #perl6
07:47 _28_ria joined #perl6
07:52 wamba joined #perl6
07:53 Vynce joined #perl6
08:03 Actualeyes joined #perl6
08:04 pierre_ joined #perl6
08:05 abraxxa joined #perl6
08:12 pyrimidine joined #perl6
08:14 abraxxa joined #perl6
08:21 AlexDaniel joined #perl6
08:22 ufobat joined #perl6
08:22 pierre_ joined #perl6
08:31 cognominal joined #perl6
08:38 ufobat good morning
08:38 ufobat i've got a question, where is actually the code that write the json, sql, html profile data to disk? is it in moarvm oder rakudo?
08:38 ufobat +s
08:42 arnsholt Looks like it's implemented in NQP
08:43 arnsholt But there might be Rakudo-specific additions as well
08:51 zakharyas joined #perl6
08:53 pyrimidine joined #perl6
08:54 rurban joined #perl6
09:02 Actualeyes joined #perl6
09:05 espadrine joined #perl6
09:07 [particle] joined #perl6
09:14 pierre__ joined #perl6
09:16 dakkar joined #perl6
09:22 AlexDaniel joined #perl6
09:30 brrt joined #perl6
09:30 cognominal joined #perl6
09:38 [particle] joined #perl6
09:39 pyrimidine joined #perl6
09:45 xtreak joined #perl6
09:45 cognominal joined #perl6
09:52 pierre_ joined #perl6
09:52 pierre_ joined #perl6
10:03 pyrimidine joined #perl6
10:06 jonas1 joined #perl6
10:06 AlexDaniel .tell yoleaux2 hi 🙋
10:06 yoleaux AlexDaniel: I'll pass your message to yoleaux2.
10:15 leont joined #perl6
10:16 leont I'm trying while (@matches Z 0 .. *) -> $match, $index but it doesn't work, what am I doing wrong
10:16 rindolf joined #perl6
10:16 moritz m: say (<a b c> Z 0..*).perl
10:16 camelia rakudo-moar 7b09be: OUTPUT«(("a", 0), ("b", 1), ("c", 2)).Seq␤»
10:17 moritz leont: Z returns a list containing sublists, not a flat list
10:17 moritz leont: the idiomatic thing to do is use to .kv instead
10:17 moritz for @matches.kv -> $index, $match { ... }
10:17 pyrimidine joined #perl6
10:17 leont Ah, yeah that looks useful :-)
10:17 moritz leont: if you want to stick with Z, use (@matches Z 0 .. *) -> ($match, $index) { ... }
10:18 moritz the () inside the signature introduce a sub-signature which will unpack the list into the two variables
10:18 leont kv is fine, thanks :-)
10:18 moritz you're welcome
10:19 leont Also, I'm clearly not awake since I should have converted the while in a for
10:19 moritz right
10:22 cschwenz joined #perl6
10:22 AlexDaniel m: say (<a b c> Z ^∞).perl
10:22 camelia rakudo-moar 7b09be: OUTPUT«(("a", 0), ("b", 1), ("c", 2)).Seq␤»
10:23 AlexDaniel leont: or maybe even .pairs ?
10:24 AlexDaniel depends on what you need
10:28 AlexDaniel m: my @a = 8, 5, 3, 15, 20; for @a -> $x where { $x < 10 } { say $x }
10:28 camelia rakudo-moar 7b09be: OUTPUT«8␤5␤3␤Constraint type check failed for parameter '$x'␤  in block <unit> at <tmp> line 1␤␤»
10:28 AlexDaniel cool
10:29 Ven joined #perl6
10:29 khw joined #perl6
10:30 wamba joined #perl6
10:30 [particle] joined #perl6
10:46 erez joined #perl6
10:53 pierre_ joined #perl6
10:56 pmurias joined #perl6
11:02 pierre_ joined #perl6
11:02 phatbot ufobat: in NQP: https://github.com/perl6/nqp/commit/8c​bb0ca5e7728bb9962b7a8e48af602205012646
11:06 phatbot itcharlie_linux: updated, thanks.
11:06 phatbot MasterDuke: rakudo.org is a WP installation with select people having access. With the exception of the download page, which is a PHP script (code's at https://github.com/perl6/web-rakudo )
11:09 phatbot which reminds me... I was meant to add archive thing to it doh
11:10 * phatbot adds it to Holiday Hacking schedule
11:10 kalkin-_ MasterDuke: Do i submit it via Github or RT?
11:11 kalkin-_ ok i see via RT
11:20 kalkin-_ How would I go about fixing it myself?
11:21 ufobat phatbot, thanks for the link :-) iwanted to look for it this night :) ty!
11:21 kalkin-_ I know the bug happens when i try to build a list consisting of element, Range, element, where do I start searching for the bug in rakudo/
11:24 phatbot kalkin-_: What's the code with the bug?
11:24 arnsholt kalkin-_: If you have a short test case that exhibits the bug, paste it here or in #perl6-dev and see what people say
11:25 arnsholt Alternatively, a gist
11:25 g4 joined #perl6
11:25 g4 joined #perl6
11:27 phatbot m: dd (42, ^5, 45)
11:27 camelia rakudo-moar 7b09be: OUTPUT«(42, ^5, 45)␤»
11:27 phatbot m: dd eager (42, ^5, 45)
11:27 camelia rakudo-moar 7b09be: OUTPUT«(42, ^5, 45)␤»
11:27 phatbot m: dd eager (42, |^5, 45)
11:27 camelia rakudo-moar 7b09be: OUTPUT«(42, 0, 1, 2, 3, 4, 45)␤»
11:27 kalkin-_ m: my @a = <foo>, 'a'...'z', <bar>; say @a; #this works
11:27 camelia rakudo-moar 7b09be: OUTPUT«[foo 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 bar]␤»
11:28 kalkin-_ m: my @a = <foo>, ' '...'~', <bar>; say @a; #this hangs
11:28 phatbot kalkin-_: it's not a problem with a list construction tho
11:28 camelia rakudo-moar 7b09be: OUTPUT«(timeout)»
11:28 phatbot Or a problem at all, as I'd think of it
11:28 phatbot m: .say for eager ' '...'~'
11:28 camelia rakudo-moar 7b09be: OUTPUT« ␤!␤"␤#␤$␤%␤&␤'␤(␤)␤*␤+␤,␤-␤.␤/␤0␤1␤2␤3␤4␤5␤​6␤7␤8␤9␤:␤;␤<␤=␤>␤?␤@␤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␤[␤\␤]␤^␤_␤…»
11:29 phatbot m: .say for eager 'foo', ' '...'~'
11:29 camelia rakudo-moar 7b09be: OUTPUT«(timeout)»
11:29 phatbot kalkin-_: it's also not a Range. Ranges are constructed with .. The ... is a sequence operator
11:29 phatbot m: my @a = <foo>, (' '...'~'), <bar>;
11:29 camelia rakudo-moar 7b09be: ( no output )
11:29 phatbot m: my @a = <foo>, |(' '...'~'), <bar>; say @a
11:29 camelia rakudo-moar 7b09be: OUTPUT«[foo   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ 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 [ \ ] ^ _ ` 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 { | } ~ bar]␤»
11:30 phatbot You were just missing parens.
11:30 phatbot kalkin-_: and it was building a sequence that starts with "foo", followed by " " etc...
11:30 phatbot kalkin-_: but to answer your question (if you want to see what it'
11:30 phatbot kalkin-_: but to answer your question (if you want to see what it's doing under the hood)
11:31 phatbot 1 sec... need to grab my breakfast from the kitchen
11:31 kalkin-_ but why did the previous example with 'a'...'z' work?
11:32 phatbot Good question. Let's find out.
11:32 phatbot First golf it a bit
11:32 phatbot m: eager 'foo', 'a'...'z'
11:32 camelia rakudo-moar 7b09be: ( no output )
11:32 phatbot m: eager 'foo', ' '...'~'
11:33 phatbot OK, so now we got just one infix operator: the ...
11:33 phatbot We have a bot
11:33 camelia rakudo-moar 7b09be: OUTPUT«(timeout)»
11:33 phatbot s: &infix:<...>, \('foo', ' ', '~')
11:33 SourceBaby phatbot, Sauce is at https://github.com/rakudo/rakudo/blo​b/7b09bee/src/core/operators.pm#L438
11:33 phatbot ^ you give it the sub (in this case infix ...) and args in a Capture
11:33 kalkin-_ i see
11:33 phatbot And it gives the link to code that handles that
11:34 psch well, infix:<...> takes the LHS as "extrapolate from this pattern"
11:34 psch m: say 1, 4 ... * > 10
11:34 camelia rakudo-moar 7b09be: OUTPUT«(1 4 7 10 13)␤»
11:35 phatbot And from that... one thing you could do is copy paste it to a code editor. Give it a different name (so it doesn't conflict with core one) and play around it, sticking debug statements here and there
11:35 kalkin-_ Wouldn't the issue be in concatenating the Range and the first list element?
11:35 pyrimidine joined #perl6
11:35 phatbot kalkin-_: there isn't a range here
11:35 psch so, 'foo', ' ', $x = figure-out-the-change-between("foo", ' ') while $x lt '~'
11:35 kalkin-_ m: say ' '...'~'
11:35 camelia rakudo-moar 7b09be: OUTPUT«(  ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ 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 [ \ ] ^ _ ` 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 { | } ~)␤»
11:35 psch m: eager 'foo', ' '... * lt '~' #
11:35 camelia rakudo-moar 7b09be: ( no output )
11:35 psch m: say eager 'foo', ' '... * lt '~' #
11:35 camelia rakudo-moar 7b09be: OUTPUT«(foo)␤»
11:36 kalkin-_ phatbot: how do you call the '…'
11:36 kalkin-_ Sequnce?
11:36 kalkin-_ Sequence
11:36 phatbot Yup
11:36 phatbot m: dd (1…5).^name
11:36 camelia rakudo-moar 7b09be: OUTPUT«"Seq"␤»
11:36 kalkin-_ K thanks, will play around a bit with it
11:37 phatbot I get "Decrement out of range" if I rename that and give it same args :/
11:38 psch m: say 10000, 10 ... 100 # same kind of behavior here
11:38 camelia rakudo-moar 7b09be: OUTPUT«(10000)␤»
11:38 psch except we're better at guessing direction with numbers i suppose
11:38 lucasb joined #perl6
11:39 psch m: say 'foo', 'fos' ... 'fro'
11:39 camelia rakudo-moar 7b09be: OUTPUT«(foo fos fot fou fov fow fox foy foz fpa fpb fpc fpd fpe fpf fpg fph fpi fpj fpk fpl fpm fpn fpo fpp fpq fpr fps fpt fpu fpv fpw fpx fpy fpz fqa fqb fqc fqd fqe fqf fqg fqh fqi fqj fqk fql fqm fqn fqo fqp fqq fqr fqs fqt fqu fqv fqw fqx fqy fqz fra frb frc…»
11:39 psch m: say 'foo', 'fo' ... 'f'
11:39 camelia rakudo-moar 7b09be: OUTPUT«(foo fo fn fm fl fk fj fi fh fg ff fe fd fc fb fa ez)␤»
11:39 psch m: say 'foo', ' ' ... ' '
11:39 camelia rakudo-moar 7b09be: OUTPUT«(foo  )␤»
11:40 psch ohh
11:40 psch m: say ' ' eq ' '.succ
11:40 camelia rakudo-moar 7b09be: OUTPUT«True␤»
11:40 psch there you go
11:40 kalkin-_ m: say 'foo', '0' … '~' # this works
11:40 camelia rakudo-moar 7b09be: OUTPUT«(foo 0 1 2 3 4 5 6 7 8 9)␤»
11:40 psch that's kind of weird tbh
11:40 kalkin-_ m: say 'foo', '/' … '~' # this doesnt
11:40 camelia rakudo-moar 7b09be: OUTPUT«(foo / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / ...)␤»
11:40 kalkin-_ ups
11:41 psch kalkin-_: well, it does, but it doesn't know what rate-of-change you mean with 'foo' -> '/'
11:41 psch kalkin-_: infix:<...> looks at the *list* on the LHS to extrapolate how to generate the next element
11:41 psch m: say 1, 10, 100, 1000 ... * < 2**32
11:41 camelia rakudo-moar 7b09be: OUTPUT«(1)␤»
11:41 psch m: say 1, 10, 100, 1000 ... * > 2**32
11:41 camelia rakudo-moar 7b09be: OUTPUT«(1 10 100 1000 10000 100000 1000000 10000000 100000000 1000000000 10000000000)␤»
11:41 kalkin-_ but why does it know how to generate 'foo, '0'…'~'?
11:42 psch kalkin-_: because it switches to numbers
11:42 psch m: say '0'.succ
11:42 camelia rakudo-moar 7b09be: OUTPUT«1␤»
11:42 psch m: say '9'.succ
11:42 camelia rakudo-moar 7b09be: OUTPUT«10␤»
11:42 kalkin-_ psch: does it? I thought it switches to ascii.
11:42 psch kalkin-_: at least i'd guess.  is '~' the ASCII succ of '9'?
11:42 psch m: say '9'.ord.succ.chr
11:42 camelia rakudo-moar 7b09be: OUTPUT«:␤»
11:42 psch nope, it's not
11:42 kalkin-_ m: '~'.ord
11:42 camelia rakudo-moar 7b09be: ( no output )
11:43 kalkin-_ m: say '~'.ord
11:43 camelia rakudo-moar 7b09be: OUTPUT«126␤»
11:43 kalkin-_ m: say ' '.ord, '0'.ord
11:43 camelia rakudo-moar 7b09be: OUTPUT«3248␤»
11:43 phatbot ... does a lot of DWIM and where's a DWIM there's a wat
11:43 phatbot m: dd eager 3, 9 … 27
11:43 camelia rakudo-moar 7b09be: OUTPUT«(3, 9, 15, 21, 27)␤»
11:43 lucasb can the sequence operator recognize if it's an arithmetic or geometric progression?
11:43 phatbot Yes
11:43 psch lucasb: i think those two, yes
11:44 psch lucasb: plus some weirds with alpha, as we notice :)
11:44 psch m: say 'aa' ... 'aaa'
11:44 camelia rakudo-moar 7b09be: OUTPUT«(aa)␤»
11:44 phatbot m: dd (3, 9, 27 … *)[^10]
11:44 camelia rakudo-moar 7b09be: OUTPUT«(3, 9, 27, 81, 243, 729, 2187, 6561, 19683, 59049)␤»
11:44 lucasb then, it should have its own count-only method, to calculate the result faster, no?
11:44 psch m: say 'aa', 'ab' ... 'aaa'
11:44 camelia rakudo-moar 7b09be: OUTPUT«(aa ab aa)␤»
11:44 psch m: say 'aa', 'ab', 'ac' ... 'aaa'
11:44 camelia rakudo-moar 7b09be: OUTPUT«(aa ab ac ab aa)␤»
11:44 psch m: say 'aa', 'ab', 'ac' ... 'az'
11:44 camelia rakudo-moar 7b09be: OUTPUT«(aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az)␤»
11:45 psch soo yeah, there's weird with Str.succ probably
11:45 psch or WAT in jargon i suppose
11:45 psch m: say 'za' ... 'aaa'
11:45 camelia rakudo-moar 7b09be: OUTPUT«(za yz yy yx yw yv yu yt ys yr yq yp yo yn ym yl yk yj yi yh yg yf ye yd yc yb ya xz xy xx xw xv xu xt xs xr xq xp xo xn xm xl xk xj xi xh xg xf xe xd xc xb xa wz wy wx ww wv wu wt ws wr wq wp wo wn wm wl wk wj wi wh wg wf we wd wc wb wa vz vy vx vw vv vu …»
11:45 phatbot lucasb: don't think so. Since you also give it an end of where to stop
11:45 psch m: say ('za' ... 'aaa')[*-10..*]
11:45 camelia rakudo-moar 7b09be: OUTPUT«(ak aj ai ah ag af ae ad ac ab)␤»
11:45 phatbot And it needs to check each point against that end (or continue infinitely)
11:46 psch m: say 'aaa' .. 'aa'
11:46 camelia rakudo-moar 7b09be: OUTPUT«"aaa".."aa"␤»
11:46 psch m: say 'aaa' ... 'aa'
11:46 camelia rakudo-moar 7b09be: OUTPUT«Decrement out of range␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
11:46 psch m: say 'aaa'.prec
11:46 camelia rakudo-moar 7b09be: OUTPUT«No such method 'prec' for invocant of type 'Str'␤  in block <unit> at <tmp> line 1␤␤»
11:46 psch m: say 'aaa'.pred
11:46 camelia rakudo-moar 7b09be: OUTPUT«Decrement out of range␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
11:46 psch m: say 'zz'.succ
11:46 camelia rakudo-moar 7b09be: OUTPUT«aaa␤»
11:46 psch soo that's kinda iffy
11:47 psch probably somewhat related, too, i think
11:47 phatbot It does templating logic
11:47 phatbot m: say eager 'tempfileAAA.txt' … 'tempfileZZZ.txt'
11:47 camelia rakudo-moar 7b09be: OUTPUT«(tempfileAAA.txt tempfileAAB.txt tempfileAAC.txt tempfileAAD.txt tempfileAAE.txt tempfileAAF.txt tempfileAAG.txt tempfileAAH.txt tempfileAAI.txt tempfileAAJ.txt tempfileAAK.txt tempfileAAL.txt tempfileAAM.txt tempfileAAN.txt tempfileAAO.txt tempfileAAP.txt…»
11:47 psch phatbot: .succ and .pred not being reversable does templating logic?
11:47 psch +in edge cases
11:48 pierre_ joined #perl6
11:48 dataf3l joined #perl6
11:48 phatbot Yes, yes, it doesn.
11:49 phatbot Sorry for not reading your mind correctly about what's iffy and related.
11:49 psch uh..?
11:49 psch apology accepted..?
11:58 dataf3l joined #perl6
11:59 psch kalkin-_: in the end, i think this is a trap, not a bug
11:59 kalkin-_ how so?
11:59 psch kalkin-_: you don't want a sequence generated from 'foo', ' ' with the following elements extrapolated via the rate of change between 'foo' and ' '
12:00 psch kalkin-_: you want a List that starts with 'foo', and then the sequence from ' ' to '~'
12:00 psch kalkin-_: unless the result of 'foo', (' ' ... '~') *isn't* what you want
12:01 psch kalkin-_: in that case infix:<...> isn't smart enough to understand what you want
12:01 kalkin-_ yes, but this doesn't explain the <foo>, <a>…<z> case, or does it?
12:01 psch m: say 'foo', 'a' ... 'z'
12:01 camelia rakudo-moar 7b09be: OUTPUT«(foo 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)␤»
12:01 kalkin-_ m: say 'foo', '0'…'~'
12:01 psch kalkin-_: pure alpha behaves different than other codepoints
12:01 camelia rakudo-moar 7b09be: OUTPUT«(foo 0 1 2 3 4 5 6 7 8 9)␤»
12:02 kalkin-_ hmm
12:02 psch kalkin-_: probably for that kind of template stuff phatbot++ was mentioning
12:02 psch kalkin-_: in any case, src/core/operators.pm:105 is what's called by infix:<...> afair
12:03 kalkin-_ i see thanks for the explanation and your time
12:04 psch kalkin-_: the problem is, again, really much waterbedding.  the template stuff was deemed important and thus works.  other cases didn't get thought of (or argued for) as much, so they often are probably surprising
12:04 psch kalkin-_: like, what *is* the predecedor for 'aaa'?
12:05 psch kalkin-_: and, what's the predecedor for '\x[PILE OF POOP]a'?
12:05 kalkin-_ may be it would make sense to add a template for ASCII sequence
12:05 psch *predecessor
12:05 kalkin-_ for '\x[PILE OF POOP]a` is chr(ord('\x[PILE OF POOP]') -1) ~ 'a' ?
12:05 psch kalkin-_: but that means that the pred for 'aa' is 'za'
12:06 psch erer
12:06 kalkin-_ or actually 'x[PILE OF POOP]`' (because '`' is ascii pred of 'a')
12:06 psch ...no it doesn't o.o
12:06 kalkin-_ but may be it's not an expected behavior
12:06 psch i mean, my last statement was bogus, sorry
12:06 Lucas_One joined #perl6
12:06 psch m: say 'a'.pred
12:06 camelia rakudo-moar 7b09be: OUTPUT«Decrement out of range␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
12:07 psch m: say 'a'.ord.pred.char.pred
12:07 camelia rakudo-moar 7b09be: OUTPUT«No such method 'char' for invocant of type 'Int'␤  in block <unit> at <tmp> line 1␤␤»
12:07 psch m: say 'a'.ord.pred.chr
12:07 camelia rakudo-moar 7b09be: OUTPUT«`␤»
12:07 kalkin-_ you can look at 'a'…'z' as just a slice of the Sequence chr(0)...chr(LAST_UNICODE_NUMBER)
12:08 psch kalkin-_: but that means that 'zz'.succ isn't 'aaa' anymore
12:08 kalkin-_ psch: yes this would be unexpected
12:09 psch so, yeah, there's lots of tradeoffs, and i'm not sure there's better ones to be made than the ones we have right now
12:09 brrt cygx++ nice post
12:09 brrt i'd like to see that tool evolve
12:09 brrt it could be useful for JIT testing, for one thing
12:10 kalkin-_ may add some kind of adverb. like '0'...'~':ascii
12:10 kalkin-_ s/may/may be/g
12:10 psch m: say '0', { *.ord.succ.chr } ... '~'
12:10 camelia rakudo-moar 7b09be: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Malformed double closure; WhateverCode is already a closure without curlies, so either remove the curlies or use valid parameter syntax instead of *␤at <tmp>:1␤------> 3say '0', { *.ord.succ.chr }7⏏…»
12:10 psch m: say '0', *.ord.succ.chr ... '~'
12:10 camelia rakudo-moar 7b09be: OUTPUT«(0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ 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 [ \ ] ^ _ ` 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 { | } ~)␤»
12:11 psch kalkin-_: honestly, just be explicit about your rate of change seems more sensible than stuffing even more magic into infix:<...>
12:11 kalkin-_ psch: yeah you are right.
12:11 psch because every DWIM *is* a WAT with different expectations
12:12 kalkin-_ I think I just need more practice in perl6 to see other ways to solve an issue.
12:12 wamba joined #perl6
12:17 lucasb I saw the code '... !=:= IterationEnd' in the advent post today
12:17 rurban joined #perl6
12:18 lucasb ...and thought about an operator "=!=" :)
12:19 andrzejku it would be nice if there were buildbot version
12:19 andrzejku in perl6
12:19 andrzejku ;P
12:20 phatbot fuck irc
12:20 phatbot waste of time full of dicks
12:20 andrzejku omg
12:20 andrzejku someone hurts him
12:21 brrt i wonder what upset him :-o
12:22 psch probably the miscommunication earlier?  although i'd suspect there's more involved somewhere
12:24 andrzejku brrt, okay guys but why are you doing that shit? you should connect people
12:24 andrzejku be friendly
12:24 andrzejku be good
12:24 andrzejku not like dicks
12:32 cibs joined #perl6
12:33 cognominal joined #perl6
12:52 Pille joined #perl6
12:53 brrt i'm sorry adrzejku, i have no idea what initiated this reaction
13:01 rindolf joined #perl6
13:04 lukaramu joined #perl6
13:09 agram66 joined #perl6
13:16 andross joined #perl6
13:17 andross which signature should match both <a> and <a b>?
13:18 moritz *@
13:19 andross it's too much
13:19 canopus joined #perl6
13:20 psch m: say \(<a>) ~~ :($); say \(<a b>) ~~ :($)
13:20 camelia rakudo-moar 7b09be: OUTPUT«True␤True␤»
13:21 psch m: sub f($) { say "matches" }; f <a>; f <a b>
13:21 camelia rakudo-moar 7b09be: OUTPUT«matches␤matches␤»
13:21 andross m: sub f($a) { say $a.perl }; f <a>; f <a b>;
13:21 camelia rakudo-moar 7b09be: OUTPUT«"a"␤$("a", "b")␤»
13:21 andross psch: i want ("a")
13:22 psch m: say <a>.WHAT
13:22 camelia rakudo-moar 7b09be: OUTPUT«(Str)␤»
13:22 psch m: say <a b>.WHAT
13:22 camelia rakudo-moar 7b09be: OUTPUT«(List)␤»
13:22 jnthn m: sub f([$a, $?]) { say $a.perl }; f <a>; f <a b>;
13:22 camelia rakudo-moar 7b09be: OUTPUT«Type check failed in binding to <anon>; expected Positional but got Str ("a")␤  in sub f at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
13:22 psch andross: well, then pass $(<a>)
13:23 jnthn Ah, right...if it's not consistently a list you can't just unpack
13:23 psch <a> always collapses right away into a single Str afaik
13:23 jnthn Probably easiest done wiht a pair of multis
13:23 andross psch: it makes code uglier, i use [<a>] but it's alot of typing as well
13:25 andross can i define custom quotes which always return list?
13:26 jnthn m: sub f(*@ [$a, $?]) { say $a.perl }; f <a>; f <a b>;
13:26 camelia rakudo-moar 7b09be: OUTPUT«"a"␤"a"␤»
13:26 jnthn Just realized, you can do that :)
13:26 psch jnthn: but *@ is too much
13:26 * psch shrugs
13:26 jnthn oh :P
13:26 jnthn Too much what? :D
13:26 andross jnthn: it captures too much
13:31 andross m: sub foo($a where { $a.=list } , $b) { say $a.perl }; foo(<a>, 0);
13:31 camelia rakudo-moar 7b09be: OUTPUT«Cannot assign to a readonly variable ($a) or a value␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
13:31 andross m: sub foo($a is rw where { $a.=list } , $b) { say $a.perl }; foo(<a>, 0);
13:31 camelia rakudo-moar 7b09be: OUTPUT«Parameter '$a' expected a writable container, but got Str value␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
13:32 andross m: sub foo($a is rw where { $a=$=.=list } , $b) { say $a.perl }; foo(<a>, 0);
13:32 camelia rakudo-moar 7b09be: OUTPUT«Parameter '$a' expected a writable container, but got Str value␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
13:32 andross m: sub foo($a is rw where { $a.=list } , $b) { say $a.perl }; foo($ = <a>, 0);
13:32 camelia rakudo-moar 7b09be: OUTPUT«(my \List_65484000 = $(List_65484000,))␤»
13:33 andross m: sub foo($a is rw where { $a.=list } , $b) { say $a }; foo($ = <a>, 0);
13:33 camelia rakudo-moar 7b09be: OUTPUT«(\List_69504528 = (List_69504528))␤»
13:33 prammer joined #perl6
13:33 psch m: sub foo($a is rw where { $a = $_.list } , $b) { say $a }; foo($ = <a>, 0);
13:33 camelia rakudo-moar 7b09be: OUTPUT«(a)␤»
13:34 psch andross: in a where, $_ is the argument
13:34 psch andross: well, unless you supply a different parameter to the block of course...
13:36 pierre_ joined #perl6
13:36 andross can i avoid $= somehow?
13:37 andross m: sub foo($a coerce { $_.list } , $b) { say $a.perl }; foo(<a>, 0);
13:37 camelia rakudo-moar 7b09be: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Malformed parameter␤at <tmp>:1␤------> 3sub foo($a7⏏5 coerce { $_.list } , $b) { say $a.perl ␤    expecting any of:␤        constraint␤»
13:37 andross i can't just define 'coerce', can i?
13:38 pierre_ joined #perl6
13:39 [Coke] (fuzzy search) please add feedback on the ticket.
13:41 cognominal joined #perl6
13:41 psch m: sub f(List() $a) { say $a.perl }; f <a>; f <a b>
13:41 camelia rakudo-moar 7b09be: OUTPUT«$("a",)␤$("a", "b")␤»
13:41 andross m: sub infix:<coerce>(Any $x, Block &b) { b($x) }; my $x = "12" coerce { .list } ; say $x.perl;
13:41 camelia rakudo-moar 7b09be: OUTPUT«Type check failed in binding to &b; expected Callable[Block] but got Block (-> ;; $_? is raw { #`...)␤  in sub infix:<coerce> at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
13:42 andross psch: thanks
13:43 andross i should have thought about about it
13:46 dataf3l joined #perl6
14:03 cdg joined #perl6
14:07 matiaslina joined #perl6
14:17 kurahaupo__ joined #perl6
14:18 prammer joined #perl6
14:19 danielmita joined #perl6
14:21 cpage_ joined #perl6
14:22 pierre_ joined #perl6
14:26 titsuki_ joined #perl6
14:35 skids joined #perl6
14:38 pierre_ joined #perl6
14:40 araujo joined #perl6
14:41 araujo joined #perl6
14:47 Upasaka joined #perl6
14:47 tbrowder ref new modules: should i add new module entries after my current ones in the ecosystem list, or add them at the end of the list?
14:48 jnthn tbrowder: I don't think it matters
14:48 tbrowder ok
14:48 jnthn (I always stick my new ones at the end)
14:48 jnthn ('cus I'm lazy)
14:48 tbrowder roger >>
14:49 sena_kun joined #perl6
15:03 lucasb joined #perl6
15:06 pierre_ joined #perl6
15:07 kaare__ joined #perl6
15:07 prammer joined #perl6
15:11 SmokeMachine MasterDuke: if you have some time, I just wrote my 3rd post draft... including informations about generator... if you would like to take a look... I'd thank you for some feedback... :)
15:11 SmokeMachine MasterDuke: https://gist.github.com/FCO/79​fc15e4fff85062c1903081ca1e0181
15:12 SmokeMachine If some one have some time to give me some feedback: https://gist.github.com/FCO/79​fc15e4fff85062c1903081ca1e0181
15:16 prammer joined #perl6
15:16 sena_kun SmokeMachine, can you provide a link to Test::Fuzz module? Is it on github?
15:18 SmokeMachine sena_kun: sure! https://github.com/FCO/Test-Fuzz
15:20 SmokeMachine sena_kun: but there're no documentation yet...
15:20 SmokeMachine :)
15:20 perlpilot SmokeMachine: Why "sub MAIN(:$fuzz!)" ?  It looks like you were going to do a multi for fuzz and no fuzz, but didn't actually do it.
15:21 SmokeMachine perlpilot: you are right!! changing to multi MAIN(...
15:22 sena_kun SmokeMachine, does it use narrowing(?) to find a good edge-case examples or just use simple random values of some type? Ah, probably nevermind me, I'll look into the source.
15:22 perlpilot SmokeMachine: btw, Test::Fuzz is a neat idea.
15:22 perlpilot sena_kun: heh, I was just doing that for the same reason  :)
15:23 sena_kun Yes, definetely. Any QuickCheck analog is awesome. SmokeMachine++
15:24 SmokeMachine sena_kun: the generators are hardcoded... so I put some usual edge cases and then a lot of random... for example: for int I use 0, 1, -1, 999999, -9999999, ...
15:25 perlpilot SmokeMachine: you might mention this in your article along with other ideas for generators that your readers could try.  (Having pluggable generators would be nice too)
15:25 SmokeMachine perlpilot: thank you (sorry, I'm still searching the meaning of neat...)
15:26 SmokeMachine perlpilot: that's on my wishlist!
15:26 perlpilot SmokeMachine: I meant "neat" as in "novel, interesting, useful, excellent, I like it, etc."  :-)
15:27 SmokeMachine perlpilot: thank you!!! (I am sorry for my terrible english!)
15:28 abraxxa joined #perl6
15:28 perlpilot My personal philosophy about advent articles (or any programmer-centric article) is that they should provide some information and then encourage audience participation (fiddling with the code, contributing to the project, ... whatever gets them using Perl 6).
15:31 SmokeMachine perlpilot: on the first version of Test::Fuzz it has pluggable generators... (it had a function fuzz-generator() hat receives a generator name and a Positional of values...) but I splitter it in some classes and I loose this feature... but we'll have it back in a future version...
15:32 SmokeMachine perlpilot: I hope to be doing something like that with this post... (it's the intention...)
15:33 SmokeMachine sena_kun: did you find the generators on the code?
15:34 abraxxa joined #perl6
15:37 sena_kun SmokeMachine, yes, but it isn't the thing I thought about. As this winter goes by, I can try to help. I'm not sure I'm smart enough, but still.
15:39 tbrowder nine: i just tried to install Inline::Perl5 with zef but it failed. i do have libperl-dev installed with Deb 8. Do I have to go through the build process in the README (i assume so)?
15:40 perlpilot SmokeMachine: I noticed that you have a file that lists all (maybe?) of the built-in classes .. were you planning on eventually providing generators for all of them?
15:41 SmokeMachine perlpilot: Not yet... but I use that to get all possible type objects...
15:42 SmokeMachine perlpilot: the generator grep all type object that smartmatches with the type of the argument (unless it has a :D)
15:43 SmokeMachine it use that file to get the types and all type objects on ::.values too...
15:46 SmokeMachine perlpilot: makes sense?
15:47 SmokeMachine sena_kun: I'd love you help! :)
15:48 cognominal joined #perl6
15:49 gfldex SmokeMachine: You can get all buildin types from the docs
15:50 gfldex SmokeMachine: see https://github.com/perl6/doc/blob/m​aster/util/list-missing-methods.p6
15:51 SmokeMachine gfldex: do you mean progamaticaly?
15:51 kalkin- joined #perl6
15:51 SmokeMachine taking a look
15:51 gfldex yes
16:02 tbrowder .tell nine Inline::Perl5 is failing "make test" when building on Deb 8 according to README.  perl6 -v =>
16:02 yoleaux tbrowder: I'll pass your message to nine.
16:03 tbrowder https://www.irccloud.com/pastebin/7MQ8wKBN/
16:04 cibs joined #perl6
16:04 tbrowder .tell nine see https://www.irccloud.com/pastebin/7MQ8wKBN/
16:04 yoleaux tbrowder: I'll pass your message to nine.
16:12 nine tbrowder: libperl-dev sounds ok. Should install. But without details about those test failures I can't help you.
16:12 yoleaux 16:02Z <tbrowder> nine: Inline::Perl5 is failing "make test" when building on Deb 8 according to README.  perl6 -v =>
16:12 yoleaux 16:04Z <tbrowder> nine: see https://www.irccloud.com/pastebin/7MQ8wKBN/
16:13 SmokeMachine gfldex: do you mean search every doc to get every class?
16:13 tbrowder nine: details are filed as an issue for the module
16:14 nine tbrowder: ah, that's a MoarVM regression that's been fixed some time last week
16:14 SmokeMachine gfldex: it wouldn't include every installed module?
16:15 tbrowder sorry, thanks.  i'll upgrade and try again
16:15 gfldex SmokeMachine: installed modules are not included
16:15 SmokeMachine So I'll try that!!!
16:16 cibs joined #perl6
16:18 gfldex SmokeMachine: types, defined in line 64 will hold a LoL of a Str of a type name and a IO that the type name comes from. You don't need the latter. Line 73 does turns the type name into a type object
16:18 tbrowder nine: just checking...looks like a manual install unless one is using rakudobrew, yes?
16:19 SmokeMachine gfldex: what I didn't get is: how do I get the path to doc/Type?
16:20 gfldex SmokeMachine: line 49 contains the default. You need to git clone the docs and point to the right path.
16:21 SmokeMachine gfldex: that I cannot do progamatically... :(
16:22 SmokeMachine gfldex: I was thinking on getting it at run time...
16:22 gfldex SmokeMachine: i'm pretty sure you can but if it's sensible is a different question
16:23 gfldex I can't see a way to get it at runtime because Rakudo sports quite a few types that are not part of Perl 6
16:23 SmokeMachine gfldex: at run time I have to get all the types to use on my generators...
16:23 gfldex all the types of what?
16:23 SmokeMachine gfldex: perl6 types...
16:23 SmokeMachine gfldex: builtin types
16:24 ocbtec joined #perl6
16:25 gfldex Perl 6 builtin types are defined by roast. Sadly roast contains quite a few regression tests, so the docs (that have to follow roast closely) is your best bet
16:25 Ven joined #perl6
16:33 prammer joined #perl6
16:36 TimToady joined #perl6
16:37 SmokeMachine gfldex: thanks
16:39 telex joined #perl6
16:40 andross joined #perl6
16:53 andross left #perl6
16:53 pierre_ joined #perl6
16:56 pyrimidine joined #perl6
16:56 cognominal joined #perl6
16:57 tbrowder nine: getting same errors (+1 => 1/5 Attempt to free nonexistent shared string '(eval 12)', Perl interpreter: 0x3464aa0 during global destruction.); perl6 -v => Rakudo version 2016.11-237-g8eef234 built on MoarVM version 2016.11-41-gd2139b5
16:58 AlexDaniel joined #perl6
17:06 pierre_ joined #perl6
17:09 jferrero m: $_ = "*\n"; m/^^(\s*)(\*+)$$/; say "\$0:[$0] \$1:[$1]";  s:g/(\s*)(\*+)/ $0$1/; say "\$0:[$0] \$1:[$1]";
17:09 camelia rakudo-moar 8eef23: OUTPUT«$0:[] $1:[*]␤Use of Nil in string context␤  in block <unit> at <tmp> line 1␤$0:[*] $1:[]␤»
17:11 jferrero m: $_ = "*\n"; s:g/(\s*)(\*+)/ $0$1/; say "\$0:[$0] \$1:[$1]";
17:11 camelia rakudo-moar a78d33: OUTPUT«Use of Nil in string context␤  in block <unit> at <tmp> line 1␤$0:[*] $1:[]␤»
17:12 jferrero m: $_ = "*\n"; m/(\s*)(\*+)/; say "\$0:[$0] \$1:[$1]";
17:12 camelia rakudo-moar a78d33: OUTPUT«$0:[] $1:[*]␤»
17:15 jferrero Capturing parens are working differently, for substitution op?
17:15 CIAvash[m] m: $_ = "\n"; s/(\s)(*+)/ $0$1/; say "\$0:[$0] \$1:[$1]";
17:15 camelia rakudo-moar a78d33: OUTPUT«5===SORRY!5===␤Unrecognized regex metacharacter  (must be quoted to match literally)␤at <tmp>:1␤------> 3$_ = "\n"; s/(\s7⏏5)(*+)/ $0$1/; say "\$0:[$0] \$1:[$1]";␤Quantifier quantifies nothing␤at <tmp>:1␤------> 3$_ = "\n"; s/(\s…»
17:16 wamba joined #perl6
17:16 cognominal joined #perl6
17:16 jferrero m: $_ = "H\n"; m/(\s*)(H+)/; say "\$0:[$0] \$1:[$1]";
17:16 camelia rakudo-moar a78d33: OUTPUT«$0:[] $1:[H]␤»
17:17 jferrero m: $_ = "H\n"; s:g/(\s*)(H+)/ $0$1/; say "\$0:[$0] \$1:[$1]";
17:17 camelia rakudo-moar a78d33: OUTPUT«Use of Nil in string context␤  in block <unit> at <tmp> line 1␤$0:[H] $1:[]␤»
17:17 CIAvash joined #perl6
17:17 jferrero Substitution is not capturing $0
17:20 TimToady m: $_ = "H\n"; s/(\s*)(H+)/ $0$1/; say "\$0:[$0] \$1:[$1]";
17:20 camelia rakudo-moar a78d33: OUTPUT«$0:[] $1:[H]␤»
17:21 TimToady what would $0 mean outside of a :g anyway?
17:22 perigrin naught
17:22 * perigrin couldn't resist.
17:23 TimToady Sweets for the sweet, naughts for the naughty...
17:23 perigrin naught bad?
17:24 TimToady I donut know.
17:24 * perigrin wonders if $0 in TCL is ... nautical.
17:25 perigrin pun was so bad it knocked dakkar offline, I should stop before I clear the channel
17:25 TimToady .oO(ship happens)
17:26 zacts joined #perl6
17:31 [Coke] TCL... there's a name I haven't heard in a while.
17:32 perigrin I'd say something about a more elegant weapon for a more civilized age ... but I'm not sure it applies here.
17:32 * [Coke] grins
17:33 [Coke] (and peri grins, also)
17:33 nine tbrowder: your MoarVM is still too old. You'd need to pull directly in MoarVM
17:52 lucasb m: $_ = "abacad"; s:g/(a)(.)/ax/; .say; say ($0, $1, $2)>>.Str
17:52 camelia rakudo-moar a78d33: OUTPUT«axaxax␤(ab ac ad)␤»
17:53 lucasb so, after an s:g///, $0,$1,$2,etc. are the successive matches?
17:54 TimToady m: $_ = "H\n"; s:g/(\s*)(H+)/ $0$1/; say $/.WHAT
17:54 camelia rakudo-moar a78d33: OUTPUT«(List)␤»
17:55 TimToady m: $_ = "H\n"; s:g/(\s*)(H+)/ $0$1/; say $/[0][1]
17:55 camelia rakudo-moar a78d33: OUTPUT«「H」␤»
17:55 TimToady m: $_ = "H\n"; s:g/(\s*)(H+)/ $0$1/; say $0[1]
17:55 camelia rakudo-moar a78d33: OUTPUT«「H」␤»
17:56 [Coke] "parsing is such sweet sorry" (EROODE)
17:56 TimToady m: $_ = "H\nI\n"; s:g/(\s*)(\w+)/ $0$1/; say $1[1]
17:56 camelia rakudo-moar a78d33: OUTPUT«「I」␤»
17:59 AlexDaniel m: $_ = "abacad"; say S:g/(a)(.)/ax/; dd $/
17:59 camelia rakudo-moar a78d33: OUTPUT«axaxax␤Str $/ = "axaxax"␤»
18:05 loveperl joined #perl6
18:05 AlexDaniel wyh?
18:05 AlexDaniel why?*
18:06 [Coke] which why?
18:08 nine tbrowder: Coke++ just pushed nqp and moar version bumps so upgrading rakudo should now suffice
18:09 loveperl How to create a global variable within a method?
18:11 AlexDaniel [Coke]: why with S there is no list of matches in $/
18:11 tbrowder also i forgot to configure again after the first pull...duh
18:18 lizmat loveperl: why would you want to do that ?
18:19 dalek doc: eb191b5 | (Zoffix Znet)++ | doc/Language/operators.pod6:
18:19 dalek doc: andthen returns Empty, not first undefined arg
18:19 synopsebot6 Link: http://doc.perl6.org/language/operators
18:19 dalek doc:
18:19 dalek doc: By design, to make it flatten into lists
18:19 dalek doc: review: https://github.com/perl6/doc/commit/eb191b533d
18:19 lizmat in Perl 5 it's generally a bad idea, in Perl 6 even more so
18:19 lizmat loveperl: if you want to check a possible "global" value, you should probably check for a dynamic variable
18:20 dalek doc: 9700140 | (Zoffix Znet)++ | doc/Language/operators.pod6:
18:20 dalek doc: andthen execs any RHS Callable, not just block
18:20 dalek doc: review: https://github.com/perl6/doc/commit/970014097b
18:20 synopsebot6 Link: http://doc.perl6.org/language/operators
18:20 lizmat loveperl: https://docs.perl6.org/lang​uage/variables#The_*_Twigil
18:23 samcv good morning perl 6
18:23 dalek doc: 75c3729 | (Zoffix Znet)++ | doc/Language/operators.pod6:
18:23 dalek doc: orelse is not same but only similar to //
18:23 dalek doc:
18:23 dalek doc: The diff is it'll exec RHS Callables and binds LHS to $_
18:23 dalek doc: review: https://github.com/perl6/doc/commit/75c3729e62
18:23 synopsebot6 Link: http://doc.perl6.org/language/operators
18:25 pmurias joined #perl6
18:26 andrzejku_ joined #perl6
18:26 andrzejku_ hi :)
18:28 japhb joined #perl6
18:30 domidumont joined #perl6
18:30 lucasb IIUC, &(...) doesn't do much, except trick some constructs that expects an literal '&'.
18:30 lucasb should it stay like that, should it create a callable that returns the arguments, should it just type check the arguments are callables and die otherwise?
18:30 lucasb TimToady: ^^ any comments?
18:33 domidumont joined #perl6
18:34 lucasb m: say &(1,2,3).perl  # see? it doesn't do anything
18:34 camelia rakudo-moar be2ed0: OUTPUT«$(1, 2, 3)␤»
18:35 lucasb P6 can't waste a punctuation character like that! Assign some semantics to it :)
18:39 travis-ci joined #perl6
18:39 travis-ci Doc build passed. Zoffix Znet 'andthen returns Empty, not first undefined arg
18:39 travis-ci https://travis-ci.org/perl6/doc/builds/184006073 https://github.com/perl6/doc/com​pare/d5c77772c72b...eb191b533d55
18:39 travis-ci left #perl6
18:41 travis-ci joined #perl6
18:41 pmurias m: class Foo {method defined() {1}};with Foo {say "hi"}
18:41 travis-ci Doc build passed. Zoffix Znet 'andthen execs any RHS Callable, not just block'
18:41 travis-ci https://travis-ci.org/perl6/doc/builds/184006466 https://github.com/perl6/doc/com​pare/eb191b533d55...970014097b04
18:41 travis-ci left #perl6
18:41 camelia rakudo-moar be2ed0: OUTPUT«hi␤»
18:41 pmurias j: class Foo {method defined() {1}};with Foo {say "hi"}
18:41 camelia rakudo-jvm 8ca367: ( no output )
18:41 pmurias ^^ rakudo-jvm bug
18:42 dalek Inline-Perl5: f91ab9a | niner++ | / (4 files):
18:42 dalek Inline-Perl5: Rename v6::inline to v6-inline for compatibility with Perl < 5.18
18:42 dalek Inline-Perl5: review: https://github.com/niner/Inl​ine-Perl5/commit/f91ab9a270
18:42 dalek Inline-Perl5: 3bdbd4e | niner++ | t/p6_object_destructor.t:
18:42 dalek Inline-Perl5: Make t/p6_object_destructor.t more stable
18:42 dalek Inline-Perl5:
18:42 dalek Inline-Perl5: lizmat++ for noticing the missing force_gc
18:42 dalek Inline-Perl5: review: https://github.com/niner/Inl​ine-Perl5/commit/3bdbd4e101
18:43 tbrowder nine: all works fine now--i closed issue 81
18:44 travis-ci joined #perl6
18:44 travis-ci Doc build passed. Zoffix Znet 'orelse is not same but only similar to //
18:44 travis-ci https://travis-ci.org/perl6/doc/builds/184007361 https://github.com/perl6/doc/com​pare/970014097b04...75c3729e6217
18:44 travis-ci left #perl6
18:45 pyrimidine joined #perl6
18:45 loveperl what is the error?This class already has a method named new
18:47 dalek doc: e5adaa1 | samcv++ | template/search_template.js:
18:47 dalek doc: disable levenshtein search for now due to speed concerns
18:47 dalek doc: review: https://github.com/perl6/doc/commit/e5adaa120f
18:52 labster joined #perl6
18:54 pyrimidine joined #perl6
18:55 loveperl what is the error?This class already has a method named new
18:56 lizmat loveperl: what are you referring to ?
18:59 loveperl TO THIS http://fpaste.scsys.co.uk/54022​3?tx=on&amp;submit=Format+it%21
19:00 lizmat no need to shout :-)
19:00 AlexDaniel NO NEED TO SHOUT!!!
19:00 AlexDaniel :)
19:01 lizmat are these supposed to live in a single file?  or in 3 files?
19:01 loveperl sorry :D
19:01 loveperl 3 files
19:01 gfldex loveperl: you may find gist-paste helpful, see: https://packages.debian.org/jessie/gist
19:01 wamba joined #perl6
19:02 loveperl om
19:02 loveperl ok
19:04 loveperl What I want to do is a builder?
19:06 perlpilot loveperl: we don't know what you want to do  :)
19:07 lizmat perlpilot: the code is pretty straightforward
19:07 FROGGS joined #perl6
19:07 lizmat fwiw, I've confirmed the problem
19:16 rurban joined #perl6
19:16 dataf3l joined #perl6
19:16 lizmat loveperl: if you add a space between common and { in "class form is common{"
19:16 lizmat it seems to work
19:17 lizmat m: class A {}; class B is A{ }   # underlying issue that got hidden
19:17 camelia rakudo-moar 3df431: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Cannot resolve caller trait_mod:<is>(B, A, Hash); none of these signatures match:␤    (Mu:U $child, Mu:U $parent)␤    (Mu:U $child, :$DEPRECATED!)␤    (Mu:U $type, :$rw!)␤    (Mu:U $type, :$nativesiz…»
19:17 lizmat m: class A {}; class B is A { }
19:17 camelia rakudo-moar 3df431: ( no output )
19:17 lizmat ^^ works
19:18 cognominal joined #perl6
19:19 loveperl tank you
19:21 domidumont joined #perl6
19:22 kurahaupo joined #perl6
19:23 moritz .oO( in sovjet russia, lizmat tanks *you* )
19:23 lizmat :-)
19:23 perlpilot Unless you're accessing a hash, be suspicious of any '{' that isn't immediately preceded by whitespace.  Seems like a good rule to code Perl 6 by.  :)
19:24 sufrostico joined #perl6
19:25 moritz also add space around infix operators
19:27 girafe joined #perl6
19:30 pyrimidine joined #perl6
19:31 sufrostico joined #perl6
19:43 loveperl How to send an array as a parameter?
19:44 lizmat m: sub a(@a) { dd @a }; a( 1,2,3 )
19:44 camelia rakudo-moar 3df431: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Calling a(Int, Int, Int) will never work with declared signature (@a)␤at <tmp>:1␤------> 3sub a(@a) { dd @a }; 7⏏5a( 1,2,3 )␤»
19:44 lizmat m: sub a(@a) { dd @a }; a( [1,2,3] )
19:44 camelia rakudo-moar 3df431: OUTPUT«[1, 2, 3]␤»
19:44 lizmat m: sub a(@a) { dd @a }; my @array = ^10; a @array
19:44 camelia rakudo-moar 3df431: OUTPUT«Array @array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]␤»
19:44 lizmat afk&
19:50 loveperl tank you
19:51 loveperl How do I know if I have an array?
19:54 loveperl if @arr.WHAT == Array {               say "soy un array";         #return($arr);         }
19:55 geekosaur m: my @a; say so @a ~~ Array
19:55 camelia rakudo-moar 3df431: OUTPUT«True␤»
19:57 masak loveperl: when the variable is called `@arr`, it tends to be an Array :P
19:58 Ven joined #perl6
19:58 * masak .oO( this has been "Sarcastic Tips For Programmers", by masak )
19:59 geekosaur actually there is a serious question there. arguably for most purposes you don't care about Array, you care about Positional, and the @ tells you that
20:00 masak loveperl: what I meant to say was `@arr.WHAT == Array` works, but `@arr ~~ Array` rolls better off the tongue and is inheritance-safe
20:00 geekosaur what problem are you trying to solve?
20:00 RabidGravy boo!
20:00 loveperl tank you
20:00 loveperl yes
20:00 masak loveperl: what geekosaur said. that's why `@arr ~~ Positional` is (AFAIK) redundant
20:03 RabidGravy well you can make it something else but you'd have to try hard at it
20:04 RabidGravy m: my @a is Hash; say @a ~~ Positional
20:04 camelia rakudo-moar 3df431: OUTPUT«False␤»
20:04 moritz IMHO that should be an error
20:04 geekosaur inclined to agree
20:04 masak m: my @a is Hash; @a<foo> = "bar"; say @a.perl
20:04 camelia rakudo-moar 3df431: OUTPUT«{:foo("bar")}␤»
20:05 masak I think I agree, but... why should it be an error?
20:05 geekosaur because @ tells the programmer to expect a Positiona;l
20:06 moritz right, @ implies Positional
20:06 masak should `my @a is Set;` also be an error?
20:06 geekosaur if that isn't supposed to be meaningful, there comes a question of whether sigils other than $ should even exist
20:06 moritz masak: yes
20:07 geekosaur sets aren't positional. I'd expect % sigil
20:07 moritz masak: anything that violates the type constraint of the sigil
20:07 moritz if we uphold that rule, you can be sure that you can pass an @ to a signature that uses an @
20:07 masak hokay -- makes sense
20:08 geekosaur actually worse than that: if I just look at the @, I may interpret your `my @a is Set` as meaning an array of sets
20:08 sufrostico joined #perl6
20:08 geekosaur because perl, and a Set is not positional but the @ says Positional
20:09 labster joined #perl6
20:10 loveperl foreach in perl?
20:10 RabidGravy for
20:11 masak `foreach` in Perl 5 actually makes a lot of sense, since the "singular" variable (uncommonly) precedes the "plural" one in the syntax
20:12 masak in Perl 6, it would read very weirdly: `foreach @students -> $student {}`
20:14 setty1 joined #perl6
20:15 jdmmmmm joined #perl6
20:15 andrzejku_ joined #perl6
20:19 [Coke] samcv: did you pull the trigger on backing out the fuzzy search?
20:19 samcv yeah :\
20:19 samcv it was making search unusable for me
20:20 samcv really impacted my productivity looking things up.
20:20 samcv imo it should look up how it does now/used to, and then have a button to click to search more or fuzzily
20:20 samcv it just kills my cpu.. even for 4 or 5 letter words sometimes
20:22 samcv also while the cpu was computing the box would often lose focus and just make me have to do it all over again
20:23 [Coke] samcv: yup, no, that's fine; I had set it up in a branch because I only did minimal testing on it.
20:24 samcv kk. i think it was already to test it out tbh
20:24 samcv alright*
20:25 RabidGravy Hmm I can't find the trait_mod:<is> (Variable:D, Mu $thing) that does that
20:27 dalek doc/coke/levenshtein: 733a3bd | coke++ | template/search_template.js:
20:27 dalek doc/coke/levenshtein: re-enable fuzzy search
20:27 dalek doc/coke/levenshtein: review: https://github.com/perl6/doc/commit/733a3bdf03
20:27 [Coke] (on branch only!)
20:27 captain-adequate joined #perl6
20:28 profan joined #perl6
20:29 profan joined #perl6
20:30 profan joined #perl6
20:34 dalek doc: 2447134 | coke++ | doc/Language/operators.pod6:
20:34 dalek doc: fix typo
20:34 dalek doc: review: https://github.com/perl6/doc/commit/24471345ef
20:34 synopsebot6 Link: http://doc.perl6.org/language/operators
20:44 sufrostico joined #perl6
20:45 cdg joined #perl6
20:45 xinming joined #perl6
20:45 travis-ci joined #perl6
20:45 travis-ci Doc build passed. Will "Coke" Coleda 're-enable fuzzy search'
20:45 travis-ci https://travis-ci.org/perl6/doc/builds/184043927 https://github.com/perl6/doc/commit/733a3bdf03ad
20:45 travis-ci left #perl6
20:48 nicq20_ joined #perl6
20:48 domidumont joined #perl6
20:51 loveperl How to put a hash inside another hash?
20:53 nicq20_ loveperl: Depending on how complex you want, just assign a hash to one of the keys. %h<hello> = { friend => 1 }
20:54 nicq20_ loveperl: Oops, nm. Was thinking of Perl5. :/
20:54 AlexDaniel it should dwim, yea
20:54 AlexDaniel m: my %h = a => { x => 42, y => 90 }; say %h<a>
20:54 camelia rakudo-moar 3df431: OUTPUT«{x => 42, y => 90}␤»
20:54 jnthn That works just fine in Perl 6 :)
20:54 AlexDaniel m: my %h = a => { x => 42, y => 90 }; say %h<a><x>
20:54 camelia rakudo-moar 3df431: OUTPUT«42␤»
20:55 jnthn m: my %h = to => { ke => 42 }; say %h<to><ke>
20:55 camelia rakudo-moar 3df431: OUTPUT«42␤»
20:55 jnthn ah, AlexDaniel beat me to it :)
20:55 loveperl <AlexDaniel> Thank you, I have it!
20:58 loveperl tank you
20:58 nicq20_ Oh, yep. Found my error.
20:58 nicq20_ The example I gave does work.
21:00 jferrero m: $_ = "H\n"; s:g/(\s*)(H+)/ $0$1/; say "\$1:[$1] \$2:[$2]";
21:00 camelia rakudo-moar 3df431: OUTPUT«Use of Nil in string context␤  in block <unit> at <tmp> line 1␤Use of Nil in string context␤  in block <unit> at <tmp> line 1␤$1:[] $2:[]␤»
21:01 jferrero m: $_ = "H\n"; s/(\s*)(H+)/ $0$1/; say "\$1:[$1] \$2:[$2]";
21:01 camelia rakudo-moar 3df431: OUTPUT«Use of Nil in string context␤  in block <unit> at <tmp> line 1␤$1:[H] $2:[]␤»
21:01 jferrero m: $_ = "H\n"; s:g/(\s*)(H+)/ $1$2/; say "\$1:[$1] \$2:[$2]";
21:01 camelia rakudo-moar 3df431: OUTPUT«Use of Nil in string context␤  in code  at <tmp> line 1␤Use of Nil in string context␤  in block <unit> at <tmp> line 1␤Use of Nil in string context␤  in block <unit> at <tmp> line 1␤$1:[] $2:[]␤»
21:02 jferrero m: $_ = "H\n"; s/(\s*)(H+)/ $1$2/; say "\$1:[$1] \$2:[$2]";
21:02 camelia rakudo-moar 3df431: OUTPUT«Use of Nil in string context␤  in code  at <tmp> line 1␤Use of Nil in string context␤  in block <unit> at <tmp> line 1␤$1:[H] $2:[]␤»
21:02 shadowpaste "loveperl" at 217.168.150.38 pasted "hashes" (34 lines) at http://fpaste.scsys.co.uk/540224
21:04 loveperl Is this okay? http://fpaste.scsys.co.uk/54022​4?tx=on&amp;submit=Format+it%21
21:08 TEttinger joined #perl6
21:10 nicq20_ loveperl: Looks ok to me, and it seems to work ok on my machine.
21:11 obfusk joined #perl6
21:12 loveperl nicq20: te sale esto: WARNINGS for /var/www/html/hola/generatehtml/call.pl: Useless use of "especialidad_id=>{type=>'number'}\n            " in sink context (line 33)
21:14 MorayJ joined #perl6
21:17 cognominal joined #perl6
21:17 nicq20_ loveperl: Yeah, I've run it a few times without any errors. Is it possible what you are trying to run is different than what was pasted?
21:21 dataf3l joined #perl6
21:29 obfusk joined #perl6
21:33 cognominal joined #perl6
21:33 obfusk joined #perl6
21:35 nicq20_ What is used to view '.pod6' files?
21:38 moritz perl6 --doc thefile
21:39 nicq20_ moritz: Thank you!
21:41 lukiramu joined #perl6
21:45 aindilis joined #perl6
21:45 cpage_ joined #perl6
21:54 bjz joined #perl6
21:56 rurban joined #perl6
21:56 cpage_ joined #perl6
21:59 leont joined #perl6
22:00 n0tjack joined #perl6
22:01 n0tjack m: sub foo($) returns Array[Numeric] { my Array[Numeric] @a = [1,2,3]; return @a;} foo(7);
22:01 camelia rakudo-moar 7345e0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Strange text after block (missing semicolon or comma?)␤at <tmp>:1␤------> 3Array[Numeric] @a = [1,2,3]; return @a;}7⏏5 foo(7);␤    expecting any of:␤        infix␤        infix stopper␤    …»
22:01 n0tjack I'm picking p6 up again after a year or so, and now I forget how type declarations work
22:01 n0tjack Can someone show me what I really meant to say above, by declaring a function to return an array of numbers (of any type), and then doing so?
22:03 jnthn You missed the ; right where it says so :)
22:03 n0tjack m: sub foo($) returns Array[Numeric] { my Array[Numeric] @a = [1,2,3]; return @a;}; foo(7);
22:03 camelia rakudo-moar 7345e0: OUTPUT«Type check failed in assignment to @a; expected Array[Numeric] but got Int (1)␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
22:03 n0tjack sorry, wrong error message
22:03 geekosaur your declaration is for a Positional (which will default to Array) whose contents are Array[Numeric]
22:04 jnthn ah, shoulda spotted that :)
22:04 jnthn Just need my Numeric @a = 1,2,3
22:04 n0tjack geekosaur: can you unpack that for me? or rather show me what I mean to say?
22:04 jnthn The [...] should be fine too but not required
22:04 geekosaur m: my Num @a; @a[0] = 5.Num;
22:04 camelia rakudo-moar 7345e0: ( no output )
22:04 geekosaur the Array is implied by the @
22:05 geekosaur so what you asked for was an array of arrays of Numeric, not just array of Numeric
22:06 n0tjack Is the   sub foo() returns Array[Numeric] the right syntax?
22:06 geekosaur should be, yes
22:06 n0tjack Wait, how do I make sure I must return an array, and cannot return a scalar?
22:07 geekosaur ok, so now you believe what I said about my applies to the sub also?
22:07 n0tjack m: sub foo($) returns Array[Numeric] { my Numeric @a = 1,2,3; return @a;} foo(7);
22:07 camelia rakudo-moar 7345e0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Strange text after block (missing semicolon or comma?)␤at <tmp>:1␤------> 3ic] { my Numeric @a = 1,2,3; return @a;}7⏏5 foo(7);␤    expecting any of:␤        infix␤        infix stopper␤    …»
22:07 geekosaur (note, this is an inconsistency I'm actually not very fond of)
22:07 n0tjack m: sub foo($) returns Array[Numeric] { my Numeric @a = 1,2,3; return @a;}; foo(7);
22:07 camelia rakudo-moar 7345e0: ( no output )
22:07 n0tjack m: sub foo($) returns Array[Numeric] { my Numeric @a = 1,2,3; return @a;}; say foo(7);
22:07 camelia rakudo-moar 7345e0: OUTPUT«[1 2 3]␤»
22:07 n0tjack m: sub foo($) returns Array[Numeric] { my Numeric $a = 1; return $a;}; say foo(7);
22:07 camelia rakudo-moar 7345e0: OUTPUT«Type check failed for return value; expected Array[Numeric] but got Int (1)␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
22:08 n0tjack ok, nice
22:08 n0tjack thank you
22:10 n0tjack I have to say, a nice surprise was the code I wrote a year ago is still readable. Which I can't say about most programs I write in most languages.
22:18 maxp_ joined #perl6
22:21 maxp_ when I run a script with option --target=mbc (perl6 --target=mbc -- reg.p6) I've this error:
22:21 maxp_ ===SORRY!=== Cannot dump this object; no dump method
22:21 maxp_ could you explain me what is this?
22:23 jnthn mbc = moarvm bytecode, which is a binary format, so it won't just spew that out onto your console; adding --output=reg.moarvm will get it spit something out
22:24 maxp_ oh ok thank you very much.
22:24 jnthn (Note that these exist primarily for debugging/development purposes rather than being user-facing; module precompilation is managed automatically these days)
22:24 SmokeMachine m: my Int @a = <1 2 3 4 5>; say @a
22:24 camelia rakudo-moar 7345e0: OUTPUT«[1 2 3 4 5]␤»
22:24 SmokeMachine m: my Int() @a = <1 2 3 4 5>; say @a
22:24 camelia rakudo-moar 7345e0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Coercion Int(Any) is insufficiently type-like to qualify a variable␤at <tmp>:1␤------> 3my Int() @a7⏏5 = <1 2 3 4 5>; say @a␤    expecting any of:␤        constraint␤»
22:25 SmokeMachine Why that's wrong?
22:25 n0tjack SmokeMachine: The <> are quote-y. The produce Cools. Not Ints.
22:25 jnthn SmokeMachine: So far coercion types are only support on parameters. I expect future versions of Perl 6 will support them in more places.
22:25 jnthn *supported
22:26 SmokeMachine n0tjack: yen, but Im trying to coerce it..
22:26 SmokeMachine jnthn: hum... thanks
22:26 SmokeMachine m: sub f(Int() @a) {say @a}; f <1 2 3 4 5>
22:26 camelia rakudo-moar 7345e0: OUTPUT«Type check failed in binding to @a; expected Positional[Any] but got List ($(IntStr.new(1, "1"),...)␤  in sub f at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
22:27 SmokeMachine and now?
22:27 jnthn Heh, and only then on Scalars, I think. The syntax was introduced fairly late on, as a generalization of the earlier "Foo $a as Bar" syntax.
22:27 jnthn So that it could be scaled to other places later
22:28 SmokeMachine jnthn: ok! thanks!
22:29 nicq20_ SmokeMachine: In you example, when you use `<1 2 3>`, it makes IntStr objects, not just Int objects. That is usually what throws me off.
22:29 jnthn (And while the syntax was generalized, there just wasn't time yet to generalize it in the implementation. :))
22:29 SmokeMachine nicq20_: thats why I was trying to coerce it (Int())
22:30 jnthn Rest time for me; 'night
22:31 SmokeMachine m: my $a = IntStr.new(42, "the answer"); say ~$a; say +$a
22:31 camelia rakudo-moar 7345e0: OUTPUT«the answer␤42␤»
22:32 SmokeMachine that's cool (no, thats not Cool... thats IntStr) (sorry the joke)... but can be dangerous, can't it?
22:33 SmokeMachine m: my $a = 42 but "the answer"; say ~$a; say +$a
22:33 camelia rakudo-moar 7345e0: OUTPUT«the answer␤the answer␤»
22:34 spebern joined #perl6
22:34 SmokeMachine i diânt get it...
22:34 SmokeMachine *didn't
22:35 SmokeMachine m: my $a = 42 does "the answer"; say ~$a; say +$a
22:35 camelia rakudo-moar 7345e0: OUTPUT«Cannot mix in non-composable type Str into object of type Int␤  in block <unit> at <tmp> line 1␤␤»
22:36 cognominal joined #perl6
22:37 spebern m: grammar g { token TOP  { <item> }; token item { \w+ }; }.parse('hi');
22:37 camelia rakudo-moar 7345e0: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤  in any !reduce at /home/camelia/rakudo-m-inst-1​/share/nqp/lib/QRegex.moarvm line 1␤  in any !cursor_pass at /home/camelia/rakudo-m-inst-1​/share/nqp/lib/QRegex.moarvm line 1␤  in regex item …»
22:37 SmokeMachine m: my $a = 42 but False; say ?$a; say +$a
22:37 camelia rakudo-moar 7345e0: OUTPUT«False␤42␤»
22:37 spebern would it make sense to give better error messages for tokens that collide with other keywords?
22:37 SmokeMachine m: my $a = 42.Int but "the answer"; say ~$a; say +$a
22:37 camelia rakudo-moar 7345e0: OUTPUT«the answer␤the answer␤»
22:38 SmokeMachine m: my $a = "the answer" but 42; say ~$a; say +$a
22:38 camelia rakudo-moar 7345e0: OUTPUT«the answer␤Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5the answer' (indicated by ⏏)␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
22:39 SmokeMachine m: my $a = "the answer" but 42; say ~$a; say $a.Int
22:39 camelia rakudo-moar 7345e0: OUTPUT«the answer␤42␤»
22:40 SmokeMachine m: my $a = 42 but "the answer"; say $a.Str; say $a.Int
22:40 camelia rakudo-moar 7345e0: OUTPUT«the answer␤the answer␤»
22:40 SmokeMachine I can't get it...
22:40 donaldh joined #perl6
22:41 rurban joined #perl6
22:41 SmokeMachine m: my $a = 42 but "the answer"; say $a.perl
22:41 camelia rakudo-moar 7345e0: OUTPUT«the answer␤»
22:42 SmokeMachine m: my $a = 42 but role {method Str(-->"the answer"){}}; say $a.perl
22:42 camelia rakudo-moar 7345e0: OUTPUT«the answer␤»
22:43 SmokeMachine m: my $a = 42 but role {method Str(-->"the answer"){}}; say $a.Int; say $a.Str
22:43 camelia rakudo-moar 7345e0: OUTPUT«the answer␤the answer␤»
22:43 SmokeMachine in method Str(--> "the answer"){} couldn't the {} be optional?
22:44 SmokeMachine m: my $a = 42 but role {method Str(-->"the answer")}; say $a.Int; say $a.Str
22:44 camelia rakudo-moar 7345e0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing block␤at <tmp>:1␤------> 42 but role {method Str(-->"the answer")7⏏5}; say $a.Int; say $a.Str␤»
22:45 SmokeMachine m: my $a = role {method Int(--> 42){}}.new but role {method Str(-->"the answer")}; say $a.Int; say $a.Str
22:45 camelia rakudo-moar 7345e0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing block␤at <tmp>:1␤------> 3ew but role {method Str(-->"the answer")7⏏5}; say $a.Int; say $a.Str␤»
22:45 SmokeMachine m: my $a = role {method Int(--> 42){}}.new but role {method Str(-->"the answer"){}}; say $a.Int; say $a.Str
22:45 camelia rakudo-moar 7345e0: OUTPUT«42␤the answer␤»
22:46 MasterDuke spebern: there's been some talk about that recently, but i don't believe a consensus has been reached yet, since you are allowed to redefine some built-ins
22:46 SmokeMachine m: my $a = 42 but role {method Str(-->"the answer")}; say $a.int; say $a.Str
22:46 camelia rakudo-moar 7345e0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing block␤at <tmp>:1␤------> 42 but role {method Str(-->"the answer")7⏏5}; say $a.int; say $a.Str␤»
22:46 SmokeMachine m: my $a = 42 but role {method Str(-->"the answer"){}}; say $a.int; say $a.Str
22:46 camelia rakudo-moar 7345e0: OUTPUT«No such method 'int' for invocant of type 'Int+{<anon|80069360>}'␤  in block <unit> at <tmp> line 1␤␤»
22:51 jdmmmmm joined #perl6
22:54 trnh joined #perl6
22:54 trnh joined #perl6
23:07 rindolf joined #perl6
23:19 cognominal joined #perl6
23:24 dataf3l joined #perl6
23:26 dataf3l joined #perl6
23:31 chuski1212 joined #perl6
23:31 chuski1212 hello
23:32 Lucas_One joined #perl6
23:32 chuski1212 hello
23:32 cognominal joined #perl6
23:39 xfix joined #perl6
23:41 leont joined #perl6
23:58 hank joined #perl6

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

Perl 6 | Reference Documentation | Rakudo