»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
buggable 🎺🎺🎺 It's time for the monthly Accidental /win Lottery 😍😍😍 We have 6 ballots submitted by 6 users! DRUM ROLL PLEASE!... 00:00
And the winning number is 14! Congratulations to jast! You win a roll of duck tape!
Geth doc: 1038e87562 | (Tom Browder)++ | doc/Language/tables.pod6
use non-breaking spaces
doc: dba00e4572 | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/tables.pod6
Merge pull request #1694 from tbrowder/table-talk

use non-breaking spaces
synopsebot Link: doc.perl6.org/language/tables
Zoffix Way to go, jast :)
What time is it?
Iiiiiiiiiiiiiiiitttt'ssss 2017 ADVENT TIME \o/ \o/ 00:01
Zoffix Perl 6 2017 Advent Day 1 post: "The Grinch of Perl 6: A Practical Guide to Ruining Christmas": perl6advent.wordpress.com/2017/12/...christmas/ 00:01
Herby_ o/ 00:04
Zoffix \o 00:05
Zoffix calls it a day 00:10
Slayerk m: my @n; my $ns := 1, 2 ... 20; loop (my $i = 1; $i < 100000; $i++) { if $i %% $nns[^20].all { @n.push($i); }}say @n 00:12
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '$nns' is not declared. Did you mean '$ns'?
at <tmp>:1
------> 3= 1; $i < 100000; $i++) { if $i %% 7⏏5$nns[^20].all { @n.push($i); }}say @
Slayerk Oops
m: my @n; my $ns := 1, 2 ... 20; loop (my $i = 1; $i < 100000; $i++) {if $i %% $ns[^20].all { @n.push($i); }}say @n; 00:13
camelia 5===SORRY!5=== Error while compiling <tmp>
Strange text after block (missing semicolon or comma?)
at <tmp>:1
------> 3$i %% $ns[^20].all { @n.push($i); }}7⏏5say @n;
Slayerk m: my @n; my $ns := 1, 2 ... 20; loop (my $i = 1; $i < 100000; $i++) {if $i %% $ns[^20].all { @n.push($i); }} say @n; 00:14
camelia 5===SORRY!5=== Error while compiling <tmp>
Strange text after block (missing semicolon or comma?)
at <tmp>:1
------> 3$i %% $ns[^20].all { @n.push($i); }}7⏏5 say @n;
geekosaur if you're putting it all on one line like that, you need more semicolons 00:15
} at the end of a line (or before another }) inserts a semicolon for you
Slayerk Okay, maybe 4th time lucky
geekosaur also, if you're just noodling around (or testing before presenting code to ask a question), consider: /query camelia 00:16
Slayerk Ah, thanks :P 00:17
Slayerk Is there a way to estimate how long some code should take to execute? 00:22
lookatme o/ 00:25
Herby_ lookatme: o/
lookatme haha 00:26
Herby_ For those that don't know: Advent of Code kicks off in 4.5 hours! 00:31
adventofcode.com/ 00:32
a fun series of programming puzzles
speaking of advent, I'm excited to read the first perl 6 advent calendar topic 00:33
lookatme That site is about Perl6 ? 00:35
captain-adequate Looks cool. 00:37
Herby_ lookatme: nope, people solve the puzzles with all sorts of programming languages
I participated last year, was a lot of fun 00:38
lookatme Oh
Herby_ there is a subreddit for it where people post solutions: www.reddit.com/r/adventofcode/
Geth ecosystem: a965a84ebc | (Zoffix Znet)++ (committed using GitHub Web editor) | META.list
Add Proxee.pm6 to ecosystem

  "A more usable Proxy with bells":
  - Easy Coercer Proxies
  - Simplified interface for a regular Proxy
  - Ability to use automatic storage
  github.com/zoffixznet/perl6-Proxee
00:55
captain-adequate Yay... My advent calendar just arrived. 01:49
SmokeMachine m: gist.github.com/FCO/5283312f055b28...990a7a4f25 03:05
camelia ===SORRY!===
Could not find Grammar::Tracer at line 1 in:
/home/camelia/.perl6
/home/camelia/rakudo-m-inst-1/share/perl6/site
/home/camelia/rakudo-m-inst-1/share/perl6/vendor
/home/camelia/rakudo-m-inst-1/share/perl6
Co…
SmokeMachine m: gist.github.com/FCO/5283312f055b28...990a7a4f25 03:06
camelia ===SORRY!===
Something went wrong in (NoMatch)
SmokeMachine it works if its not a slang... any idea why it doesn't when its a slang?
SmokeMachine m: gist.github.com/FCO/b184fd90cf8913...025890c820 03:08
camelia 「<head>bla<br /><form>bla: <input /></form></head>」
p6x-xml => 「<head>bla<br /><form>bla: <input /></form></head>」
p6x-tag => 「<head>bla<br /><form>bla: <input /></form></head>」
p6x-open-close-tag => 「<head>bla<br /><form>bla…
lookatme Can not access gist :( 03:16
SmokeMachine www.irccloud.com/pastebin/UKBXgzyk 03:29
Or pasted.co/b3b83f3e 03:30
lookatme First one ok
lookatme The code looks awesome 03:32
Herby__ in python, you can have a something be: self.string = None 04:25
what is 'None' in perl 6?
geekosaur Str 04:37
that is, it's a type object
(Any should also work)
Herby__ geekosaur: thanks
i'm looking at some python code that looks like: self._part(name, [], None, clean)
geekosaur m: my Str $a = 'foo'; $a = Str; dd $a 04:38
camelia Str $a = Str
Herby__ so in p6, it might look like: self!part($name, (), Any, $clean) ?
geekosaur generally we prefer the most specific typed undefined applicable
so it depends
(since types help the compiler catch mistakes) 04:39
Herby__ gotcha
geekosaur m: my Str $a = 'foo'; $a = Any; dd $a
camelia Type check failed in assignment to $a; expected Str but got Any (Any)
in block <unit> at <tmp> line 1
geekosaur right, didn;t think it would do that
although in that context (only) Nil also works... but it's not general; for a variable, it means "set to whatever was specified by 'is default' trait, or the type's default if none" 04:40
Herby__ geekosaur: thank you. one more basic question. passing an empty anonymous list as an argument? 04:42
self._part(name, [], None, clean)
geekosaur that .. depends. I'm still a bit confused by promotion and when Array works for List 04:43
Herby__ Do you futz with functional programming much? 04:48
geekosaur uh. I'm one of the maintainers of xmonad
Herby__ I'm a rookie and I have a hard time with writing OO
geekosaur (tiling window manager written in Haskell) 04:49
Herby__ ahh
you familiar at all with python?
geekosaur not very
I can read it, haven't written very much
Herby__ I'd like to convert this (relatively) simple python library to Perl 6. But i stumble with OO
github.com/divijbindlish/parse-tor...N/parse.py
lookatme just like me :)
Herby__ vague question, but could I tackle that with FP? 04:50
FP in perl6
geekosaur honestly? if I'm parsing in perl 6 I'd write a Grammar, rather than doing it manually 04:54
tony-o FP ? 04:55
lookatme Hmm, seems like it is a parser
Functional Programming
tony-o ah 04:56
you could write that parser in a grammar or with fp (i wouldn't write oo for _that_ one in particular) 04:57
lookatme github.com/araraloren/perl6-getopt...arser.t#L6 A simple grammar 04:58
Herby__ I did try my hand at a basic grammar for it: pastebin.com/zmiEnNBE 05:00
ignore the line numbering
lookatme So grammar is OO style ?
Oh, you parse a torrent file ? 05:01
geekosaur it's sort of modified OO, but your 'methods' are perl 6's extended regex syntax 05:01
token, rule, etc.
tony-o grammar is, kind of, a more sophisticated regex
Herby__ grammars seem to have a steep learning curve to do anything useful. for rookies at least 05:02
geekosaur kinda got sucked into a support issue elsewhere, sorry
tony-o and you don't _need_ the actions bit in that file
Herby__ if you're in the mood for solving puzzles, adventOfCode just went live: adventofcode.com/2017/day/1 05:04
gonna use p6 this year
tony-o just finished making pp6 tar work 05:05
can read tar files from git
lookatme great
moritz Zoffix++ # perl6advent.wordpress.com/ 06:14
lookatme moritz++ 06:21
I got the first star :) adventofcode.com 06:23
ideone.com/iUhPA0 06:25
Herby_ lookatme: ++! 06:59
squashable6 Webhook for rakudo/rakudo is now active! Non-blocking is better than blocking. 07:05
AlexDaniel squashable6: next 07:06
squashable6 AlexDaniel, ⚠🍕 Next SQUASHathon in ≈2 hours (2017-12-02 UTC-12⌁UTC+14). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
Webhook for perl6/roast is now active! Approachable is better than simple. 07:08
AlexDaniel rakudo and roast repos tracked just in case 07:10
lookatme I complete the first day : ideone.com/TX1lqB 07:37
anop Is there perl6 projects for BigData ? 09:11
Ulti anop: nothing specific that I know of, if you mean things like bindings to Spark etc. 09:12
anop yes 09:13
Ulti which would be an interesting place for the JVM implementation to go
buggable New CPAN upload: Wikidata-API-0.0.3.tar.gz by JMERELO cpan.metacpan.org/authors/id/J/JM/...0.3.tar.gz 09:23
piojo I just noticed type restraints aren't working when precompiled. Is this known, or should I file a bug? 09:25
m: sub test(--> Array[Pair]) { return my Pair @pairs; }; test
camelia ( no output )
piojo But if you put that in Test.pm6 and run it, with perl6 -I. -MTest -e 'Test::test', it says Type check failed for return value; expected Array[Pair] but got Array[Pair].new() 09:26
I guess being parameterized, this case doesn't get as much testing as the more common types. 09:27
Maybe it only fails for Array[Pair]. Array[Int] works fine. 09:28
teatime is it like Pair([]) 09:33
or something 09:34
piojo1 teatime: when I print the type with .WHAT, the type is Array[Pair] 09:40
And it's the same result if I return Array[Pair].new. 09:41
mscha m: say 'abcdef'.comb.rotate(3); # Do I really need to ... 10:07
camelia No such method 'rotate' for invocant of type 'Seq'
in block <unit> at <tmp> line 1
mscha m: say 'abcdef'.comb.List.rotate(3); # ... spell it out? 10:08
camelia (d e f a b c)
piojo m: 'abcdef'.comb.cache.rotate(3); 10:12
camelia ( no output )
piojo mscha: because Seq is conceptually not list-like. It's more like an iterator. But you can cache the values and treat it as a list after that. 10:13
mscha m: say (1,2,3,4,5) / 2; # this is fine, but ... 10:25
camelia 2.5
mscha m: say (1,2,3,4,5) div 2; # ..; this isn't. A bit inconsistent? 10:26
camelia Cannot resolve caller infix:<div>(List, Int); none of these signatures match:
(Int:D \a, Int:D \b)
(int $a, int $b --> int)
in block <unit> at <tmp> line 1
wander rt#124609 10:32
synopsebot RT#124609 [new]: rt.perl.org/Ticket/Display.html?id=124609 Roast rakudo skip/todo test:./S02-magicals/VM.t line:45 reason: 'no VM.signature yet'
wander it said we don't have $*VM.signature 10:33
then I reach here↓
github.com/rakudo/rakudo/blob/a186...pm#L24-L31
so what it $*VM.signature should be?
s/it//
same as $*VM.properties mentioned by rt#124606 10:34
synopsebot RT#124606 [new]: rt.perl.org/Ticket/Display.html?id=124606 Roast rakudo skip/todo test:./S02-magicals/VM.t line:7 reason: 'VM.properties does not exist' 10:35
wander AlexDaniel: rt#125488 could not be reproduced, maybe it was fixed 10:53
synopsebot RT#125488 [new]: rt.perl.org/Ticket/Display.html?id=125488 Some phaser blorsts don't see outer $_ 10:54
wander with perl6 -v as "This is Rakudo version 2017.11-44-g4a32089fd built on MoarVM version 2017.11-20-gd23f5ca1 implementing Perl 6.c."
SmokeMachine Now there’s more people online, somebody could help me? This grammar works, but when I make it a slang, it breaks... does anyone now why? 11:23
SmokeMachine m: gist.github.com/FCO/b184fd90cf8913...025890c820 11:24
camelia 「<head>bla<br /><form>bla: <input /></form></head>」
p6x-xml => 「<head>bla<br /><form>bla: <input /></form></head>」
p6x-tag => 「<head>bla<br /><form>bla: <input /></form></head>」
p6x-open-close-tag => 「<head>bla<br /><form>bla…
SmokeMachine m: gist.github.com/FCO/5283312f055b28...990a7a4f25 11:25
camelia ===SORRY!===
Something went wrong in (NoMatch)
DrForr Oh, we finally have official slang code, neat. Maybe that'll be my new post... 11:25
The first thing I'd do is encourage you to file a bug, there's no line/file info with the SORRY error. 11:28
SmokeMachine DrForr: I think you are right! 11:29
timotimo SmokeMachine: it could be the difference between rakudo's ws and the default ws 11:33
scimon github.com/Scimon/p6-Game-Sudoku So here's my holiday work in progress. It's near a point where I might release it. I want to get a solver done (for at least simple solutions) and then look at possibly a puzzle creator.
SmokeMachine Another information: when I change the order of the p6x-tags, it changes the error (but the grammar works the same way...) 11:34
araraloren :) 11:36
scimon This morning I was having a conversation with one of the dev managers and he said "Why do you like Perl6 so much?" that took a while.
teatime (wildly off-topic:) 1) i.imgur.com/blEwPfJ.png 2) i.imgur.com/TZLSRNM.png ⇠ Trying out an open-source parametric 3d modeling / cad program. how cool is that. 11:37
SmokeMachine m: gist.github.com/FCO/53427981f39d32...6da46daaad 11:38
camelia 5===SORRY!5=== Error while compiling <tmp>
Unable to parse expression in p6x-unique-tag; couldn't find final '/>' (corresponding starter was at line 60)
at <tmp>:60
------> 3<head7⏏5>
moritz teatime: nice!
teatime wtb perl6 spreadsheet / something that combined spreadsheet & literate programming
DrForr teatime: I've had a background idea about a parser/builder for LCAD (LEGO CAD) for a long time.
SmokeMachine That totally different error occurred just because I changed the order of the p6x-tag 11:41
DrForr At least that time the line number got in :) 11:44
SmokeMachine Yes...
SmokeMachine I already tried to make it a comment:sym<p6x>, a term:sym<p6x> and a statement_control:sym<p6x>... all with the same error... 11:46
timotimo SmokeMachine: have you tried --rxtrace?
SmokeMachine timotimo: No! I didn’t know that exists... what does that do? 11:47
timotimo it's an extremely simplistic tool to trace rakudo's stage parse 11:49
SmokeMachine (I’m on my phone now... I can’t try it just now... :(
wander moritz: your ticket rt#76744 performs quite differently now, plz check when you're free 11:55
synopsebot RT#76744 [open]: rt.perl.org/Ticket/Display.html?id=76744 [TODO] implement :dba adverbs in regexes
wander I'm not sure what ':dba' acts 11:56
moritz m: '(abc' ~~ /'(' ~ ')' .*/ 12:03
camelia ( no output )
wander m: '(abc)' ~~ /'(' ~ ')' .*/ 12:04
camelia ( no output )
wander m: say '(abc)' ~~ /'(' ~ ')' .*/
camelia 「(abc)」
wander m: say '(abc)' ~~ /:dba('foo') '(' ~ ')' .*/ 12:05
moritz m: grammar A { token TOP { :dba('parenthesis') \( ~ \) .* }; method FAILGOAL($goal) { die $goal } }; A.parse('(abc'))
camelia Nil
5===SORRY!5=== Error while compiling <tmp>
Unexpected closing bracket
at <tmp>:1
------> 3($goal) { die $goal } }; A.parse('(abc')7⏏5)
moritz m: grammar A { token TOP { :dba('parenthesis') \( ~ \) .* }; method FAILGOAL($goal) { die $goal } }; A.parse('(abc')
camelia ( no output )
moritz the error is still the same: :dba(...) makes ~ not work
wander m: say '(abc)' ~~ /:dba('foo') '(' ~ ')' .*/ # seems even break normal matching
camelia Nil
moritz it's just that the default behavior of ~ switched from "throw an exception" to "call FAILGOAL" 12:06
m: grammar A { token TOP { \( ~ \) .* }; method FAILGOAL($goal) { die $goal } }; A.parse('(abc')
camelia \)
in method FAILGOAL at <tmp> line 1
in regex TOP at <tmp> line 1
in block <unit> at <tmp> line 1
moritz (dba stands for "do business as", and is supposed to set the current rule name for use in error messages) 12:07
wander m: say 'abc' ~~ /:dba('foo') abc/
camelia Nil
wander m: say 'abc' ~~ / abc/
camelia 「abc」
wander is this normal? ':dba' is used for error messages, but it looks like even break a trivial matching 12:08
moritz it is not normals. Hence my bug report. 12:09
*normal
wander see.
jnthn I'm not totally sure we ever implemented :dba in Rakudo 12:09
It's certainly in NQP, 'cus we use it for a load of error reporting :) 12:10
moritz jnthn: I'm not sure either, but if it wasn't, at least it was silently ignored instead of f-ing up matches
wander lizmat: your ticket rt#125488 could not be reproduced, maybe it was fixed 12:15
synopsebot RT#125488 [new]: rt.perl.org/Ticket/Display.html?id=125488 Some phaser blorsts don't see outer $_
wander m: for ^2 { NEXT .say }
camelia 0
1
wander m: for ^10 { LAST .say } 12:16
camelia 9
moritz write tests, close? :-)
AlexDaniel wander: any chance you can send that as a reply to the ticket? (so that the info is not lost)
wander I'm not familiar with rt system, let me try(maybe spend some time) 12:17
AlexDaniel wander: here's how to do that without an account: github.com/rakudo/rakudo/wiki/Raku...-a-comment
wander got it. 12:18
moritz: where do you think that the test should be? S04-phasers? 12:19
moritz wander: yes, sounds good
AlexDaniel wander: as for when it was fixed, here's what can be tried 12:21
6c: for ^2 { NEXT .say } 12:22
committable6 AlexDaniel, gist.github.com/c52d9b13c9660c4f19...d61cdd2ead
AlexDaniel bisect: for ^2 { NEXT .say }
bisectable6 AlexDaniel, Bisecting by exit code (old=2015.12 new=f78fd7c). Old exit code: 1
AlexDaniel, bisect log: gist.github.com/d6196ac9ab8a00f0da...2b3b59c0e2
AlexDaniel, (2016-08-03) github.com/rakudo/rakudo/commit/5e...b2b9ba3a30
AlexDaniel c: 5e61516a3fd^,5e61516a3fd for ^2 { NEXT .say } 12:23
committable6 AlexDaniel, ¦5e61516a3fd^: «Cannot call method 'say' on a null object␤ in block <unit> at /tmp/aF0nV9Cmus line 1␤␤ «exit code = 1»» ¦5e61516: «0␤1␤»
AlexDaniel wander: yeah. ↑ 12:24
wander thanks
AlexDaniel squashable6: status 12:26
squashable6 AlexDaniel, 🍕🍕 SQUASHathon is in progress! The end of the event in 1 day and ≈23 hours. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
AlexDaniel, Log and stats: gist.github.com/822bdcff2e0e5e2ee3...7262cd04dd
AlexDaniel squashable6 will not announce updates on RT, but I hope we can live with that :)
AlexDaniel leaves for ≈5 hours 12:27
squashable6 🍕🍕🍕 First contribution by W4anD0eR96++! ♥ 12:51
squashable6 🍕 W4anD0eR96++ opened pull request “Test for RT #125488”: github.com/perl6/roast/pull/362 12:56
synopsebot RT#125488 [new]: rt.perl.org/Ticket/Display.html?id=125488 Some phaser blorsts don't see outer $_
wander bisect: enum Color (<red green purple> Z=> 1,2,4); 13:09
bisectable6 wander, On both starting points (old=2015.12 new=f78fd7c) the exit code is 0 and the output is identical as well
wander, Output on both points: «»
wander c: a3869a^, a3869a enum Color (<red green purple> Z=> 1,2,4); 13:11
committable6 wander, ¦a3869a^,a3869a: «No build for this commit»
timotimo maybe no space allowed in between?
wander c: a3869a^,a3869a enum Color (<red green purple> Z=> 1,2,4); 13:15
committable6 wander, ¦a3869a^,a3869a: «No build for this commit»
SmokeMachine timotimo: gist.github.com/FCO/992c0d2bf548e2...fcc0b6f871 13:17
timotimo wow, that is gigantic 13:18
squashable6 🍕 W4anD0eR96++ wrote a comment on commit 1fbabe9b5757: github.com/perl6/roast/commit/1fba...t-25981254 13:24
wander I try to write a e-mail with title '[perl #125488]' to [email@hidden.address] but it seems got lost 13:34
I don't know why
SmokeMachine timotimo: yes... it is... :( 13:35
AlexDaniel` You have to wait a little bit I think 13:36
wander: have you tried creating an account? Might be worth it 13:37
wander quite a while :P 13:38
squashable6 🍕🍕🍕 First contribution by timo++! ♥ 13:41
AlexDaniel` wander: what do you mean?
wander I sent that e-mail 30 minutes ago 13:42
moritz there's a manual approval process for mails from senders that haven't been seen before 13:43
wander and I'm afraid if I write in the wrong format :P
squashable6 🍕 tbrowder++ synchronize pull request “add new tests for fix to rakudo repo issue #1282”: github.com/perl6/roast/pull/361 13:44
🍕🍕🍕 First contribution by tbrowder++! ♥
AlexDaniel` Sometimes emails to rt are just lost... 13:45
moritz news.ycombinator.com/item?id=15822649 # p6advent discussion on HN 13:49
AlexDaniel` moritz: oh gosh :D 13:52
timotimo oh, phlogistique, i know that person 13:53
AlexDaniel` Well guess they are not going to like my perl6 golf post
timotimo if it's the same person
moritz still, the post is ranked #5 right now 13:53
perlpilot TIL about nextcallee (even though it's been there for 2 years, I don't think I've encountered it before) 13:57
squashable6 🍕 AlexDaniel++ wrote a comment on “Test for RT #125488”: github.com/perl6/roast/pull/362#is...-348503849 14:10
🍕🍕🍕 First contribution by AlexDaniel++! ♥
synopsebot RT#125488 [new]: rt.perl.org/Ticket/Display.html?id=125488 Some phaser blorsts don't see outer $_
squashable6 🍕 W4anD0eR96++ wrote a comment on “Test for RT #125488”: github.com/perl6/roast/pull/362#is...-348504945 14:14
🍕 AlexDaniel++ wrote a comment on “Test for RT #125488”: github.com/perl6/roast/pull/362#is...-348505128 14:15
squashable6 🍕 W4anD0eR96++ synchronize pull request “Test for RT #125488”: github.com/perl6/roast/pull/362 14:23
synopsebot RT#125488 [new]: rt.perl.org/Ticket/Display.html?id=125488 Some phaser blorsts don't see outer $_
squashable6 🍕 W4anD0eR96++ merged pull request “Test for RT #125488”: github.com/perl6/roast/pull/362 14:24
AlexDaniel wander: can you also include a test for FIRST, LEAVE, PRE, UNDO, KEEP? 14:26
what you've done is enough to close the ticket, but not enough to prevent regressions from happening :) 14:27
wander aha, you're right 14:28
wander AlexDaniel: 14:38
m: for ^10 { KEEP .say ; 42 }
camelia WARNINGS for <tmp>:
0
1
2
3
4
5
6
7
8
9
Useless use of constant integer 42 in sink context (line 1)
wander shouldn't it `say 42` 10 times? 14:39
we have doc "For phasers such as KEEP and POST that are run when exiting a scope normally, the return value (if any) from that scope is available as the current topic within the phaser."
AlexDaniel ha…
timotimo yeah, that should probably give you 42 there, and maybe not warn about sink context
AlexDaniel the sink context is right 14:40
m: say (for ^10 { KEEP .say ; 42 })
camelia 0
1
2
3
4
5
6
7
8
9
(42 42 42 42 42 42 42 42 42 42)
timotimo shouldn't having a keep phaser change that?
moritz no 14:41
timotimo OK
moritz at least, I don't think so :-)
KEEP is for successful scope exits, no?
timotimo yes
AlexDaniel 6c: say (for ^10 { KEEP .say ; 42 }) 14:42
committable6 AlexDaniel, ¦6c (25 commits): «0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤(42 42 42 42 42 42 42 42 42 42)␤» 14:43
AlexDaniel c: all say (for ^10 { KEEP .say ; 42 })
committable6 AlexDaniel, gist.github.com/43ce73f89c022479b9...53a83e6227
AlexDaniel m: enum RT116719 (<red green purple> Z=> 1,2,4); dd RT116719.enums 14:55
camelia Map.new((:green(2),:purple(4),:red(1)))
synopsebot RT#116719 [open]: rt.perl.org/Ticket/Display.html?id=116719 [BUG] Internal error message on Z=> in enum declaration in Rakudo
AlexDaniel bisect: old=HEAD~50 enum RT116719 (<red green purple> Z=> 1,2,4); dd RT116719.enums
bisectable6 AlexDaniel, Bisecting by output (old=HEAD~50 new=5929887) because on both starting points the exit code is 0
AlexDaniel, bisect log: gist.github.com/a8b354f8e35060af38...5e703f86ab
AlexDaniel, (2017-11-27) github.com/rakudo/rakudo/commit/d9...de44c5e0db
AlexDaniel c: d9021cf16e^,d9021cf16e enum RT116719 (<red green purple> Z=> 1,2,4); dd RT116719.enums 14:56
committable6 AlexDaniel, ¦d9021cf16e^: «Map.new(("green\t2" => 1,"purple\t4" => 2,"red\t1" => 0))␤» ¦d9021cf: «Map.new((:green(2),:purple(4),:red(1)))␤»
Herby_ o/ 15:01
AlexDaniel wander: rt.perl.org/Ticket/Display.html?id...xn-1511945 15:06
wander++
timotimo: “maybe no space allowed in between?” spaces are allowed :) 15:07
it said “No build for this commit” because it's a commit from 2013 15:08
and the first release of rakudo on moar is 2014.01
in theory bisectable can be improved to be able to bisect rakudo-parrot, but should I really spend my time on that? :P
that'd be really fun tho 15:09
Geth doc: 964e169d6d | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/regexes.pod6
try another fix for the table
synopsebot Link: doc.perl6.org/language/regexes
squashable6 🍕 zoffixznet++ opened issue “[6.d BLOCKER] Implement …”: github.com/rakudo/rakudo/issues/1289 15:10
🍕🍕🍕 First contribution by zoffixznet++! ♥
🍕 zoffixznet++ edited issue “[6.d BLOCKER] Implement …”: github.com/rakudo/rakudo/issues/1289 15:12
🍕 zoffixznet++ edited issue “[6.d BLOCKER] Implement …”: github.com/rakudo/rakudo/issues/1289 15:13
🍕 AlexDaniel++ opened issue “KEEP does not set $_ to the return value”: github.com/rakudo/rakudo/issues/1290 15:14
AlexDaniel wander: rt.perl.org/Ticket/Display.html?id...xn-1511951 15:15
wander++ :)
Herby_ AlexDaniel: for the squishathon, is there an easy way to identify low-hanging fruit for newbies? 15:18
AlexDaniel Herby_: it depends. The idea behind this particular squashathon this month is about MOLD tickets: fail.rakudo.party/t/MOLD 15:19
Herby_: there are some docs on github.com/rakudo/rakudo/wiki/MOLD...QUASHathon
Herby_ Ah ok 15:20
AlexDaniel Herby_: basically if you find a ticket in that list, and you can still reproduce the issue, than you leave a comment and that's a good enough contribution :)
Herby_: that's probably low-hanging enough
Herby_ sounds doable :)
AlexDaniel then* 15:20
squashable6 🍕 zoffixznet++ edited issue “[6.d BLOCKER] Implement …”: github.com/rakudo/rakudo/issues/1289 15:24
Geth doc: bac6a7112c | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/regexes.pod6
add escapes back
15:37
synopsebot Link: doc.perl6.org/language/regexes
pmurias AlexDaniel`: why do a Perl 6 golf post? 15:49
[Coke] because it's fun? 15:54
Zoffix pmurias: why do any post? :) Golf post is good. It'll let people glance at readable concice Perl 6 code.
Zoffix ZofBot: concice is conciser 15:55
ZofBot Zoffix, right, but even the error message implies something strange
DrForr And fan the flames over people gleefully pointing out the proof that P6 is even more write-only on the HN article. (not that I truly care about such things...) 15:56
Zoffix DrForr: "even more write-only" than what? 15:58
DrForr 5, natch.
Zoffix DrForr: but it isn't. Why would anyone point it out? 15:59
[Coke] Wy does any troll. 16:00
*why
DrForr Because it gives them something to feel superior and say "See, *my* favorite language is better than *yours*, because reasons."
Zoffix That's no reason to avoid writing an article. 16:00
Otherwise, we'd not write anything. And sit quietly in a corner, afraid to be noticed. 16:01
Time to grow some… whatever bodypart gives you courage… and write stuff :)
Still three spots left. Sign up: github.com/perl6/mu/blob/master/mi...7/schedule
Herby_ Zoffix: ++ on the advent article
matthias__ Hi everyone. How can I type a constant? As in give it a type.
Zoffix matthias__: it's a constant. It doesn't need a type 16:02
DrForr Didn't say it was, pmurias was asking rhetorically "why..."
Zoffix DrForr: you mentioned flame fanning. That sounded like critique against writing to me :) 16:03
DrForr Coming from someone who's just written a blog post and is writing an advent post over the weekend :) 16:04
It would be hypocritical of me to advocate against writing and then go on writing :)
comborico1611 Matthias__ variables are constant by default in perky, i think. I'm new.
Perl6
jnthn m: my Int constant c = 42 16:05
camelia ( no output )
jnthn Our `our` depending on the desired scope
DrForr Some days I tire of this and think I missed my true calling as a watchmaker, don't know why.
Zoffix m: my Int constant c = 42e0
camelia ( no output )
Zoffix :)
Geth doc: 25fcf0137e | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/regexes.pod6
correct table cell content
synopsebot Link: doc.perl6.org/language/regexes
comborico1611 Zoffix, 3 spots left to create Advent puzzle? 16:06
matthias__ Zoffix: jnthn: I see, thanks.
Zoffix comborico1611: three empty spots to sign up to write Advent blog posts. 16:07
comborico1611 I see. I'm not qualified.
Zoffix There're 24 posts altogether; one per day, so number of spots is limited
comborico1611: why not?
comborico1611: have you used Perl 6 at all?
comborico1611 I'm floating all over the place with programming languages.
Zoffix :)
DrForr comborico1611: No less qualified than anyone writing, that's impostor syndrome talking :) 16:07
comborico1611 All I've done is red three quarters of a book. 16:08
DrForr comborico1611: All the more reason, you have a perspective most of us don't :)
comborico1611 True.
perlpilot comborico1611: what DrForr said. Share your experience
comborico1611 Haha. You guys are funny.
DrForr Which book, BTW?
comborico1611 Think Perl6
perlpilot comborico1611: alternatively, you could give a kind of book review :) 16:09
matthias__ jnthn: So whenever I explicitly add a type I have to explicitly set `my` or `our`? Is there reason for constants not defaulting to `our` in that case as well?
DrForr Ah cool, I need to pick up my copy; probably at FOSDEM and see about getting it signed :)
comborico1611 Hmm. I do have a book review in-the-works for this book.
Nice.
comborico1611 I want to hear jnth say a book review would be fine for Advent post. 16:10
Zoffix comborico1611: see my last eval above; jnthn's way isn't working. It's constant without a container and with a mandatory. It doesn't need a type. How come you're trying to set the type?
comborico1611 Then i will do it. :-)
Zoffix A book review is fine for Advent post. 16:11
*mandatory value
jnthn matthias__: The declarator is required so we know to parse a type next. That's just the way the syntax works; it's consistent with every other declarator in the language.
comborico1611 Alright.
perlpilot comborico1611: it's weird that you would single one jnthn as the arbiter of what's good for an advent post.
comborico1611 I'm not trying to set a type const. I was just trying to answer matthias's question.
DrForr No need to ask permission, just add yourself to the list :) 16:12
Zoffix comborico1611: oh, right, too many people. Wrong person :)
perlpilot s/single one/single out/ # I swear, my brain is weird
comborico1611 Perlpilot, yeah, sorry no offense. I just don't know who's in charge here. And I don't want to commit myself to that post and look like an idiot if that content isn't suitable for Advent.
Zoffix No one's in charge. Anarchy \o/
comborico1611 I doubt that. 16:13
I will sign.
scimon So.... I love perl6's operator chaining. Is there a good explanation anywhere of how it works though?
m: say [(^)] ( (1,2,3,4), (5, 8, 9), (2,3,4,5), (5,8,9) ).pick(4)
camelia set(1)
perlpilot comborico1611: okay ... I'll claim to be "in charge" since colomon and I first setup the Perl 6 advent calendar all those years ago. And since I'm in charge. Write something! We'll help if you need it. 16:14
scimon The fact that always returns 1 is frankly mindblowing.
perlpilot :-)
comborico1611 How to I sign up?
Haha. That's funny that you happen to be the guy that set it up.
Zoffix comborico1611: add yourself to one of the three empty spots here: github.com/perl6/mu/blob/master/mi...7/schedule
Click the pencil icon in top right and edit and then submit 16:15
perlpilot comborico1611: If you don't already have a WP account, give me your email and I'll send you and invite 16:15
comborico1611 K. Yeah, i needed to pencil icon tip, because i have no idea how gutbug works. 16:15
GitHub
Zoffix comborico1611: here, use this link: github.com/perl6/mu/edit/master/mi...7/schedule 16:16
comborico1611: alternatively, just tell me the day you want and I'll add you
comborico1611 Heh. I need a week, at least.
Zoffix comborico1611: OK. So 16th or 21st? 16:17
comborico1611 21st 16:17
Eh, 16th if you haven't set it. 16:18
Geth mu: c97bfda436 | (Zoffix Znet)++ (committed using GitHub Web editor) | misc/perl6advent-2017/schedule
Put comborico1611 for 21st
perlpilot comborico1611: and your email address? (so I can invite you)
Geth mu: 99245888f6 | (Zoffix Znet)++ (committed using GitHub Web editor) | misc/perl6advent-2017/schedule
Move comborico1611 to 16th

Per irclog.perlgeek.de/perl6/2017-12-01#i_15518990
16:19
comborico1611 What was the earliest date? I'm changing my mind I think I can get this done today.
Zoffix comborico1611: 6th
comborico1611 Email is clint_who atttttt yah ooo 16:20
Ill take 6th
Geth mu: Scimon++ created pull request #31:
Update schedule
scimon :)
Geth mu: be9a8c6900 | (Simon Proctor)++ (committed using GitHub Web editor) | misc/perl6advent-2017/schedule
Update schedule
mu: fdf3067827 | (Zoffix Znet)++ (committed using GitHub Web editor) | misc/perl6advent-2017/schedule
Merge pull request #31 from Scimon/patch-1

Update schedule
perlpilot comborico1611: invite send (assuming I parsed your email correctly ;) 16:21
scimon So I figure I've done enough of my crazy plan to write out it.
comborico1611 Rosenfeld is going to hate me for this...
scimon @perlpilot my email is simon dot proctor at gmail dot com :)
comborico1611 I'll try to be as polite and professional as possible. 16:21
perlpilot scimon: sent for you too
scimon Cool cheers. 16:22
Zoffix scimon: that one just introspects the op you're using to figure out which one of META_BLAH_BLAH routines to call under the hood. For the `(^)` op, it calls these: github.com/rakudo/rakudo/blob/mast...#L401-L415
comborico1611 But my goal in this review is to express when I truly feel the best way to learn to program is. Because his book is set up as an introductory course to programming.
scimon Right I'll now not think about it until Monday (Party tonight... recovery this weekend)
comborico1611 When equals what*
scimon Zoffix: but it's more how it manages to handle things like 1 < 5 < 10 16:23
The number of languages that can parse and manage to give a sane answer for that are minimal.
I mean in the example I gave 16:24
Zoffix m: sub infix:<z> is assoc<chain> { dd @_ }; 1 z 5 z 10
camelia [5, 10]
[1, Nil]
scimon m: (1,2,3,4) (^) (5, 8, 9) (^) (2,3,4,5) (^) (5,8,9)
camelia WARNINGS for <tmp>:
Useless use of "(^)" in expression "(1,2,3,4) (^) (5, 8, 9) (^) (2,3,4,5) (^) (5,8,9)" in sink context (line 1)
scimon m: say (1,2,3,4) (^) (5, 8, 9) (^) (2,3,4,5) (^) (5,8,9) 16:24
camelia set(1)
scimon In most languages that could do the set stuff you'd end up doing (1) (^) (5,8,9) and get (1,5,8,9) 16:25
Zoffix Though for `<` op, there's additional chainage with other ops. That's currently not available in userland for custom ops and is done by the compiler.
scimon Like I say... it's stunning and something we should be talking about more.
(I'll be mentioning it in my Advent page)
Hats of to all involved. Time for me to find some drinks. 16:26
Zoffix s: &[(^)], \((1,2,3,4), (5, 8, 9), (2,3,4,5), (5,8,9))
SourceBaby Zoffix, Sauce is at github.com/rakudo/rakudo/blob/4fca...ce.pm#L227
scimon s/of/off/
comborico1611 Thanks!
Zoffix scimon: ^ that one just has a candidate that takes a list of them all and computes correct result. IIRC lizmat++ implemented that one 16:26
comborico1611 Perlpilot, got your email. 16:27
scimon Night all
Zoffix night
Zoffix comborico1611: when you article is ready, you can log in and schedule it here: perl6advent.wordpress.com/wp-admin/edit.php 16:27
Zoffix Schedule for midnight, of the day you're doing it for 16:27
pmurias Zoffix: I just feel that the articles that show a bunch of bizarre features (like a bunch of unicode operators etc.) don't leave a good impression on people that don't know Perl 6 already 16:28
comborico1611 K. Thanks!
DrForr Re: watchmaking www.myswitzerland.com/nl/have-you-...a-day.html
ryn1x_ I would like to do some IPC from perl6 to a c++ program. I have never done IPC in any language before and am not sure where to start. What would be the Easiest solution (not worried about performance right now)? I want to start by sending a message containing a file path from my perl6 program to a c++ program. I have read that some possible methods are sockets, named pipes, SQLite, and shared memory. I need to pick one and start lear
Geth mu: e168425908 | (Zoffix Znet)++ (committed using GitHub Web editor) | misc/perl6advent-2017/schedule
Move comborico1611 to 6th

Per irclog.perlgeek.de/perl6/2017-12-01#i_15519005
16:29
Zoffix ryn1x_: you could just send to STDIN. Is that viable?
ryn1x_: with run :in, "./your-c-program" { .in.print: "blah blah"; .in.close } 16:30
wander jnthn: 16:31
rt#123835
synopsebot RT#123835 [open]: rt.perl.org/Ticket/Display.html?id=123835 Cannot use 'is rw' on optional parameter
wander design.perl6.org/S06.html#Parameter_traits
jferrero m: ("01" .. "12").join("-").say 16:32
camelia 01-02-11-12
wander we won't to implement that, do we?
Zoffix pmurias: my view on that is: you're free to write your own article that you think leaves the impressions you want. There are still 2 spots left. Implying someone should not write a post just because you don't like golf is kinda LTA
jferrero bug with Range?
Zoffix jferrero: no, it's what it does with strings
wander s/*./we shan't to implement that, shall we?/
ryn1x_ Zoffix: That does seem viable. Right now I am starting my c++ program with Proc::Async.new(). Maybe I was overthinking this... 16:33
Zoffix m: ("01", *.succ ... "12").join("-").say
camelia 01-02-03-04-05-06-07-08-09-10-11-12
AlexDaniel comborico1611++
comborico Ahh. A keyboard!
jferrero m: ("01","02" ... "12").join("-").say
camelia 01-02-03-04-05-06-07-08-09-10-11-12
Zoffix jferrero: it's a bit crazy and there's a couple tickets arguing for the feature's removal. Basically if the strings are more than one char it just passes to `...` op and that one does it per-char, so above it increased 0 to 1 and increased second 1 to 2 16:34
Herby_ m: say "\c[FATHER CHRISTMAS]"
camelia 🎅
AlexDaniel m: say "\c[BUTTERFLY]"
camelia 🦋
AlexDaniel m: say "\c[MOTHER CHRISTMAS]"
camelia 🤶
Herby_ pretty cool
jferrero Zoffix: thanks.
Zoffix & 16:35
squashable6 🍕 tbrowder++ requested a review on pull request “add new tests for fix to rakudo repo issue #1282”: github.com/perl6/roast/pull/361 16:35
wander raiph: do you still remember this ticket? rt#123457 16:38
synopsebot RT#123457 [open]: rt.perl.org/Ticket/Display.html?id=123457 enum A <Code> "P6opaque: no such attribute '$!signature'"
wander anyway, it cannot be reproduced. maybe with a test suck like "can build enum with reserve name" added we close this ticket 16:40
AlexDaniel c: 30edf7 enum A <Code> 16:40
committable6 AlexDaniel, ¦30edf7: «===SORRY!===␤P6opaque: no such attribute '$!signature'␤ «exit code = 1»» 16:41
wander oops
AlexDaniel bisect: old=30edf7 enum A <Code>
bisectable6 AlexDaniel, Bisecting by exit code (old=30edf7 new=5929887). Old exit code: 1
AlexDaniel, bisect log: gist.github.com/abd71bc6b3a264508c...c2dc0cc6d8
AlexDaniel, (2015-12-13) github.com/rakudo/rakudo/commit/3c...65dfe3706e
AlexDaniel c: 30edf7,3c81e335f3^,3c81e335f3,HEAD enum A <Code>
committable6 AlexDaniel, ¦30edf7,3c81e335f3^: «===SORRY!===␤P6opaque: no such attribute '$!signature'␤ «exit code = 1»» ¦3c81e33,HEAD(5929887): «»
AlexDaniel wander: yeah, that seems to be fixed as per ↑ 16:42
AlexDaniel wander: fwiw if you have any questions regarding the bots, please ask. There's some documentation but I don't know if it's clear enough: github.com/perl6/whateverable/wiki/Committable github.com/perl6/whateverable/wiki/Bisectable 16:43
wander see :-) 16:44
AlexDaniel “Note that there are builds available up to 2015.07” oops! Outdated 16:46
2014.01 is the oldest release it supports atm :)
c: 2014.01 say 42
committable6 AlexDaniel, ¦2014.01: «42␤»
DrForr Password reset, username sent... apparently I was using lastpass at soe time. 16:51
*some
Or wanted to cancel and found out I couldn't.
[Coke] m: say "\c[DIADO KOLEDA]" 16:55
camelia 5===SORRY!5=== Error while compiling <tmp>
Unrecognized character name [DIADO KOLEDA]
at <tmp>:1
------> 3say "\c[DIADO KOLEDA7⏏5]"
ctilmes Could someone here add me to the perl6 advent wordpress? 17:05
timotimo that would be ... curteous :D 17:06
ctilmes: if you give me an email address, i can 17:08
looks like i somehow social-engineered my way into an admin position …
wander bisect: my $a = 0.89999999999999999999; my $b = $a.perl.EVAL; say $a.WHICH; say $b.WHICH 17:13
bisectable6 wander, On both starting points (old=2015.12 new=5929887) the exit code is 0 and the output is identical as well
wander, Output on both points: «Rat|89999999999999999999/100000000000000000000␤Rat|89999999999999999999/100000000000000000000␤»
AlexDaniel wander: I can close RT#123457, right? 17:14
synopsebot RT#123457 [open]: rt.perl.org/Ticket/Display.html?id=123457 enum A <Code> "P6opaque: no such attribute '$!signature'"
AlexDaniel I wonder what's in RT#123456
no such ticket. Such a pity :)
wander AlexDaniel: yes 17:15
c: 2015.12,5929887^,5929887,HEAD my $a = 0.89999999999999999999; my $b = $a.perl.EVAL; say $a.WHICH; say $b.WHICH 17:16
committable6 wander, ¦2015.12,5929887^,5929887,HEAD(5929887): «Rat|89999999999999999999/100000000000000000000␤Rat|89999999999999999999/100000000000000000000␤»
wander rt#126102 is a subset of rt#126016, we've closed 126016 but forgot 126102, i think 17:19
synopsebot RT#126102 [open]: rt.perl.org/Ticket/Display.html?id=126102 [BUG] Rat.perl doesn't round-trip numerical value
RT#126016 [resolved]: rt.perl.org/Ticket/Display.html?id=126016 [MATH] Rat.Str incorrectly rounds in the part after the decimal dot
AlexDaniel wander: ok rt.perl.org/Ticket/Display.html?id...xn-1511989
wander thanks 17:20
AlexDaniel wander: lol, what a funny ticket 17:20
c: 2015.09 say 0.9999999999999999999999.perl
committable6 AlexDaniel, ¦2015.09: «0.A␤»
AlexDaniel XD
that's hilarious
timotimo yikes! :D
wander :P
timotimo m: .print for "0.", "A" x 10, "a" x 13, "h!" 17:21
camelia 0.AAAAAAAAAAaaaaaaaaaaaaah!
AlexDaniel c: 2015.09 say 0.9999999999999999999999.perl ~ ‘h!’ 17:22
committable6 AlexDaniel, ¦2015.09: «0.Ah!␤»
AlexDaniel c: all my $a = 0.89999999999999999999; my $b = $a.perl.EVAL; say $a.WHICH; say $b.WHICH 17:24
committable6 AlexDaniel, gist.github.com/c954d420c5abb7fb3a...984fbbc6e2
AlexDaniel c: b5aa3c591e4f^,b5aa3c591e4f my $a = 0.89999999999999999999; my $b = $a.perl.EVAL; say $a.WHICH; say $b.WHICH
committable6 AlexDaniel, ¦b5aa3c591e4f^,b5aa3c5: «Rat|89999999999999999999/100000000000000000000␤Rat|89999999999999999999/100000000000000000000␤»
AlexDaniel bisect: old=2015.09 my $a = 0.89999999999999999999; my $b = $a.perl.EVAL; say $a.WHICH; say $b.WHICH 17:25
bisectable6 AlexDaniel, Bisecting by output (old=2015.09 new=5929887) because on both starting points the exit code is 0
bisectable6 AlexDaniel, bisect log: gist.github.com/c6cf4b4db5430f2e38...b29bf01d48 17:25
AlexDaniel, (2015-09-25) github.com/rakudo/rakudo/commit/c8...2656a6c0b8
AlexDaniel fwiw, this channel is officially and deliberately loud for the duration of the squashathon :)
AlexDaniel wander: ok, so this ↑ tells me that it wasn't fixed in RT#126016 17:26
wander: I mean, these issue seems to be different
c: c8ec2999bee^,c8ec2999bee my $a = 0.89999999999999999999; my $b = $a.perl.EVAL; say $a.WHICH; say $b.WHICH
committable6 AlexDaniel, ¦c8ec2999bee^: «Rat|89999999999999999999/100000000000000000000␤Rat|9/10␤» ¦c8ec299: «Rat|89999999999999999999/100000000000000000000␤Rat|89999999999999999999/100000000000000000000␤»
Ulti is that 16th Dec slot on the advent calendar still going? 17:27
AlexDaniel huggable: advent
huggable AlexDaniel, Sign up to write an Advent blog post: github.com/perl6/mu/blob/master/mi...7/schedule
Ulti was going to write up various bits and pieces about perf improvements, shall I chuck my name down
AlexDaniel Ulti: that'd be awesome! 17:28
wander AlexDaniel: interesting 17:29
AlexDaniel c: c8ec2999bee^,c8ec2999bee my $a = 0.99999999999999999999; my $b = $a.perl.EVAL; say $a.WHICH; say $b.WHICH 17:29
committable6 AlexDaniel, gist.github.com/b7dfe5f33145417c29...3ab0b26450
AlexDaniel wander: ok, it also mentions .A issue, and that was indeed fixed in the ticket you mentioned 17:30
AlexDaniel wander: I'll try to leave a helpful comment there 17:30
Geth mu: f55a9d1045 | (Matt Oates)++ (committed using GitHub Web editor) | misc/perl6advent-2017/schedule
Taking the 16th

Deck The Halls With Perf Improvements
timotimo Ulti: feel free to ask me stuff about perlformance :) 17:31
AlexDaniel c: c8ec2999bee^,c8ec2999bee,HEAD my $a = 0.89999999999999999999; my $b = $a.perl.EVAL; say $a.WHICH; say $b.WHICH
committable6 AlexDaniel, ¦c8ec2999bee^: «Rat|89999999999999999999/100000000000000000000␤Rat|9/10␤» ¦c8ec299,HEAD(5929887): «Rat|89999999999999999999/100000000000000000000␤Rat|89999999999999999999/100000000000000000000␤» 17:32
Ulti I was mostly going to cover Tux's stuff my BioInfo tests, the Prime number benchmark which was posted ages ago and then show just how many commits there have been around perf since "Christmas"
maybe highlight major work thats been done and point at it like improved JIT/spesh stuff and the improved concurrnecy support 17:33
wander 01:30 am here, today i'm too tired for lab things, good night #perl6 _zZ
&
Ulti one of the original prime number benchmarks uses grep so I can chuck a .race on it 17:33
AlexDaniel wander++ 17:34
timotimo is race good enough, or should it be hyper?
(i'm also wondering if the csv test shouldn't also be hyper instead of race. though maybe it actually is)
Ulti can do both and talk about the difference
but yeah if there's anything you want to add I'll try and get it done ahead of time so people can check it out 17:35
timotimo lovely :)
timotimo afk
Ulti www.moarvm.org/measurements/perl6-bench/ this looks useful :3 17:37
oh all the recent ones are 0 byte files :'( 17:38
AlexDaniel .tell wander OK rt.perl.org/Ticket/Display.html?id...xn-1511996 17:39
yoleaux AlexDaniel: I'll pass your message to wander.
AlexDaniel squashable6: status
squashable6 AlexDaniel, 🍕🍕 SQUASHathon is in progress! The end of the event in 1 day and ≈18 hours. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
AlexDaniel, Log and stats: gist.github.com/c80838f967031a9bb4...47b5b862e6
El_Che HN thread is somewhat depressing but there is a point there. 17:45
I am also under the impression that we tend to show of the expectacular-and-cute-but-not-that-useful bits of the language instead of the ton of good stuff (tons) 17:46
El_Che no critic towards the post itself (or the upcoming one), but it feels kind of cultural 17:47
Ulti oh man no one put up the latest post on HN surely 17:56
show casing powerful stuff no one should ever do... thats anti martketing 17:57
Ulti its a cool, fun, intersting post but someone reading it from a thousand miles up on some enterprise Java high is going to just be afraid 17:57
every single one of those comments is exactly what Id expect, especially given most people will have only ever seen a couple of examples of an P6 in their life :9 17:58
El_Che Well, it depends on your public. Most people (imho) will get or see the fun in the "cool" stuff once they get the more mundaine stuff. So it can be a very in-circle thing 18:01
robertle also having scissors is nice, but you need the discipline not to run with them... 18:02
El_Che robertle: the problem is not that you can do weird/advanced stuff with the language (that's a plus), but people from the outside with only look at the golfing and/or urf8 cuteness and not look further 18:08
AlexDaniel looking at my rough notes, there's nothing scary in the upcoming golf post. Shit might hit the fan when I show stuff encoded in base 0x10FFFF, but other than that it's cool and readable. 18:09
(ha, talk about utf8 cuteness)
El_Che - "Oh, we need a new name. Sharing the name with Perl 5 is confusing and we get bad press from matt's archive in the '90" 18:10
- "Oh, let's golf"
:)
AlexDaniel: looking fwd to your post, but I am probably inside the bubble already :) 18:11
I don't know if a make any sense. I don't want to sound like I'm trolling
AlexDaniel El_Che: it makes sense, but it's irrelevant I think. There's a type of people who will find something to shitcomment about anyway, and it doesn't matter if we give them a reason or not. 18:13
El_Che actually, I am not talking about HN in particular
I couldn't care less about that 18:14
El_Che and even that is better than being ignore in a way, it may be a sign of modest succes 18:14
Ulti AlexDaniel: yeah on the code golf challenge site with P6 I set myself the challenging of keeping it readable and small, I came second or third on a couple 18:16
El_Che I point out that on one way Perl 6 wants to differenciate itself from perl 5, and on the other hand it repeats the kind of compressed smartness and cuteness that gave perl5 a bad reputation 18:17
El_Che in that send, we're sending mixed signals 18:17
Ulti yeah I really agree with that
and for the most part the advent calendar has done a reasonable job of not going too nuts
El_Che s/send/sense/ 18:18
Ulti I like the post though, so haters are going to hate... if you cant pick up its an article about antipatterns/footguns which are cool but obviously evil and wrong you probably shouldn't program in Perl 6
El_Che Ulti: I agree. But if loud enough they can influence people to not even try the tech 18:20
(ask perl 5)
Ulti yup
I would perhaps not have put the day 1 post as what not to do :D
Ulti but its fun and well written which youd hope would trump that 18:21
for some reason half of hacker news have absolutely no concept of "fun" with respect to programming, let alone a sense of humour
El_Che it's only a few fun posts and not a manifesto. Nothing is lost. I am only concerned about the mixed signals.
Ulti meh Perl 6 should embrace living amongst the mixed signals 18:22
teatime remembers that time someone's (Zoffix's?) talk slides covering unicode operators + defining the shrug-emoji-string as an operator, and [reddit or HN comments, can't remember which] assumed it was a joke for the longest time.
El_Che Ulti: there are a lot of angry people on the net, but that's not new :)
teatime then kinda totally missed the distinction between 'this is cool' and 'you should really do this' heh 18:22
El_Che hehe 18:23
Ulti yeah :/ I regret this 2012 post blog.mattoates.co.uk/2012/02/perl6-...ators.html 18:24
El_Che I am one of those people that regularly work on 3 OS'es and there is no way I'm learning to remap keys on all 3 and memorize the differences :P 18:26
I'll always be a texas ranger that way ;)
Ulti Im kind of tempted to make a Test::Random that has that pile of poo operator 18:27
teatime El_Che: I have always been a big Compose key fan; WinCompose is OK on Windows, and of course it's fine on *nix¹... I do not know of a way to get it on OS X, though (I don't use Mac, but I wish I knew of where to point Mac users for Compose functionality, if it can be done.)
¹Until GNOME/GTK decided to do their own thing and break it for possibly no good reason. Surprise? 18:28
El_Che I am utterly disappointed on keyboard shortcuts o a mac
of
Ulti if you see a pile of poo you just get a fuzzer on something
teatime bbl
El_Che Ulti: you would pretty far to prove my point, he? 18:29
Ulti El_Che: ctrl+cmd+space on a Mac FTW
El_Che looks like IOS 18:30
and workflow-breaking
Ulti it jumps the focus to the search and you can press enter so its not too bad 18:31
oh it doesn't... I swear it used to highlight if you managed to get down to a single emojii 18:32
AlexDaniel perhaps the squashathon is more interesting than discussing piles of poo? :P github.com/rakudo/rakudo/wiki/Mont...Squash-Day 18:42
squashable6: status
squashable6 AlexDaniel, 🍕🍕 SQUASHathon is in progress! The end of the event in 1 day and ≈17 hours. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
AlexDaniel, Log and stats: gist.github.com/bcf752accfef263205...effee580ed
AlexDaniel j: say 42 18:48
camelia Error while reading '/home/camelia/p6eval-token': No such file or directory at /home/camelia/rakudo-j-inst/bin/eval-client.pl line 10.
Zoffix Exciting news! My Advent post made it to first page of HackerNews: news.ycombinator.com/ 19:04
gfldex Zoffix++
Zoffix Some good jokes in the comments. I like it. 19:07
AlexDaniel Zoffix++ 19:08
perlpilot Zoffix++ nice reply to the naysayers 19:10
AlexDaniel “are they genuinely excited about the stuff in this post or are they horrified?” :D
perlpilot I'm still digesting kbenson's comment about "Perl 6 providing way too much freedom" 19:13
squashable6 🍕🍕🍕 First contribution by usev6++! ♥ 19:46
Herby_ o/ 20:37
AlexDaniel OK folks, I think we have 20 tickets unMOLD-ed 20:40
Herby_ \o/
AlexDaniel maybe more, because fail.rakudo.party does not update immediately I think
AlexDaniel there are several tickets that need tests, so if anybody is feeling lonely… ;) 20:41
clarkema Hi all. I'm playing around with the Advent of Code as a source of little puzzles for learning Perl 6 (adventofcode.com/2017/day/1) I have a working solution for today's two challenges, but I'd love some feedback on style and idiom. My solution is at gist.github.com/clarkema/d0b6d8d95...474861db2a -- in particular, it feels like there should be a better way to get an array of digits out of the string. 20:54
Any pointers very gratefully received!
masak m: .say for "65536".comb
camelia 6
5
5
3
6
clarkema ah, thanks! 20:55
masak :)
in general, `.comb` is the opposite/dual of `.split`
`.comb` is for when you want to keep things. its default is per-character 20:56
clarkema that's really handy, thanks! It looks a lot less ugly 20:57
clarkema so you're specifying what you want, rather than what you don't, and you don't get the extra two empty matches at each end 21:01
AlexDaniel m: my @d = ‘911229’.comb; @d .= push: @d.head; say sum gather for @d.rotor(2 => -1) { take .head if [==] $_ }
camelia 12
AlexDaniel rotor, gather/take, […] :) All in one snippet 21:02
clarkema *reading up on rotor* 21:04
AlexDaniel m: say ‘12345’.comb.rotor(2 => -1) 21:05
camelia ((1 2) (2 3) (3 4) (4 5))
clarkema That's pretty cool - I originally started off wondering if I could extract pairs like that but couldn't find an easy way to do it; so it's nice to see a solution for that approach
clarkema (although as a spoiler the next part of the challenge involves testing against the digit half way around the array, instead of the neighbough, so I ended up rotating on (@digits.chars/2) 21:06
What's going on with the 'push:'? it obviously expands to something like @d = @d.push(@d.head), but I havn't seen an explanation of the colon approach 21:11
teatime `push: a;` is equiv to `push(a)` 21:12
docs.perl6.org/language/syntax#Precedence_Drop 21:13
clarkema Interesting, thanks -- didn't really know what to search for that one. Definitely looks like something to beware of on longer chained calls 21:15
AlexDaniel Is that the reduction metaoperator in the take clause (as in, you're reducing a two-element list from the block argument to a boolean) or is something else happening? 21:22
Zoffix AlexDaniel: yeah, fail.rakudo.party updates every 10m via a cron job 21:29
perlpilot clarkema++ thanks for reminding me about adventofcode.com :) 21:30
AlexDaniel clarkema: yeah, it puts == between the elements of the list 21:36
clarkema: so it's pretty much identical to .[0] == .[1]
(given that you only have two values)
clarkema Great -- I had the feeling my grep option was a little verbose
perlpilot: It's really handy to have some little challenges like that to provoke questions when learning something new! 21:37
perlpilot clarkema: yeah. It's also great just to play :-) I found out about it last year in the middle of advent and started writing some Perl 6 solutions, but I got side-tracked and didn't do them all. I'm going to try to do them all this year. We'll see how it goes 21:39
afresh1 is solving it in perl6 - github.com/afresh1/adventofcode 21:41
perlpilot afresh1: cool
afresh1 but I'm terrible at perl6, so looking forward to seeing what other folks here say 21:43
perlpilot Looks like all of the Perl 6 Advent slots are filled (yay #perl6 people!) but I bet some of the adventofcode.com solutions would be worthy of a future Perl 6 Advent post
the adventofcode problems kinda remind me a little bit of MJD's Quiz of the Week 21:45
clarkema afresh1: some interesting stuff in your solution as well; TI certainly MTOWTDI
afresh1 going to go try to actually understand `comb` and `rotor` now though :-) 21:46
clarkema it's nice to see your :skip-empty as well though
baest camelia: perl6: say DateTime.new(1512164032, :timezone($*TZ)).Instant; 21:48
camelia Error while reading '/home/camelia/p6eval-token': No such file or directory at /home/camelia/rakudo-j-inst/bin/eval-client.pl line 10.
Instant:1512164069
baest is that just me or is it very strange that 37 secs is added?
camelia: perl6: say DateTime.new(1512164032).Instant; 21:49
camelia Instant:1512164069
Error while reading '/home/camelia/p6eval-token': No such file or directory at /home/camelia/rakudo-j-inst/bin/eval-client.pl line 10.
perlpilot baest: yeah, someone mentioned that yesterday I think and I was guessing leapseconds, but there's only been 26 of those. 21:50
in any case, it seems very familiar to me though I don't know the reason why 21:51
teatime GMT time is off 18 seconds from UTC
but that doesn't help
baest perlpilot: :)
teatime TAI is off from UTC by at least 34.1 seconds 21:52
perhaps more, dunno how old my reference is
perlpilot confluence.qps.nl/display/KBE/UTC+...Correction 21:54
See the first paragraph
teatime en.wikipedia.org/wiki/International_Atomic_Time
it's TAI, 37 seconds from UTC
mmm
perlpilot so it is leap seconds plus the initial difference of 10 seconds 21:55
baest Wow ok, that explains it I guess, but still not very useful that you can't create a DateTime with an Instant from another DateTime and expect them to be the same time 21:58
perlpilot Why are you converting your DateTime to Instant anyway? 21:59
teatime Instant is by def. TAI 22:01
whereas DateTime's are in UTC or zones offset from UTC
but, they should round-trip...
masak .oO( this isomorphism is bent! ) 22:02
baest perlpilot: storing them in a database as an int 22:07
perlpilot baest: why not store them as a string in ISO8601 format? 22:08
teatime it may not be different, at least for you / at the moment, but perhaps .posix would be more appropriate
or, yeah, even better that
baest more storage with a string and I like being able to manipulate easier through SQL. Should probably use PostgreSQL and store them as a timestamp 22:10
perlpilot pg groks ISO8601 too 22:11
and I'll point out that concern over storage space is what caused all the Y2K hoopla 22:12
baest still with SQLite as I use currently you will not be able to manipulate them easily. But the important thing for me is to know what caused the thing 22:15
baest Thanks for the help guys! 22:22
AlexDaniel DrForr: here? 22:27
AlexDaniel .tell DrForr Please check RT#125299 and do something with it. I really don't understand what has to be done in order to close it. If it's just that the line number of the starter has to be mentioned, then it was done in github.com/rakudo/rakudo/commit/3e...965336147c 22:30
yoleaux AlexDaniel: I'll pass your message to DrForr.
synopsebot RT#125299 [open]: rt.perl.org/Ticket/Display.html?id=125299 [BUG] LTA error message when forgetting to close block inside string in Rakudo
AlexDaniel squashable6: status 22:33
squashable6 AlexDaniel, 🍕🍕 SQUASHathon is in progress! The end of the event in 1 day and ≈13 hours. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
AlexDaniel, Log and stats: gist.github.com/85ae0b5a63c9e0a03e...44b342bd6b
squashable6 🍕 tbrowder++ opened pull request “Fix table caption RT #126740”: github.com/rakudo/rakudo/pull/1291 23:24
synopsebot RT#126740 [new]: rt.perl.org/Ticket/Display.html?id=126740 [POD] Pod::Block::Table node caption property is not populated properly
squashable6 🍕 tbrowder++ edited pull request “Fix table caption RT #126740”: github.com/rakudo/rakudo/pull/1291 23:26
🍕 tbrowder++ opened pull request “add tests for fix for RT #126740”: github.com/perl6/roast/pull/363 23:28
kupopo I'm getting a cryptic error when trying to `make install` rakudo-star-2017.10: ./perl6-j tools/build/install-core-dist.pl $PREFIX/share/perl6 fails with Unhandled exception: VMArray representation does not implement bind_pos_native. Has anyone seen or heard of this? (Google didn't turn up anything useful) 23:46
lizmat kupopo: could you add --ll-exception after ./perl6-j and gist the output ? 23:48
kupopo: otoh, I'm not sure of the state of the JVM backend even allowing a "make install" at this time 23:49
kupopo lizmat: here's the full stack with --ll-exception: gist.github.com/shicks/27df7cf0d86...50942d4c62 23:52
I'm a bit confused about that - my understanding is that the JVM backend is basically usable, no? Is it not meant to be installed? 23:53
lizmat bartolin would really be the person to answer this question, as he's been the one working on the JVM backend lately 23:55
personally, I have focused all of my efforts on making things faster on the MoarVM backend
.ask bartolin is gist.github.com/shicks/27df7cf0d86...50942d4c62 something you'd expect from a "make install" ? 23:56
yoleaux lizmat: I'll pass your message to bartolin.
lizmat kupopo: but from the error message, it would seem to me there's something not implemented on the JVM backend that is being used in the install process
and/or not properly worked around on the JVM backend 23:57
lizmat :-( 23:57
lizmat hopes bartolin can share some insights
kupopo Thanks. I guess I'll ask my more general "what are you actually trying to do?" question - I'd like to share a perl6 program with folks who don't have perl6 installed. I'd hoped to try using a jar file for this (and maybe that wouldn't work anyway), but maybe there's a better supported solution? 23:58
(i.e. perl6 is not standard in any linux distributions I'm aware of, unlike perl5 which one can generally assume exists) 23:59