Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2017-01-03

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:16 Actualeyes left #perl6
00:31 colomon_ joined #perl6
00:55 AlexDaniel notviki++ # cool answer
00:59 aborazmeh joined #perl6
00:59 aborazmeh joined #perl6
01:07 atta joined #perl6
01:13 Actualeyes joined #perl6
01:21 BenGoldberg joined #perl6
01:24 BenGoldberg joined #perl6
01:34 cibs joined #perl6
01:35 dugword joined #perl6
01:36 samcv anybody have any thoughts. we brackets mispaired
01:36 yoleaux 2 Jan 2017 22:25Z <AlexDaniel> samcv: perhaps you can take a look at #130419 ? I wonder what you think.
01:36 synopsebot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=130419
01:36 samcv kk
01:37 AlexDaniel nevermind this ↑
01:37 samcv ah
01:37 samcv so we have in 6.c-errata a set of brackets matching the wrong one
01:38 samcv correct is: (LEFT SQUARE BRACKET WITH TICK IN TOP CORNER, RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER)
01:38 samcv we have the top one matching the bottom one and stuff
01:38 samcv so that is kind of a problem bigger than the ornate parenthesis
01:39 * samcv panics
01:39 AlexDaniel u: LEFT SQUARE BRACKET WITH TICK IN TOP CORNER
01:39 unicodable6 AlexDaniel, U+298D LEFT SQUARE BRACKET WITH TICK IN TOP CORNER [Ps] (⦍)
01:39 samcv Couldn't find terminator ⦐ (corresponding ⦍ was at line 33)
01:40 AlexDaniel u: RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER
01:40 unicodable6 AlexDaniel, U+2990 RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER [Pe] (⦐)
01:40 samcv with my nqp patch to check for the matching brackets
01:40 AlexDaniel u: SQUARE BRACKET WITH TICK
01:40 unicodable6 AlexDaniel, U+298F LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER [Ps] (⦏)
01:40 unicodable6 AlexDaniel, U+298D LEFT SQUARE BRACKET WITH TICK IN TOP CORNER [Ps] (⦍)
01:40 unicodable6 AlexDaniel, U+298E RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER [Pe] (⦎)
01:40 unicodable6 AlexDaniel, U+2990 RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER [Pe] (⦐)
01:40 samcv but we test them reversed
01:40 samcv so tick in bottom => tick top etc
01:41 AlexDaniel ⦍⦎ ⦏⦐ instead of ⦍⦐ ⦏⦎, right?
01:41 samcv yep
01:41 samcv top with top and bottom with bottom
01:41 AlexDaniel samcv: ok but what defines that it should be this way?
01:41 samcv unicode
01:42 AlexDaniel I may have missed some of that stuff during the last few days
01:42 samcv also look at them
01:42 samcv increase text size
01:42 samcv ⦍⦎ ⦏⦐ instead of ⦍⦐ ⦏⦎
01:42 samcv you can clearly see they don't match
01:43 samcv the ones on the left are not matching brackets
01:43 samcv also note that the matching bracket for 「 IS 」
01:43 AlexDaniel I'm not sure I can see it https://files.progarm.org/2017-​01-03-034303_1072x298_scrot.png
01:43 samcv so if it was meant for where the tick would be
01:43 samcv it would be that way
01:43 samcv (as in bidi mirrored glyph does not ONLY take vertical axis flipping into account)
01:44 samcv left is wrong
01:44 AlexDaniel samcv: alright, so… why not change it in errata then?
01:44 samcv that is fine with me. wanted to ask before making a change to 6.c-errata
01:45 AlexDaniel the thing is, most likely nobody is using this, so there's no reason for panic
01:45 samcv yeah
01:45 samcv yeah and probably not using the incorrect ones either
01:45 AlexDaniel the question is, however, should we willy-nilly change the errata or wait for 6.d or something
01:45 samcv tho maybe ornate parens should be removed too idk. maybe can we warn on ornate?
01:45 samcv well it's incorrect
01:46 TEttinger hehe those flippin' ornate parens
01:46 samcv it's one thing to allow additional delimiters. like < > are not technically brackets
01:46 samcv and another thing to have it mapped to the wrong one
01:46 TEttinger and newline is not technically whitespace if you believe unicode all over
01:46 samcv it's not though TEttinger
01:46 TEttinger it's in one of the C categories, yeah
01:46 samcv it's a control character
01:46 TEttinger but in text it should absolutely be parsed as space
01:47 samcv yeah
01:47 AlexDaniel samcv: well, perhaps we should do it “right” and start giving a warning for them right now?
01:47 TEttinger also, tab is considered a control too, which is similarly silly
01:47 samcv it is though
01:47 samcv it just renders as space
01:47 TEttinger :(
01:47 samcv wait. but it has semantic value
01:47 AlexDaniel personally I would've changed it right away without too much thinking, but this kinda breaks our promise to keep stuff compatible as we move on…
01:47 TEttinger anything can render as space
01:47 samcv in language. so idk
01:47 TEttinger that depends on your font
01:47 samcv render all text as space
01:48 samcv yeah AlexDaniel
01:48 TEttinger it is semantically whitespace
01:48 samcv in nqp i can make like, depreciated brackets
01:48 samcv the ornate and the mismatched ones?
01:48 samcv ugh tho, really sucks to support incorrect things?
01:48 samcv i mean it wasn't intentional we did that
01:48 samcv they were meant to be matching parens, but we reversed them
01:49 samcv i think that's a little different than the ornate ones
01:49 AlexDaniel u: 「
01:49 unicodable6 AlexDaniel, U+FF62 HALFWIDTH LEFT CORNER BRACKET [Ps] (「)
01:49 timotimo we acccidentally match the top-left and bottom-right? or top-left and top-right?
01:49 AlexDaniel u: corner bracket
01:49 unicodable6 AlexDaniel, U+23A3 LEFT SQUARE BRACKET LOWER CORNER [Sm] (⎣)
01:49 unicodable6 AlexDaniel, U+23A4 RIGHT SQUARE BRACKET UPPER CORNER [Sm] (⎤)
01:49 unicodable6 AlexDaniel, U+23A1 LEFT SQUARE BRACKET UPPER CORNER [Sm] (⎡)
01:49 unicodable6 AlexDaniel, https://gist.github.com/ba85​380edefac8eba104a0e77836e3d3
01:49 samcv yeah timotimo
01:49 timotimo which one is it? %)
01:50 samcv the top left and bottom right match and bottom left and top right match
01:50 samcv but that's reversed
01:50 BenGoldberg m: '⦎'.uniprop('na').say;
01:50 camelia rakudo-moar a566ef: OUTPUT«RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER␤»
01:50 samcv and if they were meant to be flipped horizontal axis, it would. like 「 matches 」
01:50 samcv ^ that is a bracket pair
01:51 samcv i think the tick ones are probably designed so they can be easily nested and be visually distinguishable
01:52 samcv so should def not be matched the way they are
01:53 jast joined #perl6
01:55 samcv like we match these brackets ⦋' => '⦌',
01:55 samcv m: "⦋' => '⦌'".uninames.say
01:55 camelia rakudo-moar a566ef: OUTPUT«(LEFT SQUARE BRACKET WITH UNDERBAR APOSTROPHE SPACE EQUALS SIGN GREATER-THAN SIGN SPACE APOSTROPHE RIGHT SQUARE BRACKET WITH UNDERBAR APOSTROPHE)␤»
01:55 samcv underbar and underbar match.
01:56 samcv correctly. so it's totally an error
01:56 AlexDaniel u: underbar
01:56 unicodable6 AlexDaniel, U+22F8 ELEMENT OF WITH UNDERBAR [Sm] (⋸)
01:56 unicodable6 AlexDaniel, U+234A APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR [So] (⍊)
01:56 unicodable6 AlexDaniel, U+2358 APL FUNCTIONAL SYMBOL QUOTE UNDERBAR [So] (⍘)
01:56 unicodable6 AlexDaniel, https://gist.github.com/2bc6​c5081d2b7eb780c030c221cdd7a2
01:56 AlexDaniel samcv: but there's no overbar
01:56 AlexDaniel or is there
01:56 samcv i said underbar
01:57 AlexDaniel u: square bracket bar
01:57 unicodable6 AlexDaniel, U+298C RIGHT SQUARE BRACKET WITH UNDERBAR [Pe] (⦌)
01:57 unicodable6 AlexDaniel, U+298B LEFT SQUARE BRACKET WITH UNDERBAR [Ps] (⦋)
01:57 samcv where did i say overbar
01:57 AlexDaniel samcv: I mean, there was no possibility to make it other way because there are no characters for this
01:57 samcv i suppose
01:57 samcv or you could just say unicode haven't added it yet
01:58 samcv and there are brackets without matches
01:58 samcv at the present time
01:59 AlexDaniel hmmm https://en.wikipedia.org/wiki/Bracket
01:59 samcv how will that help AlexDaniel
01:59 AlexDaniel samcv: it lists them the way they are now
01:59 AlexDaniel I'm just wondering why
02:00 samcv it lists them in codepoint order
02:01 AlexDaniel not saying that it's right, but at least we are not the only ones who made this mistake, right? :)
02:01 samcv yeah i suppose.
02:01 AlexDaniel the page has them grouped as well, not just listed
02:02 samcv For bidirectional processing, the brackets with ticks are paired on the basis of their left/right symmetric glyphs, rather than on the basis of an open/close pairing inferred from code point order.
02:02 samcv very specific
02:02 samcv though actually
02:02 samcv need to think more
02:02 samcv ack
02:02 * samcv double checks some things
02:03 samcv that doesn't really even mean anything. but it's not entirely clear
02:03 AlexDaniel “[…] are paired the same way their glyphs form mirror pairs, according to their bmg property values. They are not paired on the basis of a diagonal or antidiagonal matching of the corner ticks inferred from code point order.”
02:03 AlexDaniel
02:03 AlexDaniel yea, same thing
02:04 samcv The brackets with ticks U+298D LEFT SQUARE BRACKET WITH TICK IN TOP CORNER
02:04 samcv # through U+2990 RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER are paired the
02:04 samcv # same way their glyphs form mirror pairs, according to their bmg property
02:04 samcv # values. They are not paired on the basis of a diagonal or antidiagonal
02:04 samcv # matching of the corner ticks inferred from code point order.
02:04 samcv yeah
02:04 samcv that's pretty clear
02:04 samcv that they are 'paired'
02:04 samcv not just "mirrored" for visual identification
02:05 BenGoldberg m: '⦎'.uniprop('bmg').say;
02:05 camelia rakudo-moar a566ef: OUTPUT«⦏␤»
02:05 samcv but there are pages on using bidi brackets to find matching brackets in a text. and i think it highly unlikely they would pair the wrong one
02:05 samcv and then specifically say that they form a match
02:05 BenGoldberg m: '('.uniprop('bmg').say;
02:05 camelia rakudo-moar a566ef: OUTPUT«)␤»
02:06 BenGoldberg m: my $x = '⦋'; my $y = $x.uniprop('bmg'); say $x, $x.uniprop('na'), $y, $y.uniprop('na');
02:07 camelia rakudo-moar a566ef: OUTPUT«⦋LEFT SQUARE BRACKET WITH UNDERBAR⦌RIGHT SQUARE BRACKET WITH UNDERBAR␤»
02:07 BenGoldberg m: my $x = '⦍'; my $y = $x.uniprop('bmg'); say $x, $x.uniprop('na'), $y, $y.uniprop('na');
02:07 camelia rakudo-moar a566ef: OUTPUT«⦍LEFT SQUARE BRACKET WITH TICK IN TOP CORNER⦐RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER␤»
02:08 BenGoldberg m: my $x = '⏜'; my $y = $x.uniprop('bmg'); say $x, $x.uniprop('na'), $y, $y.uniprop('na');
02:08 camelia rakudo-moar a566ef: OUTPUT«⏜TOP PARENTHESISNil␤»
02:09 BenGoldberg m: my $x = '〈'; my $y = $x.uniprop('bmg'); say $x, $x.uniprop('na'), $y, $y.uniprop('na');
02:09 camelia rakudo-moar a566ef: OUTPUT«〈LEFT ANGLE BRACKET〉RIGHT ANGLE BRACKET␤»
02:13 BenGoldberg m: my $x = '〈'; my $y = $x.uniprop('Bidi_Mirroring_Glyph'); say $x, $x.uniprop('na'), $y, $y.uniprop('na');
02:13 camelia rakudo-moar a566ef: OUTPUT«〈LEFT ANGLE BRACKET〉RIGHT ANGLE BRACKET␤»
02:15 samcv the main point is basically, it's easy enough to fall back to things unicode doesn't define as brackets and add our own, but basically really horrible if we have to switch two of them, we have to check those brackets before trying to find the _actual_ matching delimiter
02:15 samcv are people ok with me matching the correct brackets in roast 6.c-errata?
02:16 samcv i think we should only change 6.c-errata because a mistake was made with the writing of the test. and i think that is the case here
02:17 BenGoldberg How *did* we end up with the wrong brackets, anyway?
02:17 samcv by accident
02:17 samcv idk whoever made this test file :)
02:18 samcv the test file is aply named 'quoting-unicode.t'
02:18 samcv so one would assume it had quoting using unicode brackets ;P
02:18 timotimo if you really want to find out, you can "git blame"
02:19 BenGoldberg m: my $x = '〈'; my $y = $x.uniprop('Bidi_Paired_Bracket'); say $x, $x.uniprop('na'), $y, $y.uniprop('na');
02:19 camelia rakudo-moar a566ef: OUTPUT«〈LEFT ANGLE BRACKET0NULL␤»
02:19 timotimo or "git annotate" if you want the command name to be more neutral
02:19 samcv so if going by the title the ornate parens shouldn't be there either. but that's beside the point
02:20 samcv wollmers seems to have added it
02:20 samcv or at least edited that line
02:20 BenGoldberg m: my $x = '('; my $y = $x.uniprop('Bidi_Paired_Bracket'); say $x, $x.uniprop('na'), $y, $y.uniprop('na');
02:20 camelia rakudo-moar a566ef: OUTPUT«(LEFT PARENTHESIS0NULL␤»
02:20 timotimo "git gui blame" lets you right-click on individual lines and "blame parent commit" which helps you figure out the history of a line
02:20 BenGoldberg m: my $x = '('; my $y = $x.uniprop('bpb'); say $x, $x.uniprop('na'), $y, $y.uniprop('na');
02:20 camelia rakudo-moar a566ef: OUTPUT«(LEFT PARENTHESIS0NULL␤»
02:21 BenGoldberg Why don't Bidi_Paired_Bracket or bpb work here?
02:21 samcv for what?
02:22 samcv we don't have bpb
02:22 samcv only bmg
02:22 BenGoldberg Shouldn't the paired bracket of ( be )?
02:22 BenGoldberg So we're ignoring http://www.unicode.org/Publ​ic/UNIDATA/BidiBrackets.txt ?
02:22 samcv bpb is nyi. but bpb is defined as Pi/Pf or Ps/Pe that are bmg and map to each other
02:22 shayan_ joined #perl6
02:23 samcv well there's not a dedicated bracket one. but ^ is the spec
02:23 samcv and the stuff in that file is derived from bmg and the general categories
02:23 samcv plus we support some things that aren't ""brackets"" but are bidi mirrored like < >
02:24 samcv < and > are less than and greater than symbol
02:24 samcv m: '<'.uniname.say
02:24 camelia rakudo-moar a566ef: OUTPUT«LESS-THAN SIGN␤»
02:24 timotimo right ... ugh
02:26 timotimo i'm glad my keyboard layout has ⟨⟩ somewhat easily available
02:26 samcv the main issue being we should never define anything that conflicts with unicode's brackets. but we can add additional ones if we really want to
02:26 samcv but swapping them is just news for bad news
02:27 timotimo right
02:27 * samcv contemplates what 'news for bad news' even means or what i meant
02:27 samcv bad news. something something
02:27 timotimo we can have a long deprecation cycle for that
02:27 samcv ornate parens are easier to depreciate. but the ones with ticks
02:27 timotimo so if someone actually did use those brackets, they'll be getting warnings for a year or so before they get "mismatched brackets" problems
02:27 samcv hm
02:28 samcv ok
02:28 samcv i will do that
02:28 timotimo but also: we can have extra code in our parser that notices when the wrong one was found before running senselessly to the EOF
02:29 timotimo you think brackets with ticks are common?
02:29 samcv no
02:29 timotimo why are they harder to deprecate?
02:29 samcv i mean the compiler already shows you what glyph it was looking as a closing
02:29 samcv because they're reversed
02:30 samcv err swapped is more accurate
02:30 timotimo right, rakudo currently matches topleft with bottomright and vice versa you said
02:30 samcv yeah
02:30 timotimo i thought we had the same problem with the ornate brackets?
02:30 samcv nope those aren't actual brackets per unicode
02:30 samcv so depreciating them would be easy
02:31 samcv to give a warning for that. since it doesn't conflict with the actual matching brackets. since we already define some of our own things not defined as brackets
02:31 timotimo oh
02:31 shayan_ joined #perl6
02:32 BenGoldberg m: say q< foo [ bar >;
02:32 camelia rakudo-moar a566ef: OUTPUT« foo [ bar ␤»
02:33 samcv for my matching bracket code for nqp i'm just going on, is it bidi mirrored, find the matching mirroring glyph
02:34 samcv which allows us to match < > as well
02:34 samcv and any mirrored thing should never be used as an arbitrary delimiter, so it is good to catch that too
02:36 samcv i mean the module thing broke some code right, but it fixed an existing bug
02:36 samcv i think this is a bug, since they were specified with the wrong matches.
02:37 kalkin-_ joined #perl6
02:37 samcv but i could i guess have code that would catch that case. idk i think a year is too long
02:38 samcv can depreciate the ornate ones over much longer, but i think the ticked brackets should be depreciated quicker since it's an error
02:39 timotimo we can make it explode when the user uses 6.d (or uses v6 which always gives you the latest if i'm not mistaken)
02:40 samcv i'm ok with doing that for ornate. but not the ticked ones :(
02:41 samcv it just seems bad to keep something incorrect in, that is 100% incompatible with 6.d
02:41 timotimo yeah
02:42 samcv if people write their code then use v6.d and then it tries to match a different delimiter. that's horrible
02:46 samcv anybody else want to weigh in?
02:46 notviki If they're wrong, I don't see a problem with changing 6.c-errata.
02:46 samcv anybody else object to changing 6.c-errata?
02:46 grondilu joined #perl6
02:48 ilbot3 joined #perl6
02:48 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
02:49 timotimo aaargh! "fadd, fmul" "floating point operations, running time depends on the operands", "bypassing firefox's same origin policy via SVG filter timing attack"
02:49 timotimo side channel attacks are scary
02:50 timotimo (not relevant to perl6 ... yet!)
03:13 noganex_ joined #perl6
03:16 shayan_ joined #perl6
03:19 dugword joined #perl6
03:21 pyrimidine joined #perl6
03:24 Gasher joined #perl6
03:28 xtreak joined #perl6
03:30 Sgeo joined #perl6
03:35 kalkin-_ joined #perl6
03:35 dugword joined #perl6
03:35 jast joined #perl6
03:35 Sgeo joined #perl6
03:35 noganex_ joined #perl6
03:35 xtreak joined #perl6
03:35 Gasher joined #perl6
03:35 pyrimidine joined #perl6
03:35 shayan_ joined #perl6
03:35 grondilu joined #perl6
03:35 cibs joined #perl6
03:35 BenGoldberg joined #perl6
03:35 atta joined #perl6
03:35 aborazmeh joined #perl6
03:35 skids joined #perl6
03:35 kybr joined #perl6
03:35 bstamour joined #perl6
03:35 labster joined #perl6
03:35 awwaiid joined #perl6
03:35 TEttinger joined #perl6
03:35 ccakes joined #perl6
03:35 notviki joined #perl6
03:35 f3ew_ joined #perl6
03:35 jercos joined #perl6
03:35 BooK joined #perl6
03:35 literal joined #perl6
03:35 jervo joined #perl6
03:35 JimmyZ joined #perl6
03:35 kst joined #perl6
03:35 luis joined #perl6
03:35 shmibs joined #perl6
03:35 esh joined #perl6
03:35 Util joined #perl6
03:35 jnthn joined #perl6
03:35 rjbs joined #perl6
03:35 tomaw joined #perl6
03:35 [ptc] joined #perl6
03:35 jdv79 joined #perl6
03:35 silug joined #perl6
03:35 risou___ joined #perl6
03:35 moritz joined #perl6
03:35 petercommand joined #perl6
03:35 lucs joined #perl6
03:35 garu joined #perl6
03:35 masak joined #perl6
03:35 roguelazer joined #perl6
03:35 broquaint joined #perl6
03:35 stux|RC joined #perl6
03:35 hobbs joined #perl6
03:35 emdashcomma joined #perl6
03:35 jferrero joined #perl6
03:35 Kaffe joined #perl6
03:35 Grrrr joined #perl6
03:35 matt_ joined #perl6
03:35 domm1 joined #perl6
03:35 jonadab joined #perl6
03:35 PerlJam joined #perl6
03:35 DrForr joined #perl6
03:35 huf joined #perl6
03:35 vcv_ joined #perl6
03:35 musca joined #perl6
03:35 ugexe joined #perl6
03:35 eythian joined #perl6
03:35 thib joined #perl6
03:35 simcop2387 joined #perl6
03:35 vytas joined #perl6
03:35 kipd joined #perl6
03:35 notbenh_ joined #perl6
03:35 jeek joined #perl6
03:35 culb joined #perl6
03:35 shadowpaste joined #perl6
03:35 cxreg joined #perl6
03:35 sjn joined #perl6
03:35 felher joined #perl6
03:35 m0ltar joined #perl6
03:35 eiro joined #perl6
03:35 Juerd joined #perl6
03:35 skaji joined #perl6
03:35 arnsholt joined #perl6
03:35 inokenty joined #perl6
03:35 ribasushi joined #perl6
03:35 amalia__ joined #perl6
03:35 chansen_ joined #perl6
03:35 ggherdov joined #perl6
03:35 pnu_ joined #perl6
03:35 mindos joined #perl6
03:35 mephinet joined #perl6
03:35 BinGOs joined #perl6
03:35 TeamBlast joined #perl6
03:35 mithaldu_ joined #perl6
03:35 dylanwh joined #perl6
03:35 perigrin joined #perl6
03:35 yoleaux joined #perl6
03:35 zostay joined #perl6
03:35 adrusi joined #perl6
03:35 dudz joined #perl6
03:35 mls joined #perl6
03:35 TheDir joined #perl6
03:35 isacloud joined #perl6
03:35 parisba joined #perl6
03:35 jnap_ joined #perl6
03:35 konobi_ joined #perl6
03:35 cosimo_ joined #perl6
03:35 revdiablo joined #perl6
03:35 dontbe^2 joined #perl6
03:35 mtj_ joined #perl6
03:35 raydiak joined #perl6
03:35 alnewkirk joined #perl6
03:35 charsbar______ joined #perl6
03:35 salparadise joined #perl6
03:35 xxpor joined #perl6
03:35 gfldex joined #perl6
03:35 mniip joined #perl6
03:35 ccntrq joined #perl6
03:35 yeltzooo joined #perl6
03:35 titsuki_ joined #perl6
03:35 timeless joined #perl6
03:35 mrsolo joined #perl6
03:35 solarbunny joined #perl6
03:35 Spot__ joined #perl6
03:35 ilbelkyr joined #perl6
03:35 wictory[m] joined #perl6
03:35 M-Illandan joined #perl6
03:35 Matthew[m] joined #perl6
03:35 ilmari[m] joined #perl6
03:35 mulk[m] joined #perl6
03:35 Matias[m] joined #perl6
03:35 dp[m] joined #perl6
03:35 jsimonet joined #perl6
03:35 tadzik joined #perl6
03:35 bhm joined #perl6
03:35 sftp joined #perl6
03:35 Hotkeys joined #perl6
03:35 k-man joined #perl6
03:35 sunnavy joined #perl6
03:35 yubimusubi joined #perl6
03:35 SHODAN joined #perl6
03:35 diego_k joined #perl6
03:35 abruanese joined #perl6
03:35 wtw joined #perl6
03:35 tinita joined #perl6
03:35 El_Che joined #perl6
03:35 sivoais joined #perl6
03:35 Celelibi joined #perl6
03:35 Unavowed joined #perl6
03:35 freeze joined #perl6
03:35 [particle] joined #perl6
03:35 SourceBaby joined #perl6
03:35 eater joined #perl6
03:35 zoosha_ joined #perl6
03:35 SmokeMachine joined #perl6
03:35 imcsk8 joined #perl6
03:35 kent\n joined #perl6
03:35 obfusk_ joined #perl6
03:35 go|dfish joined #perl6
03:35 jkva joined #perl6
03:35 ponbiki joined #perl6
03:35 spider-mario joined #perl6
03:35 Exodist joined #perl6
03:35 MasterDuke joined #perl6
03:35 japhb joined #perl6
03:35 riatre joined #perl6
03:35 eyck joined #perl6
03:35 baest joined #perl6
03:35 revere joined #perl6
03:35 mspo joined #perl6
03:35 plicease joined #perl6
03:35 araujo joined #perl6
03:35 pochi joined #perl6
03:35 statisfiable6 joined #perl6
03:35 benchable6 joined #perl6
03:35 profan joined #perl6
03:35 dustinm`_ joined #perl6
03:35 ambs joined #perl6
03:35 Praise joined #perl6
03:35 kshannon_ joined #perl6
03:35 dsp__ joined #perl6
03:35 psch joined #perl6
03:35 [Coke] joined #perl6
03:35 leedo_ joined #perl6
03:35 tony-o_ joined #perl6
03:35 mitchum joined #perl6
03:35 saki_ joined #perl6
03:35 ingy joined #perl6
03:35 Charlie joined #perl6
03:35 ilogger2 joined #perl6
03:35 john51 joined #perl6
03:35 shadowpaste0 joined #perl6
03:35 UgJkA joined #perl6
03:35 Gothmog_ joined #perl6
03:35 adhoc joined #perl6
03:35 hahainternet joined #perl6
03:35 sergot joined #perl6
03:35 ShoaibJahejo joined #perl6
03:35 pierrot joined #perl6
03:35 Woodi joined #perl6
03:35 stmuk joined #perl6
03:35 captain-adequate joined #perl6
03:35 dj_goku joined #perl6
03:35 Vasyl joined #perl6
03:35 bartolin joined #perl6
03:35 jordman joined #perl6
03:35 NeuralAnomaly joined #perl6
03:35 bitmap joined #perl6
03:35 mattp_ joined #perl6
03:35 b2gills joined #perl6
03:35 ssm joined #perl6
03:35 astj joined #perl6
03:35 sammers joined #perl6
03:35 andrewalker joined #perl6
03:35 zb joined #perl6
03:35 cpage joined #perl6
03:35 samcv joined #perl6
03:35 Xliff joined #perl6
03:35 SCHAAP137 joined #perl6
03:35 hoelzro joined #perl6
03:35 kmwallio joined #perl6
03:35 Ulti joined #perl6
03:35 chee joined #perl6
03:35 krakan_ joined #perl6
03:35 leah2 joined #perl6
03:35 r3m joined #perl6
03:35 dg joined #perl6
03:35 protium joined #perl6
03:35 CIAvash[m] joined #perl6
03:35 KotH joined #perl6
03:35 avar joined #perl6
03:35 breinbaas joined #perl6
03:35 smash joined #perl6
03:35 rblackwe joined #perl6
03:35 tyil joined #perl6
03:35 ranguard joined #perl6
03:35 Bucciarati joined #perl6
03:35 sQuEE joined #perl6
03:35 robinsmidsrod joined #perl6
03:35 damnlie_ joined #perl6
03:35 integral joined #perl6
03:35 d^_^b joined #perl6
03:35 Peter_R joined #perl6
03:35 jcallen joined #perl6
03:35 gabiruh joined #perl6
03:35 vike joined #perl6
03:35 cgfbee joined #perl6
03:35 avuserow joined #perl6
03:35 cognominal joined #perl6
03:35 ttkp6 joined #perl6
03:35 xui_nya[m] joined #perl6
03:35 Guest57693 joined #perl6
03:35 xfix joined #perl6
03:35 rightfold joined #perl6
03:35 timotimo joined #perl6
03:35 jantore joined #perl6
03:35 ChoHag joined #perl6
03:35 Undercover joined #perl6
03:35 evalable6 joined #perl6
03:35 bisectable6 joined #perl6
03:35 webstrand joined #perl6
03:35 committable6 joined #perl6
03:35 cpage_ joined #perl6
03:35 tailgate joined #perl6
03:35 forkbomb joined #perl6
03:35 susmus joined #perl6
03:35 effbiai joined #perl6
03:35 geekosaur joined #perl6
03:35 ggoebel joined #perl6
03:35 leejo joined #perl6
03:35 azertus joined #perl6
03:35 obra joined #perl6
03:35 erdic joined #perl6
03:35 unicodable6 joined #perl6
03:35 drrho joined #perl6
03:35 cyphase joined #perl6
03:35 notbenh joined #perl6
03:35 Alikzus joined #perl6
03:35 huggable joined #perl6
03:35 buggable joined #perl6
03:35 MilkmanDan joined #perl6
03:35 aries_liuxueyang joined #perl6
03:35 nebuchadnezzar joined #perl6
03:35 diakopter joined #perl6
03:35 Cabanossi joined #perl6
03:35 nine joined #perl6
03:35 camelia joined #perl6
03:35 romrador joined #perl6
03:35 mst joined #perl6
03:35 avalenn joined #perl6
03:35 xiaomiao joined #perl6
03:35 synopsebot6 joined #perl6
03:35 grumble joined #perl6
03:35 aindilis joined #perl6
03:35 dogbert2 joined #perl6
03:35 AlexDaniel joined #perl6
03:35 khw joined #perl6
03:35 Dunearhp joined #perl6
03:35 telex joined #perl6
03:35 kaare_ joined #perl6
03:35 mr-foobar joined #perl6
03:35 holli joined #perl6
03:35 Khisanth joined #perl6
03:35 bwisti joined #perl6
03:35 zacts joined #perl6
03:35 leego joined #perl6
03:35 girafe2 joined #perl6
03:35 tbrowder joined #perl6
03:35 PotatoGim joined #perl6
03:35 peteretep joined #perl6
03:35 w4and0er96 joined #perl6
03:35 BuildTheRobots joined #perl6
03:35 olinkl joined #perl6
03:35 clkao joined #perl6
03:35 curt_ joined #perl6
03:35 lizmat joined #perl6
03:35 xinming_ joined #perl6
03:35 MasterDukeLaptop joined #perl6
03:35 nowan joined #perl6
03:35 setty1 joined #perl6
03:35 dalek joined #perl6
03:35 pecastro joined #perl6
03:35 Actualeyes joined #perl6
03:35 Actualeyes left #perl6
03:49 rburkholder joined #perl6
04:00 samcv m: say q⦍ test ⦎
04:00 camelia rakudo-moar 76283f: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Couldn't find terminator ⦐ (corresponding ⦍ was at line 1)␤at <tmp>:1␤------> 3say q⦍ test ⦎7⏏5<EOL>␤    expecting any of:␤        ⦐␤»
04:00 samcv yey
04:01 samcv luckily the error is pretty damn informative as to what it's looking for
04:01 * samcv goes to edit wikipedia
04:03 * timotimo has tea
04:08 cooper_ joined #perl6
04:22 shayan_ joined #perl6
04:41 kaare_ joined #perl6
04:43 xinming joined #perl6
04:43 AlexDaniel samcv++
04:51 BenGoldberg joined #perl6
04:52 shayan_ joined #perl6
04:52 pyrimidine joined #perl6
04:58 Ben_Goldberg joined #perl6
05:00 Actualeyes joined #perl6
05:40 Actualeyes joined #perl6
05:51 labster joined #perl6
05:52 grumble joined #perl6
05:55 Cabanoss- joined #perl6
05:57 kaare_ joined #perl6
06:11 wamba joined #perl6
06:12 kaare_ joined #perl6
06:26 andrzeju joined #perl6
06:26 andrzeju hello perl!
06:48 abraxxa joined #perl6
06:52 RabidGravy joined #perl6
07:00 domidumont joined #perl6
07:01 samcv hi!
07:01 andrzeju samcv, :)
07:01 andrzeju don't worry I am good
07:03 FROGGS joined #perl6
07:05 domidumont joined #perl6
07:08 jonas2 joined #perl6
07:13 RabidGravy erp!
07:16 CIAvash joined #perl6
07:20 andrzeju guy what do you think about future of Perl6 on microcontrollers?
07:21 timotimo perl6 on microcontrollers is very unlikely. we require an operating system, and a memory management unit. microcontrollers usually don't have that
07:21 timotimo well, technically speaking SOCs are "microcontrollers", too
07:22 timotimo andrzeju: do you mean things like an STM32, arduino, ... or do you mean things like smartphones, intel galileo, ...?
07:23 andrzeju avr , arm
07:23 andrzeju improve coding speed with perl
07:23 andrzeju on C
07:23 timotimo you do realize that there are really tiny as well as really beefy ARMs, right?
07:24 andrzeju sure
07:24 andrzeju avr is very tiny
07:24 timotimo but you mean the lower end where you wouldn't have a linux run on it
07:24 timotimo yeah, they are
07:24 andrzeju but arm should be okay
07:24 andrzeju yep
07:24 andrzeju my idea is static C code
07:25 andrzeju with dynamic Perl6 parts
07:25 timotimo but yeah, at least rakudo/moar is not going to run without a linux or something similar below it
07:25 andrzeju timotimo, personally I don't believe in rakudo
07:25 andrzeju and moar
07:26 timotimo i seem to remember you said something like that at some point
07:26 andrzeju yeah
07:26 andrzeju these vm's it is temporary solution
07:27 andrzeju while language specs are not ready
07:27 andrzeju but in the future the code should be transported to native one
07:27 timotimo feel free to work on that. i don't think it's a good idea, though
07:28 andrzeju I am not vm expert :)
07:28 bjz joined #perl6
07:32 petrutrimbitas joined #perl6
07:36 samcv define native
07:37 timotimo "superfast"
07:37 andrzeju exactly
07:38 bjz joined #perl6
07:38 timotimo well, that's a very useless answer
07:38 samcv yes
07:38 jast would JIT compilation qualify as "superfast"
07:38 samcv why can't vm's be as fast?
07:38 timotimo vms can be faster than compiled code
07:38 samcv it's just seperated componentwise
07:39 dalek ecosystem: f13a92c | (Alexey Melezhik)++ | META.list:
07:39 dalek ecosystem: correct link to Meta6.json
07:39 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/f13a92cf2f
07:39 dalek ecosystem: 4bbbc1c | (Alexey Melezhik)++ | META.list:
07:39 dalek ecosystem: Merge pull request #279 from melezhik/master
07:39 dalek ecosystem:
07:39 dalek ecosystem: correct link to Meta6.json
07:39 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/4bbbc1ce33
07:40 andrzeju look at Swift implementation
07:40 andrzeju it also JIT
07:40 andrzeju working on all apple device
07:40 jast I'm not familiar with moar's internals specifically, but my impression is that the harder thing to make efficient with implementations of highly dynamic languages isn't CPU time but memory use
07:40 andrzeju superfast
07:41 andrzeju we need copy Swift design to Perl6
07:41 jast though of course the two are very interrelated if you're carrying around lots of meta info
07:41 jast well, you could just use Swift then :}
07:41 andrzeju and start conquer the world
07:41 andrzeju it is no matter what I want to use
07:42 stmuk I thought swift was AOT and based on LLVM rather than using a VM
07:43 timotimo the smallest google search seems to show there's some kind of jitting involved somehow
07:43 jast Swift programs need an objc-style runtime at least
07:44 stmuk oh it supports both AOT and JIT
07:45 arnsholt jast: There are probably several tricky things. But an important one is getting good enough optimizations (JIT, AOT, or both) so that you can sidestep the highly dynamic bits whenever possible
07:46 jast I don't really know Swift but at first glance it's not nearly as flexible as Perl5/6 and so copying Swift's design probably would be similar to copying a jet plane's design to a tank
07:46 jast or vice versa
07:47 jast arnsholt: yeah, that was my thinking... and it can be really tricky to figure out good places to do that for at least some practically relevant code :)
07:49 jast I'll refrain from speculating too much because I'm sure quite a few people here have a lot more practical experience with this kind of thing than I do
07:54 * timotimo bbl
07:55 darutoko joined #perl6
07:55 Wanderer68 joined #perl6
07:55 ChoHag joined #perl6
08:02 dugword joined #perl6
08:03 andrzeju do you think Perl can be rewritten to llvm?
08:03 andrzeju I mean Perl6 llvm implementation
08:04 petrutrimbitas joined #perl6
08:06 pierre_ joined #perl6
08:07 pierre_ joined #perl6
08:11 jast I looked up past conversations. consensus seems to be that LLVM's IR and MoarVM don't align very well, and it wouldn't be a good fit. I guess nobody has thought that spending heaps of time on this would be worth the effort... and it probably wouldn't be as much of a magical speed-up as people have come to associate with LLVM
08:13 rindolf joined #perl6
08:13 stmuk I think new nqp backends would be welcomed (like the JS one)
08:16 zakharyas joined #perl6
08:17 petrutrimbitas joined #perl6
08:28 masak m: "abcdefg" ~~ /cd./; say $/.from
08:28 camelia rakudo-moar 76283f: OUTPUT«2␤»
08:29 masak what's an idiomatic Perl 5 analogue of the above?
08:29 masak length($`) ?
08:29 masak perldoc keeps neurotically bringing up global de-optimizations if I use $` et al.
08:31 jast $-[0] perhaps?
08:31 xtreak joined #perl6
08:33 samcv need a perl6 backend for my brain
08:34 jast with @- and @+ it's fairly easy to work around using $` and such
08:35 masak is it cheaper, too?
08:35 jast I believe so, it's missing the de-optimization warnings
08:35 DrForr $` and friends aren't as much of a problem with optimization these days, I believe.
08:36 jast but in this case $-[0] is actually more straightforward
08:36 DrForr There was a time when simply use'ing the English module was a performance penalty because it touched $`. But as jast says, $-[0] and $+[0] are better solutions.
08:39 * lizmat clickbaits https://p6weekly.wordpress.com/2017/01​/02/2017-01-glancing-at-a-prime-time/
08:40 masak lizmat++
08:40 El_Che morning
08:43 * DrForr waves at El_Che.
08:45 * lizmat wonders who would like to answer https://www.reddit.com/r/perl6/comments/5lqhbr/w​hen_perl_6_was_being_designed_what_alternatives/
08:46 timotimo i'll put down a few words, but by no means a complete answer
08:50 timotimo done
08:51 lizmat timotimo+
08:53 pyrimidi_ joined #perl6
08:56 g4 joined #perl6
08:56 g4 joined #perl6
08:58 petrutrimbitas Hi, I’m trying to match the content of a <td>. I’m getting no matches and also the regex looks ugly. Is there a way to fix it? http://ideone.com/diw83Y
08:59 timotimo for one you can write '</td>' instead of \<\/td\>
09:00 timotimo and '<td' instead of \<td
09:00 timotimo i'm not entirely sure that the space directly after the :s will also turn on sigspace for you
09:01 jast when I try it, both an unquoted < and an unquoted / are invalid
09:02 DrForr I'd definitely use '..' instead of backslashing. It might not hurt to break out '</td>' as a separate regex term as well.
09:02 timotimo well, yeah, that's why you put the ' around it
09:02 jast oh, I kind of didn't read that as literal quoting. whoops.
09:02 arnsholt Yeah, I think the space after :s would be leading space in sigspace, which is disregarded
09:02 timotimo it's difficult to send that kind of thing over irc :P
09:03 arnsholt Try replacing the :s with <.ws>
09:03 petrutrimbitas I tried it like this if ($response.Str ~~ m/ '<td class="task">'(.*)'</td>' /) but now it behaves like an infinite loop
09:03 DrForr I must say I'm impressed that ideone.com picks up on Perl 6 and does syntax highlighting, although it's not *quite* there yet.
09:03 dugword joined #perl6
09:04 petrutrimbitas it worked, I think
09:04 dalek perl6.org: a7dec0f | moritz++ | source/resources/index.html:
09:04 dalek perl6.org: Clarify book section
09:04 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/a7dec0fae7
09:12 hartenfels joined #perl6
09:12 Tonik joined #perl6
09:14 * lizmat wonders what would need to be done to get Rakudo Perl 6 listed on https://github.com/showcases/programming-languages
09:17 gfldex lizmat: there is a Contact GitHub link at the bottom of the page
09:18 lizmat that feels more like a newbie support page than anything pertaining specifically to the programming languages list
09:18 DrForr There's also a "Great for new contributors" link on https://github.com/showcases # although that might not be the smartest move :)
09:19 shadowpaste "kaare_" at 217.168.150.38 pasted "Native call" (35 lines) at http://fpaste.scsys.co.uk/540471
09:20 gfldex lizmat: sometimes ppl forward e-mails to where they need to go
09:21 brrt joined #perl6
09:23 samcv lizmat, isn't that list automated?
09:23 jast according to their blog it's curated from trending repos
09:23 samcv oh
09:23 samcv are we trending though
09:24 jast from what I can see, /contact is the only official place to talk to them
09:24 samcv https://www.google.com/trends/explore?q=perl%206
09:24 samcv seems to be holding pretty constant
09:25 * lizmat sent them a message
09:25 timotimo apparently only muricans are interested in perl6 ... ?!
09:25 jast Google Trends related topics: "JSON - Programming Language"
09:25 timotimo also, clearly iPhone 6, JSON, and Nexus 6 are related to perl6
09:25 samcv though https://www.google.com/trends/expl​ore?q=perl%206,julia%20programming
09:26 samcv heh
09:26 jast they forgot IPv6
09:26 timotimo https://www.google.com/trends/ex​plore?q=perl%206,%2Fm%2F0j3djl7
09:27 timotimo julia pwns us still
09:27 samcv where do you get related queries that aren't related to perl 6
09:27 samcv see this https://www.google.com/trends/explore​?q=%22perl%206%22,julia%20programming
09:27 timotimo https://www.google.com/trends/e​xplore?q=perl%206,%2Fm%2F0dbjtf - here's something that's closer to our niche
09:27 timotimo you're comparing "julia programming", i'm comparing vs "julia the programming language"
09:27 samcv help
09:28 DrForr https://opensource.com/article/16/12/​yearbook-top-programming-trends-2016 is available as well.
09:29 timotimo coq and agda also both surpass us by far
09:30 samcv somebody should write a really fast C hex to integer converter for moar
09:30 samcv so we can be faster until we actually don't have to always parse the hex digits in the unicode database for normalization ...
09:31 timotimo utf8_c8 has a hex2int function
09:32 brrt DrForr: that article is horrible, unfortunately :-(
09:32 samcv nice timotimo
09:32 brrt how is go something that system operations people should learn
09:33 brrt samcv: if you want fast hex-to-integer conversion, you want to use SIMD
09:33 brrt also, it's not really all that much work, is it
09:35 dalek doc: e708888 | gfldex++ | doc/Language/typesystem.pod6:
09:35 dalek doc: fix typo
09:35 dalek doc: review: https://github.com/perl6/doc/commit/e708888d5c
09:35 synopsebot6 Link: http://doc.perl6.org/language/typesystem
09:35 samcv converting from hex?
09:35 samcv well it is how it does in now using strtol
09:35 samcv idk it takes up like 14% of the cpu reading a string from a file
09:36 samcv that seems slow to me
09:36 brrt well, 'conversion' means substracting the integer of '0' from '0'-'9' and 'a' + 10 from 'a'-'f'
09:36 samcv yeah something like that
09:36 brrt and then packing them more tightly together (nibbles to bytes)
09:36 brrt it's a very simple operation reall
09:37 timotimo that'? what hex2int does
09:37 jast is that actually faster than using a lookup table? I know nothing anymore with modern computers
09:37 timotimo but it only works on a single codepoint
09:37 timotimo so it doesn't do the packing
09:37 brrt jast: it ought to be faster if you implement this as SIMD
09:37 samcv idk whatever we do, would be nice to just be able to inline it
09:37 jast right
09:37 samcv until ucd2c.pl gets totally redone, that's what we're stuck with
09:38 brrt the thing with recent CPUs is that computation is basically free compared to memory access
09:38 brrt caching helps with that, of course
09:38 samcv 16% isn't free though :P
09:39 brrt true enough
09:39 thayne joined #perl6
09:39 timotimo yes.
09:39 bjz joined #perl6
09:41 gregf_ joined #perl6
09:50 Gothmog_ joined #perl6
09:52 ufobat joined #perl6
09:53 Actualeyes left #perl6
10:18 dalek joined #perl6
10:25 xtreak joined #perl6
10:36 El_Che I am happy to seeing a nice mix of perl5 and 6 talks at fosdem. Schedule should be up very soonish
10:38 DrForr Reminds me, I need to book flight &c.
10:38 El_Che DrForr: yeah, looking forward to your talk :)
10:39 DrForr It's basically going to be "Here's my git history, here's why I did X and Y."
10:39 El_Che I'll throw rotten fruit if I don't like it :)
10:40 DrForr As long as by "rotten" you mean properly brewed and I can catch the bottle :)
10:40 DrForr Especially it it's framboise :)
10:40 El_Che hehe
10:41 bjz joined #perl6
10:47 bjz_ joined #perl6
10:51 rafschi joined #perl6
10:51 pierre_ joined #perl6
10:54 pyrimidine joined #perl6
10:54 cibs joined #perl6
11:05 dugword joined #perl6
11:09 buggable joined #perl6
11:15 Actualeyes joined #perl6
11:15 user9 joined #perl6
11:20 cooper_ joined #perl6
11:26 tadzik is there a slurp() that gives me bytes back, instead of complaining about invalid utf8?
11:28 rafschi .read
11:28 psch m: say &slurp.candidates[0]
11:28 camelia rakudo-moar ee3872: OUTPUT«sub slurp (IO::ArgFiles:D $io = { ... }, :$bin, :$enc = "utf8", |c is raw) { #`(Sub|75010192) ... }␤»
11:29 psch m: slurp(:bin)[0].WHAT.say
11:29 camelia rakudo-moar ee3872: OUTPUT«(Int)␤»
11:36 tadzik .read requires arguments, C-style
11:36 tadzik ach, slurp:bin sounds good, thanks :)
11:44 iH2O joined #perl6
11:48 iH2O left #perl6
11:55 petrutrimbitas joined #perl6
11:57 Actualeyes joined #perl6
12:03 brrt joined #perl6
12:17 ilmari joined #perl6
12:19 notviki joined #perl6
12:19 leego joined #perl6
12:22 tbrowder joined #perl6
12:25 SmokeMachine joined #perl6
12:29 pierre_ joined #perl6
12:37 pmurias joined #perl6
12:38 petrutrimbitas joined #perl6
12:38 pmurias brrt: re why should system operations people should learn go, wasn't the idea that it will enable them to patch docker?
12:41 hartenfels joined #perl6
12:42 jast wait, docker is written in go?
12:43 jast it's funny how things I don't care for tend to cluster together
12:45 masak I would kind of expect that to happen, given how people's interests in general cluster together
12:46 jast sure. it definitely comes in handy often enough
12:46 jast makes it so much easier to apply my prejudice
12:49 rafschi jast: yesterday someone was talking about an 'init system written in go'. Didn't deal withg SIGCHILD.
12:49 jast I'm sure one single signal can't be that important
12:50 arnsholt What could possibly go wrong?! =D
12:50 jast and I mean it's not like it would get raised often
12:50 jast you can do some sort of polling I guess
12:50 jast should be close enough
12:51 cibs joined #perl6
12:53 rafasch joined #perl6
12:57 pyrimidine joined #perl6
13:03 teksteiner joined #perl6
13:06 dugword joined #perl6
13:11 brrt joined #perl6
13:13 brrt joined #perl6
13:21 bjz joined #perl6
13:31 AlexDaniel joined #perl6
13:33 telex joined #perl6
13:35 aborazmeh joined #perl6
13:35 aborazmeh joined #perl6
13:35 rumble joined #perl6
13:43 aries_liuxueyang joined #perl6
13:44 notviki Is mt1957 here?
13:47 skaji_ joined #perl6
13:47 literal joined #perl6
13:47 felher joined #perl6
13:47 baest_ joined #perl6
13:48 xxpor joined #perl6
13:48 simcop2387 joined #perl6
13:49 esh joined #perl6
13:53 cgfbee joined #perl6
13:55 AlexDaniel b: use Test; subtest ‘description’, { say ‘hello’ }
13:55 bisectable6 AlexDaniel, Bisecting by exit code (old=2015.12 new=fb4f161). Old exit code: 1
13:55 bisectable6 AlexDaniel, bisect log: https://gist.github.com/6fb4​814451435f2f2829e78d8d18ba4f
13:55 bisectable6 AlexDaniel, (2016-05-16) https://github.com/rakudo/rakudo/commit/​e239f6ee3ee18e464995ee0c7b0c02dbdaeb9c75
13:59 AlexDaniel cool
14:04 teksteiner Quick question on grep and its syntax, so taking Euler Problem 10 (summation of primes smaller than 2m), I know I can simply use `my @primes = (2...*).grep(*.is-prime)` to create a lazy list of primes, Im not sure if and how I can include the upper bound in there, `my @primes = (2...*).grep(*.is-prime, * < 2000000)` does not work, also will I have to explicitly make the resulting list strict if I want to sum it
14:04 teksteiner afterwards?
14:05 holli joined #perl6
14:05 raschip m: say (2..20).grep(.is-prime)
14:05 camelia rakudo-moar fb4f16: OUTPUT«No such method 'is-prime' for invocant of type 'Any'␤  in block <unit> at <tmp> line 1␤␤»
14:05 notviki m: say [+] (2...* < 2000_000).grep: *.is-prime
14:05 camelia rakudo-moar fb4f16: OUTPUT«2␤»
14:05 psch m: (2..*).grep(*.is-prime).grep(* < 2000000).is-lazy.say
14:05 camelia rakudo-moar fb4f16: OUTPUT«True␤»
14:06 teksteiner Aaah I see
14:06 jnthn Using a .. Range is probably a lot faster than using ...
14:06 notviki .oO( 2? )
14:06 psch m: (lazy 2..2000000).grep(*.is-prime).is-lazy.say
14:06 camelia rakudo-moar fb4f16: OUTPUT«True␤»
14:06 notviki m: say [+] (2..2000_000).grep: *.is-prime
14:06 AlexDaniel m: (2..2000_000).grep(*.is-prime)​.grep(*.is-prime).is-lazy.say
14:06 teksteiner Totally overlooked that the grep is used on a list already
14:06 AlexDaniel :|
14:06 camelia rakudo-moar fb4f16: OUTPUT«(timeout)»
14:06 camelia rakudo-moar fb4f16: OUTPUT«False␤»
14:06 AlexDaniel m: (2..2000_000).grep(*.is-prime)​.grep(*.is-prime).is-lazy.say
14:06 camelia rakudo-moar fb4f16: OUTPUT«False␤»
14:06 AlexDaniel wait, False?
14:07 psch mhm, can't lazy infix:<..> with known bounds it seems
14:07 psch or the grep reifies, i'm not sure
14:07 AlexDaniel m: say (2..2000_000).grep(*.is-pr​ime).grep(*.is-prime)[^20]
14:07 camelia rakudo-moar fb4f16: OUTPUT«(2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71)␤»
14:07 AlexDaniel no it's totaly fine
14:07 AlexDaniel m: say (2..2000_000).grep(*.is-prime).grep(*.is-prime)
14:07 camelia rakudo-moar fb4f16: OUTPUT«(2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 353 …»
14:07 AlexDaniel m: say WHAT (2..2000_000).grep(*.is-prime).grep(*.is-prime)
14:07 camelia rakudo-moar fb4f16: OUTPUT«(Seq)␤»
14:07 blah joined #perl6
14:07 AlexDaniel oh, that's a Seq, ok
14:08 psch ...what's with the two .is-prime greps ooc?
14:08 AlexDaniel ah sorry
14:08 AlexDaniel xD
14:08 AlexDaniel m: say WHAT (2..2000_000).grep(*.is-prime)
14:08 camelia rakudo-moar fb4f16: OUTPUT«(Seq)␤»
14:08 AlexDaniel doesn't change anything though :)
14:08 psch right
14:08 teksteiner :)
14:08 notviki m: say [+] (2... * > 2000_000).grep: *.is-prime
14:08 notviki k
14:09 camelia rakudo-moar fb4f16: OUTPUT«(timeout)»
14:09 raschip m: say [+] (2... * > 1_000).grep: *.is-prime
14:09 camelia rakudo-moar fb4f16: OUTPUT«76127␤»
14:09 AlexDaniel but… why?
14:09 notviki Why what?
14:10 AlexDaniel why * > 42 when you can just do … 42 ?
14:10 AlexDaniel or …^ 42 if that's what you mean
14:10 lizmat joined #perl6
14:10 raschip m: say [+] (2..1_000).grep: *.is-prime
14:10 camelia rakudo-moar fb4f16: OUTPUT«76127␤»
14:11 notviki Because reasons
14:12 raschip m: say (2..1_000).grep:( *.is-prime).is-lazy
14:12 camelia rakudo-moar fb4f16: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value' on object of type NQPMu␤»
14:12 raschip m: say (2..1_000).grep( *.is-prime).is-lazy
14:12 camelia rakudo-moar fb4f16: OUTPUT«False␤»
14:12 raschip m: say (2... * > 1_000).grep( *.is-prime).is-lazy
14:12 camelia rakudo-moar fb4f16: OUTPUT«False␤»
14:14 raschip teksteiner: do you really need it to be a lazy list?
14:15 teksteiner No, I was just curious about this
14:15 raschip m: say (2... * > 1_000).grep( *.is-prime)
14:15 camelia rakudo-moar fb4f16: OUTPUT«(2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 353 …»
14:17 notviki It is lazy, in a sense that only the values you need are produced
14:17 notviki m: say (2... * > 1_0000000000000000).grep( *.is-prime)[^5]
14:17 camelia rakudo-moar fb4f16: OUTPUT«(2 3 5 7 11)␤»
14:18 raschip Noice
14:20 teksteiner but it seems like this way of solving it would take a while :)
14:20 Xliff joined #perl6
14:21 notviki That's prolly why it's a Euler problem
14:21 notviki You need a fancy pants algo instead of brute force
14:21 teksteiner Yeah I know
14:22 notviki m: put [+] (2..2_000_000).race(:batch).grep(*.is-prime)
14:22 AlexDaniel do we explain the difference between seqs and lazy lists somewhere in the docs?
14:22 camelia rakudo-moar fb4f16: OUTPUT«(signal XCPU)»
14:22 notviki heh
14:22 AlexDaniel what's XCPU :o
14:22 AlexDaniel e: put [+] (2..2_000_000).race(:batch).grep(*.is-prime)
14:22 evalable6 AlexDaniel, rakudo-moar fb4f161: OUTPUT«(signal SIGHUP) «timed out after 10 seconds, output»: »
14:23 notviki m: put [+] (2..2_000_000).race(:500000batch).grep(*.is-prime)
14:23 camelia rakudo-moar fb4f16: OUTPUT«0␤»
14:23 notviki Close enough!
14:23 AlexDaniel ok-ok, please no .race
14:23 notviki Why?
14:24 AlexDaniel I don't think it has ever been fixed
14:24 notviki XCPU is it hit the limit of CPU time it can use or something
14:24 notviki If no one uses it, no one will fix it./
14:24 notviki m: put [+] (2..2_000_000).race(:500000batch).grep(*.is-prime)
14:24 camelia rakudo-moar fb4f16: OUTPUT«0␤»
14:24 * notviki tries a 24-core box
14:25 AlexDaniel notviki: if no one will fix it, no one will use it
14:26 notviki But if no one will use it, no reason to fix it :P
14:26 notviki m: say 2_000_000 / 24
14:26 camelia rakudo-moar fb4f16: OUTPUT«83333.333333␤»
14:28 notviki hm, interesting...
14:28 notviki m: say gather { for (2..2_000_000).race(:83333batch, :24degree) { take $_ if .is-prime } }
14:28 camelia rakudo-moar fb4f16: OUTPUT«take without gather␤  in block  at <tmp> line 1␤␤take without gather␤  in block  at <tmp> line 1␤␤take without gather␤  in block  at <tmp> line 1␤␤take without gather␤  in block  at <tmp> line 1␤␤take without gather␤  in block  at…»
14:29 notviki "take withotu gather"?
14:29 jnthn That's not going to work.
14:29 jnthn The code runs on a totally different thread
14:29 notviki awwww
14:29 jnthn Where the gather is not in dynamic scope
14:29 Vasyl Is there a way to easily set up an HTTP server using Crust? like "crustup -s somethingThatCanHTTPS --enable-ssl --ssl-key-file=... --ssl-cert-file=... /my/app.p6sgi"
14:30 notviki m: say do for (2..2_000_000).race(:83333batch, :24degree) { next unless .is-prime; $_ }
14:30 camelia rakudo-moar fb4f16: OUTPUT«(signal XCPU)»
14:33 notviki cpan@perlbuild2~$ time perl6 -e 'm: say [+] do for (2..2_000_000).race(:83333batch, :24degree) { next unless .is-prime; $_ }'
14:33 notviki 142913828922
14:33 notviki real 1m1.550s
14:33 notviki user 18m5.796s
14:33 notviki pretty good!
14:33 notviki AlexDaniel: it works after all :)
14:36 awwaiid joined #perl6
14:44 aries_liuxueyang joined #perl6
14:54 cdg joined #perl6
15:00 masak sometimes I'm surprised by how much quality open content there is online
15:01 masak I'm coding up a simple recipe app (for a class). searched "open content recipes". found wikibooks Cookbook, with tons of recipes
15:01 masak all under cc:by-sa
15:07 AlexDaniel sure
15:08 dugword joined #perl6
15:11 acrussell joined #perl6
15:12 masak I've had the same thought at some point with all the libre math/physics/CS learning material online. there's just so much of it.
15:12 masak maybe it's time to collect it all into a list somewhere.
15:13 jast you mean like DMOZ? ;)
15:14 masak not exactly like that, no
15:14 jast though I think they don't care about the 'open' bit that much
15:14 masak just a personal list of things I've found that are free and that I could read at some point
15:14 masak those Feynman physics books, for example
15:15 jast oh, right. I started making a list like that a few years ago and then stopped updating it because it only ever grows :)
15:19 lizmat_ joined #perl6
15:21 masak I think I've come to terms with the fact that list of good/worthwhile things only grow
15:21 masak still like that better than no lists
15:21 masak today's autopun spotting: https://twitter.com/iamdevlop​er/status/808344541669498881
15:22 masak oh! oh! and today's unexpect JS trivia quiz:
15:22 masak :P
15:22 masak what's the one operational difference between `undefined` and `null`?
15:23 masak (I only know of one -- there may be more)
15:23 psch i think one of them does methods?
15:23 masak decommute &
15:23 psch hm, i googled it, and i'm wrong :)
15:26 yoleaux joined #perl6
15:26 khw joined #perl6
15:27 wtw joined #perl6
15:27 pierre_ joined #perl6
15:30 brrt well, what is the difference?
15:30 * brrt still has a plan to convert those darn books to an ePub at some point
15:31 brrt knowing well I could probably buy them or bittorrent them, but not bothering to figure out how
15:31 lizmat joined #perl6
15:32 psch brrt: undefined is a type object, null is an empty reference
15:32 psch that's what the googling says at least vOv
15:33 psch "empty reference" as our Nil that is, not like *(0x0)
15:33 ufobat i'd like to zip 2 arrays together, but if one is longer then the other i'd like to have something like Any,ElementOfLongerArray. is that possible?
15:33 dalek joined #perl6
15:34 psch m: my @a = 1,2,3; my @b = <a b c d e>; say @a[^(@a max @b)] Z @b[^(@a max @b)]
15:34 camelia rakudo-moar fb4f16: OUTPUT«((1 a) (2 b) (3 c) ((Any) d) ((Any) e))␤»
15:35 psch m: my @a = 1,2,3; my @b = <a b c d e>; say @a[^$_] Z @b[^$_] with @a max @b # cleaner i guess
15:35 camelia rakudo-moar fb4f16: OUTPUT«((1 a) (2 b) (3 c) ((Any) d) ((Any) e))␤»
15:35 geekosaur "you have a problem and you decide to use threads. nonw owy ou  yoauv e hatwvo e ptrowbo plerombsle imns teinrtleearlveeda.ed."
15:35 ufobat geekosaur, :D
15:35 jast nice one
15:35 ufobat psch, thanks
15:39 ufobat what is @a max @b
15:39 psch m: say 2 max 3
15:39 camelia rakudo-moar fb4f16: OUTPUT«3␤»
15:39 ufobat its not the array with more elements :(
15:39 psch uh
15:39 bwisti joined #perl6
15:39 psch that'd be weird?
15:40 psch oh
15:40 ufobat m: my @a = 1..10; my @b = 99..100; say (@a max @b)
15:40 camelia rakudo-moar fb4f16: OUTPUT«[99 100]␤»
15:40 El_Che Fosdem will have a nice mix of Perl 5 and 6 talks. /me happy
15:40 ufobat is it summing all values, or what?
15:40 psch ohh
15:40 psch m: (1, 3, 5) max (5, 3, 1)
15:40 camelia rakudo-moar fb4f16: OUTPUT«WARNINGS for <tmp>:␤Useless use of "max" in expression "(1, 3, 5) max (5, 3, 1)" in sink context (line 1)␤»
15:40 psch m: say (1, 3, 5) max (5, 3, 1)
15:40 camelia rakudo-moar fb4f16: OUTPUT«(5 3 1)␤»
15:40 psch hm, not ohh actually
15:41 ufobat just considders the first value?
15:41 psch ufobat: you apparently need .elems (or prefix:<+>)
15:41 ufobat aye
15:41 notviki s: &infix:<max>, \([1,2], [1, 2, 3])
15:41 SourceBaby notviki, Sauce is at https://github.com/rakudo/rakudo/blob/fb4f​161/src/core/Any-iterable-methods.pm#L1961
15:41 psch m: say (1,2) cmp (2,1)
15:41 camelia rakudo-moar fb4f16: OUTPUT«Less␤»
15:41 psch m: say (2,2) cmp (2,1)
15:41 camelia rakudo-moar fb4f16: OUTPUT«More␤»
15:41 notviki s: &infix:<cmp>, \([1,2], [1, 2, 3])
15:41 SourceBaby notviki, Sauce is at https://github.com/rakudo/rakudo/b​lob/fb4f161/src/core/List.pm#L1460
15:42 psch oh geez, that probably has a good reason for why it is like that :)
15:43 notviki :S I don't see max documented :/
15:43 psch https://docs.perl6.org/routine/max
15:43 notviki Doesn't show up in search
15:43 psch did show up here?
15:44 psch granted, i had to scroll
15:45 notviki Ah, I see. The border on title was visible just enough to look like end border of the popup...
15:45 * psch &
15:49 raschip m: say (1,1,1) cmp (1,1)
15:49 camelia rakudo-moar fb4f16: OUTPUT«More␤»
15:50 raschip m: say +((1,1,1) cmp (1,1))
15:50 camelia rakudo-moar fb4f16: OUTPUT«1␤»
15:51 SmokeMachine m: use Test; pass Q[\]
15:51 camelia rakudo-moar fb4f16: OUTPUT«ok 1 - \␤»
15:52 raschip m: my @a=(1,1,1);my @b=(1,1); say @a max @b
15:52 camelia rakudo-moar fb4f16: OUTPUT«[1 1 1]␤»
15:52 raschip m: my @a=(1,1,1);my @b=(1,1); say +(@a max @b)
15:52 camelia rakudo-moar fb4f16: OUTPUT«3␤»
15:53 notviki You have the plus at the wrong place
15:53 notviki m: my @a=(1,1,1);my @b=(9,9); say +@a max +@b
15:53 camelia rakudo-moar fb4f16: OUTPUT«3␤»
15:53 notviki m: my @a=(1,1,1);my @b=(9,9); say +(@a max @b)
15:53 camelia rakudo-moar fb4f16: OUTPUT«2␤»
15:54 raschip m: my @a=(1,1,1);my @b=(9,9); say @a max @b
15:54 camelia rakudo-moar fb4f16: OUTPUT«[9 9]␤»
15:56 raschip Do the docs explain what cmp does with lists? Do I understand it correctly that it stringify them?
15:57 notviki raschip: it uses cmp to compare each element with the corresponding elemens of the other list. If they're all the same, then it compares the two lists by length
15:58 notviki s/length/number of elements/;
15:58 notviki using <=>
15:59 raschip In a few days I will send my first pull request, then.
15:59 notviki cool
16:05 dugword joined #perl6
16:06 ufobat and as soon as one element is not equal then the corresponding other element it makes this list to be the "max"ed one
16:06 ufobat s/not equal/larger/
16:06 raschip Does anyone have a link to the Order:: doc?
16:08 raschip Found it.
16:08 notviki https://docs.perl6.org/type/Order
16:11 raschip m: my Order $n =3; say $n
16:11 camelia rakudo-moar fb4f16: OUTPUT«Type check failed in assignment to $n; expected Order but got Int (3)␤  in block <unit> at <tmp> line 1␤␤»
16:11 raschip m: my Order $n =Less; say $n
16:11 camelia rakudo-moar fb4f16: OUTPUT«Less␤»
16:13 xinming joined #perl6
16:16 hartenfels joined #perl6
16:21 colomon nine: any hints on how to make python method calls with named arguments with the current Inline::Python?  Don’t care if it’s ugly, but it would be very helpful to project if I could make it work somethow.
16:22 colomon nine: I mean, I guess I can do it with run?
16:23 cschwenz joined #perl6
16:25 shayan_ joined #perl6
16:26 notviki m: '$x'.EVAL.say; my $x = 42;
16:26 camelia rakudo-moar fb4f16: OUTPUT«(Any)␤»
16:26 notviki hehe :)
16:26 notviki magic
16:28 colomon nine: have workaround going using run :eval
16:28 notviki m: '"x is $x"'.EVAL.say; constant $x = 42;
16:29 camelia rakudo-moar fb4f16: OUTPUT«x is 42␤»
16:29 notviki haha :) even moar magicks
16:29 raschip Sorcery!
16:29 notviki m: '"x is $x"'.EVAL.say; my $x = BEGIN 42;
16:29 camelia rakudo-moar fb4f16: OUTPUT«Use of uninitialized value $x of type Any in string context.␤Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.␤  in block <unit> at EVAL_0 line 1␤x is ␤»
16:29 notviki wonder why that one doesn't set the value tho
16:29 psch m: '"x is $x"'.EVAL.say; my $x = 10; sub term:<$x> { $x }; # *real* magic
16:29 camelia rakudo-moar fb4f16: OUTPUT«MoarVM panic: Memory allocation failed; could not allocate 325872 bytes␤»
16:29 psch :P
16:30 psch m: '"x is $x"'.EVAL.say; my @x = 10; sub term:<$x> { @x[0] };
16:30 camelia rakudo-moar fb4f16: OUTPUT«Use of uninitialized value of type Any in string context.␤Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.␤  in block <unit> at EVAL_0 line 1␤x is ␤»
16:30 notviki m: '"x is $x.perl()"'.EVAL.say; BEGIN my $x = 42;
16:30 camelia rakudo-moar fb4f16: OUTPUT«x is 42␤»
16:30 notviki ahhhh
16:31 psch i suppose "insert a HLL handler for mem alloc failures in moar" might be somewhat LHF-ish
16:31 notviki That one's not very magic because you can use subs even if they're postdeclared by you can't post-declare variables :)
16:31 psch ...well, FSDO "LHF"
16:31 psch notviki: eh, the fact that @x[0] is still Any is somewhat magic i think :)
16:32 psch (the mem alloc is purely $x-recursion, so yeah)
16:32 notviki m: '"x is $x.perl"'.EVAL.say; BEGIN my @x = 10; sub term:<$x> { @x[0] };
16:32 camelia rakudo-moar fb4f16: OUTPUT«x is 10.perl␤»
16:32 notviki m: '"x is $x.perl()"'.EVAL.say; my @x = 10; sub term:<$x> { @x.head };
16:32 camelia rakudo-moar fb4f16: OUTPUT«x is Nil␤»
16:33 notviki ah, right
16:33 notviki the EVAL eval runs before @x is set
16:34 psch right
16:34 psch it is still the same magic, just hidden behind a term
16:34 raschip How does the value travel back in time?
16:34 psch raschip: in which example?
16:34 notviki raschip: there's compile time and run time
16:35 raschip "method CALL-ME". FFS
16:35 raschip So, the asignement happens at compile time?
16:36 psch explicitly not
16:36 psch m: my $x = "foo"; say BEGIN $x
16:36 camelia rakudo-moar fb4f16: OUTPUT«(Any)␤»
16:36 psch as for "how does it travel back in time" the answer is either (1) it doesn't or (2) it only looks like it does
16:36 notviki Well, in my example, the magick is that I can use a variable before it's declared.. But in reality, it gets declared at compile time but my EVAL uses it during runtime, so even tho it's "before" declaration in the source, it's still after it's declared temporally
16:37 raschip Shouldn't the compiler emit a warning if that happens?
16:37 notviki And the rest of the magics above is just moving the assignment of value into compile time with either a constant or a BEGIN block so that it also happens prior to my use of it
16:38 notviki Why a warning?
16:38 notviki It usually just dies.
16:38 notviki m: say $x; my $x = 42
16:38 camelia rakudo-moar fb4f16: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$x' is not declared␤at <tmp>:1␤------> 3say 7⏏5$x; my $x = 42␤»
16:38 notviki And you have to bend over backwards to bypass that :)
16:38 psch m: say ::('$x'); my $x = 42
16:38 camelia rakudo-moar fb4f16: OUTPUT«(Any)␤»
16:38 raschip m: say $x; my constant $x = 42
16:38 camelia rakudo-moar fb4f16: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$x' is not declared␤at <tmp>:1␤------> 3say 7⏏5$x; my constant $x = 42␤»
16:38 psch raschip: constant is a declarator
16:38 raschip m: say $x; constant $x = 42
16:38 camelia rakudo-moar fb4f16: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$x' is not declared␤at <tmp>:1␤------> 3say 7⏏5$x; constant $x = 42␤»
16:39 raschip typo
16:39 notviki m: say constant; constant constant = 42
16:39 camelia rakudo-moar fb4f16: OUTPUT«5===SORRY!5===␤Whitespace required after keyword 'constant'␤at <tmp>:1␤------> 3say constant7⏏5; constant constant = 42␤Missing initializer on constant declaration␤at <tmp>:1␤------> 3say constant7⏏5; constant constant = 42␤␤»
16:39 notviki m: 'say constant'.EVAL; constant constant = 42
16:39 camelia rakudo-moar fb4f16: OUTPUT«42␤»
16:40 notviki ^_^
16:40 raschip barewords
16:41 raschip confuse everyone but the compiler
16:41 notviki m: sub infix:<say> { "$^a $^b say".say }; "you" say "don't"
16:42 camelia rakudo-moar fb4f16: OUTPUT«you don't say␤»
16:42 notviki m: sub infix:<+> { $^a - $^b }; say 2+2
16:42 camelia rakudo-moar fb4f16: OUTPUT«0␤»
16:43 notviki m: sub infix:<<⁤> { $^a - $^b }; say 2⁤2
16:43 camelia rakudo-moar fb4f16: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Placeholder variable $^a may not be used here because the surrounding block takes no signature␤at <tmp>:1␤------> 3sub infix:<<⁤> { $^a - $^b }7⏏5; say 2⁤2␤    expecting any of:␤        hor…»
16:44 notviki m: sub infix:<⁣> { $^a + $^b }; say 2⁣2;
16:44 camelia rakudo-moar fb4f16: OUTPUT«4␤»
16:44 raschip m: say 22
16:44 camelia rakudo-moar fb4f16: OUTPUT«22␤»
16:44 jnthn .u <⁣>
16:44 yoleaux U+003C LESS-THAN SIGN [Sm] (<)
16:44 yoleaux U+003E GREATER-THAN SIGN [Sm] (>)
16:44 yoleaux U+2063 INVISIBLE SEPARATOR [Cf] (<control>)
16:44 jnthn haha :)
16:44 notviki :)
16:45 jnthn I was like "huh, I thought we disallowed empty operators" :P
16:45 * psch has seen this before :P
16:45 * notviki wrote about this before: http://perl6.party/post/Anguish--Invisible-P​rogramming-Language-and-Invisible-Data-Theft
16:46 raschip You guys introduced the same problem Python has, semantic whitespace.
16:46 psch waaay smallerin  scope, and not much worse than e.g. C or Java have it though
16:47 raschip m: say 2⁣2
16:47 camelia rakudo-moar fb4f16: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Bogus postfix␤at <tmp>:1␤------> 3say 27⏏5⁣2␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statement modifier␤        state…»
16:47 psch ...people purposefully using wicked unicode aside :)
16:47 mspo I get dots in the browser for some of that stuff
16:47 notviki Yeah me too.
16:47 psch m: say "\x2063".uniprop("Space")
16:47 camelia rakudo-moar fb4f16: OUTPUT«AL␤»
16:47 mspo which looks nice
16:47 notviki Back when I wrote it I was using an older install and they were all blank
16:48 psch ...i don't actually understand that property
16:48 raschip There was someone talking about defining every symbol from Prolog in Perl6.
16:48 mspo and APL?
16:50 raschip APL looks more fun
16:57 stmuk hmm the only feedback I got from the R* blog post was a suggestion to abandon it :)
16:58 stmuk although they may be because blogs.perl.org is having its usual auth issues
17:04 moritz stmuk: my feedback: the problem with R* is that it lacks a clear vision
17:04 moritz back when it started, we had hardly any modules, so we just took the ones that seemed useful
17:05 moritz that doesn't scale
17:05 moritz how do you even discuss which modules to include when the distribution lacks a vision or criteria for inclusion?
17:06 moritz it wouldn't hurt to include zef; it wouldn't hurt to add other modules you mentioned
17:06 moritz but what's the future of R*? who is the target audience?
17:07 moritz we could morph it into a "dev tools" distribution: debugger, grammar tracer, module installer, readline, docs
17:07 raschip I think there should be a distribution that target newbs.
17:07 stmuk moritz: yes that's probably true about the vision (although I see it as a sort of std library - not necessarily a definative one)
17:07 moritz or into a minimal one: just oen or two module installers and their dependencies
17:08 raschip targets*
17:08 stmuk I have wondered about just a module installer and p6doc in a distro
17:08 moritz raschip: what does a newb needs?
17:09 raschip Whatever is used in intros to the language.
17:09 stmuk its useful I think even if there is no clear direction (isn't muddling along the perl way anyway?)
17:09 stmuk or organic growth
17:09 raschip There has to be a std lib, P5 suffered because it didn't have one.
17:09 girafe joined #perl6
17:10 stmuk raschip: the perl 6 vision is multiple R* type distros not just one
17:10 raschip I agree with 1 or more. It's a problem if the vision is 0 or more.
17:11 stmuk an obvious one might be a bioperl one
17:11 notviki .oO( Rakudo with all the docs and entire ecosystem... Call it... FatRak )
17:12 moritz a web developer one
17:12 raschip Each framework will have it's own.
17:13 notviki A little out of the box thinking: ship just rakudo and module installer with a build script that can fetch a preset of modules. And the presets could be for webdev, bioinformatics, whatever, and the same basic toolset would be shipped tested, with the only difference is maintainers of those module sets would test their sets
17:14 notviki that's really just a META6.json file that can be given to zef
17:14 raschip notviki: not a bad idea, the only usecase I know where that would be a problem is with noobs. The language needs bateries included.
17:15 stmuk notviki: a good idea .. the hard bit is getting people to test their sets
17:15 moritz notviki: right; minimal distro + zef install Task::{Webdev,BioInformatics,DevTools}
17:16 stmuk there are corporates without git access so bundling the software in a tar ball is useful for many people
17:16 notviki raschip: Why would it be a problem? The batteries ARE included, they're just fetched off network on installation. The usecase where this would be a problem is offline installs
17:17 raschip Well, we need to give an indication of what to install by default to distros.
17:17 stmuk you can't even build the monthly releases without github access
17:17 notviki yeah
17:17 raschip They won't allow fetching from the network.
17:18 kalkin-_ btw perl6 is missing here https://github.com/showcases/programming-languages
17:18 moritz .oO( point-and-click distro builder )
17:18 kalkin-_ Adding Perl6 to the list of programming languages developed @Github would get some attention
17:19 notviki kalkin-_: contact the authors of that page and add it?
17:21 notviki I'd be kinda weird tho, 'cause our leading compiler isn't even part of /perl6/ org
17:21 lizmat joined #perl6
17:22 notviki And we'd be right below "dart-lang / sdk" and "FascinatedBox / lily" heh
17:23 CIAvash[m] https://irclog.perlgeek.de/​perl6/2017-01-03#i_13844198
17:24 notviki Interesting that I get Perl 6 in the trending list: https://github.com/trending
17:24 notviki wondering if the algo just looks at langs I write in and puts those higher
17:27 dogbert2 notviki: you around?
17:27 notviki heh, a Perl 6 script to scan for hackable IoT devices https://github.com/rapid7/IoTSeeker
17:28 diakopter whoa
17:28 notviki dogbert2: maybe, why?
17:28 notviki "High parallelism. So that it can scan thousands of IoT's at the same time"
17:28 notviki :D
17:28 diakopter wait what
17:28 diakopter notviki: how is that Perl 6
17:28 dogbert2 notviki: I'm about to write a spectest for RT 125135. jnthn says it should be in S12-meta. do you have any file suggestion=
17:28 dogbert2 ?
17:29 notviki ah crap
17:29 notviki diakopter: GitHub misled me
17:29 notviki diakopter: I clicked on trending developers for Perl 6 and that script showed up as written in Perl 6 :(
17:29 diakopter oh :)
17:29 profan notviki: i think you're right it picks langs you write in though
17:30 kalkin-_ notviki, will do
17:30 profan as examples D, Lua, OCaml show up on mine, but aren't actually super popular in general
17:30 diakopter I was gonna say, a cyberattack/protection script written in Perl 6, that's something
17:31 notviki profan: heh, my list is totally different. I have C++, JS, PLpgSQL, Perl, Perl 6, Python, Shell
17:32 profan ah yeah, Python, C, C++, JS on mine as well :p
17:32 raschip Shell?
17:32 notviki dogbert2: no idea
17:34 dogbert2 ok, I'll figure something out
17:35 Actualeyes joined #perl6
17:36 pierre_ joined #perl6
17:38 ChoHag joined #perl6
17:42 stmuk I hate that pause between a reboot and ping replying
17:44 kalkin-_ What should I submit to github? I would prefer to submit something like perl6/perl6. Submitting rakudo/rakudo is weird
17:46 kalkin-_ Or maybe create a perl6/perl6 project which will be the starting point for new Perl6 users?
17:46 notviki But would people "star" it?
17:47 mspo kalkin-_: you have a patch?
17:48 kalkin-_ notviki I don't think that starring it is important. It's more important to have heard about Perl6. I.e I just discovered a programming language called red. Currently I'm not interested in it at all, but it's stuck in my mind
17:48 kalkin-_ mspo: what kind of patch? I really don't know what would be the best way to create a "patch" for that :)
17:49 notviki kalkin-_: well, the list is ordered by number of stars. And you'd have "perl6/perl6" listed at the very bottom, linking to a repo with a README instead of proper language :)
17:49 shayan_ joined #perl6
17:50 kalkin-_ ahh havent thought about it
17:50 mspo kalkin-_: sorry I'm out of context.  What are you trying to do? :)
17:51 kalkin-_ Then I think it would make sense to link rakudo/rakudo, even if it's not directly obvious how rakudo and perl6 are connected
17:51 kalkin-_ mspo: I want to add perl6 here https://github.com/showcases/pr​ogramming-languages?s=language
17:51 notviki +1. I think it kinda reinforces the "new language" idea
17:52 mspo ah ha
17:52 kalkin-_ Is there a reason why rakudo & star are developed in a different organization
17:52 kalkin-_ ?
17:52 raschip There's no language called "rosalyn", for exampe.
17:52 notviki kalkin-_: rakudo and star are both in /rakudo/ org
17:52 kalkin-_ notviki: right and what is the reason for that?
17:53 notviki oh
17:53 mspo so you want an "entry point" for perl6
17:53 kalkin-_ mspo: exactly
17:53 notviki kalkin-_: dunno. I guess it just started that way. The idea is it's just one of many possible Perl 6 compilers.
17:54 notviki while /perl6/ org is about the language itself
17:54 mspo https://github.com/perl6/roast is probably the defining repo but.. you know
17:55 notviki MoarVM isn't in perl6 org either...
17:56 mspo https://github.com/MoarVM
17:56 mspo yeah it's all over the place
17:59 espadrine joined #perl6
17:59 pmurias rakudo has a different commit bit policy then the perl6 organization
17:59 notviki Aye that too
17:59 pmurias because CLA are required
17:59 kalkin-_ I mean I get it that everything is interchangeable, but this doesn't simplify the marketing work.
18:01 pmurias there is only one viable Perl 6 compiler at the moment
18:01 perigrin joined #perl6
18:01 kalkin-_ Look at ruby there the original Ruby & JRUBY & Whatever, but the original interpreter is ruby/ruby
18:01 kalkin-_ but still people know there're different ruby interpreters
18:02 kalkin-_ for people who never heard about perl6 it's just complicated to search all over the place
18:02 pmurias kalkin-_: I'm not sure if we need to emphasize the rakudo/Perl 6 distinction in marketing work
18:02 * notviki sees this discussion gradually slide into the Great Name Bikeshed™
18:02 kalkin-_ pmurias: yeah this is what I'm trying to say, but you guys do.
18:02 stmuk people will google and find perl6.org .. I don't see any of this is a real problem
18:03 kalkin-_ so which of the repos should be submitted to the Github team for adding it to the languages showcase?
18:03 notviki stmuk: hehe, well, the problem is above: kalkin-_ doesn't have a "perl6" repo to add to GitHub's list that has actual perl6 compiler in it :)
18:04 notviki kalkin-_: rakudo/rakudo would be my choice.
18:05 notviki It'll still say "Perl 6" just below it anyway
18:05 kalkin-_ ok
18:05 stmuk well the perl6 compiler is split up into 3 parts anyway
18:05 pmurias raschip: why do we need a "std library"?
18:06 pmurias kalkin-_: I would submit rakudo/rakudo to the languages showcase
18:07 raschip pmurias: https://xkcd.com/353/
18:08 hankache joined #perl6
18:09 kalkin-_ pmurias & notviki will do
18:09 notviki kalkin-_++
18:10 hankache Good * #perl6
18:10 notviki \o\
18:10 mr_ron joined #perl6
18:14 RabidGravy joined #perl6
18:21 kalkin-_ I contacted Github via contact form. I hope this will work out
18:23 tadzik do I recall correctly that there was a protobuf library somewhere in the ecosystem
18:23 tadzik ?
18:23 tadzik I can't seem to find it
18:24 mr_ron I am trying to rakudobug a memory leak.  Is it best tagged [BUG] or [PERF] or something else?  Is there a list of those tags someplace?
18:24 kalkin-_ tadzik https://github.com/samuraisam/p6-pb
18:24 tadzik kalkin-_: thanks!
18:25 kalkin-_ tadzik: github search is sometimes very helpful https://github.com/search?utf8=%E2%9​C%93&amp;q=protobuf+language%3Aperl6​&amp;type=Code&amp;ref=searchresults
18:25 notviki huggable: eco protobuf
18:25 huggable notviki, nothing found
18:25 notviki that was fast :o
18:25 notviki huggable: eco pb
18:25 huggable notviki, nothing found
18:26 notviki huggable: eco test
18:26 huggable notviki, nothing found
18:26 notviki umm... OK
18:26 jnthn huggable: eco Test
18:26 huggable jnthn, nothing found
18:26 skids joined #perl6
18:26 jnthn heh
18:26 notviki Oh, wrong robot
18:26 pmurias raschip: having modules easily installable module is crucial, having a standard library full of obsolete things is crucial
18:26 notviki buggable: eco protobuf
18:26 buggable notviki, Nothing found
18:26 notviki buggable: eco pb
18:26 buggable notviki, Found 5 results: RPi, RPi::Device::SMBus, RPi::Device::PiGlow, RPi::Device::PiFace, RPi::Wiring::Pi. See http://modules.perl6.org/#q=pb
18:26 notviki \o/
18:26 kalkin-_ #perl6 has to many bots :)
18:27 jnthn Maybe we should make a bot that routes your query to the bot you probably intended? ;)
18:27 notviki :D
18:27 dogbert2 notviki: want to take a look at https://github.com/perl6/roast/pull/213 ?
18:28 notviki not really :}
18:28 dogbert2 :), I can always merge it unseen
18:28 jnthn bah :P
18:28 jnthn dogbert2: I guess it fails before the fix and works fine after? :)
18:28 raschip RT 125135
18:29 jnthn Indentation in TestHOW.pm is a little funky but otherwise looks good
18:29 dogbert2 jnthn: yes, when I applied your changes the problem disappeared
18:29 jnthn \o/
18:32 dogbert2 I guess I'll merge then :)
18:33 DrForr .seen TimTowtdi
18:33 yoleaux I haven't seen TimTowtdi around.
18:33 tadzik kalkin-_: thanks, noted :)
18:33 DrForr Grumble.
18:33 psch .seen TimToady
18:33 yoleaux I saw TimToady 1 Jan 2017 08:04Z in #perl6: <TimToady> I should have showed Instant.now instead :)
18:33 grumble Grumble.
18:33 DrForr Dank u wel.
18:35 DrForr .tell TimToady private question for you when you have a few minutes.
18:35 yoleaux DrForr: I'll pass your message to TimToady.
18:37 notviki Way to get 323 people curious!
18:38 domidumont joined #perl6
18:39 DrForr Hee.
18:40 domidumont joined #perl6
18:40 * DrForr goes back to fixing the remaining 44 Perl6::Parser tests.
18:46 mr_ron left #perl6
18:59 lizmat wheee, Perl 6 listed in https://github.com/showcases/programming-languages
18:59 notviki \o/
19:01 notviki I like how our activity graph is sloping upwards.
19:01 notviki which seems to be a rarity on that list
19:02 raschip That was fast. kalkin-++
19:02 acrussell joined #perl6
19:05 DrForr Very spiky as well.
19:05 notviki Few developers
19:05 notbenh joined #perl6
19:05 DrForr Well, of course, compared to Go or Swift.
19:05 timotimo the trend is, of course, just part of the story
19:06 DrForr Or .. well, if we're being honest, lots of entries on the list.
19:06 notviki What's the other part of the story?
19:07 sufrostico joined #perl6
19:07 timotimo how small we are in relation to everything else
19:07 timotimo i.e. one of our biggest spikes may be a day-to-day difference for another project
19:08 notbenh joined #perl6
19:08 DrForr Well, one nice thing about sparklines is there's no legend.
19:09 kalkin- Wow I didn't expect GitHub to respond so quickly
19:09 timotimo "nice"
19:10 DrForr While it does cut both ways, it also makes team size less of a visible factor.
19:10 kalkin- if every one here stars rakudo/rakudo we will overtake lily, dart harlan & ocaml probably
19:11 DrForr Done.
19:11 notviki And join the Delphi team in history of spiking shoddy ratings? :)
19:11 notviki I already have it starred
19:11 * masak too
19:13 labster joined #perl6
19:14 timotimo does it make sense for me to star it?
19:14 notviki Well, only if you like it :P
19:14 notviki .seen dugword
19:14 yoleaux I saw dugword 2 Jan 2017 23:07Z in #perl6: <dugword> Did you have to agree to new terms or something? I've seen something similar with xcode
19:14 timotimo i already have starred it
19:15 Sqirrel joined #perl6
19:15 labster joined #perl6
19:19 labster joined #perl6
19:20 petrutrimbitas joined #perl6
19:22 wamba joined #perl6
19:24 SmokeMachine m: sub infix:<op>(|c) {c.perl.say}; say 1 Rop 2 # this works
19:24 camelia rakudo-moar d48765: OUTPUT«\(2, 1)␤True␤»
19:24 SmokeMachine m: sub infix:<op>(|c) {c.perl.say}; say 1 Sop 2 # why not this one?
19:24 camelia rakudo-moar d48765: OUTPUT«\()␤No such method 'CALL-ME' for invocant of type 'Bool'␤  in block <unit> at <tmp> line 1␤␤»
19:26 notviki .tell dugword The test you added seems to hang on my VM. It prolly doesn't have IPv6 support. Do you know how to detect that and only run the test on boxes where it would not hang? I fudged it for now in https://github.com/perl6/roast/commit/b3d3a736ee
19:26 yoleaux notviki: I'll pass your message to dugword.
19:27 SmokeMachine Is the S "operator modifier" working?
19:27 notviki God this network is terrible....
19:28 notviki I think in movie Martial they had less lag...
19:28 SmokeMachine And that's a strange error message...
19:29 notviki m: sub infix:<op>(|c) {c.gist.say}; say 1 Sop 2
19:29 camelia rakudo-moar d48765: OUTPUT«\()␤No such method 'CALL-ME' for invocant of type 'Bool'␤  in block <unit> at <tmp> line 1␤␤»
19:29 notviki m: sub infix:<op>(|c) {c.gist.say; -> {say "hi"} }; say 1 Sop 2
19:29 camelia rakudo-moar d48765: OUTPUT«\()␤Too many positionals passed; expected 0 arguments but got 2␤  in block <unit> at <tmp> line 1␤␤»
19:30 SmokeMachine m: sub infix:<op>(|c) {c.perl.say; {$^a.say}}; say 1 op 2
19:30 camelia rakudo-moar d48765: OUTPUT«\(1, 2)␤Too few positionals passed; expected 1 argument but got 0␤  in sub infix:<op> at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
19:30 notviki m: sub infix:<op>(|c) {c.gist.say; -> ($a, $b) {say "$a, $b hi"} }; say 1 Sop 2
19:30 camelia rakudo-moar d48765: OUTPUT«\()␤Too few positionals passed; expected 2 arguments but got 0 in sub-signature␤  in block <unit> at <tmp> line 1␤␤»
19:30 notviki m: sub infix:<op>(|c) {c.gist.say; -> $a, $b {say "$a, $b hi"} }; say 1 Sop 2
19:30 camelia rakudo-moar d48765: OUTPUT«\()␤1, 2 hi␤True␤»
19:30 notviki SmokeMachine: looks like S expect its args thunked
19:31 notviki not that I ever used it...
19:31 notviki ... or even know what it's for :P
19:31 SmokeMachine Serial...
19:31 SmokeMachine Sorry, sequential
19:31 SmokeMachine https://docs.perl6.org/language​/operators#Sequential_Operators
19:31 girafe joined #perl6
19:31 SmokeMachine notviki: ^^
19:33 notviki SmokeMachine: yeah, that doesn't tell me much; especially with that example
19:34 RabidGravy joined #perl6
19:34 shayan_ joined #perl6
19:34 SmokeMachine Neither for me... that was what I was trying to discover...
19:34 notviki I guess it'll make more sense once we have autothreading
19:35 RabidGravy Brr
19:35 notviki SmokeMachine: my understanding of that doc is that Perl 6 compiler/optimizer may autothread or otherwise execute stuff non-serially and using that operator forbids it from doing so for that operation
19:35 SmokeMachine But for me it looks that it should act as the original operator but not in parallel...
19:35 Ulti joined #perl6
19:35 hoelzro_ joined #perl6
19:35 atta_ joined #perl6
19:35 synopsebot6 joined #perl6
19:35 benchable6 joined #perl6
19:35 statisfiable6 joined #perl6
19:35 notviki joined #perl6
19:35 SourceBaby joined #perl6
19:35 Undercover joined #perl6
19:35 NeuralAnomaly joined #perl6
19:35 effbiai joined #perl6
19:35 buggable joined #perl6
19:36 timotimo joined #perl6
19:36 leego joined #perl6
19:36 kaare_ joined #perl6
19:36 geekosaur joined #perl6
19:36 effbiai joined #perl6
19:36 Cabanossi joined #perl6
19:36 sammers joined #perl6
19:36 sftp joined #perl6
19:36 k-man joined #perl6
19:37 pierrot joined #perl6
19:38 SmokeMachine So, if I really understood, it should work as the original operator...
19:38 pierre_ joined #perl6
19:38 dp[m] joined #perl6
19:39 Matthew[m] joined #perl6
19:48 grumble joined #perl6
19:49 lukaramu joined #perl6
19:50 bjz joined #perl6
19:52 BuildTheRobots joined #perl6
20:01 RabidGravy arnsholt, if you get a minute take a look at https://github.com/arnsholt/Net-ZMQ/pull/9  - may need a little more work but I wanted to get it to at least compile without warnings :)
20:07 kyan joined #perl6
20:09 dalek doc: 1df275d | (Zoffix Znet)++ | doc/Type/Mu.pod6:
20:09 synopsebot6 Link: http://doc.perl6.org/type/Mu
20:09 dalek doc: Mention Mu.clone's tweedles only tweedle public attrs
20:09 dalek doc:
20:09 dalek doc: Also reword
20:09 dalek doc: review: https://github.com/perl6/doc/commit/1df275d736
20:10 shayan_ joined #perl6
20:12 domidumont joined #perl6
20:13 SmokeMachine m: say 1 S+ 1
20:13 camelia rakudo-moar f9ed73: OUTPUT«No such method 'CALL-ME' for invocant of type 'Int'␤  in block <unit> at <tmp> line 1␤␤»
20:14 mst notviki: oh! *twiddles*
20:14 SmokeMachine m: say True S& True
20:14 camelia rakudo-moar f9ed73: OUTPUT«all()␤»
20:14 mst notviki: your commit message is spelled wrong
20:16 SmokeMachine Empty all?
20:16 notviki m: say True & True
20:16 camelia rakudo-moar f9ed73: OUTPUT«all(True, True)␤»
20:16 notviki heh
20:16 RabidGravy tweedle dum and tweedle dee
20:18 SmokeMachine m: say True S| True
20:18 camelia rakudo-moar f9ed73: OUTPUT«any()␤»
20:18 AlexDaniel joined #perl6
20:19 notviki mst: heh. And I went to change the variable name in rakudo source and the docs, but both of them have 'i'...
20:19 notviki I need to get my eyesight checked :P
20:20 SmokeMachine notviki: the S& and the S| should be working?
20:21 notviki SmokeMachine: I don't know anything about that operators
20:21 notviki SmokeMachine: junctions are meant to be autothreaded... so maybe there's a glitch with that aspect?
20:22 notviki m: say 42 S| 45
20:22 camelia rakudo-moar f9ed73: OUTPUT«any()␤»
20:22 notviki m: say 42 S| 45 S| 55
20:22 camelia rakudo-moar f9ed73: OUTPUT«any()␤»
20:22 notviki yeah, looks wrong
20:22 AlexDaniel S doesn't work, yes
20:22 notviki k
20:22 AlexDaniel and I don't think that it ever worked even
20:22 SmokeMachine But it "auto created" operators to...
20:22 AlexDaniel c: all say 42 S| 45 S| 55
20:23 committable6 AlexDaniel, https://gist.github.com/9422​d5f5ea2a794aa9abcb7da46c6b8f
20:23 AlexDaniel yea…
20:23 ufobat joined #perl6
20:23 shayan_ joined #perl6
20:24 susmus joined #perl6
20:24 SmokeMachine m: sub infix:<op>(|){say "worked"}; say 1 Sop 2 # I didn't create the Sop, only the op...
20:24 camelia rakudo-moar f9ed73: OUTPUT«worked␤No such method 'CALL-ME' for invocant of type 'Bool'␤  in block <unit> at <tmp> line 1␤␤»
20:25 SmokeMachine It created the Sop...
20:26 Tonik joined #perl6
20:26 SmokeMachine It gave an error, but ran the op first...
20:27 notviki hmmm
20:27 notviki m: say [ZRZRZRZRZSRSZSRSZRSRSZRZSRSZRZSRZSRZSRSZSRZR] 5
20:27 camelia rakudo-moar f9ed73: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3RZRZSRSZSRSZRSRSZRZSRSZRZSRZSRZSRSZSRZR]7⏏5 5␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤    …»
20:27 notviki m: say [ZRZRZRZRZSRSZSRSZRSRSZRZSRSZRZSRZSRZSRSZSRZRZ] 5
20:27 camelia rakudo-moar f9ed73: OUTPUT«No such method 'CALL-ME' for invocant of type 'Seq'␤  in block <unit> at <tmp> line 1␤␤»
20:27 notviki That TTIAR....
20:28 notviki m: say [ZRZRZRZRZRZRZRZR] 5
20:28 camelia rakudo-moar f9ed73: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3say [ZRZRZRZRZRZRZRZR]7⏏5 5␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statement modi…»
20:28 notviki m: say [ZRZRZRZRZRZRZRZRZ] 5
20:28 camelia rakudo-moar f9ed73: OUTPUT«((((((((((5))))))))))␤»
20:28 notviki werd
20:28 jnthn It's 'cus Z is a normal operator as well as a meta-op, but R ain't
20:28 timotimo right, Z is also Z,
20:28 notviki What does normal Z does?
20:28 jnthn zip
20:28 SmokeMachine R is the reverse, isn't it?
20:28 notviki Z,
20:28 jnthn Shortcut for Z,
20:28 notviki OK
20:28 jnthn shop &
20:29 [particle] left #perl6
20:29 notviki m: say("is") R say("it") R say("yes,")
20:29 camelia rakudo-moar f9ed73: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing infix inside R␤at <tmp>:1␤------> 3say("is") R7⏏5 say("it") R say("yes,")␤    expecting any of:␤        infix␤        infix stopper␤»
20:29 notviki m: say("is") R, say("it") R, say("yes,")
20:29 camelia rakudo-moar f9ed73: OUTPUT«Potential difficulties:␤    Useless use of R, in sink context␤    at <tmp>:1␤    ------> 3say("is") R, say("it") 7⏏5R, say("yes,")␤is␤it␤yes,␤»
20:29 SmokeMachine m: sub infix:<op>(|c){say c.perl}; say 1 Rop 2
20:29 camelia rakudo-moar f9ed73: OUTPUT«\(2, 1)␤True␤»
20:29 [particle] joined #perl6
20:30 notviki camelia: it wasn't useless!
20:31 notviki oh yeah, it was
20:31 notviki m: say "is" R, "it" R, "yes,"
20:31 camelia rakudo-moar f9ed73: OUTPUT«(yes, it is)␤»
20:31 notviki \o/
20:31 SmokeMachine m: say <1 2 3> RZ <a b c>
20:31 camelia rakudo-moar f9ed73: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing infix inside R␤at <tmp>:1␤------> 3say <1 2 3> RZ7⏏5 <a b c>␤    expecting any of:␤        infix␤        infix stopper␤»
20:32 SmokeMachine m: say <1 2 3> ZR <a b c>
20:32 camelia rakudo-moar f9ed73: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing infix inside R␤at <tmp>:1␤------> 3say <1 2 3> ZR7⏏5 <a b c>␤    expecting any of:␤        infix␤        infix stopper␤»
20:32 SmokeMachine m: say <1 2 3> ZR, <a b c>
20:32 camelia rakudo-moar f9ed73: OUTPUT«((a 1) (b 2) (c 3))␤»
20:32 SmokeMachine Makes sense...
20:36 notviki neat
20:37 AlexDaniel “it wasn't useless! … oh yeah, it was” is exactly why I love our “useless use of” warnings
20:38 AlexDaniel I write stupid things aaall the time
20:38 notviki :)
20:50 notviki mc: dd [ $*PROGRAM, $*PROGRAM-NAME ]
20:50 committable6 notviki, ¦«2015.12»: ["/tmp/UhpqC0Mb53".IO(:SPEC(IO::Spec::Unix),​:CWD("/home/bisectable/git/whateverable")), "/tmp/UhpqC0Mb53"]
20:50 notviki ehehe
20:50 notviki It's possible to make committable6 ghost itself off freenode :P
20:54 kurahaupo__ joined #perl6
21:02 mspo a lot of perl (5) love on https://news.ycombinator.com/item?id=13310159
21:03 dalek Inline-Python: e45adf8 | niner++ | / (3 files):
21:03 dalek Inline-Python: Implement calling Python functions with named arguments
21:03 dalek Inline-Python: review: https://github.com/niner/Inl​ine-Python/commit/e45adf8f9b
21:03 nine colomon: ^^^
21:04 colomon \o/
21:05 AlexDaniel notviki: how?
21:06 nine Methods still to do but as the patch for functions shows this is fairly easy
21:06 colomon I think methods are what I need, but still like progress!
21:06 colomon will try it out in a sec
21:07 AlexDaniel notviki: I mean which method do you have in mind exactly? For example, you can actually find the password for these bots and ask nickserv do do the job…
21:07 AlexDaniel they're not running securely right now. Like, at all
21:10 dalek Inline-Python: 73adb59 | niner++ | / (3 files):
21:10 dalek Inline-Python: Implement calling static Python methods with named arguments
21:10 dalek Inline-Python: review: https://github.com/niner/Inl​ine-Python/commit/73adb597f4
21:10 nine colomon: getting there ;)
21:11 nine Inline::Python could use so much love :/
21:13 AlexDaniel like everything!
21:14 colomon nine: this is actually the second time I’ve used it.  really handy for using Python libraries from the comfortable world of perl 6.
21:15 pierre_ joined #perl6
21:17 * colomon just had his $work test suite “pass” despite what looked like serious errors flying by.   argh.
21:18 timotimo oof
21:18 colomon and on reinstalling Inline::Python — pyhelper.c:1:20: fatal error: Python.h: No such file or directory
21:19 timotimo that's just your installation missing that header file
21:19 timotimo python-dev or python-devel or whatever
21:19 * colomon wonders if it is too late to become a lumberjack
21:21 RabidGravy it's never too late
21:22 timotimo yup
21:23 * colomon is now doing apt-get update
21:23 dalek Inline-Python: 7ecee5c | niner++ | / (3 files):
21:23 dalek Inline-Python: Implement calling Python object methods with named arguments
21:23 dalek Inline-Python: review: https://github.com/niner/Inl​ine-Python/commit/7ecee5c85d
21:23 nine colomon: there ^^^ we go
21:24 dalek Inline-Python: fa0cb9d | niner++ | META.info:
21:24 dalek Inline-Python: Version 0.2
21:24 dalek Inline-Python: review: https://github.com/niner/Inl​ine-Python/commit/fa0cb9dddc
21:28 * colomon installs python-dev and latest Inline::Python
21:29 dalek Inline-Python: 4222945 | niner++ | lib/Inline/Python.pm6:
21:29 dalek Inline-Python: OpaquePointer has been just Pointer for a year or two
21:29 dalek Inline-Python: review: https://github.com/niner/Inl​ine-Python/commit/4222945a71
21:30 notviki AlexDaniel: yeah, by using Async sock to connect to irc, logging in with the passowrd and asking nickserv to ghost the real wheneverablr :)
21:30 colomon nine++
21:30 colomon before: $py.run(qq/client.get_task​s("%lists<Personal><id>", completed=True)/, :eval);
21:30 colomon after: $client.get_tasks(%lists<Personal><id>, completed => "True");
21:31 notviki won't just :completed work?
21:31 colomon completed => True didn’t but let’s see
21:31 notviki aww
21:31 colomon nope
21:32 colomon Seems to actually need the string “True” rather than a true value.
21:34 colomon nine++
21:35 nine Oh, seems like Inline::Python doesn't know how to translate Bools
21:36 * colomon has no idea on what level the problem is
21:39 RabidGravy it's a load of old Bools
21:41 geekosaur guess that;s a new take on boolean blindness :p
21:46 bjz joined #perl6
21:55 * AlexDaniel secretly hopes that RT #130494 is going to fix whateverable as well
22:00 rindolf joined #perl6
22:01 jnthn Note the code in that ticket is a bit dubious
22:01 jnthn It starts *1* process
22:01 jnthn And so is trying to tap the same output over and over
22:02 jnthn And never actually awaits $proc-prom
22:04 jnthn oh wait
22:04 jnthn we're feeding it input
22:04 jnthn OK, it does make sense :)
22:04 * jnthn totally missed the all important line
22:10 petrutrimbitas joined #perl6
22:19 TEttinger joined #perl6
22:24 jnthn Valgrind provides one lead. Will see if I've time to look into it tomorrow.
22:40 bjz joined #perl6
22:47 Gasher joined #perl6
22:50 bjz joined #perl6
22:55 solarbunny joined #perl6
22:59 thib left #perl6
23:01 webstrand What is the nom branch of rakudo? Which version of moarvm and nqp is nom built against?
23:02 notviki webstrand: the "best latest"
23:02 notviki not bleed but close to it
23:02 notviki nom is the master
23:02 notviki And you can find exact versions in rakudo/tools/build/NQP_VERSION and in nqp/tools/build/MOAR_VERSION
23:03 webstrand So development happens on nom and then gets moved to master?
23:03 notviki webstrand: no, there's no master. For historical reasons we named our master "nom" and development happens on it
23:04 notviki There are plans to create a "stable" branch and have a bot pull to it tested commits, but IMO that's a bad idea
23:05 kurahaupo_ joined #perl6
23:25 awwaiid joined #perl6
23:25 notviki heh... after fixing bugs, while waiting for spectests to finish, I play this game, "Letter Quest".... And I just found a bug in it.
23:25 notviki a meta bug
23:34 lizmat joined #perl6
23:39 kurahaupo__ joined #perl6
23:41 anon joined #perl6
23:42 Guest79293 p6: say '' ~~ /[\s*]+/
23:43 camelia rakudo-moar f9ed73: OUTPUT«MoarVM panic: Memory allocation failed; could not allocate 2052030464 bytes␤»
23:43 Guest79293 Should the above regex work or not?
23:44 notviki Nope
23:44 notviki You're asking for 1 or more nothings
23:44 notviki And there's an infinite number available, so it keeps matching
23:45 notviki There's this ticket that has some discussion that IIRC also goes into explaining why some other langs can figure out that the above should stop: https://rt.perl.org/Ticket/Displ​ay.html?id=75586#ticket-history
23:45 Guest79293 Perl 5 can do it without any problem.
23:45 Guest79293 Thanks, will check out.
23:46 japhb Guest79293: perl5 (the interpreter) has extensive regex optimizations that look for accidents like that and try to avoid unending or otherwise worst-case behavior.
23:46 timotimo it's quite advanced
23:47 japhb Those don't exist in Rakudo yet.
23:48 Guest79293 So ideally, should a full-featured Perl 6 implementation be able to handle that? Or is that something not covered in the spec?
23:49 timotimo if we have tests for it, it should be handled
23:49 timotimo if we don't, they can land in a later language version, like v6.d
23:49 japhb Guest79293: I suspect that over time, more such checks will exist in the grammar engine.  But that's not a matter of Perl 6 compliance (unless we decide to spectest it), that's a matter of being a smarter compiler.
23:50 notviki timotimo: japhb if you have a method that should work only for SetHash, BagHash, and MixHash, would you put it in each of those clases (impl. is identical) or put it in Setty (done by Set/SetHash) and Baggy (done by Bag/BagHash and Mix/MixHash) and add type check on whether the method is called on the immutable variant?
23:51 notviki Feels like the former approach is saner, but I see we already done the latter for some of the methods...
23:51 lizmat notviki: do we?  I thought I'd split all of them into separate Bag/BagHash classes ?
23:52 notviki lizmat: the two I changed today are that, isn't it?
23:53 notviki Or I guess one. the AT-KEY on QuantHash: https://github.com/rakudo/rakudo/commit/​c13e67b3e9db3652c75fa1423ba35821c9aac0e8
23:53 lizmat notviki: good point  :-)
23:53 lizmat now, there was a reason for not splitting those
23:53 lizmat but I forget atm and am now tired after driving ~ 1:40 hour
23:54 lizmat so will look at it tomorrow in depth if still needed   :-)
23:54 lizmat afk&
23:54 japhb Why aren't the common bits (shared not for semantic similarity but purely common implementation) just in a hidden role?
23:55 japhb (Note: have not actually looked at that code to see if my question is nonsensical.)
23:55 notviki lizmat: ah, I remember the reason (or at least can think of). If we add it just to mutables, in immutables it'll autoviv to a Hash, but we want to die instead of autoviving
23:55 shayan_ joined #perl6
23:57 notviki japhb: dunno. I scrolled through code and nothing obviously similar jumps out
23:58 notviki Except for the .clone method I'm adding.
23:58 notviki You could say the fact that it's the same in all three versions is an accident: both Setty and Baggy name their elems attr '%!elems'

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

Perl 6 | Reference Documentation | Rakudo