Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-07-21

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:05 Actualeyes left #perl6
00:25 kyclark joined #perl6
00:34 sufrostico joined #perl6
00:34 vike joined #perl6
00:39 sufrostico joined #perl6
00:50 zacts joined #perl6
00:50 zacts hi
00:50 zacts the syntax for perl6 class definitions is nice
00:50 zacts I really like this
00:50 gfldex m: say "ohai zacts!"
00:50 camelia rakudo-moar 59d808: OUTPUT«ohai zacts!␤»
00:50 zacts (coming from Ruby)
00:51 zacts and I like what other features perl6 has to offer, that aren't directly offered by Ruby
00:51 zacts Perl6 that is
00:51 zacts (capital "P")
00:51 zacts the syntax is clean for this, yet really flexible
00:58 cyphase joined #perl6
01:11 Herby_ joined #perl6
01:11 Herby_ Evening, everyone!
01:11 Herby_ o/
01:19 Actualeyes joined #perl6
01:22 addison joined #perl6
01:26 labster joined #perl6
01:30 AlexDaniel zacts: by the way, have you seen https://docs.perl6.org/language/rb-nutshell ?
01:31 zacts AlexDaniel: that's what I'm referencing yeah
01:31 zacts it's nice
01:31 zacts I love this
01:32 AlexDaniel m: say‘hello’
01:33 camelia rakudo-moar 713ad5: OUTPUT«5===SORRY!5===␤Argument to "say" seems to be malformed␤at <tmp>:1␤------> 3say7⏏5‘hello’␤Bogus postfix␤at <tmp>:1␤------> 3say7⏏5‘hello’␤    expecting any of:␤        infix␤        infix stopper␤        statement…»
01:34 gfldex m: my \term:<say‘hello’> = { say 'hello' }(); say‘hello’
01:34 camelia rakudo-moar 713ad5: OUTPUT«hello␤»
01:35 gfldex term:<> is my new favourit toy
01:35 AlexDaniel m: my \term:<say ‘hello’> = { say 'bye' }(); say ‘hello’
01:35 camelia rakudo-moar 713ad5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Too many symbols provided for categorical of type term; needs only 1␤at <tmp>:1␤------> 3my \term:<say ‘hello’>7⏏5 = { say 'bye' }(); say ‘hello’␤»
01:36 mspo ruby sigils always threw me
01:36 AlexDaniel gfldex: the only problem is that makes the startup time slower
01:36 bob777 joined #perl6
01:36 AlexDaniel longer…
01:36 AlexDaniel or whatever the right word is
01:37 AlexDaniel benchable: HEAD my \term:<say‘hello’> = { say 'hello' }(); say‘hello’
01:37 benchable AlexDaniel: |«HEAD»:0.6852
01:39 AlexDaniel benchable: HEAD my \term:<say‘hello’> = { say ‘hello’ }; say‘hello’()
01:39 benchable AlexDaniel: |«HEAD»:0.6726
01:39 AlexDaniel benchable: HEAD my \sayhello = { say ‘hello’ }; (sayhello)()
01:39 benchable AlexDaniel: |«HEAD»:0.0959
01:40 AlexDaniel 0.0959? Really?
01:40 AlexDaniel benchable: HEAD say ‘hello world’
01:40 benchable AlexDaniel: |«HEAD»:0.0912
01:40 AlexDaniel okay…
01:40 AlexDaniel benchable: 2015.10 say ‘hello world’
01:40 benchable AlexDaniel: |«2015.10»:0.0886
01:40 AlexDaniel benchable: 2015.12 say ‘hello world’
01:40 benchable AlexDaniel: |«2015.12»:0.0875
01:41 gfldex $ time perl6 -e 'say "oi!"'
01:41 gfldex oi!
01:41 gfldex real    0m0.158s
01:41 gfldex and that's a slowbox
01:41 AlexDaniel gfldex: not that slow, ≈0.210 on my laptop
01:41 gfldex $ time perl -e 'print "oi!"'
01:41 gfldex oi!
01:41 gfldex real    0m0.006s
01:42 gfldex quite slow actually :)
01:45 AlexDaniel gfldex: what about ruby? :)
01:45 gfldex $ time ruby -e 'puts "oi!"'
01:45 gfldex oi!
01:45 gfldex real    0m0.442s
01:45 mspo pretty slow
01:45 AlexDaniel whoah… woah… I don't think that it is right, run it again?
01:45 geekosaur could still be ruby16 or something
01:45 gfldex e$ time ruby -e 'puts "oi!"'
01:45 gfldex oi!
01:45 gfldex real    0m0.051s
01:46 gfldex indeed, HD was involved
01:46 AlexDaniel OK, now that's right
01:46 geekosaur oh. caching
01:46 mspo yes caching
01:46 geekosaur and/or HD spinup
01:46 gfldex tha same HD takes this chatlog of this channel, so no spin up
01:47 AlexDaniel so if we are talking about the startup time, then we are only 3 times slower than ruby. That's not too bad
01:50 gfldex from docs: e$ time ruby -e 'puts "oi!"'
01:50 gfldex oi!
01:50 gfldex real    0m0.051s
01:50 gfldex missclick, i will try again
01:50 gfldex from docs: # Perl 6, declare a method with an explicit block param\nsub f(&g) {\ng(2)\n\
01:50 cpage_ joined #perl6
01:51 gfldex i believe that is wrong, as we don't provide the explicit block param
01:51 gfldex should be `sub f(&g:($)){ g(2) }`
01:52 BenGoldberg joined #perl6
01:52 gfldex m: sub f(&g:($)){ g(2) }; f({ 2*$^a });
01:52 camelia rakudo-moar 713ad5: ( no output )
01:52 gfldex m: sub f(&g:($)){ g(2) }; say f({ 2*$^a });
01:52 camelia rakudo-moar 713ad5: OUTPUT«4␤»
01:52 gfldex m: sub f(&g:($)){ g(2) }; say f({ $^b*$^a });
01:52 camelia rakudo-moar 713ad5: OUTPUT«Constraint type check failed for parameter '&g'␤  in sub f at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
01:53 gfldex that leaves the question if I should changed the wording to say it's implicit or change the example to be explicit
01:54 AlexDaniel what is a block param?
01:55 gfldex m: my $b = { &?BLOCK.signature.perl.say }; $b();
01:55 camelia rakudo-moar 713ad5: OUTPUT«:(;; $_? is raw)␤»
01:55 gfldex every block got one positional argument
01:56 gfldex so param is wrong as well, should be argument
01:57 molaf joined #perl6
01:58 BenGoldberg m: block foo { 42 };
01:58 camelia rakudo-moar 713ad5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared routines:␤    block used at line 1␤    foo used at line 1␤␤»
01:58 BenGoldberg m: Block foo { 42 };
01:58 camelia rakudo-moar 713ad5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3Block7⏏5 foo { 42 };␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifier␤        statement …»
01:59 BenGoldberg m: Block &foo = { 42 };
01:59 camelia rakudo-moar 713ad5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Preceding context expects a term, but found infix = instead␤at <tmp>:1␤------> 3Block &foo =7⏏5 { 42 };␤»
01:59 BenGoldberg m: my Block &foo = { 42 };
01:59 camelia rakudo-moar 713ad5: OUTPUT«Type check failed in assignment to &foo; expected Callable[Block] but got Block (-> ;; $_? is raw { #`...)␤  in block <unit> at <tmp> line 1␤␤»
02:06 gfldex m: my Block \foo = { 42 };
02:06 camelia rakudo-moar 713ad5: ( no output )
02:07 dalek doc: e989f5d | (Wenzel P. P. Peppmeyer)++ | doc/Language/rb-nutshell.pod6:
02:07 dalek doc: fix explicit argument mixup
02:07 dalek doc: review: https://github.com/perl6/doc/commit/e989f5d355
02:08 AndyBotwin joined #perl6
02:10 AlexDaniel gfldex: “a argument”
02:18 kid51 joined #perl6
02:24 dalek doc: 43c7a4d | (Wenzel P. P. Peppmeyer)++ | doc/Language/rb-nutshell.pod6:
02:24 dalek doc: fix typo
02:24 dalek doc: review: https://github.com/perl6/doc/commit/43c7a4d607
02:25 avenj joined #perl6
02:25 avenj joined #perl6
02:26 Vitrifur joined #perl6
02:28 rfk joined #perl6
02:28 rfk left #perl6
02:29 mspo so how does one generate a fat moarvm file that contains perl6.moarvm + my program?
02:30 mspo or, even better, a single file that has moar and the lot all bundled up
02:32 avenj joined #perl6
02:32 Herby_ why does @array.push(x) work, but %hash.push(x => y) not?
02:33 Herby_ I have to use %hash.push: (x => y)?
02:34 geekosaur m: my %h; %h.push((x => 'y'))
02:34 camelia rakudo-moar 713ad5: ( no output )
02:34 gfldex x => y creates a Pair, (x => y) creates a is of Pairs
02:35 Herby_ m: my %h; %h.push((x=>'y')); say %h;
02:35 camelia rakudo-moar 713ad5: OUTPUT«{x => y}␤»
02:35 Herby_ hmm
02:35 Herby_ Ok, thanks
02:35 gfldex m: my %h; %h.push((x => 1)); dd %h;
02:35 camelia rakudo-moar 713ad5: OUTPUT«Hash %h = {:x(1)}␤»
02:36 gfldex m: my %h; %h.push(x => 1); # that means to call Hash.push with a named parameter
02:36 camelia rakudo-moar 713ad5: ( no output )
02:36 AlexDaniel actually, it looks like x => y is treated like a named param
02:36 AlexDaniel yea
02:37 geekosaur that was pretty much what I expected, thus the parens
02:37 Herby_ gotcha
02:37 AlexDaniel I've always wondered why unused named params throw no warning or error
02:38 noganex_ joined #perl6
02:38 gfldex m: dd Hash.^can('push')
02:38 camelia rakudo-moar 713ad5: OUTPUT«(method push (Hash $: + is raw, *%_) { #`(Method|49447136) ... }, Method+{<anon|56857008>}.new)␤»
02:38 gfldex pleanse note the *%_ at the end
02:39 gfldex you need those to forward named parameters down the inheritance chain
02:40 jack_rabbit joined #perl6
02:42 aries_liuxueyang joined #perl6
03:03 cyphase joined #perl6
03:23 jack_rabbit joined #perl6
03:33 Actualeyes left #perl6
03:37 kaare_ joined #perl6
03:51 zakharyas joined #perl6
04:13 dj_goku joined #perl6
04:20 perlawhirl joined #perl6
04:20 labster joined #perl6
04:21 perlawhirl hi perlers... who's awake
04:25 ddelony left #perl6
04:41 canopus joined #perl6
04:57 Cabanossi joined #perl6
04:59 Actualeyes joined #perl6
05:15 jack_rabbit joined #perl6
05:17 zacts joined #perl6
05:50 sno joined #perl6
05:54 sno joined #perl6
05:55 gregf_ joined #perl6
06:09 jack_rabbit joined #perl6
06:10 CIAvash joined #perl6
06:14 domidumont joined #perl6
06:25 TEttinger joined #perl6
06:32 avenj joined #perl6
06:32 avenj joined #perl6
06:32 firstdayonthejob joined #perl6
06:40 domidumont joined #perl6
06:42 domidumont joined #perl6
06:44 jack_rabbit joined #perl6
07:02 abraxxa joined #perl6
07:03 furelypunctional joined #perl6
07:07 wamba joined #perl6
07:07 ovibos joined #perl6
07:11 abraxxa joined #perl6
07:13 darutoko joined #perl6
07:21 sno joined #perl6
07:32 jonas1 joined #perl6
07:34 brrt joined #perl6
07:41 dakkar joined #perl6
08:00 labster joined #perl6
08:00 erez joined #perl6
08:01 erez Hey all, which of the current web-frameworks would you recommend for actually running a website?
08:02 erez I tried Web::App, but can't even get the examples on the README to run
08:02 brrt hi erez
08:02 DrForr On Perl 6? Whatever actually works.
08:02 erez hey brrt
08:03 erez DrForr: That's what I was going for :P
08:03 brrt i don't think there are already very mature perl6 web frameworks currently, like you would expect from perl5, ruby and python
08:03 brrt so my question would be: what do you expect?
08:03 psch huh, the Prancer author doesn't advocate it? :)
08:03 brrt and what kind of website do you want to run
08:07 erez brrt: I actually am thinking about learning p6, and the best way to learn anything is to use it, and what I do is web-development, so there we are :)
08:08 DrForr I'm hoping to have some time to rewrite a few bits before putting it live, or at least fleshing out an actual wiki. Maybe before YAPC.
08:09 psch oh, right, it's not in the ecosystem yet
08:10 DrForr Yet.
08:11 brrt i see erez
08:11 brrt well, that is a valid goal
08:11 brrt i'm wondering how i can help you without disappointing you
08:12 brrt fwiw, i haven't done any perl6 web development myself
08:12 erez It's less of a dissappointment and more of a where do I set the starting line.
08:13 DrForr Well, Dancer2 passes tests when running under Inline::Perl5, though I haevn't gone beyond that.
08:13 DrForr *haven't
08:15 erez Right, and I saw Zoffix used Mojolicious in a similar manner
08:16 DrForr Yeah. My idea would be to start filling in Perl6 versions of the plugins.
08:18 brrt another place you can start, would be with Crust
08:18 brrt but that is at the low level of the stack
08:19 erez I've no problem going down levels
08:19 erez As it is a learning experience, not something I need to deliver anytime.
08:20 erez So I might just end up hacking my own web-framework. And move to the more fleshed-out stuff once I got more familiar with p6.
08:20 erez Right now I'm not really comfortable even to debug one of the existing projects.
08:21 brrt hmmm
08:21 iH2O joined #perl6
08:21 brrt if you want to get really down to it, you can also just configure perl6 to run in CGI mode
08:21 brrt it will be slow and low-level
08:21 iH2O isnt low-level usually faster
08:22 brrt but there are no undebuggable bits
08:22 brrt no, that is... no
08:22 iH2O :)
08:22 brrt :-)
08:22 brrt low level is usually more work
08:22 DrForr There's also a rewrite of P6SGI supposedly in the works; if you really want to get low-level without too much pain.
08:22 brrt that is for sure
08:22 erez That's one of the options. I'll look into Crust though
08:23 DrForr I've managed to get decent throughput with Crust, you do have to up the maximum number of threads the VM can handle though.
08:28 erez Great. Thanks guys, I think I'll go with Crust, and see what I can hack out of it
08:29 DrForr erez: https://github.com/drforr/perl6-App-prancer may be inspiration as well :)
08:30 erez heh
08:31 brrt good luck :-) and don't hesitate to ask
08:35 pdcawley joined #perl6
08:38 erez brrt: no worries
08:38 erez and thanks again
08:42 zakharyas joined #perl6
08:44 parabolize joined #perl6
08:46 brrt you are welcome :-)
08:57 iH2O brrr its cold here too much air conditioning bye folks
08:58 iH2O left #perl6
09:27 cosimo joined #perl6
09:50 pdcawley joined #perl6
09:54 jonas1 joined #perl6
10:00 sdoda joined #perl6
10:06 kurahaupo joined #perl6
10:20 RabidGravy joined #perl6
10:21 stmuk_ http://pl6anet.org/drop/ra​kudo-star-2016.07-RC1.dmg
10:22 RabidGravy boom
10:24 ambs joined #perl6
10:28 timotimo boom, gravy
10:38 kurahaupo joined #perl6
10:39 sena_kun joined #perl6
10:54 Senji joined #perl6
10:55 kurahaupo joined #perl6
10:59 iH2O joined #perl6
11:01 TreyHarr1 joined #perl6
11:06 Woodi yay, regexes killed StackExchange for 34 minutes :)  http://stackstatus.net/post/14771062​4694/outage-postmortem-july-20-2016
11:07 * Woodi uses 2 spaces after emoticons ;)
11:08 timotimo $str .= chop while $str.ends-with(" ") :P
11:12 Woodi would be nice to check for spaces from end of the line to the front :)  look for \n and chop \s-es :)
11:15 rindolf joined #perl6
11:15 iH2O left #perl6
11:19 Woodi R* ? yay!
11:21 Guest66 joined #perl6
11:24 jast perl5 even has operators to avoid that kind of issue, e.g. ++
11:24 jast (regex)
11:30 avenj joined #perl6
11:30 avenj joined #perl6
11:34 Woodi perl5++ :)
11:35 DrForr perl(5++)
11:35 moritz perl(++5)
11:36 diegok :-)
11:37 Psy-Q anything like mod_perl for perl6?
11:37 DrForr No need, we've got Crust, a PSGI-alike.
11:37 Psy-Q "is there anything like..." i mean. man, i've heard too much slavic-grammar english these days :)
11:37 Psy-Q DrForr: oooh! thanks
11:40 Guest66 how create a pdf with P6 ?
11:40 Guest66 (hello ^^)
11:41 DrForr There's a PDF module on modules.perl6.org.
11:41 P6fr panda PDF install PDF::Grammar :(
11:42 P6fr * panda install PDF
11:42 psch probably because it's a dependency?
11:42 P6fr hum
11:45 P6fr thx
11:51 brrt joined #perl6
11:52 Guest69909 joined #perl6
11:54 kid51 joined #perl6
11:55 Guest69909 joined #perl6
11:58 Guest69909 joined #perl6
11:59 Guest69909 joined #perl6
12:01 Guest69909 joined #perl6
12:04 Guest69909 joined #perl6
12:06 Guest69909 joined #perl6
12:14 timotimo its not for creating pdfs
12:41 TreyHarr1 joined #perl6
12:48 ___ There's always https://metacpan.org/pod/Mojo::PDF ! :D
12:50 moritz IME, basically all methods to programmatically generating PDFs suck
12:50 ___ Pretty much
12:50 lambd0x joined #perl6
12:50 moritz if you have a template and very limited stuff to fill out, you've got a chance
12:51 moritz otherwise it's often better to generate latex or markdown or whatever, and use pdflatex or pandoc or whatever to do the layouting
12:51 jast at work we use a component to render HTML/CSS to PDF. it's pretty horrible. ;)
12:51 moritz jast: based on phantomjs?
12:51 jast nope
12:51 jast it's a dedicated rendering engine
12:51 jast that's what's horrible about it
12:51 ___ There's something that chrome uses, I forget the name
12:52 jast pdfjs
12:52 moritz not based on gecko or webkit or so?
12:52 jast no, written from scratch AFAIK
12:52 moritz ah, gotcha
12:52 jast third party
12:52 ___ wkhtmltopdf
12:52 jast with all its own bugs
12:52 jast it even has JS support, but not good enough for recent jQuery to work
12:52 moritz heh, when on googles for pdfjs, all the results are for PDF.js, moziallas show-pdf-in-the-browser-with-js thingy
12:52 ___ Even has a crappy Mojolicious plugin for it: https://metacpan.org/pod/Mojo​licious::Plugin::PDFRenderer
12:53 jast PDF.js is what I meant :)
12:54 moritz but isn't that the other way round?
12:54 moritz views in PDF in HTML
12:54 lambd0x Hi folks. I'm beginning to learn how to work with uint/buf type. My doubt is how can I get a proper content for a uint variable? SO far I've been able to get Blob[uint] which it complains
12:54 jast yeah, good point. wasn't thinking clearly.
12:54 moritz I thought you meant rendering HTML/CSS to generate a PDF
12:55 moritz m: say Blob[uint8].new(42, 23)
12:55 camelia rakudo-moar 8dff9d: OUTPUT«Blob[uint8]:0x<2a 17>␤»
12:55 moritz lambd0x: ^^
12:55 psch m: my $buf = "foo".encode("ascii"); say $buf.WHAT; my uint $bar = $buf[0]; say $bar
12:55 camelia rakudo-moar 8dff9d: OUTPUT«(Blob[uint8])␤102␤»
12:58 lambd0x hm...
12:59 lambd0x here's rakudo error report: This representation (VMArray) cannot unbox to a native int (for type Blob[uint8])
12:59 psch m: my $buf = "foo".encode("ascii"); say $buf.WHAT; my uint $bar = $buf; say $bar
12:59 camelia rakudo-moar 8dff9d: OUTPUT«(Blob[uint8])␤This representation (VMArray) cannot unbox to a native int (for type Blob[uint8])␤  in block <unit> at <tmp> line 1␤␤»
13:00 mcmillhj joined #perl6
13:02 lambd0x I basically want to know why would be of any benefit to convert a series of integers(that might represent a message) to a single integer
13:02 sufrostico joined #perl6
13:03 lambd0x because RC4 $password argument requests to be uint8...
13:03 lambd0x this is a Perl6 module that I'm testing.
13:04 ___ lambd0x: "to a single integer" why do you think it's a single integer?
13:04 psch uh, RC4 takes either a Blob or an Array?
13:04 lambd0x 0x21..
13:05 lambd0x psch: for password for what I undestood it requires a uint8 so Buf I guess
13:05 lambd0x *understood.
13:06 psch an uint8 is not a Buf
13:06 lambd0x difference is ~~~~~~~~
13:06 psch one is a Scalar, the other is a natively typed Array
13:06 ___ lambd0x: I don't see where RC4 wants $passphrase as a single uint8. It's looping over it, and returns an array of uint8s, so I'm assuming you need to pass it a thing filled with uint8s
13:07 ___ m: "foo".encode("ascii").WHAT.say
13:07 camelia rakudo-moar 8dff9d: OUTPUT«(Blob[uint8])␤»
13:07 ___ So "foo".encode("ascii") will work as $passphrase
13:07 ___ (as one example; I'm not saying you have to encode everything to ascii)
13:08 brrt say "bar".encode("utf-8")
13:08 sufrostico joined #perl6
13:09 brrt m: say "bar".encode("utf-8")
13:09 camelia rakudo-moar 8dff9d: OUTPUT«utf8:0x<62 61 72>␤»
13:09 ___ m: say "bar".encode
13:09 camelia rakudo-moar 8dff9d: OUTPUT«utf8:0x<62 61 72>␤»
13:10 lambd0x thanks everybody, got it now :)
13:10 RabidGravy joined #perl6
13:16 LeCamarade joined #perl6
13:18 sufrostico joined #perl6
13:21 dvinciguerra_ joined #perl6
13:22 * brrt just read the stack overflow outage postmortem
13:22 brrt the tl;dr is
13:22 brrt .NET has a crappy regex engine
13:22 mcmillhj joined #perl6
13:26 dalek doc: eb76d89 | (Zoffix Znet)++ | doc/Language/traps.pod6:
13:26 dalek doc: Document the trap with strings and ranges
13:26 dalek doc: review: https://github.com/perl6/doc/commit/eb76d89784
13:38 dalek doc: 92406ed | (Zoffix Znet)++ | doc/Language/traps.pod6:
13:38 dalek doc: Toss the 52-base analogy since it's not accurate
13:38 dalek doc:
13:38 dalek doc: perl -E 'say join ", ", "aZ" .. "bB"'
13:38 dalek doc: aZ, bA, bB
13:38 dalek doc: review: https://github.com/perl6/doc/commit/92406ed714
13:44 TreyHarr1 joined #perl6
13:54 cog_ joined #perl6
13:58 skids joined #perl6
13:59 danaj joined #perl6
14:07 cdg joined #perl6
14:22 TreyHarr1 joined #perl6
14:32 ptolemarch joined #perl6
14:33 lambd0x joined #perl6
14:33 user9 joined #perl6
14:52 TreyHarr1 joined #perl6
14:54 _4d47 joined #perl6
15:06 khw joined #perl6
15:17 TimToady m: for ^3 { ^10 .map: *.say; }; say 42;
15:17 camelia rakudo-moar b51908: OUTPUT«42␤»
15:17 TimToady I would class this trap as a simple sink-propagation bug
15:17 TimToady m: for ^3 { sink ^10 .map: *.say; }; say 42;
15:17 camelia rakudo-moar b51908: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤0␤1␤2␤3␤4​␤5␤6␤7␤8␤9␤0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤42␤»
15:18 TimToady m: for ^3 { ^10 .map: *.say; Nil }; say 42;
15:18 camelia rakudo-moar b51908: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤0␤1␤2␤3␤4​␤5␤6␤7␤8␤9␤0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤42␤»
15:18 TimToady m: for ^3 { 43 }; say 42;
15:18 camelia rakudo-moar b51908: OUTPUT«WARNINGS for <tmp>:␤Useless use of constant integer 43 in sink context (line 1)␤42␤»
15:18 TimToady it knows it sank, but somehow the map doesn't get it
15:22 dalek doc: 25ca6e8 | (Christopher Bottoms)++ | doc/Language/glossary.pod6:
15:22 dalek doc: minor typo edit
15:22 dalek doc: review: https://github.com/perl6/doc/commit/25ca6e8c68
15:22 dalek doc: 95eeaa2 | (Zoffix Znet)++ | doc/Language/glossary.pod6:
15:22 dalek doc: Merge pull request #730 from molecules/patch-3
15:22 dalek doc:
15:22 dalek doc: minor typo edit
15:22 dalek doc: review: https://github.com/perl6/doc/commit/95eeaa292a
15:23 unmatched} .tell moritz another frequent contributor. I see "Perl 6 member" on them, but they say they can't commit to docs: https://github.com/perl6/doc/pull/730
15:23 yoleaux unmatched}: I'll pass your message to moritz.
15:24 unmatched} m: ^10 .map: *.say;
15:24 camelia rakudo-moar b51908: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤»
15:25 dalek doc: d2cc0ca | (Zoffix Znet)++ | doc/Language/traps.pod6:
15:25 dalek doc: Sunk map is buggy, not lazy
15:25 dalek doc: review: https://github.com/perl6/doc/commit/d2cc0ca663
15:28 unmatched} And found and reopened the RT ticket on that topic: https://rt.perl.org/Ticket/Display.html?id=127879
15:29 noganex joined #perl6
15:31 dalek doc: 5722f79 | (Christopher Bottoms)++ | doc/Language/regexes.pod6:
15:31 dalek doc: syntax correction
15:31 dalek doc:
15:31 dalek doc: Correction replaced second smartmatch with double asterisk. Now the statement is true as advertised.
15:31 dalek doc: review: https://github.com/perl6/doc/commit/5722f79c9c
15:31 dalek doc: 4eafbfe | (Zoffix Znet)++ | doc/Language/regexes.pod6:
15:31 dalek doc: Merge pull request #731 from molecules/patch-3
15:31 perlpilot unmatched}: huh ... I didn't see molecules in the member list, so I added him
15:31 dalek doc:
15:31 dalek doc: syntax correction
15:31 dalek doc: review: https://github.com/perl6/doc/commit/4eafbfe4ce
15:32 unmatched} weird
15:37 erez \quit
15:38 erez left #perl6
15:39 zostay m: my $rx = rx{ 1 }; my $x2 = rx{ $rx };
15:39 camelia rakudo-moar 86843a: ( no output )
15:41 zostay m: my $rx = rx{ 1 }; my $rx2 = rx{ $rx }; say '1' ~~ $rx2
15:41 camelia rakudo-moar 86843a: OUTPUT«True␤»
15:44 avenj joined #perl6
15:44 avenj joined #perl6
15:51 lizmat joined #perl6
15:54 acrussell joined #perl6
15:55 iH2O joined #perl6
15:58 Actualeyes joined #perl6
15:59 harmil Speaking of sink, I'm not convinced that the warning for useless use of iterables in sink context should be a thing. e.g.:
15:59 harmil m: sink ^1000
15:59 camelia rakudo-moar 86843a: OUTPUT«WARNINGS for <tmp>:␤Useless use of "^" in expression "^1000" in sink context (line 1)␤»
15:59 harmil I'm explicitly asking for the expansion of the sequence to be performed and ignored. That's not something that should get a warning, is it?
16:00 jnthn I don't think it's a warning for iterables in general
16:00 jnthn It's for a useless use of the (known pure) range constructor
16:01 jnthn m: sink 1, 1, *+* ... 8
16:01 camelia rakudo-moar 86843a: ( no output )
16:01 jnthn Note no warning there
16:02 harmil m: my @foo = 1,1,*+*...8; sink @foo
16:02 camelia rakudo-moar 86843a: OUTPUT«WARNINGS for <tmp>:␤Useless use of @foo in sink context (line 1)␤»
16:03 jnthn The assignment to the array is already eager in that case
16:05 iH2O left #perl6
16:05 harmil jnthn: that's not why we get the warning. I won't do the version with 8 replaced by * as it never terminates, but it also gives the warning.
16:06 unmatched} m: sink 1, 1, *+* ... *
16:06 camelia rakudo-moar 86843a: OUTPUT«Memory allocation failed; could not allocate 1146880 bytes␤»
16:06 jnthn m: my @foo = 1,1,*+*...8; sink @foo;
16:06 camelia rakudo-moar 86843a: OUTPUT«WARNINGS for <tmp>:␤Useless use of @foo in sink context (line 1)␤»
16:06 jnthn But that terminates.
16:07 harmil It just feels to me as if "sink" means "just do it" and getting a warning that "it" isn't useful just doesn't sit well with me. YMMV.
16:08 jnthn It's not telling you it isn't useful, it's telling you there's nothing to do and you wrote dead code.
16:08 jnthn Which the vast majority of the time implies a confused programmer.
16:09 harmil Except it doesn't know that. @a might be anything, and iterating over it might be extremely useful (e.g. it might do a full read from a DB, and I might be timing that)
16:09 unmatched} m: quietly sink ^1000
16:09 camelia rakudo-moar 86843a: ( no output )
16:09 jnthn m: my @a = lazy gather { say 'we actually run' }; sink @a
16:09 camelia rakudo-moar 86843a: OUTPUT«WARNINGS for <tmp>:␤Useless use of @a in sink context (line 1)␤we actually run␤»
16:10 harmil Nice example.
16:10 unmatched} m: my @a = lazy gather { say 'we actually run' }; quietly sink @a
16:10 camelia rakudo-moar 86843a: OUTPUT«WARNINGS for <tmp>:␤Useless use of @a in sink context (line 1)␤we actually run␤»
16:10 jnthn Yeah, that one is more interesting, but now I want to know why the ... one up above didn't hang
16:10 unmatched} m: my @a = lazy gather { say 'we actually run' }; sink quietly @a
16:10 camelia rakudo-moar 86843a: OUTPUT«WARNINGS for <tmp>:␤Useless use of @a in sink context (line 1)␤we actually run␤»
16:10 jnthn oh wait, 'cus I wrote it wrong
16:10 unmatched} Interesting.
16:11 jnthn m: my @foo = 1,1,*+*...*; sink @foo;
16:11 camelia rakudo-moar 86843a: OUTPUT«(signal SEGV)WARNINGS for <tmp>:␤Useless use of @foo in sink context (line 1)␤»
16:11 jnthn Yeah, I'd agree on a variable it's rather dubious.
16:11 harmil You get the segv award!
16:12 jnthn On sink ^1000 I think it's spot on
16:12 harmil Yeah, at best ^n is just a weird sort of timing test, and I could reasonably expect to have to quiet that manually.
16:12 jnthn But yeah, feel free to file it against the @foo case. That does look a bit bogus
16:12 harmil And I might expect that the optimizer would not be my friend there
16:12 harmil What's the best way to file these days? I always forget. Directly RT or is there a form?
16:13 unmatched} hug[TAB][TAB] damned bot
16:13 jnthn Yeah, I think you can file it directly in RT these days, though email may be the easiest way (address in the REAMDE for Rakudo, or at least it should be)
16:14 ZoffixWin joined #perl6
16:15 huggable joined #perl6
16:15 unmatched} huggable: rakudobug
16:15 huggable unmatched}, To report a bug, email detailed description and any test cases to rakudobug@perl.org or use perl6 query on http://rt.perl.org ; see https://github.com/rakudo/rakudo/#reporting-bugs
16:15 unmatched} Mission accomplished :)
16:15 petercommand joined #perl6
16:19 AlexDaniel joined #perl6
16:20 harmil Done. Even gave it a snappy title.
16:20 jdv79 unmatched}: has any ocd-ish person commented on your nick?
16:20 jdv79 it bothers me slightly
16:21 harmil it's better than matched}
16:21 unmatched} jdv79: you're the first on :)
16:21 unmatched} *one
16:21 jdv79 oh its you.  harmil don't give him ideas!
16:22 unmatched} :)
16:23 unmatched} [matched} is a fun one. Because of IRC protocol's treatment of [ and { :)
16:24 harmil hey. speaking of such things, I was writing some code last night that had to enumerate the pairs of matching brace-like characters from Unicode and I thought there was some way to do that easily in Perl 6, but I can't find it. The Unicode classes Ps/Pe are great for finding them, but not for identifying which go with which....
16:24 jdv79 something like that should be in the setting, right?
16:25 jdv79 its probably a large map of chars literally so should be easy to spot.  maybe.
16:25 unmatched} m: "[".ord.&[+](1).chr.say
16:25 camelia rakudo-moar 86843a: OUTPUT«\␤»
16:26 * unmatched} shrugs
16:28 harmil jdv79: what do you mean by "setting"?
16:28 jnthn m: say chr :16(uniprop('[', 'Bidi_Mirroring_Glyph'))
16:28 camelia rakudo-moar 86843a: OUTPUT«]␤»
16:28 unmatched} :o
16:28 harmil Thanks!
16:29 unmatched} m: say chr :16(uniprop('R', 'Bidi_Mirroring_Glyph'))
16:29 camelia rakudo-moar 86843a: OUTPUT«This call only converts base-16 strings to numbers; value 0 is of type Int, so cannot be converted!␤(If you really wanted to convert 0 to a base-16 string, use 0.base(16) instead.)␤  in block <unit> at <tmp> line 1␤␤»
16:29 itaipu joined #perl6
16:31 lizmat_ joined #perl6
16:33 harmil m: for ^0xffff -> $i { my $c = try { $i.chr }; next if !$c.defined; next unless $c ~~ /<:Ps>/; my $end = :16(uniprop($c, "Bidi_Mirroring_Glyph")); next unless $end.defined; say "$c ~ {$end.chr}"}
16:33 camelia rakudo-moar 59b7e5: OUTPUT«( ~ )␤[ ~ ]␤{ ~ }␤༺ ~ ༻␤༼ ~ ༽␤᚛ ~ ᚜␤⁅ ~ ⁆␤⁽ ~ ⁾␤₍ ~ ₎␤⌈ ~ ⌉␤⌊ ~ ⌋␤〈 ~ 〉␤❨ ~ ❩␤❪ ~ ❫␤❬ ~ ❭␤❮ ~ ❯␤❰ ~ ❱␤❲ ~ ❳␤❴ ~ ❵␤⟅ ~ ⟆␤⟦ ~ ⟧␤⟨ ~ ⟩␤⟪ …»
16:33 harmil Thanks again!
16:33 unmatched} .u ༺
16:33 yoleaux U+0F3A TIBETAN MARK GUG RTAGS GYON [Ps] (༺)
16:34 jnthn Font I am disappoint...quite a lot of boxes for me in the latter part of that
16:34 Actualeyes joined #perl6
16:34 travis-ci joined #perl6
16:34 travis-ci Doc build failed. Zoffix Znet 'Merge pull request #731 from molecules/patch-3
16:34 travis-ci https://travis-ci.org/perl6/doc/builds/146413972 https://github.com/perl6/doc/com​pare/d2cc0ca6633d...4eafbfe4ce9b
16:34 travis-ci left #perl6
16:34 harmil On mac right now. All rendered, amusingly enough.
16:36 harmil Of course, in a Perl context, I have to add <> in manually, but that's fine.
16:36 dalek doc: c6e55ce | (Zoffix Znet)++ | doc/Language/traps.pod6:
16:36 dalek doc: Add missing POD directive
16:36 dalek doc: review: https://github.com/perl6/doc/commit/c6e55cee6b
16:40 sno joined #perl6
16:42 gfldex where are the docs for META.info?
16:42 unmatched} Maybe in Modules
16:42 ugexe meta6.json is documented in s22
16:42 stmuk it's in one of the "design" docs
16:42 stmuk yeah
16:43 canopus joined #perl6
16:43 unmatched} I don't think that's up to date
16:44 unmatched} Like the `resources` https://design.perl6.org/S22.html#resources
16:44 ugexe only resources
16:45 unmatched} What about `support`? I may be misremembering, but our tooling would break if it's missing. Yet, it's marked as optional
16:45 gfldex there is a module called META6
16:45 ugexe afaik everything works without it
16:46 cdg joined #perl6
16:51 ugexe sub META6(%meta (:$perl, :$name, :$version, :$auth, *%)) { ...; %meta }
16:52 ugexe thats what i usually use
16:52 iH2O joined #perl6
16:53 ugexe well, :$perl!, :$name!, etc
16:54 travis-ci joined #perl6
16:54 travis-ci Doc build failed. Zoffix Znet 'Sunk map is buggy, not lazy'
16:54 travis-ci https://travis-ci.org/perl6/doc/builds/146424682 https://github.com/perl6/doc/com​pare/95eeaa292a48...d2cc0ca6633d
16:54 travis-ci left #perl6
16:55 tbrowder I'm submitting a doc PR describing the current state of table pod here <https://github.com/perl6/doc/pull/733>; I will merge it after a good Travis run (fingers crossed--it worked on my local host) unless there are comments before hand
16:55 jmiven joined #perl6
16:55 TimToady I think the warning needs to stay on @foo, since it points out the problem with 'say @foo or @bar'
16:56 TimToady we might consider turning off the warning inside an explict "sink"
16:57 TimToady m: my @foo = 1,2,3; my @bar = 4,5,6; say @foo or @bar
16:57 camelia rakudo-moar 59b7e5: OUTPUT«[1 2 3]␤»
16:57 lizmat joined #perl6
16:57 TimToady hmm
16:58 TimToady m: my @foo = 1,2,3; my @bar = 4,5,6; say @foo or @bar; 42
16:58 camelia rakudo-moar 59b7e5: OUTPUT«WARNINGS for <tmp>:␤Useless use of constant integer 42 in sink context (line 1)␤[1 2 3]␤»
16:58 unmatched} m: my @foo; my @bar = 4,5,6; say @foo or @bar
16:58 camelia rakudo-moar 59b7e5: OUTPUT«[]␤»
16:58 unmatched} m: my @foo; my @bar = 4,5,6; say @foo and @bar
16:58 camelia rakudo-moar 59b7e5: OUTPUT«[]␤»
16:58 TimToady that's probably a sink propagation error there
16:59 TimToady m: my @foo = 1,2,3; my @bar = 4,5,6; say @foo or 42
16:59 camelia rakudo-moar 59b7e5: OUTPUT«[1 2 3]␤»
16:59 TimToady yeah, that should probably propagate to the right side
17:00 TimToady m: my @foo = 1,2,3; my @bar = 4,5,6; (say @foo), @bar; 42
17:00 camelia rakudo-moar 59b7e5: OUTPUT«WARNINGS for <tmp>:␤Useless use of constant integer 42 in sink context (line 1)␤[1 2 3]␤»
17:00 gfldex m: my Str $s; my @a = quietly $s.split: ','; dd @a;
17:00 TimToady m: my @foo = 1,2,3; @foo
17:00 camelia rakudo-moar 59b7e5: OUTPUT«Array @a = [""]␤»
17:00 camelia rakudo-moar 59b7e5: OUTPUT«WARNINGS for <tmp>:␤Useless use of @foo in sink context (line 1)␤»
17:00 TimToady dunno why , isn't propagating, it's supposed to
17:01 TimToady m: my @foo = 1,2,3; my @bar = 4,5,6; (say @foo), 42
17:01 camelia rakudo-moar 59b7e5: OUTPUT«WARNINGS for <tmp>:␤Useless use of constant integer 42 in sink context (lines 1, 1)␤[1 2 3]␤»
17:01 iH2O left #perl6
17:01 gfldex i'm not sure if splitting an undefined value should result in the empty string
17:05 TimToady m: Int.split(',').say
17:05 camelia rakudo-moar 59b7e5: OUTPUT«Use of uninitialized value of type Int in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in block <unit> at <tmp> line 1␤()␤»
17:06 unmatched} m: my Str $s; my @a = quietly "".split: ','; dd @a;
17:06 camelia rakudo-moar 59b7e5: OUTPUT«Array @a = [""]␤»
17:06 unmatched} Kinda makes sense if you squint :)
17:06 unmatched} the sense making part being the uninitilized Str is an empty Str
17:07 unmatched} s/is/treated as/;
17:07 firstdayonthejob joined #perl6
17:07 TimToady dinner &
17:07 kid51 joined #perl6
17:07 travis-ci joined #perl6
17:07 travis-ci Doc build passed. Zoffix Znet 'Add missing POD directive'
17:07 travis-ci https://travis-ci.org/perl6/doc/builds/146426610 https://github.com/perl6/doc/com​pare/4eafbfe4ce9b...c6e55cee6b08
17:07 travis-ci left #perl6
17:20 firstdayonthejob joined #perl6
17:24 [Sno] joined #perl6
17:27 cdg joined #perl6
17:35 tbrowder my PR is failing due to:
17:35 tbrowder https://www.irccloud.com/pastebin/YqJ46nA3/
17:36 tbrowder explain to me how a new doc can fail that test?
17:36 tbrowder ...looking at the test...
17:37 unmatched} tbrowder: you have lines that have trailling whitespace in your document.
17:37 unmatched} IMO it's a stupid test that just wastes everyone's time, but the concensus so far seems to be that we need it.
17:37 unmatched} huggable: whitespace
17:37 huggable unmatched}, nothing found
17:38 harmil Looks like only some of those bracketing characters we were talking about earlier are allowed in P6. See http://pastebin.com/xHfKUM3A
17:38 harmil For example "Cannot parse quoting q⸨ foo ⸩"
17:39 unmatched} tbrowder: perl -pi -e 's/\s+/\n/' doc/Language/tables.pod6     # should strip everything; untested tho
17:39 unmatched} oops
17:39 unmatched} tbrowder: perl -pi -e 's/\s+$/\n/' doc/Language/tables.pod6     # should strip everything; untested tho
17:39 tbrowder okay, the test name i think is misleading, it shoul be something like "no trailing whitespace allowed"
17:40 tbrowder and I need to fix my new emacs editor to do that anyway :)
17:40 setty1 joined #perl6
17:40 unmatched} IMO, it's ok. `ok - no trailing whitespace`  `nok - no trailing whitespace FAILED Blah blah`
17:42 tbrowder well the travis message is: "Failed test 'no trailing whitespace in doc/Language/tables.pod6'"
17:42 tbrowder So a sloppy reader (as I am wont to be) immediatelky thinks ????
17:43 tbrowder So a sloppy reader (as I am wont to be) immediately thinks "why do I need trailing whitespace???"
17:43 user9 joined #perl6
17:43 unmatched} :)
17:44 tbrowder anyhoo, I'll fix it...
17:44 gfldex trailing WS can technically lead to broken links
17:45 dalek doc: a8a0ef7 | (Zoffix Znet)++ | t/trailing_whitespace.t:
17:45 dalek doc: Improve trailing whitespace message
17:45 dalek doc:
17:45 dalek doc: Ref: http://irclog.perlgeek.de/p​erl6/2016-07-21#i_12882363
17:45 dalek doc: review: https://github.com/perl6/doc/commit/a8a0ef792a
17:45 unmatched} gfldex: which can technically be caught by link checkers :)
17:45 tbrowder believe me, I am a firm believer in NO trailing WS, it's just that I recently moved from a 20-year XEmacs run to emacs and I'm still find weirdisms, such as my trainging WS zapper is not working...
17:46 unmatched} So far, I've seen this test just waste people's time without offering much benefit.
17:46 gfldex there may be other issues too as the pod parser doesn't kill trailing WS anywhere
17:47 jameslenz joined #perl6
17:47 unmatched} And "run make test before pushing" isn't a good enough excuse, because personally, I do most of my doc commits in the browser.
17:48 tbrowder that could be an issue with WS-col-separated tables, but my grand table pod fix should take care of that
17:49 ugexe just need a whitespaceable to detect whitespace failures and automatically send a commit to the PR with the spaces fixed
17:50 tbrowder i'm not making an excuse, just don't think about that ws test
17:56 mtj_ joined #perl6
17:56 harmil BTW: Since it's a timely reddit thing, and punnishingly dove-tails with the previous topic, it's my assertion that this code should detect that I'm being stupid: time perl6 -e 'my $c = (" " x 10000) ~ "end"; for 1..10 -> $i { $c ~~ /\s+$/ }'
17:56 harmil It should also do so without checking my username :)
17:57 ugexe how could it know? any object can have its own behavior for ~~ with a .ACCEPTS methods
17:58 unmatched} It could say "unused $i" or whatever
17:58 unmatched} I think Perl 5 does that
17:58 harmil I think that the regex engine should notice that I'm asking for an end-anchored match and quickly check to see if it can't succeed. I think P5 does this, doesn't it?
17:58 unmatched} Oh, never mind it doesn't.
17:59 harmil Try running that. It takes about a minute.
17:59 unmatched} harmil: wait, what's the stupid part you mean? That you're using $i as the loop var yet regex matching against $c?
17:59 unmatched} I mean... that $i is unused.
18:00 pyrimidine joined #perl6
18:00 harmil No, the stupid is that I'm doing an end-anchored regex against a string that will invoke pathological backtracking.
18:01 * unmatched} has no idea what that means
18:02 harmil I'm matching \s+$ against a string that's 10,000 spaces followed by "end". Perl looks at all of the spaces together checks for end of string, fails. backtracks to 9,999 spaces and checks for end, fails... and so on.
18:03 adrusi joined #perl6
18:03 AndyBotwin joined #perl6
18:04 harmil perl5-porters had a huge discussion about this way back in the day... I had trouble finding it. It was in the context of a paper that compared DFA/NFA regex matching.
18:04 unmatched} Why is this also slow?   my $c = (" " x 10000) ~ "end"; for 1..10 -> $i { $c ~~ /\s+:$/ }
18:05 harmil Good question
18:05 harmil Horrifyingly, that's actually SLOWER!
18:06 timotimo when you run a regex against a string, its ropes will be collapsed
18:06 sunnavy joined #perl6
18:06 unmatched} .oO( regex have ropes... ? )
18:06 timotimo so the moment you run that regex on it, it'll allocate the space for those 10_000 spaces, forgetting it was once a coherent bunch of spaces
18:06 harmil m: ((" " x 10000) ~ "end") ~~ /\s+$/
18:06 camelia rakudo-moar 68afa3: ( no output )
18:06 timotimo "its ropes" meaning the string's ropes, not the regexes ropes :)
18:07 unmatched} .oO( strings have ropes... ? )
18:07 unmatched} What ropes?
18:07 timotimo basically a tree-like structure containing substrings and repetitions
18:08 timotimo so (" " x 10000) ~ "end" is actually stored in memory as "10 thousand times a space, then the string 'end'"
18:08 harmil Ah!
18:08 unmatched} Oh
18:08 timotimo and when it gets collapsed, it turns into a ~10 kilobyte region in merory containing a crapton of spaces, and then the word "end"
18:09 unmatched} So you're saying it's not the regex that's slow by this rope collapsing is slow?
18:09 timotimo ropes are what allows us to use the ~ operator in a loop and not have terrible performance, because we're not copying the big/growing part of the string over and over and over and over again
18:09 unmatched} s/by/but/;
18:09 timotimo oh, regexes are still kind of slow :)
18:09 timotimo but the collapsing coud take a bit of time, too
18:09 harmil I don't think that's it. Unless I misunderstand the semantics of str vs Str: I tried: time perl6 -e 'my str $c = (" " x 10000) ~ "end"; $c ~~ /\s+:$/'
18:10 timotimo m: use nqp; nqp::flattenropes(" " x 10000); say now - INIT now
18:10 camelia rakudo-moar 68afa3: OUTPUT«===SORRY!===␤No registered operation handler for 'flattenropes'␤»
18:10 timotimo ah, we don't expose that as an nqp:: op, it seems like?
18:10 spider-mario joined #perl6
18:10 timotimo m: use nqp; (" " x 10000) ~~ / " " /; say now - INIT now
18:10 camelia rakudo-moar 68afa3: OUTPUT«0.0018640␤»
18:10 harmil Oh, so even at the nqp level these exist, so str probably has the same behavior?
18:10 unmatched} This is probably the reason for some tickets I've seen that say str is slower than Str.
18:10 timotimo m: use nqp; ((" " x 10000) ~ "end") ~~ / \s+$ /; say now - INIT now
18:11 camelia rakudo-moar 68afa3: OUTPUT«10.1804368␤»
18:11 timotimo ah. no. it's definitely the regex :)
18:11 unmatched} m: use nqp; ((" " x 10000) ~ "end") ~~ / \s+ /; say now - INIT now
18:11 camelia rakudo-moar 68afa3: OUTPUT«0.00351346␤»
18:11 harmil nice test case, though!
18:11 timotimo our regex optimizer is dumb as bricks ;)
18:11 harmil I'll submit this. At least it will be useful as a note for the future.
18:12 unmatched} timotimo: does this roping hapen with `str`?
18:12 timotimo yes, but Str is just a boxed str
18:12 timotimo so it happens with Str, too
18:12 unmatched} ah
18:12 araujo joined #perl6
18:13 araujo joined #perl6
18:13 araujo joined #perl6
18:14 pecastro joined #perl6
18:15 harmil For some reason, I thought that Str was a lot more magical that that, and str was just a unicode-step-up from a buf.
18:16 sufrostico joined #perl6
18:17 FROGGS joined #perl6
18:17 TreyHarr1 joined #perl6
18:20 hankache joined #perl6
18:22 [Coke] (perl6 doc) I don't care if someone adds the ending whitespace test to a 'make xtest' or something.
18:24 sno joined #perl6
18:24 dalek doc: 53caa54 | (Brian Duggan)++ | README.md:
18:24 dalek doc: README example needs PERL6LIB to be set
18:24 dalek doc: review: https://github.com/perl6/doc/commit/53caa54af9
18:24 dalek doc: 89e63e7 | (Brian Duggan)++ | / (2 files):
18:24 dalek doc: search .
18:24 dalek doc: review: https://github.com/perl6/doc/commit/89e63e7106
18:24 dalek doc: c7b3869 | (Brian Duggan)++ | bin/p6doc:
18:24 dalek doc: slip
18:24 dalek doc: review: https://github.com/perl6/doc/commit/c7b38698f8
18:24 dalek doc: cc8cdc7 | (Zoffix Znet)++ | bin/p6doc:
18:24 dalek doc: Merge pull request #714 from bduggan/fix-readme-example
18:24 dalek doc:
18:24 dalek doc: README example needs PERL6LIB to be set
18:24 dalek doc: review: https://github.com/perl6/doc/commit/cc8cdc7886
18:24 timotimo nope, str is The Real Deal
18:27 TreyHarr1 joined #perl6
18:30 dalek doc/glossary-cleanup: f0ac523 | Altai-man++ | doc/Language/glossary.pod6:
18:30 dalek doc/glossary-cleanup: Deletion of content!
18:30 dalek doc/glossary-cleanup:
18:30 dalek doc/glossary-cleanup: According to https://github.com/perl6/doc/issues/728, this commit removes glossary items which are already
18:30 dalek doc/glossary-cleanup: greatly described on different resourses like Wikipedia and are not Perl6-specific.
18:30 dalek doc/glossary-cleanup: review: https://github.com/perl6/doc/commit/f0ac5232a7
18:30 dalek doc/glossary-cleanup: 7dbcc55 | Altai-man++ | doc/ (7 files):
18:30 dalek doc/glossary-cleanup: Content deletion!
18:30 dalek doc/glossary-cleanup:
18:30 dalek doc/glossary-cleanup: This is a second commit for https://github.com/perl6/doc/issues/728, where items that are already described
18:30 dalek doc/glossary-cleanup: elsewhere were removed from Glossary page.
18:30 dalek doc/glossary-cleanup: review: https://github.com/perl6/doc/commit/7dbcc552be
18:30 araujo_ joined #perl6
18:33 lizmat joined #perl6
18:40 domidumont joined #perl6
18:42 jonas1 joined #perl6
18:42 Ven joined #perl6
18:54 dalek doc: d023313 | (Tom Browder)++ | doc/Language/tables.pod6:
18:54 dalek doc: add new doc about current state of p6 table pod
18:54 dalek doc: review: https://github.com/perl6/doc/commit/d02331310c
18:54 dalek doc: 1d58889 | (Tom Browder)++ | doc/Language/tables.pod6:
18:54 dalek doc: remove trailing ws
18:54 dalek doc: review: https://github.com/perl6/doc/commit/1d588899f1
18:54 dalek doc: 6c2c869 | (Tom Browder)++ | doc/Language/tables.pod6:
18:54 dalek doc: Merge pull request #733 from tbrowder/pod-tables
18:54 dalek doc:
18:54 dalek doc: add new doc about current state of p6 table pod
18:54 dalek doc: review: https://github.com/perl6/doc/commit/6c2c869909
18:57 Guest66 joined #perl6
19:04 kid511 joined #perl6
19:11 Amnez777 joined #perl6
19:20 khagan joined #perl6
19:21 araujo__ joined #perl6
19:30 dalek doc/glossary-cleanup: 68ec049 | (Christopher Bottoms)++ | doc/Language/glossary.pod6:
19:30 dalek doc/glossary-cleanup: Added =end pod
19:30 dalek doc/glossary-cleanup: review: https://github.com/perl6/doc/commit/68ec04997b
19:38 [Coke] latest recommend p6 module for a simple dynamic web app?
19:38 unmatched} Inline::Perl5 + Mojolicious :P
19:39 unmatched} I think people (masak) had luck with HTTP::Server::Tiny
19:39 sena_kun joined #perl6
19:39 sno joined #perl6
19:42 addison joined #perl6
19:43 labster joined #perl6
19:43 brrt joined #perl6
19:45 dalek doc: 8053deb | (Tom Browder)++ | doc/Language/tables.pod6:
19:45 dalek doc: fix typo
19:45 dalek doc: review: https://github.com/perl6/doc/commit/8053deb002
19:48 El_Che [Coke]: I think you question is a popular one. I asked it myself and I have seen people popping in asking the same question
19:49 unmatched} ditto
19:49 unmatched} Someone smart should hack up an awesome web framework :D
19:49 ugexe inline::perl5 + CGI.pm
19:49 * unmatched} throws up
19:50 El_Che where is the big trout
20:02 perlpilot DrForr's Prancer looked nice, but I don't see it on modules.perl6.org
20:03 perlpilot I was planning on playing with HTTP::Server::Tiny myself
20:03 avenj joined #perl6
20:03 avenj joined #perl6
20:03 perlpilot (probably because of something masak wrote about it :)
20:04 lizmat decommute&
20:04 [Coke] .... eh, this is a pre-POC. mojo5 it is, for a few days, at least.
20:15 huggable joined #perl6
20:25 jdv79 i would have liked a mojo6 but someone ran sri out of here so thanks for that
20:29 timotimo o_O
20:30 unmatched} pfft... he was saying Perl 6 had no chance of success long before that
20:30 araujo_ joined #perl6
20:30 unmatched} In fact, the whole storming out of here looked more of an excuse to leave.
20:31 jdv79 maybe he'll be back someday
20:32 mspo CGI is a perfectly good protocol
20:32 timotimo i didn't even see all that
20:33 unmatched} And the reason for his storming out is [Coke] basically saying "then why are you here?" after he was going on and on about why Perl 6 sucks: http://irclog.perlgeek.de/p​erl6/2016-01-08#i_11853185
20:33 unmatched} I wouldn't exactly call that "running someone out"
20:36 moritz m: await Promise.anyof(Promise.in(1), start { 42 }).then({ say .result })
20:36 yoleaux 15:23Z <unmatched}> moritz: another frequent contributor. I see "Perl 6 member" on them, but they say they can't commit to docs: https://github.com/perl6/doc/pull/730
20:36 camelia rakudo-moar d789da: OUTPUT«True␤»
20:37 moritz unmatched}: I'm pretty sure they can, just haven't realized it, or still likes pull requests
20:37 timotimo hmm
20:37 moritz how do I actually get the promise that was fulfilled?
20:38 timotimo you'd keep the promises in variables, i expect
20:38 moritz don't we have a first() or race() or so for promises?
20:39 timotimo with whenever you can do that
20:41 nightfrog joined #perl6
20:41 brrt hmmm
20:42 moritz whenever needs a supply
20:45 timotimo it can't work with promises at all?
20:45 timotimo but you know that you can coerce a promise into a supply?
20:45 timotimo at least i think you can
20:45 brrt it remains a real shame that perl6 has proven to be so divisive
20:46 brrt .. that said, i think that the goal of 'a more perlish perl' has been achieved
20:46 timotimo m: react { whenever Promise.in(1) { say "timeout"; last }; whenever (start { 42 }) { .say } }; say "done"
20:46 camelia rakudo-moar d789da: OUTPUT«42␤timeout␤done␤»
20:46 timotimo m: react { whenever Promise.in(1) { say "timeout"; last }; whenever (start { 42 }) { .say; last } }; say "done"
20:46 timotimo oh, that's not the right one
20:46 camelia rakudo-moar d789da: OUTPUT«(timeout)42␤»
20:46 timotimo m: react { whenever Promise.in(1) { say "timeout"; done }; whenever (start { 42 }) { .say; done } }; say "done"
20:46 camelia rakudo-moar d789da: OUTPUT«42␤done␤»
20:47 timotimo i wanted done, not last, because last is for the whenever, not for the react
20:51 dalek doc: 97cd5ed | (Sterling Hanenkamp)++ | doc/Language/traps.pod6:
20:51 dalek doc: Adding docs for the named parameter trap (#734)
20:51 dalek doc: review: https://github.com/perl6/doc/commit/97cd5ed355
20:52 AlexDaniel hmm didn't really mean to squash there but it's ok
20:55 pmqs joined #perl6
20:57 moritz http://www.perlmonks.org/?node_id=1168103 better solutions would be very welcome
20:58 dvinciguerra_ joined #perl6
20:59 timotimo moritz: i bet we have a Supply combinator that does individual timeouts per "message"
20:59 TEttinger joined #perl6
21:01 nbg joined #perl6
21:02 sufrosti1o joined #perl6
21:04 domidumont joined #perl6
21:06 perlpilot moritz: you suggested what I would have.   So we're at least equally bad at concurrency  ;)
21:08 moritz https://gist.github.com/moritz/e​632e4df754efe12fa7ef69d10e12e62 is my current attempt, but it doesn't print anything
21:09 moritz $source.tap(&say) does print the messages as expected
21:11 sno joined #perl6
21:13 timotimo moritz: i'd totally write sub source as a supply block with whenevers, but we really don't have a supply that fires at random intervals ...
21:13 moritz and the Heartbeat supplie also emits once
21:14 moritz timotimo: sub source, albeit clunky, isn't the problem
21:14 moritz the problem is that whenever $source.zip-latest($heartbeat) { } never fires
21:15 timotimo you probably want a :partial or what it's called?
21:15 timotimo or ... is that exactly what zip-latest does?
21:15 timotimo ah, you probably need a :initial?
21:15 moritz https://docs.perl6.org/typ​e/Supply#method_zip-latest
21:17 moritz is this a bug in zip-latest
21:21 timotimo By default, all supplies have to have at least one value emitted on them before the first combined values is emitted on the resulting supply.  - that's what i meant
21:22 moritz but, each of them emit eat least one value
21:22 moritz *at least
21:37 moritz oh wow, it gets weirder and weirder
21:38 moritz http://perlpunks.de/paste/show/579140e7.765d.d8
21:40 kevina joined #perl6
21:40 timotimo wow, that seems really b0rked
21:40 * moritz submits rakudobug
21:43 moritz I hadn't check perlmonks for a few months, and now two Perl 6 questions within the last 4 days. Nice.
21:43 * timotimo has to go to bed
21:44 * moritz too
21:44 moritz should have gone an hour ago
22:07 avenj joined #perl6
22:07 avenj joined #perl6
22:20 Sgeo joined #perl6
22:22 lizmat joined #perl6
22:24 addison joined #perl6
22:24 kurahaupo joined #perl6
22:29 TreyHarr1 joined #perl6
22:41 cyphase joined #perl6
22:43 tbrowder left #perl6
22:49 TreyHarr1 joined #perl6
22:55 Zoffix joined #perl6
22:56 Guest66 joined #perl6
22:56 P6fr Hello
22:56 Zoffix m: say IO::Pipe.^can('close')
22:56 ovibos hello!
22:56 camelia rakudo-moar d789da: OUTPUT«()␤»
22:57 Zoffix How come that's empty? Proc's .out returns an IO::Pipe and you can call .close on it
22:57 Zoffix I wanna find where in the sauce .close is defined
22:58 gfldex m: dd IO::Pipe.^parents
22:58 camelia rakudo-moar d789da: OUTPUT«(RESTRICTED-CLASS,)␤»
22:58 Zoffix Ah, camelia is restricted. gfldex++
22:59 P6fr you use any editor for perl ? (using what editor ? this is how you say? i'm speak french)
22:59 gfldex Zoffix: looks like src/core/IO/Handle.pm
23:00 P6fr atom ? vim ?
23:00 Zoffix Thanks
23:00 gfldex many of the core devs use vim
23:00 Zoffix P6fr, atom, but I hate it. When Sublime Text 2 will support Perl 6 highlighting, I'll use that
23:00 jdv79 whatever you want.  notepad works:)
23:01 P6fr me too Zoffix
23:01 gfldex there is no syntax highlighter right now that works properly
23:01 Zoffix atom's works fine.
23:02 Zoffix Well, not the default one. MadcapJake's one
23:02 gfldex i switched it off, because quote constructs seam to be very confusing
23:02 P6fr atom is not perfect in syntax highlighter P6
23:02 jdv79 i thought the vim one was close
23:02 Zoffix https://github.com/MadcapJake/language-perl6fe/
23:02 gfldex the vim one is quite good but also quite slow.
23:02 Zoffix P6fr, do you have perl6fe package enabled? Enable perl6fe and disable 'perl' or whatever it's called.
23:02 P6fr yes
23:02 jdv79 oh
23:02 P6fr audrey tang <3
23:02 P6fr lol
23:03 jdv79 maybe just embed a p6 runtime in vim eventually but that seems sad
23:03 P6fr perl6fe recognize .elems but not .words
23:03 jdv79 and eclipsish
23:04 Zoffix P6fr, well, it's opensource. Report it on https://github.com/MadcapJake/language-perl6fe/ or better yet, send a PR
23:04 Zoffix P6fr, seems one just has to add `words` to this list: https://github.com/zoffixznet/language-p​erl6fe/blob/5de6764c6ee45040e3ade68e1ba2​a9ddb5ef0525/grammars/perl6fe.cson#L941
23:05 Zoffix Err.. Right place, but wrong repo/commit :)
23:05 P6fr haaaaaa
23:05 P6fr ok fine
23:05 P6fr i want perl6fe on sublimtext
23:05 P6fr i hate atom
23:05 P6fr :(
23:06 gfldex to highlight .words propery a highlighter would need to know if a class is a subclass of Any or Mu. In the latter case .words is not defined. I strongly doubt they will be able to any time soon.
23:07 Zoffix That seems to expect too much from a syntax highlighter.
23:07 P6fr ok
23:09 jdv79 so p6 can be parsed easierly than p5 but not highlighted?
23:09 gfldex m: my %h = :1th; say "abc{%h{"th"}}";
23:09 camelia rakudo-moar d789da: OUTPUT«abc1␤»
23:10 Zoffix left #perl6
23:10 Vitrifur joined #perl6
23:11 gfldex jdv79: the highlighter has to keep track of a lot of stuff. The term:<> for instance. That can be pretty much anything.
23:12 dalek doc/glossary-cleanup: 5a2be58 | Altai-man++ | doc/ (7 files):
23:12 dalek doc/glossary-cleanup: Content deletion!
23:12 dalek doc/glossary-cleanup:
23:12 dalek doc/glossary-cleanup: This is a second commit for https://github.com/perl6/doc/issues/728, where items that are already described
23:12 dalek doc/glossary-cleanup: elsewhere were removed from Glossary page.
23:12 dalek doc/glossary-cleanup: review: https://github.com/perl6/doc/commit/5a2be588ae
23:12 dalek doc/glossary-cleanup: 3dd04db | (Christopher Bottoms)++ | doc/Language/glossary.pod6:
23:12 dalek doc/glossary-cleanup: Added =end pod
23:12 dalek doc/glossary-cleanup: review: https://github.com/perl6/doc/commit/3dd04db86b
23:13 avenj joined #perl6
23:13 avenj joined #perl6
23:14 gfldex m: my $short-var = 1; say "abc$short-vardef";
23:14 camelia rakudo-moar d789da: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$short-vardef' is not declared. Did you mean '$short-var'?␤at <tmp>:1␤------> 3my $short-var = 1; say "abc7⏏5$short-vardef";␤»
23:16 gfldex syntax highlighter would be super useful if they would reliably show interpolation in tricky situations. They don't.
23:16 jack_rabbit joined #perl6
23:20 jdv79 its gonna require a runtime
23:20 travis-ci joined #perl6
23:20 travis-ci Doc build failed. Christopher Bottoms 'Added =end pod'
23:20 travis-ci https://travis-ci.org/perl6/doc/builds/146519970 https://github.com/perl6/doc/com​pare/68ec04997bac...3dd04db86b5b
23:20 travis-ci left #perl6
23:21 Guest66 joined #perl6
23:25 mr-foobar joined #perl6
23:35 gfldex the docs build fine, travis is late again
23:38 cdg_ joined #perl6
23:43 sena_kun gfldex, only pure branch failed(since I forked it from broken commit), merged version is okay. If you're interested in this updated pull-request, can we merge it? It seems nobody is against removing of already explained items.
23:44 dalek doc: 5a2be58 | Altai-man++ | doc/ (7 files):
23:44 dalek doc: Content deletion!
23:44 dalek doc:
23:44 dalek doc: This is a second commit for https://github.com/perl6/doc/issues/728, where items that are already described
23:44 dalek doc: elsewhere were removed from Glossary page.
23:44 dalek doc: review: https://github.com/perl6/doc/commit/5a2be588ae
23:44 dalek doc: 3dd04db | (Christopher Bottoms)++ | doc/Language/glossary.pod6:
23:44 dalek doc: Added =end pod
23:44 dalek doc: review: https://github.com/perl6/doc/commit/3dd04db86b
23:44 dalek doc: babf163 | (Wenzel P. P. Peppmeyer)++ | doc/ (7 files):
23:44 dalek doc: Merge pull request #735 from perl6/glossary-cleanup
23:44 dalek doc:
23:44 dalek doc: Glossary cleanup
23:44 dalek doc: review: https://github.com/perl6/doc/commit/babf1637ca
23:44 gfldex sena_kun: i'm doing a local build right now and will fix any problems
23:46 sena_kun gfldex, thanks! I will delete glossary-cleanup branch then.
23:46 aries_liuxueyang joined #perl6
23:52 gfldex sena_kun: build is fine and looks good
23:54 sena_kun I somewhat updated list, but I noticed one thing: I accidently "left behind" JIT and JVM definitions. Previously they point to wikipedia. Should I restore them?
23:54 kurahaupo joined #perl6
23:55 dalek doc: 21f0685 | (Zoffix Znet)++ | doc/Type/IO/Pipe.pod6:
23:55 dalek doc: Document IO::Pipe's .close method
23:55 dalek doc: review: https://github.com/perl6/doc/commit/21f0685912
23:57 sena_kun gfldex, ^
23:57 dalek doc: 7e00611 | (Zoffix Znet)++ | doc/Language/traps.pod6:
23:57 dalek doc: use shorter line length for code example
23:57 dalek doc: review: https://github.com/perl6/doc/commit/7e006117ff

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

Perl 6 | Reference Documentation | Rakudo