»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
00:00 mr-foobar joined, mr-foobar left 00:02 Stamm joined, cibs left 00:03 Stamm left 00:04 cibs joined
AlexDaniel timotimo: doesn't crash with --optimize=0 \o/ 00:05
timotimo interesting 00:06
is that the rakudo optimizer or a flag for moarvm?
AlexDaniel does crash with --optimize=0
00:06 mr-foobar joined
AlexDaniel just for the perl6 executable 00:06
timotimo oh, ok. just less likely to crash?
OK
AlexDaniel oops, does crash with =1***
timotimo ah
00:07 mr-foobar left
timotimo interesting. i believe the --optimize will also influence precompilation btw 00:07
AlexDaniel ok, take my words back… does crash anyway… 00:08
just a little bit later
much later even, but still
timotimo interesting. 00:09
well, you have a for loop there
maybe the for-to-while optimization kicks in
if the resulting block is inlined, you'll end up with a lot less churn on the frame stack, maybe also less GC ni total
00:09 mcmillhj joined, buggable joined, ChanServ sets mode: +v buggable
AlexDaniel timotimo: so, even though I don't have everything compiled with debugging symbols, valgrind shows nothing… which kinda makes sense? It's not a segfault after all? 00:10
timotimo have you ever built a moarvm with a smaller nursery?
AlexDaniel no
timotimo oh, moar has a few flags that can help finding this kind of error
well, really #define stuff in the code
00:11 mr-foobar joined 00:12 mr-foobar left
IOninja hum. Based on my Travis results, HTTP::UserAgent is still busted :/ travis-ci.org/zoffixznet/perl6-WWW#L1174 00:12
AlexDaniel timotimo: RT-ed RT #131003
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=131003
timotimo it's MVM_GC_DEBUG
IOninja Ugh, never mind, I see why.
timotimo i think you can turn it up to 2 00:13
find it in src/gc/debug.h
00:14 mr-foobar joined 00:15 mr-foobar left 00:16 mcmillhj left 00:17 Cabanossi left, adu joined 00:18 mr-foobar joined, mr-foobar left 00:19 Sound left, Cabanossi joined
IOninja .tell RabidGravy sent a PR to fix HTTP::UA: github.com/sergot/http-useragent/pull/166 00:21
yoleaux IOninja: I'll pass your message to RabidGravy.
00:23 Actualeyes left 00:25 mr-foobar joined 00:26 mr-foobar left, mr-foobar joined 00:27 mr-foobar left, Actualeyes joined, mcmillhj joined 00:28 mr-foobar joined 00:29 mr-foobar left 00:30 mr-foobar joined 00:31 mr-foobar left, mr-foobar joined 00:32 mr-foobar left 00:34 mr-foobar joined, mr-foobar left
MasterDuke AlexDaniel: might want to point that RT out to dogbert17, he's good at getting info with valgrind, gdb, etc. 00:34
AlexDaniel .tell dogbert17 irclog.perlgeek.de/perl6/2017-03-16#i_14272417 00:35
yoleaux AlexDaniel: I'll pass your message to dogbert17.
AlexDaniel timotimo: well, I don't think I'll be able to work on it today. That said, I'm already so happy that I found a way to reproduce this with some short piece of code 00:36
if I recall correctly, I have several scrapers that suffer from exactly the same problem
but somehow I never managed to get a bug report out of it
00:37 mcmillhj left
timotimo that's good, yes 00:38
00:39 cdg left 00:40 mr-foobar joined, mr-foobar left 00:49 lizmat left 00:52 cdg joined 01:02 Cabanossi left 01:03 salva joined 01:04 Cabanossi joined 01:19 obfusk joined 01:32 Cabanossi left 01:34 Cabanossi joined 01:35 aborazmeh joined, aborazmeh left, aborazmeh joined, Rawriful left 01:37 cdg left 01:39 cyphase joined 01:43 ufobat left 01:55 cibs left 01:57 cibs joined, colomon left 02:18 Cabanossi left, Cabanossi joined 02:25 adu left 02:44 cibs left, skids joined, skids left 02:45 skids joined 02:46 cibs joined 02:47 ilbot3 joined, ChanServ sets mode: +v ilbot3 02:56 spebern left 02:57 aborazmeh left, mcmillhj joined 03:01 Cabanossi left 03:02 mcmillhj left, eroux joined 03:04 Cabanossi joined 03:06 xtreak joined
AlexDaniel timotimo: hm, does this help? gist.github.com/AlexDaniel/794d336...e36f2368a5 03:09
SmokeMachine Hi! One of the only differences of the triangle reduction is this: github.com/rakudo/rakudo/blob/nom/....nqp#L7175 I'd like to know where can I see the implementation of QAST::Op call to understand what that push Int, Int, 1 is really doing... where can I find it? 03:12
03:15 zacts joined 03:19 kurahaupo joined
SmokeMachine m: say [\+] <1 2 3>, <4 5 6>, <7 8 9> 03:20
camelia ((1 2 3) 6 9)
SmokeMachine m: say [\~] <1 2 3>, <4 5 6>, <7 8 9> 03:22
camelia ((1 2 3) 1 2 34 5 6 1 2 34 5 67 8 9)
AlexDaniel SmokeMachine: grep METAOP_REDUCE 03:26
SmokeMachine: for example: github.com/rakudo/rakudo/blob/nom/...ps.pm#L119 03:27
SmokeMachine: if you scroll down it goes on and on :)
03:30 mcmillhj joined 03:32 Cabanossi left 03:34 Cabanossi joined, mcmillhj left 03:37 noganex joined 03:40 kurahaupo left 03:54 kurahaupo joined 04:01 wamba joined 04:02 cibs left 04:04 cibs joined 04:05 mcmillhj joined 04:13 kurahaupo left 04:17 vendethiel joined, vendethiel- left 04:24 labster joined 04:32 mcmillhj left, Cabanossi left, mcmillhj joined 04:34 Cabanossi joined 04:44 kurahaupo joined 04:48 khw left 04:53 jnap_ left, jnap_ joined 04:55 vendethiel left 04:58 cognominal joined, kurahaupo left 04:59 vendethiel joined, mcmillhj left 05:00 Cabanossi left 05:02 Cabanossi joined 05:03 skids left 05:12 mcmillhj joined 05:16 mcmillhj left 05:26 geraud joined 05:28 mcmillhj joined 05:29 AlexDaniel left 05:31 labster left 05:33 mcmillhj left, labster joined 05:37 cpage joined 05:45 Cabanossi left, mcmillhj joined 05:48 Cabanossi joined 05:51 BenGoldberg left, mcmillhj left 05:56 curan joined 06:03 mcmillhj joined 06:07 mcmillhj left 06:08 CIAvash joined 06:19 stmuk_ joined, geraud left 06:21 mcmillhj joined 06:25 wamba left 06:27 mcmillhj left 06:38 mcmillhj joined 06:40 darutoko joined 06:44 mr-foobar joined 06:45 mcmillhj left 06:46 Cabanossi left, RabidGravy joined 06:47 jjido joined 06:48 Cabanossi joined 06:52 domidumont joined 06:57 mcmillhj joined 07:01 jjido left 07:03 mcmillhj left 07:05 mr-foobar left, mr-foobar joined 07:15 wamba joined 07:30 Cabanossi left 07:33 Cabanossi joined 07:34 vendethiel left 07:38 mtsd joined 07:42 lizmat joined 07:50 ufobat joined 07:52 gdonald joined 07:56 parv joined, Sound joined 08:03 mcmillhj joined 08:05 mtsd left 08:09 mcmillhj left 08:24 dct joined 08:30 zakharyas joined 08:31 dct left 08:45 wamba left 08:47 dakkar joined 08:50 rindolf joined 08:52 xtreak left 08:57 mr-foobar left 08:58 mr-foobar joined 09:02 CIAvash left 09:07 mxco86 joined 09:10 mr-foobar left 09:11 mr-foobar joined 09:17 cibs left 09:18 wamba joined 09:19 cibs joined 09:31 Cabanossi left 09:33 Cabanossi joined 10:02 xtreak joined
IOninja SmokeMachine: past = Parrot AST; it's an old name for QAST. And as I've mentioned, you can dump it with note($metapast.DUMP) 10:07
10:07 astj joined 10:13 mr-foobar left, mr-foobar joined
IOninja .ask moritz would you be able to update your github.com/moritz/perl6-all-modules repo? I' 10:20
yoleaux IOninja: I'll pass your message to moritz.
IOninja -_-
.ask moritz I'd like you hunt down all breakage due to lexical require before the release, so having current code would be handy
yoleaux IOninja: I'll pass your message to moritz.
10:21 n1ce_ joined 10:24 n1ce left
jnthn Like you, like you to, or like to? :) 10:25
10:26 mr-foobar left, mr-foobar joined 10:27 labster left
IOninja man can't type today 10:29
.tell moritz I meant I'd like *TO* hunt down. Not you hunt down :P I just need an up to date all-modules repo :)
yoleaux IOninja: I'll pass your message to moritz.
Ven`
.oO( Why would you hunt moritz down? )
10:30
10:35 astj left 10:36 astj joined 10:39 mr-foobar left, mr-foobar joined
moritz IOninja: doing it now 10:40
yoleaux 10:20Z <IOninja> moritz: would you be able to update your github.com/moritz/perl6-all-modules repo? I'
10:20Z <IOninja> moritz: I'd like you hunt down all breakage due to lexical require before the release, so having current code would be handy
10:29Z <IOninja> moritz: I meant I'd like *TO* hunt down. Not you hunt down :P I just need an up to date all-modules repo :)
xtreak Is there a way in Perl6 where I can define custom operators in a file and import them in another file ? 10:41
moritz xtreak: sure, in a module you can write multi sub infix:<foo> is export ...; and then use The::Module; 10:43
xtreak moritz: Thanks. Never knew about is export :) 10:44
10:45 geekosaur joined, Cabanossi left 10:46 xtreak left 10:48 Cabanossi joined
IOninja moritz++ thanks. 10:51
Gonna start hunting failurage after work
11:09 gregf_ joined 11:19 mcmillhj joined 11:22 andrzejku left 11:23 mcmillhj left
tbrowder hi, #perl6 11:26
DrForr o/ 11:28
11:28 lukaramu joined 11:30 geekosaur left 11:31 geekosaur joined
tbrowder just found a prob in my code when trying a for loop with a range from large to small, thought it would work like. this automagically: 5..2 but it silently skips the loop entirely. i finally found one sentence about the ... operator for complex uses, such as the one i want, but no examples. i'm now going to try 5...2 to see if it works. but shouldn't there 11:31
be a warning from rajudo about 5..2?
pardon early morning typos... 11:32
timotimo ranges are just ranges
they can't have a direction
the docs ought to point that out clearly 11:33
11:33 geekosaur left
timotimo Ranges always go from small to larger elements; if the start point is bigger than the end point, the range is considered empty. 11:33
tbrowder yes, it points to ... operator but no further words
timotimo that sentence is there, but it's like the 5th paragraph of text
huh, it does? i don't see it
tbrowder search for ... in the docs 11:34
11:35 geekosaur joined
tbrowder i found no examples of how to use ... in a for loop 11:35
the docs say ... can bu used in complex situation such as indexing large to small but no more info 11:36
DrForr How are you wanting to iterate? 11:37
timotimo there doesn't seem to be any ... in the docs 11:38
oh, in the reference 11:39
there's an example of going from big to small vs small to big right there in the second code block 11:40
tbrowder hm
11:41 bjz joined
tbrowder timotimo: i don't see that in docs on for loop, where are you looking? 11:42
timotimo i'm in the docs for ... 11:43
tbrowder note that my loop works now with 5...2
timotimo it'd probably be good if the section on "for" in the control flow page showed off ... as well as .. 11:44
DrForr Well, IIRC one's the range operator, the other's the flip-floperator :) 11:45
timotimo wrong language, mister :) 11:46
SmokeMachine What's the rule to get the name included into the CREDITS?
DrForr just gives up.
timotimo SmokeMachine: either you have to put it in, or someone has to put it in for you 11:47
DrForr I think he's taling about the criteria for inclusion? 11:48
El_Che hello
DrForr (not about the process...)
SmokeMachine DrForr: that's it!
timotimo :P 11:49
the criteria are "you have a reason to be in there"
tbrowder timotimo: i finally found in the big operator list, best found by searching for "sequence operator", i just kept following links for "..." and never got there. i'll look at adding some examples to docs after i get a better feel for using it. thanks!
DrForr I just had to ask :) But I'd been involved hip-deep for several years before I restarted. 11:50
SmokeMachine timotimo: but what would be a reason?
timotimo for example you have a few commits in rakudo 11:51
DrForr Patch? Doc addition? core optimization?
timotimo *shrug*
DrForr Just throwing out ideas here, not trying to limit anything.
timotimo i'd say "anything in the rakudo repo"? maybe?
samcv yeah it's specific to that repo i believe
tbrowder back to question on "for 5..2" shouldn't that throw some kind of msg like "useless use of for in a no-op situation?" 11:53
if it's not in "traps" i think it needs to be 11:54
SmokeMachine timotimo: I mean: I'm here: github.com/rakudo/rakudo/graphs/contributors should I be on CREDITS?
11:57 Stamm joined, kyan joined
timotimo i forgot what your gh username was; is it FCO? 11:57
(the credits file helps answer that exact question) 11:58
SmokeMachine Yes, FCO
11:58 araraloren joined
timotimo if you'd like, you can have yourself added 11:59
it's really no big deal, i believe?
SmokeMachine timotimo: thanks... I think I will...
Stamm hello 12:02
IOninja Hi.
timotimo greetings
12:03 wamba left
Stamm is it possible to install perl6 from source from "Bash on Ubuntu on Windows 10"? 12:03
i tried but i can't
DrForr Can you put your install logs somewhere that we can see?
IOninja I did install it from source on Windows 10 without bash-on-ubuntu...
Stamm i typed "perl Configure.pl --backend=moar --gen-moar --prefix /opt/rakudo-star-2017.01" 12:04
araraloren Stamm, yeah
Stamm after a long time compiling, i got:
Creating tools/build/install-jvm-runner.pl ... /opt/rakudo-star-2017.01/bin/moar: error while loading shared libraries: libmoar.so: cannot enable executable stack as shared object requires: Invalid argument ===SORRY!=== No suitable MoarVM (moar executable) found using the --prefix (You can get a MoarVM built automatically with --gen-moar.)
araraloren I compiled and installed it successed 12:05
timotimo someone once made it work
Stamm i did specify --gen-moar...
12:05 rindolf left
araraloren You need `sudo execstack -c /usr/lib/libmoar.so` 12:05
timotimo yeah, --gen-moar expects that compiling the moarvm succeeds
IOninja huggable: win10 bash :is: sudo execstack -c /usr/lib/libmoar.so
huggable IOninja, Added win10 bash as sudo execstack -c /usr/lib/libmoar.so
Stamm ok 12:06
Geth doc: nxadm++ created pull request #1250:
Put name instead of uid
Stamm in my case, i have to use "/opt/rakudo-star-2017.01/lib/libmoar.so"
Geth doc: ddf83d36c8 | (Claudio Ramirez)++ | CREDITS
Put name instead of uid
doc: 3b301cf8b6 | nxadm++ | CREDITS
Merge pull request #1250 from nxadm/master

Put name instead of uid
araraloren Compile and Separate install moar first
Stamm how do i compile moar first? 12:07
timotimo --gen-moar will already have cloned it for you, and it'll also have run Configure.pl, so all you need to do is cd into the right folder and "make install"
Stamm ok, thank you all 12:08
i'll try that
El_Che Stamm: does win10+bash use regular deb packages or do they need to be specifically built?
Stamm :-)
araraloren Enter nqp/MoarVM/
Stamm @El_Che: i use regular apt install 12:09
IOninja huggable: deb
huggable IOninja, CentOS and Debian Rakudo packages: github.com/nxadm/rakudo-pkg/releases
IOninja Stamm: you could try those ^
El_Che Stamm: would my regular ubuntu packages work? -> github.com/nxadm/rakudo-pkg/releas...ag/2017.02 12:10
Stamm by default, the package was from *2015*
i'll try those
El_Che I make those, so ping if you have a problem 12:11
IOninja It's not that bad, on my box the default is like from... 2011 :P
Stamm i tried nonetheless yesterday, and i had the message as today (from source)
El_Che I should set up a VM with Win10+Ubuntu userland
Stamm the Configure.pl step has terminated successfully now 12:12
i'm doing the "make"
:-)
only the execstack was missing
what's the purpose of execstack? 12:13
timotimo i believe we need it for dyncall? 12:15
geekosaur requiring executable stack usually means something is using a trampoline; most commonly that is (some) signal handlers, or cross-language calls 12:16
12:16 aborazmeh joined, aborazmeh left, aborazmeh joined
Stamm ok 12:18
i'm at the "make install" step
i think it's rather long
IOninja Rakudo's make install? 12:19
It takes a few minutes, yeah 12:20
ugexe: looks like zef's `smoke` and `test` are busted. Don't detect failures: gist.github.com/zoffixznet/df386aa...9b03730004 12:22
12:22 parv left
IOninja ugexe: and using prove does: gist.github.com/zoffixznet/4284b80...bab5ab6221 12:22
Wonder if it's TAP::Harness issue :/ tis a 2017.02 rakudo 12:23
12:24 wamba joined, sena_kun joined
IOninja anyone know the invocation to make zef use prove for testing and not TAP::Harness? 12:24
Stamm it worked! 12:25
thank you all :-)
IOninja \o/
El_Che Stamm: happy hacking!
IOninja Huh, smoke testing actually installs all the modules :/
I guess I can improvise: script -> loop -> zef look module -> prove6 -> exit 12:26
12:26 Stamm left
El_Che A happy customer :) 12:27
IOninja ah, dam, that won't handle dependencies -_- 12:29
12:33 kurahaupo__ joined
timotimo .u ⠙ 12:36
yoleaux U+2819 BRAILLE PATTERN DOTS-145 [So] (⠙)
12:36 mr-foobar left 12:37 mr-foobar joined 12:41 bjz left 12:42 mr-foobar left
IOninja Seems like it's working. `zef --config-path=~/.zef/config.json smoke` with TAP::Harness test plugin tossed from the config 12:44
Has anyone ran `zef smoke` before? Does it report all failures at the end? 12:47
IOninja sets scroll buffer to "Unlimited" just in case
Slow as hell tho... Wonder if it can be made concurrent :/ 12:48
Woodi hallo today :)
IOninja \o\ 12:49
12:50 mcmillhj joined
timotimo fantastic: now when my phone rings my desktop music player reacts 12:51
as in: i take the call, and when i hang up, it stops my music 12:52
i guess because after a phone call i'll have to spend a few minutes in silence to think about what i'd done?
12:52 araraloren left
El_Che skype-for-business phone? I fixed that by branching it to a windows laptop accesed through rdesktop and formatting the min laptop with linux :) 12:53
12:53 araraloren joined
timotimo no, android phone 12:53
Woodi jnthn: reading about Rlang make you want "vectorising" notation... often it is just trading allocated space vs looping but still usefull. I think it is something (being memory inefficient) to have in mind in hyper/race context...
12:54 eroux left, mr-foobar joined
Woodi err, to be clear: I advotate vasting mem in that case... :) 12:54
IOninja Looks like a couple of dists fail with "Cannot resolve caller splice(Array: Int, Array); none of these signatures match" I wonder if they realize the second Array was being interpreted as an Int in the past... 12:55
Lots of failures, even on 2017.02 rakudo :( 12:56
12:57 eroux joined
IOninja This is my control BEFORE finding all the new breakage due to lexical require /o\ 12:57
[Coke] if it's already broken, cross it off the list for checking? 12:58
IOninja That's the plan.
[Coke] +1 12:59
12:59 mr-foobar left
[Coke] is very happy that doc's make xtest has been clean for a while now 12:59
IOninja (it wasn't clean last time I tried it...)
Or at least... there was lots of red in the example compilation tests 13:00
13:02 Sound left
[Coke] test passes. 13:03
the output is because NQP doesn't respect rakudo's overrides on stdout/err
sink warnings, duplicate var names, octal misfires... 13:04
13:05 user9 joined, user9 left
IOninja heh, looks like I put the final nail in the coffin of modules.perl6.org/dist/DateTime::Math Tests now fail due to addition of core math ops and the README says comparison ops were added a while back and were removed from that module. 13:07
m: say ateTime.now + 42 13:08
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
ateTime used at line 1
IOninja m: say DateTime.now + 42
camelia Cannot resolve caller Numeric(DateTime: ); none of these signatures match:
(Mu:U \v: *%_)
in block <unit> at <tmp> line 1
[Coke] IOninja: gist.github.com/coke/33bb055169e65...784d93cb00
IOninja Well, that is still that module can be used for.
[Coke] those are the 4 particular types of warning that I see in the output (just repeated over hundreds of cases)
13:18 aborazmeh left
IOninja hm. zef smoke appears to give false negatives simply because some modules get installed as prereqs during smokage. 13:21
and later attempts to install them fail because they already are installed.
13:25 wamba left
IOninja ah, smoke is just a tiny wrapper around "get a list of modules; `zef install` them" 13:28
.tell ugexe note that I ended up writing my own script to smoke the dists, so no rush on all the smoke Issues I opened on zef :} 13:31
yoleaux IOninja: I'll pass your message to ugexe.
IOninja gonna cook something up that uses all teh coars 13:32
13:32 kyan left 13:33 AlexDaniel joined, mr-foobar joined
timotimo i found out using dbus-monitor and busctl that this music player claims it "CanPause", but when you send "Pause" it just does nothing 13:34
13:34 lukaramu_ joined 13:38 lukaramu left
timotimo it was very easy to put the Pause functionality in, yay 13:39
IOninja m: my $x = 'foobarfoomeowfoo'; for $x.match(/foo/) { .say } 13:57
camelia ( no output )
IOninja I kinda expected that ^ to loop at least once :/
Ahhh. Never mind. 13:58
m: my $x = 'foobarfoomeowfoo'; dd $x.match(/foo/).List
camelia ()
IOninja m: my $x = 'foobarfoomeowfoo'; dd $x.match(/(foo)/).List
camelia (Match.new(ast => Any, list => (), hash => Map.new(()), to => 3, orig => "foobarfoomeowfoo", from => 0),)
jnthn m: my $x = 'foobarfoomeowfoo'; for $x.match(/foo/, :g) { .say } 13:59
camelia 「foo」
「foo」
「foo」
IOninja doh
jnthn++
14:02 mr-foobar left
Ven` I'm not sure why it doesn't match on the first one? 14:03
(I mean, without :g)
IOninja It does
But in there ain't no positional captures, so in list form it's an empty list 14:04
m: my $x = 'foobarfoomeowfoo'; for $$x.match(/foo/) { .say }
14:04 gdonald left
camelia ( no output ) 14:04
IOninja heh
14:05 gdonald joined
Ven` m: say 'foo'.match(/foo/).List 14:05
camelia ()
IOninja m: my $x = 'foobarfoomeowfoo'; for $x.match(/foo/), { .say }
camelia 5===SORRY!5===
Expression needs parens to avoid gobbling block
at <tmp>:1
------> 3omeowfoo'; for $x.match(/foo/), { .say }7⏏5<EOL>
Missing block (apparently claimed by expression)
at <tmp>:1
------> 3omeowfoo'; for $x.match(/foo/)…
Ven` m: say 'foo'.match(/foo/).List[0].perl
camelia Nil
Ven` m: say 'foo'.match(/foo/)[0].perl
IOninja m: my $x = 'foobarfoomeowfoo'; for ($x.match(/foo/),) { .say }
camelia Nil
「foo」
IOninja m: my $x = 'foobarfoomeowfoo'; for ($x.match(/foo/),) { .say }
camelia 「foo」
Ven` ô.o
IOninja there we go. And in this case it loops over a list with enitre match object 14:06
Ven` okay, I understand now. It returns a match. The for coerces the match to a list, which is empty because no capture.
timotimo yah, single-arg and all that 14:07
Ulti what are the chances of compiling MoarVM to WebAssembly? webassembly.org/getting-started/dev...ers-guide/
Ven` Util: need to compile all deps first
Ulti guess its basically the same answer as if trying to do it with Emscripten
Ven` timotimo: well, not really single-arg here. Don't `for` on stuff that aren't lists, or they're gonna get coerced to Lists 14:08
14:08 AlexDaniel left
timotimo if you can somehow get libuv to compile with emscripten, we're a very big step towards getting it to work 14:08
for some reason (gosh, i can't imagine why) nobody ever tried to emscripten libuv
Ulti heh
IOninja what's the reason? 14:09
timotimo libuv is what powers nodejs
so "why would you want to emscripten libuv? that's already what javascript is!!"
IOninja Ah
Ulti well I've seen all of Linux running in browser then running dosbox games via asm.js
I assume that took someone a lot of headaches to do 14:10
IOninja I've seen Windows98 running in browser...
:o
Ulti :hot: hopefully 98 SE
I've seen Windows RG running in browser
timotimo i hope you had a valid windows 98 license
ugexe IOninja: yeah smoke is still super bad, and its not easy to integrate it into zefs workflow without being a giant hack. Its slow because it needs to spawn a new process for each distribution it tries to install because NativeCall modules somehow could crash in such a way that it would ruin the test results for all modules installed after it. 14:13
yoleaux 13:31Z <IOninja> ugexe: note that I ended up writing my own script to smoke the dists, so no rush on all the smoke Issues I opened on zef :}
ugexe As for modules being installed - so zef (and panda) did not give a summary report after a smoke. It just submits a test report for each item it tries to install. Long ago zef did not install the modules it smoke tested (they were all run with --dry), but this resulted in smoke testing taking way too long. 14:14
Mind you it used to take too long (as in they would be canceled before complete) to build rakudo and run zef's appveyor tests when this was all worked on around 2016.01 14:15
so these speed concerns may not be so anymore
Ultimately I think I need some sort of CompUnit::Repository::Smoker 14:16
14:17 itaipu joined
ugexe IOninja: you mentioned earlier that `zef test` gave you a false positive on something earlier though? 14:17
timotimo ugexe: maybe it'll be enough to fork rather than to exec? :P 14:18
IOninja ugexe: yeah, and it worked fine after I disabled the TAP::Harness plugin. This was on 2017.02 Rakudo, so I dunno, does that one still have a bug in TAP::Harness?
ugexe (i'll note it in the issue later, but you can disable/enable anything in the config by doing `--<short-name>` or `--/<short-name>`, where short-name is an optional field you'll see for a bunch of items in the config
IOninja If not, then the second case would be zef not checking for exit code of tests (so crashed tests aren't detected) 14:19
Cool. Thanks.
ugexe Did you catch if it was a specific module, or did you notice it happened for more than one?
IOninja ugexe: zef install Testing; 14:20
14:20 as_ joined
IOninja That module. And it does get caught by prove or if I tell zef not to use Test::Harness 14:20
as_ rakudo: printf "%G %G %G %G", 0.000001, 1e-6, 100000000, 1e8
camelia 1e-06 1e-06 1E+08 1E+08
14:20 spebern joined
IOninja One of the tests crashes with broken .splice() call. 14:20
as_: heh 14:21
ugexe ah i see. (and yeah it worked with --/tap-harness)
IOninja as_: there's a whole bunch of printf tickets on perl6.fail please report that one unless it's already reported. 14:22
huggable: rakudobug 14:24
huggable IOninja, Report bugs by emailing to [email@hidden.address]
ugexe I'm not sure you will be able to speed things up much with concurrency yet... the file locks for CUR would keep things waiting a lot I think
But I was talking to nine the other day about making the locks more fine grained
IOninja ugexe: I was kinda thinking of using different --install-to for each module. Would that help?
14:25 cdg joined
ugexe IOninja: I *think*, although i'm not sure if you'll still get stuck on locks from ~/.perl6 14:25
14:25 skids joined 14:26 araraloren left 14:27 rindolf joined, lizmat left, araraloren joined
as_ good :) 14:28
14:29 as_ left
IOninja I got this text file: fpaste.scsys.co.uk/557525 14:29
$ perl6 -e '"```{$_.[0]}```".say for "foo211676108.txt".IO.slurp.match(:g, /^^ "t/"( \d+ \N+? ".t") \s* '.'+ \s* "Failed"/)'
```01-sanity/01-literals.t```
Why does that match 01-sanity/01-literals.t in the capture and not actually the line with the Failed test, which is t/04-nativecall/08-callbacks.t ........... Failed 5/8 subtests
Ven` \s* doesn't match newlines, right? 14:31
IOninja m:g/^^ (\N+) "Failed"/ does match the callbacks line (but also other stuff). I don't get how that regex matches multi lines
14:31 wamba joined
IOninja Ven`: it does 14:31
14:32 m44st4 joined
Ven` m: say "\n".match(:g, /\s/); 14:32
camelia (「
」)
IOninja this still matches the wrong line: m:g/^^ "t/"( \d+ \N+? ".t") <[\s] - [\n]> '.'+ <[\s] - [\n]> "Failed"/ 14:33
OHMAHGAWD 14:34
dam shell quoting and single quotes in my regex made that '.' a regex metachar
Ven` ooh. I was going to ask about the whole match...
.oO( Bah, shell really doesn't understand sublangs! )
14:35
14:38 mcsnolte joined
ugexe `zef look Testing` followed by `prove6 t/` shows test failures but `echo $?` is 0 (so it is indeed TAP::Harness) 14:39
IOninja Aha. Cool. I'll take a look at that before the release. 14:40
ugexe: wait, what's `prove6`?
ugexe zef install TAP::Harness, then using the prove6 provided by it
IOninja Ohhh, that module is outdated. 14:41
With several bugs that are fixed in rakudo's TAP::Harness
ugexe ah
IOninja (though, I don't think any of them have been reported to that module :/)
14:43 mr-foobar joined 14:46 Cabanossi left 14:47 buggable left, buggable joined, ChanServ sets mode: +v buggable, eroux left, Cabanossi joined 14:48 itaipu left 14:49 itaipu joined, curan left 14:50 kurahaupo__ left, eroux joined 14:53 bjz joined 14:57 kurahaupo__ joined 15:03 cdg left 15:10 cdg joined 15:20 raschipi joined 15:26 khw joined 15:30 mr-foobar left
m44st4 hello 15:34
how can i convert a hex string "68656c6c6f" in it representation is ASCII "hello" ?
IOninja m: "68656c6c6f".comb(2)».parse-base(16)».chr.join.say 15:35
camelia hello
m44st4 thanks! 15:36
timotimo mst is quite numerous today
.o( overnumerousness? )
IOninja .comb(2) (split in bits of 2 chars); ».parse-base(16) (convert each 2-char bit from hex to number); ».chr (convert each number to char); .join (join the bits together) 15:37
:)
m44st4 This is clear, thank you! :)
15:44 st_elmo joined 15:46 mr-foobar joined 15:58 bjz left 16:10 zakharyas left 16:11 araraloren left 16:14 mcmillhj left 16:17 eroux left 16:22 eroux joined
m44st4 one last question, i don't really understand the power of Blob, how can i use the "pack" fonction from perl5 in perl6 ? 16:25
timotimo "use experimental :pack" :\ 16:26
m44st4 it's the only one solution? 16:28
ugexe github.com/lizmat/PackUnpack ?
16:29 mcmillhj joined
m44st4 I will try 16:29
thanks
16:30 domidumont left 16:34 mcmillhj left, wamba left
IOninja m: class Foo { has Str:D $!id; submethod TWEAK () {$!id = self.WHICH} }.new 16:37
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable definition of type Str:D requires an initializer
at <tmp>:1
------> 3class Foo { has Str:D $!id7⏏5; submethod TWEAK () {$!id = self.WHICH}
expecting any of:
constraint
IOninja Really wish the :D stuff was a bit smarter :/ 16:38
80% of the time I have to remove it because it's on an attribute or optional named param
timotimo :\ 16:40
IOninja I always hated the term "smoke"... Smoking is bad. I'm gonna come up with a new term. 16:41
timotimo what prevents you from putting self.WHICH into the initializer for $!id there?
IOninja timotimo: ah, right. I thought the self there would be the class not the instance. 16:42
timotimo nah, we thunk it for you 16:43
IOninja cool
16:45 mcmillhj joined 16:51 mcmillhj left
lucs IOninja: You don't like smoked meat? :) 16:58
IOninja No opinion of it. 17:00
geekosaur smoke testing, as in "when you power it up, does it start spewing smoke?"
so yes, smoke *is* bad here :p 17:01
raschipi Yes, it's not good when the magic smoke leaks.
geekosaur (build your own amateur radio gear --- or your own computer gear --- and you get to know that one literally. yes, I've done both.)
17:01 Cabanossi left 17:02 mcmillhj joined
raschipi Any electronics, really. 17:02
17:03 Cabanossi joined
timotimo some electronics make it far easier to experience the magic of magic smoke :) 17:03
geekosaur power capacitors, really 17:04
raschipi And voltage regulators. 17:05
17:05 itaipu left
timotimo raindrops on roses, smoke from capacitors, bright copper kettles, sparks from voltage regulators ~ 17:05
17:07 mcmillhj left 17:09 mcmillhj joined, lostinfog joined
timotimo where is this doc/perlintro.pdf that was just mentioned on the mailing list? 17:12
BBIAB
IOninja R*
timotimo ah
apparently it suggests using rakudobrew; is that from perl6intro.com, then? 17:13
IOninja Oh yeah, it was updated recently
likely after the 2017.01 R* release
17:14 mcmillhj left
nine [Coke]: regarding :from<perl5>. That might even warrant an extension of the CompUnit::Repository interface. Right now all you get is a "module not found" message, but no indication that there's not even a repo that would support your :from. 17:14
17:14 Sound joined
timotimo OK 17:14
17:15 mcmillhj joined, domidumont joined
IOninja Yeah, just checked, R* 2017.01 packs the version with rakudobrew instructions, and on the live site that section is gone: perl6intro.com/#_installing_perl_6 17:16
timotimo fantastic 17:19
if you allow me, i'll respond to that mailing list thread with a note to that effect
17:20 domidumont left, domidumont joined
IOninja Go ahead. I don't think I'm subbed to that mailing list at all :) 17:21
moritz IOninja: fwiw perl6-all-modules has been updated 17:23
IOninja moritz++ thanks. I'll make use of it in 6 hours 17:24
didn't realize perl.perl6.users mailing list was this busy... 17:25
\o/ users \o/ 17:26
17:27 Actualeyes left, zakharyas joined
SmokeMachine Hi! im fix this bug: #130610 with this change: github.com/FCO/rakudo/commit/10f5f...3e2a7420b4 and this test: github.com/FCO/roast/commit/d60872...ffe3fef022 is that ok? should I PR? 17:29
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130610
17:30 domidumont left, Cabanossi left, domidumont joined 17:31 lizmat joined
IOninja SmokeMachine: what does `.say for [\,] <a b>, <c d>, <e f>;` give in your version? 17:32
17:33 Cabanossi joined
SmokeMachine IOninja: www.irccloud.com/pastebin/7jp3JMxc/ 17:35
IOninja SmokeMachine: does it pass the spectest?
SmokeMachine yes
In didn't run the stress tests... 17:36
*I
IOninja SmokeMachine: yeah, PR it.
SmokeMachine :)
IOninja SmokeMachine: what's your username (email?) on RT. I can give you ticket-managing privs 17:37
SmokeMachine IOninja: FCO
IOninja SmokeMachine: on RT? I see all other users have emails not a nick 17:39
SmokeMachine IOninja: sorry! RT! Im not sure that I have user on RT...
IOninja Get one.
SmokeMachine Bitcard account? 17:40
IOninja I think so
17:41 gregf_ left
IOninja m: use Test; is-deeply ([,] 1, 2, 3), (1, 2, 3).Seq 17:41
camelia ok 1 -
IOninja m: use Test; is-deeply ([,] 1, 2, 3), $(1, 2, 3)
camelia ok 1 -
IOninja huh
m: dd WHAT $(1, 2, 3)
camelia List
IOninja m: use Test; is-deeply ([,] 1, 2, 3), (1, 2, 3)
camelia ok 1 -
IOninja oh crap 17:42
m: use Test; is-deeply (), ().Seq
camelia ok 1 -
SmokeMachine IOninja: smokemachine/fernandocorrea@gmail.com
IOninja m: say () eqv ().Seq
camelia False
IOninja is-deeply is broken 17:43
m: dd WHAT ([,] 1, 2, 3)
camelia List
IOninja m: dd WHAT ([\,] 1, 2, 3)
camelia Seq
IOninja Why one's a Seq and another's a List?
SmokeMachine: how did you end up with all the $$$ in your test?
17:44 spebern left
SmokeMachine IOninja: I copied from terminal... 17:44
17:44 eroux left
IOninja SmokeMachine: How did you end up with $$$ in your terminal? 17:45
timotimo holla holla get dolla 17:46
IOninja SmokeMachine: OK. I think you should be able be a bug admin on tickets now.
And remember: all bug fixes need to be accomapied with tests covering them before a ticket can be closed. 17:47
17:48 eroux joined 17:49 dakkar left
timotimo though it is acceptable to only implement some stuff and let someone else write tests 17:49
SmokeMachine :)
IOninja Yeah, just mark as tests needed.
SmokeMachine IOninja: I did is-deeply with nothing and it told me what was different... 17:50
IOninja You can either go to "Basics" (or "Jumbo") and preprend "[TESTNEEDED]" to the title or go to "Basics" (or "Jumbo") and click on "testsneeded" tag to swap the tag
m: use Test; is-deeply (1, (2, 3).Seq).Seq, ""' 17:51
camelia 5===SORRY!5=== Error while compiling <tmp>
Two terms in a row
at <tmp>:1
------> 3 Test; is-deeply (1, (2, 3).Seq).Seq, ""7⏏5'
expecting any of:
infix
infix stopper
postfix
statement end
17:51 cowens joined
IOninja m: use Test; is-deeply (1, (2, 3).Seq).Seq, "" 17:51
camelia not ok 1 -

# Failed test at <tmp> line 1
# expected: ""
# got: $(1, (2, 3).Seq)
17:51 cowens left
IOninja SmokeMachine: it don't seem to include $ inside? 17:51
SmokeMachine: the way I do it is just `dd` (or `.perl`) the thing and use that... 17:52
m: (1, (2, 3).Seq).Seq.perl.say
camelia (1, (2, 3).Seq).Seq
SmokeMachine # expected: ""
# got: $(($("a", "b"),), ($("a", "b"), $("c", "d")), ($("a", "b"), $("c", "d"), $("e", "f")))
IOninja SmokeMachine: oh, my bad. 17:53
17:59 sufrostico joined, cowens joined, sufrosti1o joined
IOninja m: my $s = (1,).Seq; my $s2 = (2,).Seq; say $s.clone eqv $s2.clone; dd [ $s, $s2 ] 18:01
camelia False
[().Seq, ().Seq]
IOninja heh
m: my $s = (1,).Seq; my $s2 = (2,).Seq; my $res = $s.cache; my $res2 = $s2.cache; say $s eqv $s2; dd [ $res, $res2 ] 18:02
camelia This Seq has already been iterated, and its values consumed
(you might solve this by adding .cache on usages of the Seq, or
by assigning the Seq into an array)
in block <unit> at <tmp> line 1
IOninja Can't have a cake and eat it too?
DrForr The cache is a lie. 18:03
IOninja I want to `eqv` a Seq against something as a Seq and not a List, but also to `say` it once afterwards.
m: use Test; is-deeply ((1).Seq,), ((2).Seq,) 18:05
camelia No such method 'Seq' for invocant of type 'Int'
in block <unit> at <tmp> line 1
IOninja m: use Test; is-deeply ((1,).Seq,), ((2,).Seq,)
camelia not ok 1 -

# Failed test at <tmp> line 1
# expected: $(Seq.new-consumed(),)
# got: $(Seq.new-consumed(),)
IOninja Great. Well, tis broken anyway.
18:05 cowens left 18:06 andreoss joined
IOninja Guess, I'll just revert the Seq candidates 18:06
andreoss m: my @a = lazy [1,2,3 ... Inf, fail "hi"]; @a[0..2].say
camelia hi
in block <unit> at <tmp> line 1
andreoss how to die lazily?
or rather fail
IOninja Stop eating and drinking? :P 18:07
unclechu hey guys, can i get value from scoped block, like this: `my $foo = { my $bar = 10; $bar += 5; $bar};` 18:10
IOninja andreoss: unrelated to your question: you're first eagerly evaluating everything into an array and then making it lazy. Toss the square brackets. 18:11
andreoss m: my @a = lazy gather { take $_ for 1..Inf ; take fail "hi"} ; @a[0..2].say
camelia (1 2 3)
unclechu for example if i want to mess with some few variables but don't want them out of local scope
IOninja unclechu: call it. {}()
andreoss unclechu: my $foo = do { ... }
IOninja m: my $foo = { 2+2 }(); say $foo
camelia 4
IOninja Or do
unclechu okay, thanks
SmokeMachine IOninja: how do I close that ticket (assuming that test is ok) 18:12
18:12 xinming_ joined
IOninja SmokeMachine: on RHS "Actions -> resolve" 18:12
raschipi He doesn't want to solve it, he wants to close it. They're very different things 18:13
SmokeMachine whats rhs?
[Coke] rhs = right hand side
andreoss sqaure brackets are always eager?
IOninja raschipi: and back in the real world people use thing thing called "context" to understand what people want to do
raschipi I do tech support and let me tell you, closing a ticket on no way means it was solved.
IOninja andreoss: I think they're mostly-eager 18:14
m: $ = [1..Inf]; say "hi"
camelia hi
IOninja yup
andreoss so how can i have something failing inside a lazy list? 18:15
IOninja andreoss: your gather/take example looked good to me.
andreoss except gather/take
IOninja andreoss: why except? 18:16
SmokeMachine [Coke]: thanks!
andreoss gather/take is wordy
IOninja m: my @a = lazy 1,{with .succ { $_ == 10 ?? fail "meow" !! $_ }} ... 10; .say for @a[^5] 18:17
camelia 1
2
3
4
5
IOninja m: my @a = lazy 1,{with .succ { $_ == 10 ?? fail "meow" !! $_ }} ... 10; .say for @a
camelia 1
2
3
4
5
6
7
8
9
meow
in block at <tmp> line 1
in block <unit> at <tmp> line 1
18:18 eroux left
andreoss but why `lazy [1,2,3,fail]` doesn't work? 18:18
IOninja andreoss: because it's called right away
andreoss it does, [...] in repl focused me 18:19
s/focused/confused/ 18:20
timotimo REPL isn't so fantastic for trying out lazy stuff
IOninja m: my @a = lazy 1,2,4 ... { $_ == 2**4 and fail "meow" }; .say for @a[^3] 18:21
camelia 1
2
4
18:21 gdonald left
IOninja m: my @a = lazy 1,2,4 ... { $_ == 2**4 and fail "meow" }; .say for @a[^10] 18:21
camelia meow
in block <unit> at <tmp> line 1
SmokeMachine IOninja: sorry... but I can't find it...
IOninja weird that dies right away.
18:22 gdonald joined
IOninja has "figure out and document all the ways you can use SEQUENCE" on the TODO list. 18:22
IOninja & # work
18:24 cibs left
andreoss m: my @a = lazy 1, {with .succ { $_ > 10 ?? fail("hi") !! $_ } } ... 10; say @a[^11] 18:25
camelia (1 2 3 4 5 6 7 8 9 10 (Any))
andreoss m: my @a = lazy 1, {with .succ { $_ > 10 ?? fail("hi") !! $_ } } ... 10; say @a[^10]
camelia (1 2 3 4 5 6 7 8 9 10)
andreoss m: my @a = lazy 1, {with .succ { $_ > 10 ?? day("hi") !! $_ } } ... 10; say @a[^11] 18:26
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
day used at line 1. Did you mean 'say'?
andreoss m: my @a = lazy 1, {with .succ { $_ > 10 ?? die("hi") !! $_ } } ... 10; say @a[^11]
camelia (1 2 3 4 5 6 7 8 9 10 (Any))
18:26 cibs joined
andreoss m: my @a = lazy gather { take $_ for 1..10 ; take fail "hi"} ; @a[^10].say 18:28
camelia (1 2 3 4 5 6 7 8 9 10)
andreoss m: my @a = lazy gather { take $_ for 1..10 ; take fail "hi"} ; @a[^11].say
camelia hi
in block <unit> at <tmp> line 1
18:29 andrzejku joined 18:30 gdonald left, gdonald joined, andreoss left 18:31 cdg left 18:32 ufobat left 18:38 agentzh left 18:43 eroux joined
IOninja m: my @a = lazy gather { take $_ for 1..10 ; take Failure.new: "hi"} ; $ = @a[11] 18:54
camelia hi
in block <unit> at <tmp> line 1

Actually thrown at:
in block <unit> at <tmp> line 1
IOninja would've figured taking a failure ain't fatal....
But what I was gonna say, no need for that last take.
m: my @a = lazy gather { take $_ for 1..10 ; fail "hi" } ; .say for @a 18:55
camelia 1
2
3
4
5
6
7
8
9
10
hi
in block <unit> at <tmp> line 1
unclechu what is the difference between anonymous subroutine and lambda-function in perl6? 18:58
timotimo "return" will go through anonymous blocks
unclechu timotimo: this pastebin.com/MZLed1tF looks like it wont 19:02
if i understand you correctly 19:03
19:03 agentzh joined
IOninja unclechu: what's a lambda-function in Perl 6? 19:05
19:05 jjido joined
gfldex pointy block 19:05
IOninja Why pointy specifically?
unclechu IOninja: `-> ($x) {$x * 2}` 19:06
an example
gfldex because he doesn't know that a block is a Block
IOninja he?
gfldex unclechu: you may want to read: docs.perl6.org/type/Block
IOninja m: sub foo { { return $^x² }(42); say "hi" }; say foo
camelia 1764
IOninja unclechu: timotimo++ meant if you try to use `return` inside a block, it'll mean the return for the sub ^ that wraps it (and if there ain't no sub, it'll throw an error) 19:07
unclechu: the easy version is "you can't return from a block" :)
timotimo (you're supposed to be able to leave a block though) 19:08
IOninja unclechu: explicitly that is. The last statement's value will be used as a return value.
timotimo: how?
19:08 girafe joined
timotimo when "leave" is implemented :) 19:08
IOninja Ah.
m: { leave; say "hi" }()
camelia leave not yet implemented. Sorry.
in block <unit> at <tmp> line 1
Geth doc: de8a2d33b0 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Block.pod6
link to Signature
19:10
unclechu thanks for the explanation and for the link 19:12
DrForr pokes at the ecosystem - Perl6::Parser seems not to be found in either panda or zef - I recently replaced META.info with META6.json. (recently as in 2 minutes ago.) 19:13
stmuk_ zef update?
DrForr First thing I did.
IOninja buggable: eco
stmuk_ :)
buggable IOninja, Out of 801 Ecosystem dists, 0 have warnings, 116 have errors, and 685 have no tags in META file. See modules.perl6.org/update.log for details
IOninja holy shit...
uh-oh. Some guy named Zoffix messed stuff up. 19:14
RabidGravy bOOM!
yoleaux 00:21Z <IOninja> RabidGravy: sent a PR to fix HTTP::UA: github.com/sergot/http-useragent/pull/166
RabidGravy Indeed you did
merged and everything ;-)
19:15 sufrosti1o left
DrForr Good thing he's not around, or he might get a nastygram. 19:15
19:15 espadrine joined
IOninja DrForr: actually your issue seems unrelated. I see Perl6::Parser on the site 19:15
buggable: eco Perl6::Parser
buggable IOninja, Perl6::Parser 'Perl 6 parsing': github.com/drforr/perl6-Perl6-Parser
19:15 sufrostico left
DrForr Incidentally am I correct that META6.json is the new META.info? 19:16
IOninja Yes
IOninja tries to run zef install Perl6::Parser
gfldex it may not have put it into the big json file yet, that job runs 3x an hours
DrForr I just created a brand new VM with naught but rakudobrew, zef and panda.
IOninja DrForr: I'll use this opportunity that you use Test::META :) 19:17
DrForr I suppose I could just use regular rakudo to mimic normal users of th ecosystem.
IOninja buggable: eco Test::META
buggable IOninja, Test::META 'Test a distributions META file': github.com/jonathanstowe/Test-META
IOninja DrForr: ecosystem-api.p6c.org/errors.json
gfldex that one ecosystem-api.p6c.org/projects.json
DrForr I dropped META.info for META6.json a few minutes ago, that's probably outdated. 19:18
IOninja DrForr: err, that still lists META.info... Did you update ecosystem/META.list?
19:19 darutoko left
Geth ecosystem: 0c2d4f0eee | (Zoffix Znet)++ | META.list
Fix Perl6::Parser META url
19:19
DrForr Oh, no, hadn't done that. 19:20
Right, fixing.
IOninja DrForr: and when it shows up on ecosystem-api.p6c.org/projects.json , zef should be able to find it again
stmuk_ I think zef uses its own json feed 19:21
IOninja DrForr: AND fix the JSON error: github.com/drforr/perl6-Perl6-Parser/pull/7 19:22
DrForr Grr. re: commas. 19:23
Merged. 19:24
IOninja And I'll fix the UNIQ conflict in the DB in ~4 hours. That affects only failure to update info on already existing dists. 19:25
IOninja &
DrForr I'll try again in an hour or so. 19:26
RabidGravy maybe we could stick a webhook on the modules repository to trigger the build 19:27
IOninja It runs frequently enough as it is (I believe every 15 minutes)
19:27 ufobat joined
stmuk_ github.com/ugexe/Perl6-ecosystems/...its/master 19:28
IOninja this one I mean: ecosystem-api.p6c.org/projects.json
stmuk_ "ecosystems" ;) 19:29
IOninja ? 19:30
stmuk_ well since there is more than one!
19:30 Cabanossi left
IOninja "@zoffix btw do you think the Perl community would be interested in adding support on Repl.it?" 19:31
twitter.com/replit/status/842457448208261122
stmuk_ zef updates every 30 mins
19:33 Cabanossi joined
DrForr Wow, positive feedback. 19:33
timotimo DrForr: i'm excited to see what perl6::tidy will become in the near future :)
DrForr Speaking of positive feedback :) 19:34
I'm actually writing brace styles right now.
timotimo nice 19:35
how many options are there? :D
DrForr 8 taken from Wikipedia, I'm going to write those up before I figure out how to notate the custom options. 19:36
stmuk_ DrForr: it's probably safer to use https style github urls in that META6.json 19:38
DrForr I just stole a file from elsewhere.
But thanks for the comment, fixing. 19:40
Ah, there we go re: zef, but the problem you just mentioned bit me. 19:42
moritz masak: I think you might enjoy aphyr.com/posts/340-acing-the-tech...-interview (no, it's not really about the technical interview) 19:46
DrForr follows along with the Polish subtitles to /Passengers/ in preparation for stopping off in Warsaw on the way to OSDays. 19:48
timotimo does the wikipedia also have tux' style?
DrForr No idea, he can petitiion with a PR :) 19:50
moritz will go to Norway tomorrow, and might have limited Internet access
[Coke] m: sub a (Str $i) {$i}; my @b = <a b cd>; say @b.first("b" eq *)
camelia b
DrForr Headed to Copenhagen myself, never been there. 19:51
[Coke] m: sub a (Str $i is copy) {$i}; my @b = <a b cd>; say @b.first("b" eq *)
camelia b
[Coke] m: sub a (Str $i is copy) {$i}; my @b = <a b cd>; say @b.first("b" eq *.Str) 19:52
camelia b
[Coke] ... with a longer program here, I get the eqv of "Calling a(WhateverCode) will never work with declared signature"
... I'm not calling a. dammit.
m: sub a (Str $i is copy) {$i}; my @b = <a b cd>; say @b.first("b" eq a *.Str)
camelia 5===SORRY!5=== Error while compiling <tmp>
Calling a(WhateverCode) will never work with declared signature (Str $i is copy)
at <tmp>:1
------> 3; my @b = <a b cd>; say @b.first("b" eq 7⏏5a *.Str)
19:54 cdg joined
jnthn [Coke]: Arguments to functions don't auto-curry 19:57
m: sub a (Str $i is copy) {$i}; my @b = <a b cd>; say @b.first("b" eq *.Str.&a) 19:58
camelia b
jnthn Or do it with curlies :)
19:59 eroux left 20:01 cognominal left
timotimo DrForr: got a clue how you'd want to support something like Slang::Tuxic? 20:01
DrForr Not really. I wanted to get a bit farther along, but I suppose it's time to think about that. 20:04
Or at least I've got enough infrastructure in place.
20:06 jjido left
timotimo neato 20:10
IOninja .ask moritz perhaps this can be retweeted to 6Feed? Not really sure what they do; some sort of code eval site or something; asking if we'd find it valuable if they added Perl [6]: twitter.com/replit/status/84246610...73344?s=09 20:13
yoleaux IOninja: I'll pass your message to moritz.
moritz . 20:14
yoleaux 20:13Z <IOninja> moritz: perhaps this can be retweeted to 6Feed? Not really sure what they do; some sort of code eval site or something; asking if we'd find it valuable if they added Perl [6]: twitter.com/replit/status/84246610...73344?s=09
DrForr Is there any reason in particular why when typing a method name like 'rotor' into the search box on doc.perl6.org, the exact match appears at the bottom of the list? I imagine it's categorizing, but it also means you have to click on the entry because <ret> sends you to teh wrong page. 20:17
sena_kun DrForr, there is no particular reason, just our search is *very* simple. There are tickets around about it's improvement, but nobody has enough time yet. 20:19
*its
DrForr, like github.com/perl6/doc/issues/247 or github.com/perl6/doc/issues/296 20:20
DrForr Understood, no worries.
[Coke] DrForr: github.com/perl6/doc/issues?utf8=%...l%3Asearch
please feel free to add any other bugs/nice to haves you find that aren't there.
we'll get 'em eventually.
20:21 rindolf left
DrForr Already there at the bottom of the list. 20:21
20:25 domidumont left, itaipu joined 20:28 andrzejku left 20:33 itaipu left 20:35 itaipu joined, bjz joined 20:37 Rawriful joined 20:43 ufobat left 20:44 AlexDaniel joined 20:45 jjido joined, Cabanossi left 20:47 raschipi left 20:48 Cabanossi joined 20:59 st_elmo left 21:00 lizmat left, skids left 21:08 labster joined 21:16 cognominal joined 21:20 param joined, param left 21:22 sufrostico joined, sufrosti1o joined, bjz left 21:26 wamba joined, ggoebel left
IOninja DrForr: side note: you can use arrow keys to navigate to right entry 21:29
21:30 mcmillhj left 21:32 sufrosti1o left 21:33 sufrostico left, sufrostico joined
IOninja BTW: t/fudgeandrun S02-types/range.t works. No need to prepend t/spec to filename 21:34
21:34 sufrosti1o joined 21:39 sufrostico left 21:40 ggoebel joined, gdonald left, sufrosti1o left, gdonald joined 21:41 sufrostico joined 21:42 sufrosti1o joined 21:45 girafe left 21:46 Cabanossi left 21:47 Cabanossi joined 21:49 mcmillhj joined, bjz joined
AlexDaniel m: say 2.5 lcm 5 21:50
camelia 10
AlexDaniel um… huh…
all: say 2.5 lcm 5
committable6 AlexDaniel, ¦all (38 commits): «10»
21:51 zakharyas left
AlexDaniel SourceBaby: &infix:<lcm>, \(25, 5) 21:51
s: &infix:<lcm>, \(25, 5)
SourceBaby AlexDaniel, Sauce is at github.com/rakudo/rakudo/blob/d565...nt.pm#L318
AlexDaniel s: &infix:<lcm>, \(2.5, 5)
SourceBaby AlexDaniel, Sauce is at github.com/rakudo/rakudo/blob/d565...ic.pm#L250
AlexDaniel look ma, I learned how to use a bot 21:52
oh… so it .Int-s them…
:S
21:54 jjido left 21:55 mcmillhj left 21:56 MasterDuke joined
IOninja SmokeMachine: did you sort out your RT issues? 21:57
21:59 mcmillhj joined 22:00 bjz left 22:04 mcmillhj left 22:05 mcmillhj joined 22:06 RabidGravy left 22:10 mcmillhj left 22:15 kurahaupo__ is now known as kurahaupo 22:18 TimToady joined
SmokeMachine IOninja: sorry... what means to sort out? 22:18
22:18 sena_kun left
gfldex i'm toying around with examples from Higher Order Perl and Perl 6 is just so much cleaner 22:19
IOninja SmokeMachine: Queria resolver seus problemas com RT?
I mean.. 22:20
SmokeMachine: Você corrigiu seus problemas com RT?
gfldex the example from page 33 of hop.perl.plover.com/book/pdf/Higher...med.pdf#33 turned into gist.github.com/gfldex/57295d0b409...8ee8a787b6
SmokeMachine IOninja: Yes... I did corrected my RT problems...
IOninja OK :)
TEttinger the heck was that first language, IOninja? 22:21
seus isn't any Spanish I know
IOninja TEttinger: "French -> Portuguees" where I typed English sentence into French box :}
TEttinger oh ha
that explains it, portuguese is close to spanish but sure not identical...
22:22 mcmillhj joined
SmokeMachine IOninja: I had tried the google translate, but it translated to me: "did you classified yours RT problems?" 22:22
IOninja hahaha 22:24
SmokeMachine: yeah, "sort out" is slang I guess. 22:25
jnthn m: say 'rt'.classify({ 'problem' })
camelia {problem => [rt]}
IOninja Well, not really, I guess. But it's not to be translated literally :)
22:26 mcmillhj left 22:28 itaipu left, itaipu joined
AlexDaniel yeah, rt is a problem. Thanks, camelia… 22:34
IOninja buggable: tag CONSISTENCY 22:35
buggable IOninja, There are no tickets tagged with CONSISTENCY
IOninja Well, I'm starting it...
22:38 skids joined 22:40 Rawriful left 22:41 Voldenet left 22:42 sufrosti1o left 22:43 labster left, sufrostico left 22:44 mcmillhj joined
SmokeMachine IOninja: here (rt.perl.org/SelfService/Display.ht...n-1452828) did you mean something like this? www.irccloud.com/pastebin/YlPJhI5m/ 22:44
22:44 sufrostico joined, sufrosti1o joined 22:45 Cabanossi left 22:46 Voldenet joined, Voldenet left, Voldenet joined 22:48 Cabanossi joined 22:49 labster joined, mcmillhj left
IOninja SmokeMachine: when you resolve tickets, include links for fix and tests. This way we can refer to them if needed later (and it's also clear that tests/fix were added) 22:49
SmokeMachine IOninja: ok, sorry... I did put the link for the fix... but didn't for the test... 22:50
22:50 cibs left
IOninja SmokeMachine: yes, but you also need to remove the `multi` and move the proto to (in this case) Str. 22:51
22:51 itaipu_ joined, lostinfog left
IOninja otherwise the dispatch will come back to Cool 22:51
and the infiniloop results.
SmokeMachine IOninja: now I got it!!! 22:52
22:52 cibs joined 22:54 itaipu left
SmokeMachine So it will get this error. right? www.irccloud.com/pastebin/KWPQf06f/ 22:56
IOninja: ^^
IOninja Yes
SmokeMachine ok!
23:00 mcmillhj joined
IOninja SmokeMachine: and when writing tests for this, it might be best to just do something like: `try { 42.starts-with: Str }; pass "Cool.starts-with with wrong args does not hang"`. Basically, we only want to test that there's no hanging. Don't test for any exceptions, since one day we might decide to add these extra candidates that do something. 23:00
SmokeMachine IOninja: in cases like substr-eq and contains (that on Cool have a default value for $pos (0)), should I do the same? and loose the default? 23:01
ok!
IOninja SmokeMachine: check the Str candidates. In this case there are two multies one that uses $pos and other that assumes it to be 0, so in this case it's fine to just forward args and they'll be sorted out by Str multies: github.com/rakudo/rakudo/blob/nom/...#L154-L157 23:03
IOninja is done for the night
\o
timotimo night IOninja
SmokeMachine IOninja: ok! thanks! good night! 23:04
23:04 spebern joined 23:05 mcmillhj left 23:07 cdg left, mcmillhj joined 23:12 mcmillhj left 23:13 dct joined 23:21 BenGoldberg joined, mcsnolte left 23:22 mcmillhj joined 23:28 mcmillhj left 23:29 sammers joined, TEttinger left 23:43 sammers left 23:44 cibs left 23:46 Cabanossi left, cibs joined 23:48 Cabanossi joined, espadrine left 23:53 kurahaupo left, kurahaupo__ joined 23:54 buggable left, buggable joined, ChanServ sets mode: +v buggable, kurahaupo joined, Geth joined, ChanServ sets mode: +v Geth
Geth modules.perl6.org: 62bfc35016 | (Zoffix Znet)++ | lib/ModulesPerl6/Model/Dists.pm
Toss old dist's tags before loading new ones

  - Fixes failure to delete tags removed from META file
  - Fixes UNIQUE constraint failure on dist update
23:54
modules.perl6.org: c72d7a292f | (Zoffix Znet)++ | lib/ModulesPerl6/Model/Dists.pm
[REBUILD] trigger full db rebuild to toss old tags
23:55
modules.perl6.org: b480f73df5 | (Zoffix Znet)++ | update-modules.perl6.org
Put updater bash script under version control
modules.perl6.org: d1ff64247e | (Zoffix Znet)++ | update-modules.perl6.org
Bail out on failed commands; update updater script after pull

  .oO( but who updates updater script's updater? )
modules.perl6.org: d632ab7fa0 | (Zoffix Znet)++ | update-modules.perl6.org
Fix full db-rebuild trigger

Currently, the trigger will fire only if during update the last commit has the trigger and will keep firing until last commit changes.
Fix by:
  - Knowing when we got fresh commits
  - Trigger full rebuild when one of the fresh commits has the trigger
modules.perl6.org: 9cdf8da614 | (Zoffix Znet)++ | .gitignore
.gitignore log files and dirs
timotimo ^- this is how a ninja sleeps
geekosaur seems like ninjas are supposed to be stealthy?
23:58 lukaramu_ left, kurahaupo__ left