»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by moritz on 25 December 2014.
sivoais lizmat++ FROGGS++ for working on getting P6 on CPAN. Came here from raiph's post on reddit. 00:01
00:07 fernand__ left
sivoais p6: %karma< :lizmat, :FROGGS >.map: ++* 00:08
camelia rakudo-moar d850a9: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tmpfile␤Variable '%karma' is not declared␤at /tmp/tmpfile:1␤------> 3%karma< :lizmat, :FROGGS >.map: ++*7⏏5<EOL>␤»
sivoais p6: my %karma; %karma< :lizmat, :FROGGS >.map: ++*
camelia ( no output )
sivoais p6: my %karma; %karma< :lizmat, :FROGGS >.map: ++*; say %karma
camelia rakudo-moar d850a9: OUTPUT«:FROGGS => 1, :lizmat, => 1␤»
sivoais there we go :-)
sivoais is learning
maybe there is a more idiomatic way to do that 00:09
ruoso jnthn: right, so my problem is that package_def doesn't have a hook for a package_declarator with a different syntax... I think for now I can duplicate most of the code in package_def, but maybe in the future it could be refactored for better reuse of the package declaration bit...
00:10 vendethiel left
jnthn m: my %karma; %karma< :lizmat, :FROGGS >>>++; say %karma 00:10
camelia rakudo-moar d850a9: OUTPUT«:FROGGS => 1, :lizmat, => 1␤»
jnthn sivoais: ^^ :)
sivoais ah, that's how the hyperop works 00:11
jnthn ruoso: Hm, or maybe you can override package_def in your slang, mix something in such that the block will parse in your slang instead, and callsame up to the original package_def
00:11 vendethiel joined
raydiak related to masak's questions, I was wondering if there aren't parts of the Grammar->Actions->AST pattern which could be abstracted away to simplify/standardize all the *::Actions and *::AST 00:12
such an abstraction might enable more extensibility too 00:13
ruoso jnthn: the problem is that the code blocks in package_def are intermingled with the expectation that it is Perl 6 syntax 00:14
sivoais m: my %karma; %karma< :lizmat, :FROGGS > >>++; say %karma # can Perl6 parse this in the spec?
camelia rakudo-moar d850a9: OUTPUT«5===SORRY!5=== Error while compiling /tmp/PHn25NGUzt␤Missing << or >>␤at /tmp/PHn25NGUzt:1␤------> 3y %karma; %karma< :lizmat, :FROGGS > >>+7⏏5+; say %karma # can Perl6 parse this in ␤ expecting any of:␤ infix stopper␤ …»
00:15 fernand__ joined
sivoais I would prefer some spaces to help my eye follow the tokens 00:15
ruoso jnthn: maybe if it was refactored into package_def_perl6 that includes a package_def that makes the initialization without the syntax-bits... 00:16
jnthn m: my %karma; %karma< :lizmat, :FROGGS >»++; say %karma # easier on the eye 00:17
camelia rakudo-moar d850a9: OUTPUT«:FROGGS => 1, :lizmat, => 1␤»
sivoais yeah, but spaces still don't work. Looks like the operator is "glued" to the hash slice :-/ 00:19
ruoso jnthn: do you think it would make sense to make this change in rakudo? or should I just duplicate that code for now/
00:19 laouji joined
jnthn ruoso: I'd dupe it for now... 00:19
sivoais: That's just normal Perl 6 syntax rules: postfixes come directly afterwards. 00:20
sivoais: You'll need to unspace it if you really want spaces there
m: my %karma; %karma< :lizmat, :FROGGS >\ »++; say %karma # easier on the eye
camelia rakudo-moar d850a9: OUTPUT«:FROGGS => 1, :lizmat, => 1␤»
jnthn m: my %karma; %karma< :lizmat, :FROGGS >\ >>++; say %karma # easier on the eye
camelia rakudo-moar d850a9: OUTPUT«:FROGGS => 1, :lizmat, => 1␤»
avuserow m: my %karma; %karma< :lizmat, :FROGGS >.»++; say %karma # this maybe?
camelia rakudo-moar d850a9: OUTPUT«:FROGGS => 1, :lizmat, => 1␤»
jnthn Yeah, or can put a . there :) 00:21
ruoso jnthn: ok...
jnthn ruoso: But it's useful feedback into something that isn't yet as easy as it should be.
sivoais I see. I like the . form better :-)
jnthn The >> doesn't tend to look so bad if it's not a thingy ending in > :) 00:22
sivoais haha, yeah, that's the main issue here... I'll have to take a navigate the grammar 00:27
00:31 virtualsue_ joined 00:32 coffee` left
sivoais interesting... I see that the operators in the grammar can be tagged as :pure 00:32
00:33 virtualsue left, virtualsue_ is now known as virtualsue
timotimo in the grammar? 00:37
i believe there is also an "is pure" trait you can use with any sub
00:39 laouji left 00:40 laouji joined
sivoais ok, that *is* neat! Once I finish my thesis, I'll be able to play more with that. 00:41
timotimo it doesn't do terribly much yet, sadly
jnthn gets some rest 00:42
00:45 pmurias left 00:48 espadrine left 00:50 gfldex left 00:54 virtualsue_ joined 00:55 virtualsue left, virtualsue_ is now known as virtualsue
fernand__ should perl6 --doc=Pod::To::URI show me the URI's pod? 01:00
01:01 Guest46119 joined
Guest46119 Hello 01:01
01:06 Guest46119 left 01:07 laouji_ joined
timotimo greetings, guest 01:09
01:11 laouji_ left
timotimo what can we do for you today? 01:13
01:17 virtualsue left 01:20 vendethiel left 01:22 vendethiel joined 01:36 colomon left 01:41 colomon joined 01:42 gfldex joined 01:43 vendethiel left 01:44 colomon left, colomon joined, skids left, fernand__ left 01:45 skids joined, vendethiel joined 01:52 grondilu left 01:56 skids left 02:06 vendethiel left 02:09 vendethiel joined
raydiak timotimo: could you please mention Inline::Lua in the next weekly? 02:15
timotimo will do
will you give me a brief summary of what it can already do?
raydiak README details that; github.com/raydiak/Inline-Lua 02:16
timotimo fantastic 02:17
raydiak thank you :)
timotimo m: my ($arg, $sum) = 1e8; say $arg; say $sum 02:18
camelia rakudo-moar d850a9: OUTPUT«100000000␤(Any)␤»
timotimo looks weird to do it like that, IMO
raydiak good point, probably a clearer example if I split it into two statements
timotimo and with that, i'm off to bed 02:19
good night! :)
raydiak g'night timo \o 02:20
02:22 colomon left 02:39 Sysaxed left 02:44 ilbot3 left 02:45 telex left 02:46 telex joined, ilbot3 joined 02:47 colomon joined
ruoso yay... tests 1 and 2 of github.com/ruoso/Grammar-EBNF/blob...04_slang.t already pass 03:00
now I need to find the correct incantation of turning a regex into a method
oooh... found the problem... and now all those tests pass! 03:08
03:10 noganex joined 03:11 skids joined 03:12 noganex_ left 03:17 vendethiel left 03:18 Psyche^ joined 03:20 vendethiel joined 03:21 gfldex left 03:22 Patterner left 03:44 vendethiel left
ruoso m: grammar A { rule b { "1" }; my $subrule = "b"; rule c { <::($subrule)> }; 03:50
camelia rakudo-moar d850a9: OUTPUT«===SORRY!===␤cannot stringify this␤»
ruoso anyone knows if this is reported?
ah, it is #117397 03:53
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=117397
03:57 smls left, vendethiel joined
ruoso stops for today.... 04:01
colomon hurm, lots of new breakage: smoke.perl6.org/report 04:03
fallout from the NativeCall changes, maybe?
raiph m: my enum Day <Su M Tu W Th F Sa>; subset Wday of Day where M .. F; 04:04
camelia ( no output )
Mouq m: grammar A { rule b { "1" }; BEGIN my $subrule = "b"; rule c { <::($subrule)> }; 04:09
camelia rakudo-moar d850a9: OUTPUT«===SORRY!===␤cannot stringify this␤»
Mouq Hrmf
m: grammar A { rule b { "1" }; BEGIN my $subrule = "<A::b>"; rule c { <$subrule> }; }; say A.parse("1", rule => "c") 04:11
camelia rakudo-moar d850a9: OUTPUT«「1」␤»
Mouq m: grammar A { rule b { "1" }; BEGIN my $subrule = A.^find_method("b"); rule c { <$subrule> }; }; say A.parse("1", rule => "c") 04:12
camelia rakudo-moar d850a9: OUTPUT«「1」␤»
Mouq m: grammar A { rule b { "1" }; my $subrule = A.^find_method("b"); rule c { <$subrule> }; }; say A.parse("1", rule => "c")
camelia rakudo-moar d850a9: OUTPUT«「1」␤»
04:25 kaleem joined 04:27 Exodist joined 04:32 rmgk_ joined, rmgk is now known as Guest6059, Guest6059 left, rmgk_ is now known as rmgk 04:43 BenGoldberg left 04:45 laouji_ joined 04:49 laouji_ left 04:50 vendethiel left 05:07 vendethiel joined 05:16 kaleem left
dalek ast: 1777fbd | Mouq++ | S32-exceptions/misc.t:
Add test for RT #123884
05:18
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123884
05:32 vendethiel left 05:34 myp left 05:35 vendethiel joined 05:36 laouji left
dalek kudo/nom: bb3a3df | Mouq++ | src/core/Parameter.pm:
Don't warn when gisting &map, &grep, etc.; RT #123895

The issue was that these subs had signatures with an unnamed "|" parameter in them, and a check was never made to see if "|" or "\" parameters had names.
05:38
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123895
05:39 myp joined 05:42 Rounin joined 05:49 myp left 05:52 locsmif left 05:55 raiph left
dalek ast: 317b088 | Mouq++ | S06-signature/introspection.t:
Add tests for RT #123895
05:58
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123895
05:58 myp joined 06:06 vendethiel left
Mouq std: class { has ($!a, $!b) } 06:09
camelia std f9b7f55: OUTPUT«ok 00:00 138m␤»
Mouq m: class { has ($!a, $!b) } 06:10
camelia ( no output )
Mouq huh, that's a cute one
06:14 vendethiel joined 06:15 laouji joined 06:19 bjz joined 06:28 bjz left 06:43 vendethiel left 06:47 gfldex joined 06:48 vendethiel joined 06:51 MilkmanDan joined 06:54 bjz joined, mr-foobar left, rindolf joined 07:09 gfldex left 07:13 Rounin left 07:18 diana_olhovik joined, rindolf left 07:21 wicope joined 07:26 virtualsue joined 07:28 anaeem1 joined 07:36 FROGGS[mobile] joined
FROGGS[mobile] that could be (mis)used for unions in CStructs 07:37
TimToady but please don't, since that already means something reasonable 07:46
07:47 darutoko joined 07:52 FROGGS joined
FROGGS TimToady: ahh, and what does it mean? 07:52
is it the same as declaring to attributes separately?
07:53 vendethiel left, rurban joined 07:54 vendethiel joined 07:55 Rounin joined 07:56 zakharyas joined
TimToady m: my Int ($a,$b); $a = 42; $b = "foo" 07:58
camelia rakudo-moar bb3a3d: OUTPUT«Type check failed in assignment to '$b'; expected 'Int' but got 'Str'␤ in block <unit> at /tmp/d8Mo4YxCwS:1␤␤»
TimToady it's a way of declaring multiple names with the same type (and maybe traits) 07:59
FROGGS I see 08:00
TimToady besides, C really wants a union to have a name
FROGGS so, nothing beyond my expectations in retrospect :o) 08:01
yeah, I guess we want to have a CUnion repr or a typed CUnion role or something like that...
TimToady unions aren't all that common that they need syntactic relief anyway 08:02
FROGGS true
TimToady that is, they don't need to be *easier* than structs
FROGGS aye
just possible somehow
TimToady nod
FROGGS a CUnion repr almost seems to be a LHF 08:03
I wonder if I miss something in my thoughts 08:04
TimToady it's just a struct with funny layout rules
08:04 laouji_ joined 08:05 prime left 08:06 Ven joined 08:09 prime joined, laouji_ left 08:10 anaeem1 left, anaeem1 joined 08:11 anaeem1 left 08:12 anaeem1 joined
TimToady -> zzz 08:12
08:12 jbotz joined
jbotz hello..? 08:12
raydiak hello 08:14
Ven o/, #perl6 08:15
jbotz Documentation for containers says:
To place a non-Array into an array variable, binding works: my @a := (1, 2, 3); 08:16
But this doesn't work in Rakudo 15.1.
Rounin m: my @a := (1, 2, 3); say @a 08:17
camelia rakudo-moar bb3a3d: OUTPUT«1 2 3␤»
Rounin jbotz: Seems fine?
Ah, but 15.1, you say
I don't know about that
jbotz sure, but: say @a.WHAT; 08:18
FROGGS m: my @a := (1, 2, 3); say @a.WHAT
camelia rakudo-moar bb3a3d: OUTPUT«(Parcel)␤»
jbotz and: @a[0] = 1;
FROGGS jbotz: that's fine... you bound an immutable Parcel there 08:19
Rounin m: my @a := (1, 2, 3); @a[0] = 9; say @a;
camelia rakudo-moar bb3a3d: OUTPUT«Cannot modify an immutable Int␤ in method assign_pos at src/gen/m-CORE.setting:8841␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3280␤ in block <unit> at /tmp/3blfRK5jxz:1␤␤»
jbotz I know it should allow assignment, but the error I get is different...
@a.WHAT says "Mu"
s/should/shouldn't/ 08:20
moritz jbotz: what version of rakudo are you using?
jbotz This is perl6 version 2015.01-88-gd728669 built on MoarVM version 2015.01-28-ga910556
moritz shouldn't be too old 08:21
jbotz: can you nopaste your exact code please?
FROGGS yeah
jbotz holdon 08:22
my @a := (1, 2, 3); OUTPUT: 1 2 3
say @a.WHAT; OUTPUT: (Mu) 08:23
moritz ah, in the REPL
jbotz say @a[1]; OUTPUT: Cannot call 'postcircumfix:<[ ]>'; none of these signatures match:
moritz seems to be a bug in the interactive shell
jbotz (and a lot of lines with : :(Any \SELF, Any: ... 08:24
FROGGS jbotz: do that: perl6-m -e 'my @a := (1, 2, 3); @a[0] = 9; say @a;' 08:25
jbotz: that should give the error message shown here
(the REPL really needs some love) 08:26
jbotz yes, you're right
bug in the REPL
thanks!
08:30 abraxxa joined 08:31 pecastro left 08:36 pdcawley joined 08:41 _mg_ joined, _mg_ left 08:52 [Sno] left 08:56 MadcapRusso left
moritz rt.cpan.org/Ticket/Display.html?id=102293 a fun bug 09:07
FROGGS *g* 09:10
nice one
Mouq binding not working in the REPL is already bugged somewhere, btw 09:13
FROGGS ahh, good to know 09:14
Mouq rt.perl.org/Ticket/Display.html?id=122914 09:15
09:20 prime left 09:23 Kristien joined 09:24 Kristien left
dalek c: 97c24a5 | smls++ | lib/Language/5to6.pod:
Copy-edit and expand the first few sections of 5to6.pod
09:25
09:29 virtualsue left
moritz why did I read "copy-paste" at first? :-) 09:38
09:43 diana_olhovik left
jnthn morning, #perl6 09:49
moritz \o jnthn, * 09:50
pdcawley shudders at the evil bit of weirdly whitespaced Perl 5 code in that commit. 09:51
nine_ timotimo: If you're mentioning Inline::Lua, you may as well mention Inline::Perl6 :) 09:55
moritz pdcawley: you mean with whitspace after the sigil? 09:56
nine_ First FOSDEM videos are being uploaded! SDR and distributions rooms. 09:57
FROGGS O.o
" Unfortunately, the file you requested is not yet available on our mirrors. Please try again later. " :o( 09:59
09:59 rindolf joined 10:00 kjs_ joined, espadrine joined 10:01 [Sno] joined
pdcawley moritz: All of lines (green) 52-56 of that commit are just gruesome. 10:01
moritz: A fine piece of evil on the part of their creator.
moritz pdcawley: indeed, smls++
though of course the space in [$ i] could have been a newline too :-) 10:02
somehow I'm reminded of twitter.com/thedirtycoder/status/5...4085517312
pdcawley usually I've been trying to find ways of _not_ inserting whitespace while golfing, but I have done the odd bit of obfu with spaces after sigils.
"!"if$foo[$i] is more the sort of abuse I've perpetrated in my time. 10:03
DrForr_ Heh. I'm wearing my devroom volunteer shirt as it happens. 10:04
pdcawley How is 6 for golfing, btw.
moritz pdcawley: not bad. Those meta ops do help
pdcawley: as well as * currying
pdcawley I'm sure.
moritz perlgeek.de/blog-en/perl-6/starry-obfu.html an obfu I wrote in 2009 10:05
10:05 diana_olhovik_ joined
moritz (I know, golf != obfu) 10:05
huf they're overlapping magisteria at least :) 10:06
pdcawley golf often ends up being about finding a smarter algorithm.
There's a few standard shortening tricks you can then apply to code in almost automatable fashion. 10:07
(See the work done on javascript code shorteners for examples of what can be done when you can easily parse the language). 10:08
raydiak note 'o' andthen sleep $too-little
huf pfah, easily parseable languages... what do they know! we had to get up at midnight to slog through 92 miles of snow and lava ... 10:09
pdcawley Hmm... that's annoying... panda install p6doc and the tests barfed. t/pod-htmlify.t has a 'use_ok' that it seems should probably be a 'use-ok' 10:10
10:11 pecastro joined
FROGGS m: use Test; use_ok() 10:11
camelia rakudo-moar bb3a3d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kOdIt1YOyx␤Undeclared routine:␤ use_ok used at line 1. Did you mean 'use-ok', 'isa_ok'?␤␤»
FROGGS yeah 10:12
10:19 baest_ joined 10:20 baest left 10:21 virtualsue joined 10:39 larion joined 10:40 Quom joined, Mouq left 10:44 Ven left, Kristien joined 10:47 anaeem1 left, anaeem1 joined
dalek kudo/union: b640002 | FROGGS++ | t/04-nativecall/13-union. (2 files):
add tests for CUnion representation

This works for not-inlined unions only atm.
10:53
10:53 coffee` joined 10:54 Tux__ joined, |Tux| left, smcateer joined 10:55 smcateer left 10:56 rindolf left 10:57 Kristien left 11:01 Ven joined 11:08 baest joined 11:11 xfix joined 11:21 Kristien joined 11:23 laouji_ joined
masak good afternoon, #perl6 11:26
jnthn o/ masak 11:28
11:28 laouji_ left
Kristien hola 11:28
colomon \o 11:32
Ven o/ 11:40
11:42 Ugator left 11:54 laouji left 12:07 kjs_ left 12:18 skids left 12:32 Kristien left 12:45 telex left 12:46 telex joined
nine_ In a token regex_atom { <regex_group> | <regex_alternation> | <regex_literal> } what would a regex_atom action method look like that just passes through the made object from whatever token matched? make $/.hash.values[0].ast looks a bit too complicated for such a common case. 12:48
colomon nine_: I remember asking the exact same question a few years back. I don’t remember ever getting a satisfactory answer. 12:50
Quom This came up maybe a week or two ago when Kristien asked something similar 12:51
jnthn Maybe it'd be better done as a protoregex. 12:53
Quom irclog.perlgeek.de/perl6/2015-02-10#i_10093200
jnthn Otherwise, $<chosen>=[ <.regex_group> | <.regex_alternation> | <.regex_literal> ] 12:54
And then make $<chosen>.ast
Should work out.
Uh
May need to be
12:55 kjs_ joined
jnthn <chosen=.regex_group> | <chosen=.regex_alternative> | ... 12:55
But I'd probably still consider the proto-regex route first.
Quom jnthn: Either works, AIUI
%() is supposed to do what nine_ wants, but doesn't 12:56
[ptc] m: my $n = 5; gather for (2, 3, *+2 ... * > $n) -> $k { $k.say } 12:57
camelia rakudo-moar bb3a3d: OUTPUT«Unhandled exception: No exception handler located for warn␤ at src/gen/m-CORE.setting:785 (/home/camelia/rakudo-inst-2/languages/perl6/runtime/CORE.setting.moarvm:warn:29)␤ from src/gen/m-CORE.setting:781 (/home/camelia/rakudo-inst-2/languages/perl…»
12:57 coffee` left
[ptc] weird, in the REPL that gives: use of uninitialized value of type Any in numeric context in whatevercode at <unknown file>:1 12:59
FROGGS we should probably rename the REPL to WEIRDL
13:00 rindolf joined
[ptc] m: sub pf(Int $n) { gather for (2, 3, *+2 ... * > $n) -> $k { $k.say } }; pf(5) 13:00
camelia rakudo-moar bb3a3d: OUTPUT«Unhandled exception: Cannot call 'infix:<>>'; none of these signatures match:␤:(Any $?)␤:(Any \a, Any \b)␤:(Real \a, Real \b)␤:(Int:D \a, Int:D \b)␤:(int $a, int $b)␤:(Num:D \a, Num:D \b --> Bool)␤:(num $a, num $b --> Bool)␤:(Rational:D \a,…»
[ptc] ok, now that I don't understand.
as soon as the same code is wrapped in a sub, the '>' can't be called anymore
is that a bug?
13:04 Kristien joined
nine_ jnthn: looks to me like I'd need to parameterize the proto-token, but I can't see any usefull parameter. It's really just an ordered list of alternatives. 13:07
Ven nine_: what do you mean, parameterize?
nine_ Ven: as in token sigil:sym<$> { <sym> } 13:09
perlgeek.de/en/article/mutable-gram...for-perl-6 13:10
Ven nine_: it's the "name" of the variation
Quom proto token regex_atom {*}; token regex_atom:group { <regex_group> }; token regex_atom:alt { <regex_alternation> } … 13:11
Except that, presumably, you'd embed <regex_group> into regex_atom:group
13:11 _mg_ joined
nine_ Oh that makes sense. How would the corresponding action method for regex_atom:group be called? 13:15
lizmat m: say "foo".substr(1,*) # feels like a Perl6'ish idiom, yet not allowed yet
camelia rakudo-moar bb3a3d: OUTPUT«No such method 'Int' for invocant of type 'Whatever'␤ in sub substr at src/gen/m-CORE.setting:8390␤ in method substr at src/gen/m-CORE.setting:4542␤ in block <unit> at /tmp/Sm5fVxGnuX:1␤␤»
13:18 Ven left, Kristien left
dalek rl6-roast-data: baf2cc0 | coke++ | / (13 files):
First pass at daily NQP runs
13:19
rl6-roast-data: 7916f41 | coke++ | / (9 files):
today (automated commit)
13:22 kaleem joined
lizmat m: my $f = "foobar"; my $r := substr-rw($f,0,3); say $f; $r = "bazbaz"; say $f; $r = "dip"; say $f # wonder whether the writable reference concept needs to keep the length of the string spliced in 13:25
camelia rakudo-moar bb3a3d: OUTPUT«foobar␤bazbazbar␤dipbazbar␤»
lizmat like such: $ 6 'my $f = "foobar"; my $r := substr-rw($f,0,3); say $f; $r = "bazbaz"; say $f; $r = "dip"; say $f'
foobar
bazbazbar
dipbar
13:25 Ven joined, Possum joined
[Coke] just force removed that last "today" commit, it wasn't run through cron and therefore was wonky. 13:25
lizmat [Coke]++ # nonetheless 13:26
[Coke] I don't have the data getting collated into a .csv yet, but that should give us daily runs of nqp-{moar-jit,moar-nojit,jvm,js,parrot}
13:27 coffee` joined
jnthn [Coke]++ 13:28
13:29 oliver___ joined
oliver___ Hello 13:29
13:30 oliver___ left 13:31 laouji joined 13:33 _mg_ left
Quom nine_: same name 13:34
13:37 kaare_ left, muraiki_ joined, kaare_ joined, kaleem left 13:39 Kristien joined 13:43 Kristien left
[Coke] np. 13:45
moritz++ profile blog post, using that to try to convert some folks. 13:47
mouq; bb3a3df1abe27ae53e8f299b579edfcd89710a76 looks like it has wonky formatting compared to other code in tha tfile.
anyone mind if I indent those blocks? 13:48
dalek ecs: b4d74fa | lizmat++ | S32-setting-library/Str.pod:
Elaborate a bit on substr-rw()
13:49
ecs: ff214be | lizmat++ | S99-glossary.pod:
Add FOSS lemma
lizmat comments on github.com/perl6/specs/commit/b4d74fa049 *very* welcome
13:50 gfldex joined 13:52 Tux__ is now known as |Tux| 13:58 lucas__ joined
timotimo o/ 14:01
lucas__ hello 14:03
dalek Heuristic branch merge: pushed 25 commits to rakudo/newio by lizmat 14:04
lucas__ How much P6 is still malleable to changes? 14:05
lizmat depends on the size of the changes: if you want to post an RFC, you're probably 10+ years too late :-)
afk& 14:06
jnthn Also depends a lot on what you're wanting to change. 14:07
14:07 coffee` left
nine_ Let's do away with those darn sigils! 14:07
lucas__ I don't understand why the RFC process stopped at the first year. Maybe the community should reboot the idea.
nine_: :D
jnthn lucas__: These days, such things happen more through discussion here and prototyping. 14:08
lucas__ My ideas are not so radical. For example, I'm curious if I'm the only one who wishes keywords were lowercase: 14:09
my @values = true, false, nil, inf, nan;
(I know Nil is wrong in this context)
jnthn None of those are keywords in any sense whatsoever.
Ven True and False are enum values :) 14:10
(at least in the spec)
jnthn Right, which are camel-cased.
And Nil/Inf/NaN are constants.
lucas__ I accept. I guess I just don't like too much shift-key presses :) 14:12
timotimo you can write a module that exports lower-case names for these 14:13
14:17 Kristien joined
lucas__ This rigid convention on enums force everything to be capitalized. It makes things like MyEnum::FOO or MyEnum::foo look strange. Maybe it should be more relaxed. 14:18
14:18 [Sno]_ joined, [Sno] left, [Sno]_ is now known as [Sno]
timotimo huh? 14:19
oh, convention
github.com/timo/SDL2_raw-p6/blob/m...Raw.pm#L31 - my enums are capslocked here 14:20
FROGGS lucas__: you often dont type MyEnum::FOO, you'd just type FOO
Ven
.oO( no class in our enums )
Ulti lucas__ I think you might be the only one who thinks nan instead of NaN is a good idea :P 14:21
since NaN is used in nearly every other language with the caps
14:21 Kristien left
FROGGS Nan is also quite delicious 14:21
lucas__ Ulti: Yes, I understand nan and inf instead of NaN and Inf is *very* controversial :) 14:22
Ulti FROGGS also the short version of Grandmother ;)
lucas__ but doesn't P5 allows it? (I'm not sure)
Ulti I don't want Nans in my data either I guess
jnthn lucas__: Perl 6 doesn't *disallow* it.
lucas__: It just tries to be consistent in the stuff you get "out of the box" 14:23
m: sub OoohI'mARebel() { }; class can't-touch-this { }
camelia ( no output )
masak m: constant nan = NaN; say "Look ma, no caps: ", nan; 14:24
camelia rakudo-moar bb3a3d: OUTPUT«Look ma, no caps: NaN␤»
masak er :)
m: constant nan = NaN; say "Look ma, no caps: ", nan.lc;
camelia rakudo-moar bb3a3d: OUTPUT«Look ma, no caps: nan␤»
masak (it still self-identifies as "NaN", of course)
[Coke] ok, I added a symlink so that /usr/bin/node -> /usr/bin/nodejs. Now instead of working, with the latest patch from pmurias, I'm told I can't use nqpjs because my node is installed wrong.
diakopter .u 200B
yoleaux U+200B ZERO WIDTH SPACE [Cf] (<control>)
[Coke] so, no nqp js daily tests until we can run on debian. 14:25
(which I think is the OS in question)
14:27 Kristien joined
diakopter irssi *really* doesn't like U+200B in its input line 14:27
14:28 raiph joined
Kristien we can conclude that irssi is shit 14:28
14:29 Kristien left
diakopter ermkay 14:29
jnthn is quite happy with it 14:30
masak that Kristien sure does have a way with words.
no wait. the other thing.
sjn has used irssi for a long time, and hasn't noticed problems with it :-|
Ven masak: ... and people say my one-liners are harsh :P
14:30 MadcapJake joined
masak Ven: :P 14:30
14:31 brrt joined
diakopter 14:32
ergh, oops
.u H
14:32 davido___ left
yoleaux U+0048 LATIN CAPITAL LETTER H [Lu] (H) 14:32
diakopter .u 14:33
yoleaux Search for a Unicode character by codepoint, name, or raw character
diakopter sigh
14:33 davido___ joined
[Coke] We can write you a p6 module that has an app you can run that'll do what .u does if you like. :) 14:34
(not sure if the issue you're having is with getting the data, or with getting these chars to travel on irc) 14:36
diakopter sure, but can I send it things through irssi to test how it appears in combination with my terminal? [I started /msg'ing it]
14:36 FROGGS left
diakopter lots of issues: font, terminal, keyboard, irc, irssi 14:36
computer is hard 14:37
sjn .u 🐯 14:39
yoleaux U+1F42F TIGER FACE [So] (🐯)
14:39 esaym153 left
fernando___ m: my subset Even of Int where * % 2 == 0; multi sub is_even_and_not_zero($x) {False}; multi sub is_even_and_not_zero(Even $x) {True}; multi sub is_even_and_not_zero(0) {False}; is_even_and_not_zero($_).say for 0 .. 5 14:39
camelia rakudo-moar bb3a3d: OUTPUT«True␤False␤True␤False␤True␤False␤»
fernando___ shouldn't be False, False, True, False, True, False? 14:40
14:41 esaym153 joined
moritz fernando___: multiple subset/where constraints don't consistitute a narrower match, iirc 14:41
diakopter .. if it could derive that 0 is a smaller subset of Even... o_O 14:42
jnthn Put the 0 one before the Even one if you want it to be considered with higher priority
Once you get into non-nominal-type matching, they're tested in order.
fernando___ m: my subset Even of Int where * % 2 == 0; multi sub is_even_and_not_zero($x) {False}; multi sub is_even_and_not_zero(0) {False}; multi sub is_even_and_not_zero(Even $x) {True}; is_even_and_not_zero($_).say for 0 .. 5 14:43
camelia rakudo-moar bb3a3d: OUTPUT«False␤False␤True␤False␤True␤False␤»
14:43 prime joined
fernando___ could it know that 0 is more specific than Even? 14:44
jnthn No
Not in any usefully general way
A type system that wants to start doing such distinguishing likely belongs in module space 14:45
masak +1
geekosaur ...and will probably be unstable
masak also +1 to having pluggable type systems
jnthn We do. :) 14:46
masak and I endorse it \o/
jnthn re-read bracha.org/pluggableTypesPosition.pdf just a couple of days ago
14:48 brrt left 14:49 Ven left
[ptc] should the hailstone sequence rosettacode example supposed to chew up so much memory? 14:53
s/should/is/ 14:54
14:55 lucas__ left
nine_ m: my @a = ("error", "icons", "htdig"); say @a.splice(@a.grep-index("error"), 1); say @a; 15:00
camelia rakudo-moar bb3a3d: OUTPUT«icons␤error htdig␤»
nine_ That's....unexpected?
m: my @a = ("error", "icons", "htdig"); @a.splice(@a.grep-index("error"), 1); say @a;
camelia rakudo-moar bb3a3d: OUTPUT«error htdig␤»
nine_ m: my @a = ("error", "icons", "htdig"); say @a.grep-index("error"); @a.splice(@a.grep-index("error"), 1); say @a 15:01
camelia rakudo-moar bb3a3d: OUTPUT«0␤error htdig␤»
nine_ grep-index returns the correct index but splice removes the wrong element
Argh....because grep-index returns a list 15:03
masak yep. 15:04
of length 1.
that's bitten me also.
you probably want .first-index, but it's still annoying.
masak suddenly wonders why we didn't think to make the API .grep :index and .first :index instead of proliferating subs and methods
nine_ Indeed, I do. After writing several constructs where grep-index was the right choice I kind of wrote it automatically. 15:05
moritz or we could use the :k :v :kv :p indexes that [] uses
ruoso I was thinking, maye I can work-around the lack of /::($subrulename)/ by writing the code tha...
masak moritz: even better.
moritz: is it too late to overhaul? pretty please? :D
maybe check ecosystem fallout first... 15:06
timotimo ruoso: you can actually compose regexes from QAST nodes ... not sure if you'd want that
15:06 [Sno] left
ruoso timotimo: I considered that, it'd be kind of like a macro in that sense... 15:07
colomon btw, modules are a mess at the moment
smoke.perl6.org/report
ruoso on the other hand, I could just implement a code-ref that manually manipulate the match and the cursor to believe it's invoking a capturing subrule and just invoke the regex coderef in a closure
colomon m: say (1..10)[3] 15:08
camelia rakudo-moar bb3a3d: OUTPUT«4␤»
colomon m: say (1..10)[3]:kv
camelia rakudo-moar bb3a3d: OUTPUT«␤»
colomon m: say (1..10)[3:kv] 15:09
camelia rakudo-moar bb3a3d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/6yk5p2y4rJ␤You can't adverb that␤at /tmp/6yk5p2y4rJ:1␤------> 3say (1..10)[3:kv7⏏5]␤ expecting any of:␤ pair value␤»
colomon m: say (1..10).Hash
camelia rakudo-moar bb3a3d: OUTPUT«No such method 'Hash' for invocant of type 'Range'␤ in block <unit> at /tmp/boc3ZmzVUE:1␤␤»
colomon m: my %a = a=>10, b=>2; say %a{“a”}:kv
camelia rakudo-moar bb3a3d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4fH7bMEP0Z␤Bogus statement␤at /tmp/4fH7bMEP0Z:1␤------> 3my %a = a=>10, b=>2; say %a{7⏏5“a”}:kv␤ expecting any of:␤ lol composer␤ prefix or term␤ prefix or meta-p…»
colomon m: my %a = a=>10, b=>2; say %a{“a”} 15:10
camelia rakudo-moar bb3a3d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Ncj4AwkYE3␤Bogus statement␤at /tmp/Ncj4AwkYE3:1␤------> 3my %a = a=>10, b=>2; say %a{7⏏5“a”}␤ expecting any of:␤ lol composer␤ prefix or term␤ prefix or meta-pref…»
colomon arrrgh! idiot client
FROGGS[mobile] colomon: Inline and Compress::Zlib really should work
15:10 skids joined
colomon FROGGS[mobile]: *everything* really should work. 15:11
==> Testing Inline
===SORRY!=== Error while compiling t/c.t
Cannot unbox a type object
at t/c.t:12
FROGGS[mobile] colomon: I mean that I tested it the last days
colomon FROGGS[mobile]: see above 15:12
timotimo colomon: can we perhaps get a different icon for "fails because of missing native library"?
colomon timotimo: well volunteered
timotimo hah
FROGGS[mobile] colomon: is it possible that your smoker still uses the outdated nativecall? it moved to rakudo...
colomon FROGGS[mobile]: nope, I had to blow away the moar-HEAD rakudobrew directory and build from scratch yesterday 15:13
timotimo that should have improved things 15:14
colomon Just rebuilt my home linux server to moar-latest, and Inline still fails for me. 15:15
FROGGS[mobile] weird 15:16
gimme a sec
pyrimidine moritz: remember when I posted a few months back re: panda not upgrading with the switch in URL to ecosystem? Found out why. 15:17
moritz: had an old Cisco VPN client installed. removing it fixed the issue.
nine_ colomon: Inline::Perl5 tests just fine on a just updated rakudo here.
15:17 FROGGS joined
nine_ colomon: is there a possibility to get the error message from your smoker? 15:18
colomon nine_: not easily 15:19
colomon wishes panda had a “test but don’t install” command
pyrimidine moritz: seemed like IO::Socket::INET wasn't using port forwarding?
FROGGS colomon: yes, we really need that
pyrimidine colomon: I used panda-test for that 15:20
15:21 laouji left
colomon huh 15:21
pyrimidine: panda-test command is installed, but it doesn’t seem to do anything?
pyrimidine colomon: when I run it in bioperl6 it runs tests but doesn't install 15:22
colomon pyrimidine: you run it in your bioperl6 directory?
pyrimidine yep
colomon I think it needs better error messages. :) 15:23
but hmmm, might work well with panda look?
yeah, that seems to work okay. pyrimidine++
pyrimidine colomon: also, I sometimes use panda-build to test the build, then follow up w/ panda-test as well. Found one compilation bug that way 15:25
15:26 kjs_ left
FROGGS colomon: I committed a workaround just now... 15:30
colomon FROGGS: what was going on/
?
15:31 brrt joined
hoelzro o/ #perl6 15:31
FROGGS colomon: I'm not sure yet: github.com/FROGGS/p6-Inline-C/comm...4a10baab03
I need to bisect that 15:32
hoelzro .tell pmurias, unfortunately, although I cloned all the necessary repos to my laptop for offline hacking this weekend, I neglected to install node =/
yoleaux hoelzro: What kind of a name is "pmurias,"?!
hoelzro .tell pmurias unfortunately, although I cloned all the necessary repos to my laptop for offline hacking this weekend, I neglected to install node =/
yoleaux hoelzro: I'll pass your message to pmurias.
FROGGS hehe
skids Sigh, there barely is such a thing as "hacking offline" these days :-) 15:34
15:35 spider-mario joined
colomon FROGGS++ 15:39
hoelzro on a side note, I've updated my Docker image for the new R*: registry.hub.docker.com/u/hoelzro/rakudo-star/ 15:42
timotimo neato 15:44
15:51 kjs_ joined 16:01 Rounin left 16:05 bcode left 16:06 bcode joined 16:14 mr-foobar joined 16:21 brrt left, laouji joined 16:23 kaleem joined
raydiak good morning #perl6 16:25
hoelzro o/ raydiak 16:26
16:26 laouji left, leont joined, diana_olhovik_ left
hoelzro .tell pmurias github.com/mgutz/execSync/issues/38 16:27
yoleaux hoelzro: I'll pass your message to pmurias.
leont I'm getting a 􏿽xABFailed to find '_testing/source1' while trying to do '.d' in method d at src/gen/m-CORE.setting:17201􏿽xBB exception, not sure what to do with it :-/ 16:28
16:29 kaleem left
moritz leont: try a .e && .d instead 16:30
leont: iirc lizmat++ has that fixed in a branch already
16:31 pecastro left
leont It's doing that inside of open somewhere. 16:31
Ah, then I guess I should try to update again.
moritz well, the fix inside a not-yet-merged branch won't help you much :(
leont paste.scsys.co.uk/465484 16:32
moritz leont: are you trying to spew() to a file whose directory doesn't exist?
leont It should have just created that directory, but I suspect something is going wrong there 16:33
16:35 zakharyas left 16:40 grondilu joined 16:41 larion left 16:43 Ven joined
dalek kudo-star-daily: fe2e061 | coke++ | log/ (11 files):
today (automated commit)
16:45
rl6-roast-data: b8d7196 | coke++ | / (9 files):
today (automated commit)
[Coke] github.com/coke/perl6-roast-data/b...ummary.out - (if someone can get nqp.js to build on hack.p6c.org, lemme know) 16:52
dalek c: 280bb5b | moritz++ | lib/Type/Cool.pod:
Document a few more method in Cool
16:55 Ven left
colomon Hmmm, re-ran the smoke test and Inline::Perl5 and Inline are both back in the land of the working modules again. still lots of new failures since the 20th, though. 16:58
17:01 adu joined, [Sno] joined
raydiak hrm; Inline passes tests but Compress::Zlib fails to compile at its first inline('C') sub 17:05
lizmat leont: what is the problem exactly ? 17:18
17:19 diana_olhovik_ joined
lizmat leont: which checkout? complete stacktrace ? 17:19
(with --ll-exception)
leont 2015.01-49-g7fd2f64 17:20
17:21 Kristien joined
timotimo doc.perl6.org/type/Automated%20Translation - linked to from the "perl 5 to perl 6" article 17:21
so the link links to a type instead of to a section of the document
17:23 laouji joined
Kristien How does Perl 6 know which brackets belong to each other? E.g. ( belongs to ) and { belongs to }. 17:23
Does Unicode specify it?
jnthn I don't think so; I think we just keep a huge mapping. 17:25
leont lizmat: the problem seems to be 􏿽xABuse fatal;􏿽xBB related
Quom Unicode has a list somewhere, but we need a 1-to-1 mapping 17:26
jnthn Kristien: github.com/perl6/nqp/blob/master/s...mar.nqp#L4 is the list iirc
leont paste.scsys.co.uk/465523
Kristien Is that human-made?
Or generated from the Unicode DB?
apart from <>
lizmat leont: code snippet ?
jnthn Kristien: Not sure; I think we nabbed the list from STD, which TimToady++ did 17:27
17:28 laouji left
Kristien hmm 17:29
17:31 espadrine left 17:32 locsmif joined
[ptc] timotimo: which perl 5 to 6 article exactly? The one on docs.perl6.org? 17:32
17:33 locsmif left 17:34 grettir joined
timotimo yes 17:34
two of the three things it mentions for automated translation i've never even heard of
the third is perlito which only covers a quite thin subset of perl6 :( 17:35
17:35 locsmif joined
leont lizmat: I just pasted that 17:37
timotimo ohai leont 17:38
lizmat leont: looking :-)
[ptc] timotimo: Util wrote it recently, so for details probably best to ask him about the automated translation stuff
timotimo: I can fix up the link if you want
timotimo interesting 17:39
17:40 FROGGS[mobile] left
lizmat leont: reproduced, loooking at fixing it 17:40
[ptc] timotimo: when the HTML is generated, plain L<blah> links get translated to <a href="/type/blah">
17:41 FROGGS[mobile] joined
[ptc] waves his hands vaguely 17:41
timotimo: which is why the link is incorrect at present.
Quom [ptc]: Which should be fixable… 17:43
Quom double-checks his empty tuits bag 17:44
17:45 virtualsue left
dalek kudo/nom: c8d3e64 | lizmat++ | src/core/IO/Handle.pm:
Allow opening non-existing file with 'use fatal'

  leont++ for reporting
17:46
lizmat leont: ^^^
leont :-)
timotimo p6weekly.wordpress.com/?p=415&...b678a0e54f - first draft of weekly
lizmat leont: fwiw, this was fixed already in newio branch 17:47
lizmat should be less distracted and work more on newio branch
[ptc] Quom: yes, it should be fixable. I'm about to push a simple change which "fixes" the link (i.e. changes it into C<>), as it doesn't really need to be linked atm 17:48
Quom: nevertheless, it would be good to get internal links working
17:48 mohij joined
lizmat timotimo: maybe mention blogs.perl.org/users/ovid/2015/02/a...erl-6.html 17:50
and/or perlgeek.de/blog-en/perl-6/2015-pro...n-irc.html
and/or www.dagolden.com/index.php/2406/tho...christmas/
??
also of note (and just in): 17:51
on Tuesday 10 march, Damian Conway will be giving 2 presentations at the Pathé Tuschinski in Amsterdam 17:52
1. Instantly Better Presentations 17:54
2. Everyday Perl6
timotimo oh yes profiling on irc 17:55
<3
lizmat The latter should be interesting for the crowd here
timotimo what's the current blocker for multiple versions at the same time of a library and other packaging changes in general?
lizmat afterwards, there are drinks and a chance to meet Damian
timotimo all the CUR stuff has been in rakudo for a while now 17:56
lizmat timotimo: in my opinion: moving most of the module loading logic into Perl 6, rather than nqp
timotimo but i haven't seen a blog post or proof of concept that'd show off crazy powers
[ptc] timotimo++
lizmat that is correct
:-(
17:57 grondilu left
leont does agree with dagolden that the module toolchain is currently rather neglected 17:59
dalek kudo/newio: c8d3e64 | lizmat++ | src/core/IO/Handle.pm:
Allow opening non-existing file with 'use fatal'

  leont++ for reporting
18:01
kudo/newio: 98d08d3 | lizmat++ | /:
Merge branch 'nom' into newio
pyrimidine lizmat: I know you've been bugged about this in the past, but any idea when newio would merge in master 18:03
?
vendethiel has been watching fosdem's video directory for ada, perl, lisp, ruby and smalltalk all day :P 18:04
|Tux| All tests successful. 18:05
Files=10, Tests=18540, 64 wallclock secs ( 2.05 usr 0.12 sys + 64.09 cusr 0.73 csys = 66.99 CPU)
dalek Heuristic branch merge: pushed 31 commits to roast/newio by lizmat
lizmat |Tux|: is that better or worse than before? 18:06
|Tux| better: more and more tests
18:06 grettir left
dalek c: d057dad | paultcochrane++ | htmlify.p6:
Correct wording when pod doesn't have a SUB|TITLE
18:06
c: ac99514 | paultcochrane++ | lib/Language/5to6.pod:
Change misdirected link into C<>

L<> links end up having a "kind" prefix in the generated html (e.g.
  "/type/"), thus the link within a single POD document didn't link to the
section intended.
|Tux| but I am still working on my own approach (which was not the fastest)
c: fb88605 | paultcochrane++ | htmlify.p6:
Use url attr from pod to determine html filename

Now the C<int> class links correctly to the C<nativeInt> url. This resolves GitHub issue #50.
c: 1a535de | paultcochrane++ | / (5 files):
Merge branch 'master' of github.com:perl6/doc

Conflicts: lib/Language/5to6.pod
Conflicts resolved successfully.
pyrimidine lizmat: re: newio landing, couldn't find anything on it. Apologies if it 18:07
lizmat pyrimidine: it's been a while since I dared running a spectest
18:07 obra joined
lizmat while on newio 18:07
|Tux| I promised myself to try very hard to do some perl6 every day till NLPW
pyrimidine lizmat: ok. What you're doing there looks great, spec tests to the contrary :) 18:08
lizmat |Tux|++
18:08 obra left
lizmat pyrimidine: every now and then it's hard to interpret lack of feedback as looking great :-) 18:08
|Tux| It is hard to tell what is noise, but I'm now down to 37 sec from 42
pyrimidine lizmat: consider this positive feedback :_ 18:09
* :) 18:10
pyrimidine is having a bad keyboard day
18:11 Hor|zon left
|Tux| was amazed how effective objects are implemented. I did a small test in object re-use instead of dropping and creating objects and the whole thing got considerably slower 18:12
18:12 pecastro joined
timotimo what does "synchronization" refer to in the feature matrix? 18:12
El_Che |Tux|: how is the cvs module going?
|Tux| Files=10, Tests=18540, 64 wallclock secs ( 2.05 usr 0.12 sys + 64.09 cusr 0.73 csys = 66.99 CPU) 18:13
but I see a brick waal it the near distance :)
18:13 diana_olhovik_ left
|Tux| all of what I implemented and tested so far is valid ISO-8859-1 or UTF-8 18:14
that all fits in Str
18:14 grettir joined
timotimo Synchronization 18:14
|Tux| I have no idea yet what will need to become Buf when binary data is to be parsed
jnthn timotimo: Weekly looks good
timotimo: I'm not entirely sure what that line in the feature matrix refers to; I think it pre-dates the current S17 design doc too 18:15
|Tux| badminton time. mental rest
timotimo 0000000000jyd......................................dtbnssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssszzzzzzzzzzzzzsn
(cat sat on keyboard)
pyrimidine heh
[ptc] haha
18:16 anaeem1 left
[Coke] mmhehehe 18:16
18:16 echowuhao joined
Kristien cat /dev/tty 18:17
cat > /dev/tty, rather
18:17 fhelmberger left 18:18 coffee` joined
[Coke] /dev/kitty 18:18
... wow, that seems pretty plausible. 18:19
dalek kudo/nom: 0966e98 | coke++ | src/core/Parameter.pm:
fix whitespace
18:20 larion joined, anaeem1_ joined, jluis joined, mohij left
raydiak m: say :16(uniprop("(", "Bidi_Mirroring_Glyph")).chr R~ ":" 18:20
camelia rakudo-moar c8d3e6: OUTPUT«:)␤»
18:24 anaeem1_ left
dalek kudo/newio: 71129ea | lizmat++ | src/core/IO/Dup.pm:
Make IO::Dup.WHICH/Str work
18:25
lizmat one spectest failure fixed
[ptc] moritz: the automatic doc build cronjob is commented out. Is there a reason for that?
vendethiel timotimo: oh, it's 2015.08 already? 18:26
timotimo published
vendethiel: it's the ISO something-or-other week number
vendethiel uhmm
alright, noted
lizmat timotimo++ 18:30
nwc10 where is the Test::Util of which t/spec/S06-signature/introspection.rakudo.moar speaks? 18:31
dalek kudo/newio: 0966e98 | coke++ | src/core/Parameter.pm:
fix whitespace
kudo/newio: fb24e4b | lizmat++ | src/core/Parameter.pm:
Merge branch 'nom' into newio
lizmat nwc10: t/spec/packages/Test/Util.pm, it lives in roast 18:32
fwiw, I wouldn't mind merging that into lib/Test.pm 18:33
18:33 kjs_ left
nwc10 OK, hmm. This fails for me (from the rakudo directory): 18:33
./perl6-m -Ilib t/spec/S06-signature/introspection.t
vendethiel raydiak++ # Inline::Lua
[Coke] nwc10: wouldn't you need -It/spec/lib ? 18:34
lizmat feels like it is missing a 'use lib 't/spec/packages'"
nwc10 [Coke]: possibly, but I'm trying to get to the bottom of why it (also) failed on a `make spectest` 18:35
18:35 anaeem1 joined
[Coke] nwc10: missing use lib 't/spec/packages'; 18:38
see, e.g. integration/weird-errors.t
timotimo do we want to make doc.perl6.org mobile-friendly?
nwc10 ah OK, thanks. I can't fix this, but I'll assume that it will be soon. 18:39
jnthn Nah, smartphones are just a passing fad... :P
[Coke] ok, I'll doit.
lizmat [Coke]++
nwc10 thanks (a second time)
jnthn timotimo: Sounds worth doing.
dalek ast: 5fec139 | coke++ | S06-signature/introspection.t:
need lib to find Test::Util.

  nwc10++ for reporting
18:40
ast/newio: 061637e | lizmat++ | S02-types/deprecations.t:
Fix deprecation message testing

The message no longer contains an absolute path. Not sure whether that is a good thing or not, but this change at least fixes the tests.
18:42
timotimo updates the doc repo locally to play around with it
raydiak timotimo: most of doc's stylesheet is already in ems (except for the hr), so adding some more rules in there to override the ones from perl.css should get you most of the way there in terms of proper scaling
timotimo raydiak: it seems like a viewport would be the first necessary step 18:43
developers.google.com/speed/pagesp...rl6.org%2F
dalek ast/newio: 470acb5 | lizmat++ | S06-signature/introspection.t:
Need to look for Test::Util in t/spec/packages
18:44
raydiak timotimo: yep absolutely, but beyond that you'll probably want to selectively override any css rules we're using from perl.css which is all in px 18:45
18:46 H2O1 joined, H2O1 left
timotimo i don't actually know alot about webdev :) 18:47
hrmpf
i can't Configure.pl nqp because moarvm doesn't seem to base its version off of the 2015.02 tag :(
dalek Heuristic branch merge: pushed 34 commits to roast/newio by lizmat
raydiak ++timotimo # expanding himself :) 18:48
18:48 grondilu joined 18:49 leont left
FROGGS timotimo: just `git fetch` or `git pull` should give you the tag 18:49
and then reconfigure+rebuild moar
18:51 _mg_ joined
timotimo i do have the tag 18:51
FROGGS then you'd just need to reconfigure+rebuild
timotimo oh, hold on 18:52
the install seems to have put the wrong moar binary in place OSLT?
18:52 mohij joined
timotimo i nuked install, so now i tworks 18:52
lizmat
.oO( I have difficulty in tworking myself )
18:53
18:53 rurban left 18:55 khisanth_ is now known as Khisanth
dalek c: a161fe0 | moritz++ | lib/Type/Cool.pod:
Cool.chop
18:56
[Coke] man is my connection to hack laggy. box itself seems fine...
moritz my connection to it is also fine 18:57
TimToady was trying to figure out why you were trying to "hack laggy", and why you named the connection "man"... 18:58
timotimo i can see that
would you change use_ok to use-ok in t/pod-htmlify.t? 18:59
TimToady I wouldn't, I'd make someone else do it... :P 19:02
19:02 jluis left 19:03 jluis joined
dalek c: 648ca23 | paultcochrane++ | util/update-and-sync:
Turn off Inline::Python

The documentation build is segfaulting again and we'll have to settle for the slower shell version until I::P works stably again.
19:03
nine_ So what do I have to do to reproduce this htmlify segfault? 19:08
19:09 grondilu left
timotimo "Type Punning not found in type-graph data 19:13
:S
19:14 telex left, telex joined
dalek c: f7606d3 | paultcochrane++ | htmlify.p6:
Uncuddling else statements in htmlify
19:15
lizmat wonders how medium.com/@keithwhor/nbeam-how-i-...c199e936da would translate to P6
.oO( I only skimmed the article )
19:16
timotimo just remove the "ultra-fast" part :P
dalek kudo/union: 875f50b | FROGGS++ | lib/NativeCall.pm:
implement typed Pointer type
kudo/union: 1d9aee5 | FROGGS++ | t/04-nativecall/13-union. (2 files):
test inlined and referenced CUnions in CStructs
FROGGS jnthn: I'd like to cherry-pick 875f50b into nom 19:17
raiph hi #perl6
raydiak hello raiph
FROGGS jnthn: (now not necessarily, but this week)
raiph I would appreciate on channel feedback about two comments I've written as part of trying to understand/explain P6's "types" and its dispatch (more)
FROGGS hi raiph
raiph 1) blogs.perl.org/users/ovid/2015/02/a...nt-1547960 19:18
jnthn git show 875f50b
raiph I'll pause on the other to avoid confusion
jnthn oops
timotimo just adding the viewport seems to make the "mobile version" much friendlier
dalek c: b755f22 | timotimo++ | template/head.html:
mobile: set a viewport and async-load javascript
19:19
jnthn FROGGS: 19:20
FROGGS jnthn:
:D
jnthn FROGGS: Not sure I like the two commented out lines...
FROGGS jnthn: ahh, yes... 19:21
jnthn: maybe I should uncomment them by making them work?
jnthn FROGGS: But otherwise, think I'm happy with it. Though cherry picking a branch you plan to later merge is always a good recipe for conflicts.
FROGGS: +1 ;)
FROGGS :o)
avuserow colomon: re module breakage, WebService::Lastfm shouldn't be failing tests, because it doesn't have any.
FROGGS I will have a conflict anyway, because the patched lines are included in another (slightly bigger) commit in branch cpp :/ 19:22
avuserow colomon: where are these tests running?
raiph (Oops. The `my enum Day ;` line in the comment I linked above ought to have been `my enum Day <Su M Tu W Th F Sa>;`)
colomon avuserow: hack.p6c.org 19:23
19:23 Hor|zon joined
colomon avuserow: the problem appears to be LWP::Simple. emmentaler (or panda in general?) frequently gets confused about whether it was the current module or a dependency whose tests failed. 19:25
avuserow that makes some sense 19:26
FROGGS jnthn: nah, I guess I remove these two lines... long double would mean that the MVMP6numBody has to grow
avuserow it seems that LWP::Simple currently has a test that uses https (accidentally?), and that requires IO::Socket::SSL which isn't installing for me either
jnthn FROGGS: Only when it's going to hold a long double, though, if we get it right
colomon avuserow: failing modules all the way down… 19:27
avuserow .ask moritz Can we get libsnappy1 and libsnappy-dev installed on hack.p6c.org? Thanks
yoleaux avuserow: I'll pass your message to moritz.
avuserow ^^ that should fix Compress::Snappy on hack.p6c.org
FROGGS jnthn: yes, I was talking about long double 19:28
19:28 Hor|zon left
colomon avuserow: though that must be some sort of new change, because LWP::Simple has only failed on smoke twice in the last two weeks, and IO::Socket::SSL has never worked in that time 19:28
19:28 Kristien left
avuserow colomon: one of the URLs that LWP::Simple fetches is a wordpress blog, which now redirects to SSL 19:29
the test is in get-chunked-6guts.t
avuserow files an issue 19:30
moritz avuserow: installed 19:31
yoleaux 19:27Z <avuserow> moritz: Can we get libsnappy1 and libsnappy-dev installed on hack.p6c.org? Thanks
avuserow thanks moritz++
colomon Time warp!
jnthn Again? 19:32
moritz let's do the %s %s 19:34
dalek kudo/union: ad88cf9 | FROGGS++ | lib/NativeCall.pm:
export longlong, remove spurious comment and fix typo
19:35
lizmat
.oO( waiting for DrForr_ to insert some transsylvanian reference :-)
19:39
19:42 anaeem1 left, anaeem1 joined, rindolf left
dalek c: 1e44bb2 | moritz++ | lib/Type/Cool.pod:
Cool.substr
19:44
nine_ [ptc]: htmlify.pl completes without hickups using Inline::Python on my system. Any idea how I could reproduce the segfault? 19:45
19:46 anaeem1 left
moritz nine_: I've managed to run it fine with Inline::Python on the same host and with the same rakudo version that the cron job uses 19:48
nine_: and yet the cron job seems to segfault
does python do something funny when no terminal is available?
nine_ moritz: maybe it runs out of memory?
moritz nine_: I'm not aware of any memory limits that the cron job has that a normal user doesn't 19:49
nine_: the memory limit should be around 8 or 12 GB, which is two or three times more than my laptop has (which runs htmlify too :-) 19:50
jnthn If valgrind is on the box, can always try it under that
I guess it'll take forever
moritz nine_: ok, now managed to reproduce the segfault in the interactive session
[ptc] nine_: unfortunately, no idea
moritz nine_: want an account on the boxß
s/ß/?/ 19:51
[ptc] .... and ptc's too late again...
nine_ moritz: that may help, yes!
jnthn But if the cron environment is just different enough to mean we don't "get lucky"...
nine_ moritz: maybe even a stack trace may help
[ptc] moritz, nine_ it always seemed to happen just after generating the document for List (if that helps with debugging)
moritz [ptc]: here just after Str 19:52
how do I run perl6-m with gdb?
timotimo cat (which perl6)
and put (most of) that into gdb --args 19:53
[ptc] question: if I push 20+ commits, will I kick dalek, or will I fill the irc logs with lots of (probably unnecessary info)?
dalek c: c6babf0 | TimToady++ | lib/Language/5to6.pod:
some clarifications on whitespace requirements
FROGGS [ptc]: it'll just print a single line if there are too many commits at once 19:54
[ptc]: like: <dalek> Heuristic branch merge: pushed 34 commits to roast/newio by lizmat
[ptc] FROGGS: thanks. Didn't want to do anything dumb
dalek Heuristic branch merge: pushed 25 commits to perl6-examples by paultcochrane 19:55
[ptc] ah, cool!
FROGGS :o)
lizmat FROGGS: I think the limit is set too high, I frequently kill dalek with merges of <10 commits
FROGGS Heuristic branch merge - that sounds like science baby! /o/
[ptc] more of the perl6-examples are working again :-)
FROGGS lizmat: yeah
[ptc]++
moritz now running with valgrind 19:57
timotimo how often does the cron job do doc.perl6.org now? 19:58
er. how frequently, to be precise
19:58 eternaleye joined
moritz timotimo: every 5 minutes 19:59
timotimo: but it only runs if the previous one isn't still running, and if something changed in git
nine_ No wonder it succeeds locally. My pygmentize is too old, so Inline::Python does not even get used 20:00
20:00 grettir left
moritz :-) 20:00
FROGGS m: class Foo { method ^name { 'Bar' } }; say Foo.^name # I was under the impression you implemented that lately... 20:04
camelia rakudo-moar 0966e9: OUTPUT«Foo␤»
nine_ The backtrace does not even involve Inline::Python at all
hoelzro timotimo++ # weekly 20:05
nine_ It does contain MVM_nativecall_invoke however
jnthn FROGGS: Hm, me too... 20:07
FROGGS: Oh, maybe it's in native-ref branch...
20:07 brrt joined
FROGGS dang, I could make use of it :o) 20:08
jnthn FROGGS: Yes, confirmed.
20:10 grettir joined
moritz no segfault under valgrind 20:12
timotimo hoelzro: thanks :)
20:12 darutoko left
FROGGS moritz: does it show invalid reads or invalid writes or something like that? 20:12
moritz FROGGS: nope; running it again... 20:13
nine_ no lexer for alias 'perl6' found? 20:15
with Pygments 2.0.2
moritz huh 20:17
on hack there's 2.0.1 that includes the perl6 lexer
nine_ even though pygmentize -L lists it
dalek c: c7cc8fb | TimToady++ | lib/Language/5to6.pod:
mention method call syntax right up front
c: 4fccd29 | moritz++ | lib/Language/objects.pod:
Fix heading

htmlify thought that "=head2 Role Punning" introduce a role named Punning and I am too lazy to fix it
20:18
moritz I'm feeling stupid 20:19
with valgrind, it still runs in ~5min
20:19 grondilu joined
moritz am I valgrinding only the shell wrapper? 20:19
FROGGS unlikely
err, probably :o)
you do: cat `which perl6-m` 20:20
nine_ moritz: made the same mistake a couple of minutes ago :)
FROGGS then copy the stuff between 'exec' and '"$@"' (not inclusive)
moritz tries with --trace-children=yes
FROGGS append you script name or one-liner
and prepend either 'valgrind' or 'gdb --args'
moritz now the familiar slow-down occurs 20:22
ok, I'll try it with --sparse :-) 20:23
20:26 bjz left 20:27 kjs_ joined
nine_ I can now get it to segfault on my machine, too. Segfaults after X::Parameter::Default 20:28
So it's probably not something very deterministic
moritz
.oO( only reproducible segfaults are good segfaults )
ok, valgrind is spewing out dags 20:29
*diags
muhaha
even /usr/bin/pygmentize -V produces invalid reads 20:30
from inside python's GC
nine_ AFAIK Python comes with a valgrind error supression file that should mask false positives 20:31
moritz but that's not enabled by default? 20:32
svn.python.org/projects/python/tru...E.valgrind 20:33
uhm, is python still on SVN?
nine_ svn.python.org/projects/python/trun...E.valgrind
seems like
20:34 sydneyca joined
nine_ Lovely! Seems to be a Heisenbug. Simply warn()ing the result in p6format before returning makes the segfault go away. 20:35
20:36 ecocode joined, pdcawley left
nwc10 nine_: hg.python.org/cpython/ 20:36
hg.python.org/cpython/log/bb67b810...E.valgrind 20:37
but last change was 2006
20:37 raiph left
lizmat m: role S { method bind($s) { nqp::bindattr(self,Str,'$!value',nqp::unbox_s($s)) } }; my $a = "foo" but S; $a.bind("bar") # does anybody have any idea what's going wrong here ? 20:39
camelia rakudo-moar 0966e9: OUTPUT«P6opaque: representation mismatch when storing value to attribute␤ in method bind at /tmp/ozA9DJ7rFk:1␤ in block <unit> at /tmp/ozA9DJ7rFk:1␤␤»
lizmat jnthn FROGGS ^^ ?? 20:40
jnthn lizmat: nqp::bindattr_s
lizmat: But that's...uh...horribly dangerous. 20:41
lizmat: I mean, you won't SEGV the VM or anything, but we put Str instances into a constant pool when compiling.
20:41 Kristien joined
lizmat well, I'm testing code to get substr-rw to be more DWIM 20:41
20:42 _mg_ left
lizmat basically, calling substr-rw on a Str would add a role to the string 20:42
jnthn Yeah but substr-rw should never mutate a Str
No, that's just plain wrong.
You have to pass something that "is rw"
lizmat yes, that is what substr-rw does
jnthn That "is rw" binds to a non-container at the moment is a bug
Once native-ref lands, passing a Str directly to something declared "is rw" will be a signature binding error, most likely. 20:43
lizmat yeah, but that's not the problem I was facing
the idea I had is that the *first* time you call substr-rw on a string
it will add a role to the string with some logic in it 20:44
20:44 jluis left
lizmat anytime you would assign to the proxy, it would know where each field in the Str was 20:44
and assign that, and regenerate the underlying string
20:44 jluis joined
jnthn That sounds costly? 20:45
I'd imagine the vast majority of uses of substr-rw will be one-shot
lizmat well, substr-rw *is* costly, no matter how you do it
ok, maybe it should be another substr-xx fiuncttion then
jnthn What's the use case? 20:46
japhb I saw "segfault" on the screen here, and it reminded me: I can't reply to [perl #123883] to add that for recent r-m, the bar for segfault has risen: Like the person who replied to my bug, 100_000 now seems to work, but 1_000_000 segfaults again. Can someone else confirm and update the bug, since RT seems to dislike me today?
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123883
Kristien holy shit I just realised
Perl Girl rhymes great
lizmat jnthn: making sure that multple substr-rw on the same string will always work
dalek c: e2d6ed7 | timotimo++ | html/images/camelia (3 files):
smallify png: faded 14%, small 9% and camelia.png 16% decrease
lizmat jnthn: they currently don't reliably, if your replacement string has a different length from the original 20:47
jnthn lizmat: In which way does it not work now?
nine_ I got it! 20:48
timotimo yays
jnthn lizmat: If we really want those semantics, is not having substr-rw just snapshot the prefix and suffix, and have the Proxy STORE close over them and then just construct prefix ~ new thing ~ suffix not good enough?
lizmat m: my $a = "foo"; my $r1 := substr-rw($a,0,1); my $r2:= substr-rw($a,1,1); $r1 = "ab"; $r2 = "cd"; say $a 20:49
camelia rakudo-moar 0966e9: OUTPUT«acdoo␤»
lizmat expected abcdoo here
the $r2 didn't see the $r1 increasing the length
(actually, expecting abcdo) 20:50
20:50 VACA12B joined
TimToady Kristien: yes, that has occurred to me before, but I haven't pushed it till now because, well, I'm not a girl, so if I pushed the concept, it would be taken as just more patriarchy. From you, it wouldn't be taken that way. :) 20:51
lizmat jnthn: what you describe, is how it works now
need to be afk&, will check back tomorrow most likely
Kristien I'll change my Twitter and Stack Overflow bios to "Perl Girl" :P
jnthn lizmat: OK. I don't think I'm upset about how it works now; for me it's "you asked for trouble and you got it". But it's by now lang design, so I'll defer to TimToady++ :)
Kristien They are currently "DAT ASS"
jnthn lizmat: From an impl point of view, the mixing in thing bothers me a little, but I understand what you're trying to achieve, at least :) 20:52
20:54 dolmen joined
nine_ Does NativeCall free a string returned from a C function? 20:57
jnthn I think that's configurable 20:59
FROGGS nine_: there is a trait explicitly_managed or so
21:00 Hor|zon joined
FROGGS jnthn: that's where I am now... gist.github.com/FROGGS/ae724e5dcf4a2fe902fe 21:03
jnthn: it passes on jvm and on moar, and I'm going to test some of my modules, but I dont expect any surprise 21:04
21:04 Hor|zon left 21:05 virtualsue joined
jnthn FROGGS: It means OpaquePointer.^name won't come back with OpaquePointer any more 21:06
FROGGS true
jnthn: OpaquePointer is just, well, a long word
especially in OpaquePointer[MyStruct] 21:07
jnthn *nod*
Well, my question is more if we want to encourage people towards Pointer in general
With an eye to deprecating OpaquePointer in the end.
FROGGS that is what I want :o)
aye
jnthn I think I'm good with that. 21:08
FROGGS phew
hoelzro nine_: I just tried Inline::Perl5. that is AMAZING 21:09
nine_++
nine_++ for 1 .. *
PerlJam hoelzro: what did you use it for?
hoelzro just using Mojo::UserAgent from Perl 6 21:10
timotimo for 1 .. * obviously, PerlJam
PerlJam nice.
timotimo: :-P
a few times now I've used P6 for parsing and other data manipulation, and Inline::Perl5 + some P5 module for either reading or writing the data from/to a data structure. 21:11
21:13 echowuhao left
dalek line-Python: a561275 | (Stefan Seifert)++ | / (2 files):
Fix segfaults caused by py_unicode_to_char_star

PyString_AsString returns a pointer to the PyString's buffer. So when we Py_DECREF the string immediately afterwards, this buffer is already free'd. It still works, but is not reliable.
Instead, move more of the processing to Perl 6, so we can safely py_dec_ref the string after NativeCall copied it to a Perl 6 string.
Fixes htmlify.p6 in perl6/doc.git
21:13
nine_ moritz: ^^^ 21:14
[ptc]: ^^^
21:14 dolmen left
PerlJam nine_++ some more :) 21:14
dalek c: f5f22d3 | TimToady++ | lib/Language/5to6.pod:
add a p6 translation under glob
21:17 xfix left 21:18 bjz joined
[Coke] I'd like to propose a style for core where we cannot start a line with "//" # because that looks like a c++ comment. 21:19
Not entirely serious, but that did confuse me for about 30s looking at a commit last week.
21:20 kjs_ left
TimToady well, if your terms are that big that you need a newline, you might want orelse anyway just for clarity, since // is mostly for defaulting small things 21:21
if it's being used for flow control, orelse is probably better anyway
PerlJam Does NQP grok orelse? 21:22
21:22 brrt left
TimToady has no qlew 21:22
jnthn PerlJam: Not as far as I know
[ptc] nine_: fantastic! 21:23
nine_++
TimToady as for nqp...forget I said anything about readable :)
I hear python is pretty readable though :P 21:24
21:25 bjz left
nine_ Python's readability is vastly overrated 21:28
Kristien I have yet to find a language in which code tends to be readable and in which there is no block closing token like '}' or 'end'. 21:29
TimToady there are many dimensions of readable 21:30
masak Python does its darndest to go with Least Surprise. sometimes it fails.
TimToady python optmized in different ones than Perl
Kristien such as the readable-without-syntax-highlighting dimension which Go has :P
masak: for…else and def f(x=[]) :(
pyrimidine I seen lots of terribly written but perfectly readable python code. Suppose the fact one can spot the terribleness is something... 21:31
21:31 raiph joined
dalek c: 5c54e6c | smls++ | lib/Language/5to6.pod:
more 5to6 tweaks (and moved the two method call sections together)
21:31
masak Kristien: point taken.
21:31 bayprogrammer left
diakopter m: gist.github.com/anonymous/2cdc65d6b2913ace1a45 21:32
camelia rakudo-moar 0966e9: OUTPUT«gist not found»
diakopter aww, bitrotted again
masak Kristien: the for/else thing is *weird*, and furthermore doesn't align with my first guess as to what it'd do.
Kristien It should have been that else is executed if for didn't run at least once.
masak Kristien: the x=[] thing has a certain sad logic to it, falling out of earlier decisions about Python being interpreted.
Kristien It's far more useful and less surprising.
masak Kristien: yes, that's what I expected it to do. 21:33
Kristien I don't even know what it does. I have to look it up every time.
21:33 dolmen joined
Kristien m: gist.github.com/rightfold/7d1de64e8f344434e3df 21:34
camelia rakudo-moar 0966e9: OUTPUT«gist not found»
Kristien well, did it find it or not? :)
diakopter heh
timotimo i'm pretty sure camelia was never able to do secret gists 21:35
Kristien it's a public gist
diakopter but yeah, even the anonymous & public ones look more like the secret ones
Kristien gist changed the IDs to all be hexadecimal a year ago
it broke lots of tools
including gist.io/, which for some reason still hasn't been updated 21:36
diakopter is a broke tool
Kristien Tool is a good band.
FROGGS nod
21:37 echowuhao joined
TimToady smi1er: the method call syntax still needs to be first, or you have all sorts of WTF directly thereafter 21:39
21:39 pmurias joined
pmurias hoelzro: hi 21:39
yoleaux 15:32Z <hoelzro> pmurias: unfortunately, although I cloned all the necessary repos to my laptop for offline hacking this weekend, I neglected to install node =/
16:27Z <hoelzro> pmurias: github.com/mgutz/execSync/issues/38
TimToady it's also there by virtue of "most obvious change"
hoelzro pmurias: hello 21:40
pmurias hoelzro: this execSync is causing problems for you?
TimToady assumes smls === smiler
hoelzro pmurias: yes, I just upgraded to node 0.12 on my desktop, and now nqp-js no longer works =/
for now, I can downgrade to 0.10, but I think maybe we should address this
pmurias hoelzro: I can replace execSync with something else 21:41
hoelzro there seem to be some suggested migrations
referenced in that PR
er, issue
21:42 smls joined
TimToady smls: are you also smiler? 21:42
smls no :)
just saw your comment in the public irc logs though 21:43
i think whitespace and sigils are more "fundamental" syntax from a perl 5 perspective
Kristien I heard a python can eat a camel.
Should we be scared?
dalek pan style="color: #395be5">perl6-examples: eac20d1 | paultcochrane++ | euler/prob0 (13 files):
Purge trailing whitespace from euler examples
21:44
perl6-examples: ab97e1a | paultcochrane++ | euler/prob (5 files):
perl6-examples: Wrap comment/pod paragraphs consistently
21:44 dalek left
smls method calls are a more specialized thing 21:44
TimToady I disagree
21:44 wicope left, dalek joined, ChanServ sets mode: +v dalek
Juerd Kristien: Have you ever seen a python catch a butterfly, though? :) 21:45
21:45 sydneyca left
masak vendethiel: oh! I just thought of the followup question I should have asked you at once: if you want sub calls and ops to somehow be the "same" Q type -- what about method calls? should they also be bunched with the other two? 21:45
Kristien Juerd: !!
TimToady if you immediately have to start talking about method calls under whitespace, then method calls are more fundamental from a user's learning trajectory 21:46
smls TimToady: Hm I don't feel that strongly about it. I mostly chose the current position as a "compromise" between the two separate method call related sections written by you and Util... ;)
TimToady and the choice of dot drove a lot of the rest of the design
pmurias hoelzro: on node 0.12 execSync is no longer needed 21:47
hoelzro ah ha
TimToady it's also frequently the first thing many P5 programmers complain about as a "gratuitous change" 21:48
so I wanted to rationalize it before they take a "set" against it 21:49
dalek c: a42f276 | smls++ | lib/Language/5to6.pod:
5to6: move method call section to the top
21:50
smls fair enough
hoelzro pmurias: so maybe check for node 0.12 and fallback to execSync? what about io.js?
TimToady and more subtly, I wanted to get an "easier to type" in there before denigrating golf :) 21:51
pmurias hoelzro: io.js has execSync 21:52
hoelzro ok
pmurias I'm not sure if I should just raise the dependency to 0.12
checking for node 0.12 a fallbacking to execSync will be ugly 21:53
hoelzro true
I don't know if it's just a problem with 0.12, or if it's a problem with 0.12 + python3
hoelzro wonders if there's a scripting language that is pre-installed on most OSen, and has remained remarkably stable over the past decade. hmm... 21:54
moritz nine_: now I get a test failure for Inline::Python 21:55
No such method '' for invocant of type 'Foo' in method handle_python_exception at lib/Inline/Python.pm6:333
in method call at lib/Inline/Python.pm6:351
in block <unit> at t/call_back.t:38
vendethiel masak: hi, sorry, not sure I understand
yes, I believe they should be a Call as well. with an invocant
21:56 skids left
masak vendethiel: ok. I will process this. 21:57
thank you.
vendethiel masak: do you see, at hand, an issue with that?
dalek p/js: 042dab4 | (Pawel Murias)++ | src/vm/js/nqp-runtime/ (2 files):
Replace execSync with fallback-exec-sync
21:58
pmurias hoelzro: ^^ this might help
masak vendethiel: I think we have different aesthetics. I don't want to say more right now.
vendethiel uhm 21:59
*suspense*
hoelzro tries
pmurias: that did it, thanks! 22:04
pmurias hoelzro: I reverted your 'make -j' enabling commit as it was forcing a rebuild everytime 22:06
hoelzro =( 22:07
ok, fair enough
maybe I can fix that, get the best of both worlds
pmurias you just need to turn the dependency on m-all to $(JS_M_ALL) 22:08
and you should be editing tools/build/gen-js-makefile.nqp 22:09
FROGGS m: sub foo(int32, int32) { 42 }; foo(int32, int32) # that's my Inline::C bug
camelia rakudo-moar 0966e9: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/wvbTvcbL8G:1␤␤»
hoelzro ah, ok 22:10
FROGGS star-m: sub foo(int32, int32) { 42 }; foo(int32, int32) # that's my Inline::C bug
camelia star-m 2015.01: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/RzRS6rALzO:1␤␤»
[Coke] pmurias: any idea how to fix thigns so I can build nqp-js on hack.p6c.org ? 22:14
I linked node to nodejs - but it seems that with your commit earlier, it's seeing nodejs at all and then immediately dying.
do you have an account on hack you could try a build on? 22:15
hoelzro [Coke]: I could hop on and try to build it if pmurias doesn't have time
[Coke] Thanks. 22:16
hoelzro I, however, would need a hack account, but there's something else I was hoping to do on there, so this would kill two birds with one stone =)
[Coke] I wonder if I can make you one. checking
moritz hoelzro: haven't we killed enough birds recently? 22:17
[Coke]: github.com/perl6/infrastructure-do...#new-users
[Coke] already there!
hoelzro needs an alternative idiom 22:19
dalek frastructure-doc: 00dc3f2 | moritz++ | hosts/hack.p6c.org.pod:
Fix typo
frastructure-doc: 39e8e7e | moritz++ | hosts/www.p6c.org.pod:
elaborate on the www server a bit
moritz hoelzro: zwei Fliegen mit einer Klappe schlagen :-)
[Coke] Done.
hoelzro moritz: perfect, I don't care for flies =) 22:20
22:20 timotimo left
moritz woah, I think this is the first time that somebody other than me has given out a hack account 22:20
so, it's going viral!
[Coke]++
time for sleep here 22:21
22:21 timotimo joined
masak moritz: you should incentivize the behavior by handing out badges for handing out accounts :P 22:21
dalek pan style="color: #395be5">perl6-examples: 6c028f8 | paultcochrane++ | euler/prob021-gerdr.pl:
Add sigils so that example runs as perl
perl6-examples: 5b612a8 | paultcochrane++ | euler/prob021-gerdr.pl:
perl6-examples: Increase loop limit to equal that of Euler problem 21
22:21 dalek left 22:22 dalek joined, ChanServ sets mode: +v dalek
hoelzro moritz, [Coke]: any chance we could get zsh on hack? 22:25
TimToady > perl6 -e "say “I'm ”, ‘“client-friendly”.’;" 22:26
I'm “client-friendly”.
colomon: ^^^ so you don't have to curse your client anymore
and because we can :)
dalek p/js: 7a15dd2 | (Pawel Murias)++ | tools/lib/NQP/Configure.pm:
Check if node.js is installed properly first and then check if it's installed incorrectly.
22:27
pmurias [Coke]: I fixed how node.js is probed
dalek kudo/nom: a2a1afb | TimToady++ | src/Perl6/ (2 files):
lose the battle, win the war

We'll just support smart quotes because auto-"correcting" clients aren't going away.
22:29
pmurias debian-- # renaming node.js
they shouldn't have added a package just to screw people over
TimToady (and because it'll give a better dba message if only the opener is smart-quoted) 22:30
hoelzro tries the new match
looks good pmurias 22:32
Kristien time to sleep. goodbye! 22:34
hoelzro nine_: is there a way to invoke Perl 5 stringification on a P5 object when using Inline::Perl5?
o/ Kristien
22:35 Kristien left
pmurias hoelzro: new match? 22:38
hoelzro pmurias: er, I meant patch =/ 22:39
dalek d: efd2de0 | TimToady++ | STD.pm6:
allow smart quotes
22:40
22:41 kjs_ joined
timotimo what's wrong, dalek? 22:42
22:46 jluis left 22:49 coffee` left, laouji joined
dalek kudo/nom: 5ec0c6e | FROGGS++ | / (6 files):
add typed Pointer type as replacement for OpaquePointer

A Pointer can still be used as is, and will Pointer[void] (void*). When a Pointer points to something more useful(i.e. Pointer[int32]), one can call method 'deref' on the pointer to reveal the the thing it is pointing to. Besides that a Pointer can still be instantiatet using a memory address and numifies back to that mem address. We export the OpaquePointer type as an alias to Pointer, to allow adoption before we OpaquePointer gets deprecated.
22:49
22:49 Hor|zon joined
FROGGS colomon: Inline::C and Compress::Zlib(::Raw) should be fine for the next run (I fixed it correctly in Inline::C) 22:50
#perl6: do good things with this Pointer type, I really <3 it...
gnight 22:51
avuserow FROGGS++ # "transparent" pointers 22:52
22:53 laouji left, Hor|zon left 22:57 pippo joined, kjs_ left, spider-mario left
pippo moritz: on your commit here irclog.perlgeek.de/perl6/2015-02-23#i_10162952 I think "say 20151224.substr(*-2);" should be 24 and not 12. 22:58
dalek p: e7710ac | TimToady++ | src/QRegex/P6Regex/Grammar.nqp:
support smart quotes in P6 regex
23:00
23:00 ecocode left 23:03 joshismyname joined
joshismyname hi all 23:05
i have a question i hope someone here could answer for me
can I pick and remove in one step.... like a random pop?
23:06 grettir left 23:07 leont joined
timotimo well 23:08
there's the :delete adverb you can use like @arr[123]:delete
23:08 grettir joined
timotimo however, that'll leave a hole in the array, rather than moving all elements after that one step back 23:09
masak m: my @a = 1..5; @a[2]:delete; say @a.perl
camelia rakudo-moar a2a1af: OUTPUT«Array.new(1, 2, Any, 4, 5)␤»
masak joshismyname: you're after .splice
m: my @a = 1..5; my $elem = @a.splice(2, 1); say @a.perl; say $elem
camelia rakudo-moar a2a1af: OUTPUT«Array.new(1, 2, 4, 5)␤3␤»
23:09 smls left 23:10 kaare_ left
timotimo so you'll end up having to use splice instead 23:10
jnthn And splice a random element.
joshismyname ok, that works
thanks
jnthn @a.rand is a cute way to get a random number that'd work 23:11
joshismyname nice
23:11 maettu left
masak ooh, hadn't thought of that idiom before. 23:12
joshismyname thanks again
masak jnthn++
timotimo indeed
except .rand gives you a float num :)
m: say 100.rand
camelia rakudo-moar 5ec0c6: OUTPUT«34.9006711060583␤»
masak m: my @a = 1..5; my $elem = @a.splice(@a.rand, 1); say @a.perl; say $elem
camelia rakudo-moar 5ec0c6: OUTPUT«Array.new(2, 3, 4, 5)␤1␤»
23:12 grettir left, maettu joined
masak timotimo: doesn't matter, the decimal part gets truncated by .splice 23:12
23:13 jbotz left
timotimo oh, it automatically ints 23:13
right
masak we're not Python... :)
timotimo :)
Humbedooh surely splice(2.5, 1) should splice half of the element...somehow ;3 23:14
masak Humbedooh: this is why we listen to RFCs, and then exercise our right to ignore them :P
masak .oO( implementation details: heck if I know ) 23:15
s/exercise/reserve/ 23:16
23:17 grettir joined
raydiak
.oO( start by converting all operations and values and their definedness to some fuzzy-logic representation )
23:17
23:17 pmurias left 23:18 fernand__ joined
masak raydiak: I love how people's guesses in these situations almost always are the same. it must be mostly cultural osmosis. like, "the fourth dimension is time", which annoys me sometimes. 23:18
23:18 mohij left
Juerd masak: It's not? Damn. :( 23:19
23:19 lnr joined
masak gnashes teeth, slowly 23:19
Juerd What should I read to educate myself about this?
raydiak maybe more accurate to say "it is sometimes useful to model time as a fourth dimension for geometric analysis" 23:20
masak Juerd: just saying that there's nothing a priori that would make the fourth dimension time. rather, it's a kind of notational convenience or whatever. I could just as well say "the fourth dimension is cabbage" -- it would probably be less of a useful abstraction, but it would not be less true. 23:21
23:21 vendethiel left
Juerd masak: Isn't that equally true for the first three? 23:21
masak Juerd: in some sense, yes. 23:22
Juerd: but the first three are at least all spatial.
Juerd: I have no problems with Euclidian N-space in general.
Juerd Are there any more than three spatial dimensions?
masak it's easy to imagine more.
Juerd It seems as arbitrary to mandate this property :) 23:23
I find it very hard to imagine more.
23:23 vendethiel joined, joshismyname left
masak that's just because you grew up in 3-space. besides that, there's nothing that stops one from reasoning in 4-space, say. 23:23
where intuition fails, logic and algebra and reasoning help instead. 23:24
Juerd Reasoning lead to assumings the 4th dimension was time.
s/assumings/assuming/
masak like, I can say "there are 6 regular 4-polytopes" and that's a true statement just as much as "there are 5 platonic solids". 23:26
the former statement involves four spatial dimensions. it doesn't involve time.
I can talk about rotations in 4-space. two such rotations can be independent of each other in a way two rotations in 3-space cannot (because 4-space has four axes.) thinking about these rotations involves only space, not time. 23:27
grondilu thinks the world is full of "cultural osmosis", apart from it there would be only atoms and void. 23:28
23:29 gfldex left 23:30 virtualsue left
dalek kudo/nom: 0ec17f3 | jnthn++ | src/Perl6/Metamodel/Archetypes.nqp:
Avoid leaking NQPMu from archetypes.
23:30
masak Juerd: perhaps more mind-blowingly: the complex numbers are not the only way to extend the reals. so while, in some sense, the reals are "inside" (embeddable in) the complex numbers, the complex numbers are not unambiguously "outside" the reals. they're just one of many possible extensions. the most family-friendly, no doubt, but still -- one of many. 23:34
masak learns on Wikipedia that the split-complex numbers also go by the name of "perplex numbers", and enjoys this fact greatly 23:36
23:36 adu left, lnr left, BenGoldberg joined
grondilu is not sure who ever said the complex numbers where the unique extension of real numbers. 23:37
dalek Heuristic branch merge: pushed 35 commits to rakudo/native-ref by jnthn
jnthn (Just a rebase on top of latest nom)
masak grondilu: not necessarily anyone. but the presentation of them in that way is fairly strong. 23:38
dalek kudo/newio: a2a1afb | TimToady++ | src/Perl6/ (2 files):
lose the battle, win the war

We'll just support smart quotes because auto-"correcting" clients aren't going away.
23:39
kudo/newio: 5ec0c6e | FROGGS++ | / (6 files):
add typed Pointer type as replacement for OpaquePointer

A Pointer can still be used as is, and will Pointer[void] (void*). When a Pointer points to something more useful(i.e. Pointer[int32]), one can call method 'deref' on the pointer to reveal the the thing it is pointing to. Besides that a Pointer can still be instantiatet using a memory address and numifies back to that mem address. We export the OpaquePointer type as an alias to Pointer, to allow adoption before we OpaquePointer gets deprecated.
kudo/newio: 0ec17f3 | jnthn++ | src/Perl6/Metamodel/Archetypes.nqp:
Avoid leaking NQPMu from archetypes.
kudo/newio: 96a69ac | lizmat++ | / (9 files):
Merge branch 'nom' into newio
23:45 grettir left 23:46 vendethiel left
grondilu oh, a significant move there^ 23:48
lizmat well, on nom :-)
I was just merging :-)
grondilu hopefully those decisions will be documented on S21 soon 23:49
23:52 vendethiel joined
dalek kudo/newio: e5bbe42 | lizmat++ | t/04-nativecall/01-argless.c:
Fix compiler warnings on OS X / JVM backend
23:52
grondilu would it be insane to use prefix:<*> for deref? 23:53
23:53 pippo left
lizmat
.oO( Whatever :-)
23:53
grondilu m: say so defined &prefix:<*>
camelia rakudo-moar 0ec17f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ETVNiHXOH2␤Undeclared routine:␤ &prefix:<*> used at line 1. Did you mean '&prefix:<~>', '&prefix:<?>', '&prefix:<!>', '&prefix:<+>', '&prefix:<->'?␤␤»
grondilu ^there is room to use &prefix:<*> 23:54
and that would match the C syntax.
lizmat looks like
now if that's a good thing, I don't know
but I'll sleep on it 23:55
good night, #perl6!
grondilu plus it can be defined only on Pointer ( sub prefix:<*>(Pointer $) {...} )
23:56 adu joined
grondilu (or rather as a multi, to give liberty for other usage) 23:56
grondilu thinks everything that is relative to native C should use the C syntax as much as possible. He already stated that opinion when advocating for sizeof instead of nativesizeof 23:57
dalek kudo/nom: 4659f32 | lizmat++ | t/04-nativecall/01-argless.c:
Fix compiler warnings on OS X / JVM backend
23:58
lizmat no need to wait for newio merge
now really sleep& :-)