»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
dalek rl6-roast-data: 5a4c1a8 | coke++ | / (4 files):
today (automated commit)
00:03
kudo-star-daily: 94705da | coke++ | log/version.log:
today (automated commit)
00:04
kudo-star-daily: fa17dbb | coke++ | log/version.log:
today (automated commit)
kudo-star-daily: afa5f1e | coke++ | log/version.log:
today (automated commit)
kudo-star-daily: bb3c188 | coke++ | log/version.log:
today (automated commit)
00:18 Psyche^ joined
dalek ast: 13e020f | coke++ | S1 (2 files):
niecza fudge
00:25
00:54 markov joined 01:01 jnap joined 01:06 Mouq joined
Mouq TimToady: So in a regex, \# isn't allowed? I couldn't find anything in roast, but some of nqp's tests actually use \# 01:11
… Could always check for / \\ '#' <!before \`> / or something 01:12
TimToady std: /\#/ 01:19
camelia std 7c17586: OUTPUT«===SORRY!===␤No unspace allowed in regex; if you meant to match the literal character, please enclose in single quotes ('#') or use a backslashed form like \x23 at /tmp/Ei9lHnEE2C line 1:␤------> /\⏏#/␤Parse failed␤FAILED 00:0…»
Mouq I just ask because it's genuinely useful
TimToady yes, \# is not allowed, but you can always write '#'
Mouq Okay. I'll just rewrite the tests 01:20
diakopter Mouq: when did you mail the CLA? 01:21
(I'd give it a couple weeks)
TimToady btw, you don't need a CLA for the stuff under /perl6 on github; that just needs a commit bit 01:22
Mouq diakopter: No, they didn't get it yet. I entrusted a person to mail it; they only did it two days ago apparently :( 01:23
TimToady oh, you already have a commit bit--nevermind :) 01:29
(perl6 commit bit, not rakudo)
Mouq I've been bitten 01:30
diakopter surely there's a German-language joke in there somewhere 01:31
TimToady already thought of it and decided not to make it :) 01:32
01:34 btyler joined
diakopter oh, "to ask, implore". heh. 01:34
segomos you guys are awesome 01:36
dalek p: 1bd3f09 | Mouq++ | src/QRegex/P6Regex/Grammar.nqp:
Panic on unspace in a regex
p: 0bf3998 | Mouq++ | t/ (3 files):
Change tests to reflect "no unspace in regex" rule
diakopter just call me Lt. Awesome
colomon aye-aye, Lt. Awesome 01:39
diakopter that's LTAwesome to you
;) 01:42
Mouq Yes sir, GTA. Please don't hijack my car. 01:43
TimToady you're too young for GTA...come to think of it, I'm too young for GTA... 01:51
Mouq Perl goes shopping: media.giphy.com/media/10fvhcVV2XenVm/giphy.gif 01:53
01:54 FROGGS_ joined 02:04 PZt joined 02:08 Brun0L3z joined
Brun0L3z hello, I was wondering if perl can do something like this: User is asked to enter a domain extension (ex: .au) then perl searched the web for all websites ending with that extension. Is this possible with perl? 02:10
lue Mouq: that gif makes me think of the vogons from the h2g2 movie. 02:12
Mouq Brun0L3z: …All of them? 02:13
Brun0L3z Mouq: not really... just some because all of them willl be like a load of things 02:14
geekosaur Brun0L3z, this sounds like a perl5 question, try #perl? 02:15
Mouq I second geekosaur, but you probably want to find a reference of registered .au domains or something.
Brun0L3z geekosaur: Thanks for that 02:16
Mouq: How do I do that?
geekosaur well, this is a development channel for perl 6, answers here involving code are unlikely to help you in a real context as yet.
Mouq IDK, Google? :P But if you're searching for *any* domain with even a name less than 6 characters, you're already looking for over 1 million possibilites 02:17
geekosaur (perl6 implementations do work, but are not commonly available in a convenient way)
Brun0L3z Thanks alot guys. you did help. 02:18
Mouq NP Brun0L3z
lue
.oO(The terrible way would be to generate random names to put in front of the TLD and then ping the website name you got out of it.)
Mouq lue: maybe concatenate dictionary words? 02:20
Brun0L3z Lue: you have a brilliant idea 02:21
lue For starters, but doing just that stereotypes against illegible gibberish names, such as qqqqqqzzzzzzzqqqqqqasdfasdfasdfhjkl.com :)
Mouq: ^ 02:22
Brun0L3z: it was a half-joking answer. You could of course do that (preferably pulling actual words from a dictionary, like Mouq suggested), but if there's some way to get a list of registered domain names, that would most likely be better. 02:24
geekosaur whois servers do offer that access --- limited and expensive 02:25
Brun0L3z Lue: what will that better way be?
Mouq Brun0L3z: Are you sure you aren't trying to solve your problem in the wrong way? You haven't given a purpose 02:26
(There are, btw, 2_441_240 .au domains. The place a database would be found is: www.auda.org.au/ but they don't give public access to it other than whois) 02:29
lue I'm assuming auda is the Australian domain "manager"? (like deNIC for .de) 02:36
BenGoldberg What possible use could there be for a list of all 2.4 million .au domains? 02:37
yoleaux 10:15 EST <FROGGS> BenGoldberg: This issue might need to go to RT (via [email@hidden.address] github.com/rakudo/star/issues/31
Brun0L3z Lue: the .au was just an example
lue I know, I was speaking to Mouq. :) 02:38
Brun0L3z ok 02:39
Mouq lue: Yup 02:40
BenGoldberg .tell FROGGS Ok, the over-eager 'for' bug has been rakudobugged :) 02:55
yoleaux BenGoldberg: I'll pass your message to FROGGS.
Mouq r: (gather { .say, .take for 1..5 }).map: { last } 02:57
camelia rakudo b1d675: OUTPUT«1␤2␤3␤4␤5␤»
Mouq (Yes, apparently `last` works in map too, at least in rakudo. vOv)
But isn't map especially supposed to be lazy? 02:58
n: (gather { .say, .take for 1..5 }).map: { last }
camelia ( no output )
Mouq n: (gather { .say, .take for 1..5 }).map: { .say; last }
camelia ( no output )
Mouq :?
BenGoldberg rn: .say, last for gather { .say, .take for 1..2 } 02:59
camelia rakudo b1d675: OUTPUT«1␤2␤1␤»
..niecza v24-95-ga6d4c5f: OUTPUT«1␤1␤»
BenGoldberg rn: map { .say; last } gather { .say, .take for 1..2 } 03:00
camelia rakudo b1d675: OUTPUT«===SORRY!=== Error while compiling /tmp/eW25W3wqp6␤Two terms in a row␤at /tmp/eW25W3wqp6:1␤------> map { .say; last } ⏏gather { .say, .take for 1..2 }␤ expecting any of:␤ argument list␤ postfix␤ state…»
..niecza v24-95-ga6d4c5f: OUTPUT«===SORRY!===␤␤Strange text after block (missing comma, semicolon, comment marker?) at /tmp/leEpwGTfDB line 1:␤------> map { .say; last }⏏ gather { .say, .take for 1..2 }␤␤Parse failed␤␤»
BenGoldberg rn: map { .say; last }, gather { .say, .take for 1..2 }
camelia ( no output )
..rakudo b1d675: OUTPUT«1␤2␤1␤»
Mouq May want to include that in the report 03:01
BenGoldberg rn: say map { $_ if $_ == 1 }, gather { .say, .take for 1..2 }
camelia rakudo b1d675: OUTPUT«1␤2␤1␤»
..niecza v24-95-ga6d4c5f: OUTPUT«1␤2␤1 ␤»
BenGoldberg rn: say map { $_ if $_ == 1 }, gather 1..2
camelia rakudo b1d675, niecza v24-95-ga6d4c5f: OUTPUT«␤»
BenGoldberg rn: say map { $_ if $_ == 1 }, 1..2 03:02
camelia rakudo b1d675: OUTPUT«1␤»
..niecza v24-95-ga6d4c5f: OUTPUT«1 ␤»
BenGoldberg The extra ' ' is a niecza bug? 03:03
Mouq Yeah, that's strange. But note that in this case, it *should* print "1␤2␤1␤"
AFAICT 03:04
BenGoldberg Which one? 03:05
err, which bit of code? 03:06
rn: map { .say; last }, gather { .say, .take for 1..2 }
camelia ( no output )
..rakudo b1d675: OUTPUT«1␤2␤1␤»
Mouq BenGoldberg: Sorry, yes, that one
BenGoldberg rn: map { say('<', $_, '>'); last }, gather { .say, .take for 1..2 } 03:07
camelia ( no output )
..rakudo b1d675: OUTPUT«1␤2␤<1>␤»
Mouq Err no
BenGoldberg rn: map { say('<', $_, '>'); }, gather { .say, .take for 1..2 }
camelia ( no output )
..rakudo b1d675: OUTPUT«1␤2␤<1>␤<2>␤»
Mouq rn: say map { $_ if $_ == 1 }, gather { .say, .take for 1..2 } # THIS one
camelia rakudo b1d675: OUTPUT«1␤2␤1␤»
..niecza v24-95-ga6d4c5f: OUTPUT«1␤2␤1 ␤»
BenGoldberg Aside from the spurious space that niezca outputs, they're both doing it right. 03:08
Mouq Well, that's the easy case ;)
Mouq needs to → bed
BenGoldberg rn: map { say 'alive'; 1 }, gather { .take for 1..2 } 03:09
camelia ( no output )
..rakudo b1d675: OUTPUT«alive␤alive␤»
BenGoldberg rn: my @a := map { say 'alive'; 1 }, gather { .take for 1..2 }
camelia niecza v24-95-ga6d4c5f: OUTPUT«Potential difficulties:␤ @a is declared but not used at /tmp/FRDQUe3dSS line 1:␤------> my ⏏@a := map { say 'alive'; 1 }, gather { .␤␤»
..rakudo b1d675: OUTPUT«alive␤alive␤»
Mouq I lazily offer you my luck Ben, but only if you request it
BenGoldberg rn: my @a = map { say 'alive'; 1 }, gather { .take for 1..2 }
camelia niecza v24-95-ga6d4c5f: OUTPUT«Potential difficulties:␤ @a is declared but not used at /tmp/Pw5gDLb4p7 line 1:␤------> my ⏏@a = map { say 'alive'; 1 }, gather { .t␤␤alive␤alive␤»
..rakudo b1d675: OUTPUT«alive␤alive␤»
BenGoldberg Thanks, luck might be necesary :) 03:10
03:10 preflex_ joined, ChanServ sets mode: +v preflex_
BenGoldberg rn: my @a; @a = map { say 'alive'; 1 }, gather { .take for 1..2 }; 03:10
camelia rakudo b1d675, niecza v24-95-ga6d4c5f: OUTPUT«alive␤alive␤»
BenGoldberg rn: my @a; map { say 'alive'; 1 }, gather { .take for 1..2 }; @a = 1;
camelia ( no output )
..rakudo b1d675: OUTPUT«alive␤alive␤»
BenGoldberg Aha!
03:10 preflex_ is now known as preflex
Mouq BenGoldberg: There is always /msg camelia ... too :) 03:11
03:11 Mouq left
BenGoldberg niecza sees that the map {} is in sink context, and doesn't even evaluate it, since in perl6, we're not supposed to use map for side effects. 03:11
I think.
03:13 Ben_Goldberg joined
Ben_Goldberg rn: map { say 'alive' }, 1..2; 03:15
camelia ( no output )
..rakudo b1d675: OUTPUT«alive␤alive␤»
03:20 tokuhirom joined
colomon no, using map for side effects is allowed in p6. (Though personally it makes me sad.) 03:43
03:47 GlitchMr joined 03:49 btyler left 04:07 Brun0L3z left 04:14 jnap left 04:21 sivoais left 04:22 kshannon left 04:25 kshannon joined 04:26 cibs joined 04:33 sivoais joined
diakopter r: say map &map, &map, &map, &map, &map 04:41
camelia rakudo b1d675: OUTPUT«␤»
diakopter r: say eval "map "~('&map'xx 1000).join(',') 04:46
camelia rakudo b1d675: OUTPUT«(timeout)»
05:10 Ben_Goldberg left 05:46 xilo joined 06:12 xilo left 06:17 denysonique joined 06:20 SamuraiJack_ joined 06:26 skids joined 06:53 dmol joined 07:03 darutoko joined 07:06 mberends joined
diakopter higher praise? "It's a precious tech conference for me forever." blog.kyanny.me/entry/2013/09/22/YAP...AAsia_2013 07:09
moritz \o 07:17
yoleaux 27 Sep 2013 21:45Z <Mouq> moritz: I've been around + check the IR Clogs, I'm just busy with school and cross country
07:17 Rotwang joined 07:20 SamuraiJack joined, SamuraiJack_ left 07:25 dmol left 07:34 sqirrel joined
dalek kudo/nom: 9ed945d | Mouq++ | src/Perl6/Grammar.nqp:
Allow #`[space] in regexes (Unrelated to RT#77522)
07:39
kudo/nom: a1a722c | (Tobias Leich)++ | src/Perl6/Grammar.nqp:
Merge pull request #210 from Mouq/nom

Allow #`[space] in regexes (Unrelated to RT#77522)
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=77522
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=77522
FROGGS_ moritz: if there are no objections from jnthn about star-RC2, then you can release/upload it 07:46
moritz FROGGS_ what's the URL? 07:55
FROGGS_ moritz: froggs.de/perl6/rakudo-star-2013.09-RC2.msi 07:58
diakopter is it signed? 07:59
moritz uploaded as rakudo.org/downloads/star/rakudo-st...013.09.msi FROGGS_++ 08:01
or rather FROGGS++
FROGGS_ cool! 08:03
diakopter no, not signed.. we'll have to fix that soon. I'll work it out with Dan 08:06
when I see him next weekend at ppw 08:07
FROGGS_ diakopter: that would be cool 08:08
diakopter we'll figure out which domain would be better to get a code-signing cert for.. 08:09
domain/business entity..
might be able to get perl foundation <shrug>
moritz what kind of cert does one need for code signing? 08:16
FROGGS_ I guess one that we don't put in git repositories :o) 08:23
moritz aye :-) 08:24
I recently got an SSL certificate for my website (for free) signed by a CA which is included in the trust list of all major browsers
FROGGS_ but I guess these certs can be pretty expensive, no?
for free? 08:25
moritz aye
FROGGS_ CAcert?
moritz no, that's not in the trust list :-)
FROGGS_ yeah, just in a few
moritz startssl.com
they just validate that you can read emails to webmaster@<domain> 08:26
FROGGS_ ahh, one year valid, but that is okay for a webiste
moritz and now, perlgeek.de/ works 08:27
but I would be surprised if code signing certs are similarly easy to obtain
FROGGS_ and one year would not be enough 08:28
three years might be alright for R*
bbl 08:29
08:30 bbkr_ left 08:37 bbkr joined 08:47 denis_boyun joined 08:50 PacoAir joined 08:51 tipdbmp joined 08:52 denis_boyun left 08:53 denisboyun joined 08:54 spider-mario joined
dalek rlito: 28f05f9 | (Flavio S. Glock)++ | / (3 files):
Perlito5 - grammar - lexical subs
09:00
09:02 bbkr left 09:05 bbkr joined 09:27 grondilu joined
masak good antenoon, #perl6 09:28
jnthn o/ masak
diakopter o/ 09:34
09:46 sqirrel left 09:47 SamuraiJack left 09:55 bbkr left 10:02 bbkr joined 10:05 fhelmberger joined 10:07 fhelmberger left
grondilu rn: my @a; @a[^10][0] »=» 0; say @a[5][0] 10:07
camelia niecza v24-95-ga6d4c5f: OUTPUT«===SORRY!===␤␤Cannot hyper with = because list assignment operators are too fiddly at /tmp/pkPxcVTNpM line 1:␤------> my @a; @a[^10][0] »=»⏏ 0; say @a[5][0]␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niec…»
..rakudo a1a722: OUTPUT«(Any)␤»
grondilu rn: my @a; @a[^10][0] = 0; say @a[5][0]
camelia rakudo a1a722, niecza v24-95-ga6d4c5f: OUTPUT«(Any)␤»
jnthn @a[^10] gives back a parcel of containers and [0] indexes it 10:08
rn: my @a; @a[^10][0] = 0; say @a[0][0]
camelia rakudo a1a722, niecza v24-95-ga6d4c5f: OUTPUT«0␤»
jnthn rn: my @a; @a[^10]>>.[0] = 0 xx *; say @a[5][0] # maybe, but not sure 10:09
camelia niecza v24-95-ga6d4c5f: OUTPUT«(timeout)» 10:10
..rakudo a1a722: OUTPUT«No such method 'Any' for invocant of type 'Int'␤ in sub METAOP_HYPER_CALL at src/gen/CORE.setting:16206␤ in block at /tmp/VAtV1xpo4k:1␤␤»
jnthn Apparently not :)
10:12 Rotwang left 10:28 sqirrel joined
masak if I'm doing a -n or -p thing, is there a way to get the *path name* of the currently-being-read-from filehandle? 10:32
to my surprise, @*ARGS is empty in such a case. 10:34
I'm not 100% sure it should be consumed by -n/-p 10:35
(and if it *is* the path name should definitely be accessible afterwards)
$*ARGFILES, surprisingly, is undefined. :/ 10:36
jnthn How are you invoking it? 10:37
10:41 ribasushi joined
masak perl6 -n -e '...' my-input-file 10:42
jnthn hm, surprised @*ARGS is empty there 10:50
Does INIT @*ARGS or BEGIN @*ARGS work out?
Those may be pre-shift, if that's what is going on.
lizmat good *, #perl6! 10:52
jnthn, alas, empty set can't still be added:
gist.github.com/lizmat/6740869
dalek kudo/nom: 371c4bc | (Elizabeth Mattijsen)++ | src/core/Set (2 files):
Move empty set symbol to right place, but alas still doesn't work
10:53
jnthn lizmat: I realized that since it's a term, it augments the grammar.
lizmat: But we don't really like doing that in the setting; it's better to just have it in Grammar.pm.
lizmat: Like we do with the other setops
lizmat: So I'd pondered just doing it there. 10:54
lizmat ah, ok
masak jnthn: yes, both BEGIN and INIT show the original arguments. 10:55
jnthn OK, well, there's a way for you then :) Given both work as r-values :) 10:56
systemka, bbi20 10:57
masak jnthn++ 10:58
(but I still think it shouldn't shift)
dalek kudo/nom: c779e6f | (Elizabeth Mattijsen)++ | src/Perl6/Grammar.nqp:
Add empty set as a term. Not sure how to go on from here, though :-(
11:10
lizmat specifically, say ∅ now gives TTIAR
masak for the life of me, I can't make &dir select files for me that contain the substring $s. 11:13
I just want to do &dir('directory/', :test(/$s/))
it just returns empty :(
someone help...
colomon is $s a string or starts with s? 11:14
masak $s is a string.
'starts with'? you may be thinking of ^
colomon oh, you're right.
does it work if you just give it some letters there?
masak heh, parsing rules make it fairly unambiguous what $s is... :) 11:15
11:15 cognominal joined
masak anyway, it feels really, really simple. and it doesn't work. 11:15
(as in, it returns an empty list when the corresponding `ls directory/*$s*` doesn't)
masak just uses .grep for the time being 11:16
11:16 iSlug joined
dalek ast: 8e56a29 | (Elizabeth Mattijsen)++ | S05-metasyntax/charset.t:
Unfudge 2 passing tests, Mouq++ I suppose :-)
11:17
masak .grep doesn't work either :( :( :(
colomon masak: it's working for me.
masak ok, time to compare code, then. 11:18
colomon masak: my $s = "o"; dir(".", :test(/$s/))
masak hmmm
it's working now that I'm trying to put together a minimal test case. 11:19
so false alarm, I think.
colomon or something really subtle
lizmat weren't there other issues weth semi-bare 's" ? 11:20
masak actually, the variable is called $name in my code, so that shouldn't be it.
my minimal example works, but not my real-world code. 11:24
jnthn lizmat: Not sure that one needs .end_keyword 11:25
masak something is different between them, and I can't find it.
lizmat jnthn: trying without
jnthn lizmat: And to make it code-gen, write an action method that makes a QAST:Op call node to &set :) 11:26
lizmat ah, duh :-)
colomon masak: like I said above, try taking out the variable and see what happens. 11:27
masak tries 11:28
colomon: oh! then it works.
but... why?
colomon … that's not how I expected that to go, but it's some sort of clue
masak yes. 11:29
I can only reproduce it in my real-world code so far.
maybe I should try to minimize that instead.
colomon masak: that's what I'm saying.
we know the basic construct works now
so what's different with your code?
lizmat jnthn: Routine declaration requires a signature :-( 11:31
the signature is added in the settings :-( 11:32
jnthn lizmat: That sounds like an NQP error, not a Perl 6 one.
lizmat make QAST::Op.new( :op('call'), :name('&set'), :node($/) );
masak colomon: I think... I'm an idiot who's wasting his own time. :/
colomon: seems I've been consistently confusing 'P102' (which exists) with 'P120' (which doesn't). 11:33
colomon masak: I know I'm an idiot who's wasting his own time.
masak: thought it might be something like that.
masak thanks for your help, and I'll try to check more closely next time.
masak feels out of practice at golfing :)
jnthn lizmat: What's your action method look like overall?
colomon masak++ 11:34
lizmat method term:sym<<∅>>>($/) {
make QAST::Op.new( :op('call'), :name('&set'), :node($/) );
}
basically copy/pasted from "time" and "now"
except that I want it to call &set, rather than whatever the term was
method term:sym<time>($/) { 11:35
make QAST::Op.new( :op('call'), :name('&term:<time>'), :node($/) );
}
for comparison
jnthn I wonder if NQP doesn't know what to do with double angles in a method name or something...
does method term:sym<∅>($/) { ... work?
lizmat trying that already
masak lunch & 11:36
lizmat that seems to work
11:42 pmurias joined
lizmat jnthn: alas: 11:43
$ perl6 -e 'say ∅'
===SORRY!=== Error while compiling -e
Two terms in a row
grondilu spectrum.ieee.org/computing/softwar...-computing # maybe one day perl6 will have a "Approximated" trait. 11:47
11:52 iSlug left 11:53 sqirrel left
dalek kudo/nom: 2813ce9 | (Elizabeth Mattijsen)++ | src/Perl6/Actions.nqp:
Add Action for empty set
11:56
lizmat brb
dalek ast: dad24db | (Elizabeth Mattijsen)++ | / (8 files):
Part 1 of .exists eradication from tests
12:15
lizmat afk until much later today/timorrow
12:18 kay_ joined 12:27 sqirrel joined 12:29 SamuraiJack joined 12:46 iSlug joined
dalek p/relex: f19118f | jnthn++ | src/vm/jvm/QAST/Compiler.nqp:
Prepare QAST -> JVM compiler for closure changes.

We'll experiment with this on MoarVM first; this just does enough to have QAST -> JVM not choke on some small changes to NQP.
12:56
p/relex: b86227e | jnthn++ | src/vm/parrot/QAST/ (2 files):
Prepare QAST -> Parrot for closure changes.

Again, just teaching it to ignore some new blocktypes for now.
p/relex: 6ae4625 | jnthn++ | src/NQP/Actions.nqp:
Mark methods/our subs with declaration_static.

This will be used in the closure handling changes, being tried first in MoarVM, to eliminate prior_invocation.
pmurias jnthn: closure changes? 13:04
jnthn pmurias: Killing the prior_invocation hack in MoarVM and, provided it works out, will toss it from JVM too 13:06
pmurias: You may already not have such a hack. :)
pmurias at the very least it has a different name ;) 13:08
13:12 iSlug left
dalek kudo-js: 565367f | (Pawel Murias)++ | nqp-runtime-core/hash.js:
Make the Bool property of Hash'es writable, it's a bit of a hack, but it's needed before we clean up our object model.
13:13
kudo-js: 8dbf13f | (Pawel Murias)++ | nqp-runtime-core/hash.js:
Make the to_i/to_n property of Hash'es writable, it's a bit of a hack, but it's needed before we clean up our object model.
13:14 denisboyun left
masak .oO( priori invocati ) 13:24
13:29 PZt left 13:31 [Sno]_ joined, [Sno]_ is now known as [Sno]
dalek p/relex: cc3d5c8 | jnthn++ | src/NQP/Actions.nqp:
Some declaration_static marking fixes.
13:32
pmurias priori invocati? 13:37
masak pmurias: harrypotter.wikia.com/wiki/Prior_Incantato 13:40
hm, turns out it was 'priori incantatem'.
13:41 darutoko left 13:42 darutoko joined 13:56 PZt joined 13:58 silug_ joined 14:00 rindolf joined 14:24 sqirrel left 14:26 dmol joined 14:30 bbkr left 14:32 bbkr joined 14:35 fridim_ joined, denis_boyun joined 14:39 xenoterracide_ joined 14:44 TgMts joined
dalek kudo-js: eb22d9a | (Pawel Murias)++ | n (4 files):
Move the P6bigint repr to nqp-runtime-node.
14:45
kudo-js: 679af5a | (Pawel Murias)++ | README.markdown:
Update README
pmurias All tests in rakudo-js back to passing ;)
dalek kudo-js: 39bb10d | (Pawel Murias)++ | nqp-runtime-node/reprs/P6bigint.js:
Add missing file.
14:46
14:47 Mouq joined 14:57 denis_boyun_ joined 14:58 denis_boyun left 14:59 sqirrel joined 15:02 rindolf left
pmurias masak: do you have any node.js experience? 15:05
15:10 kaare_ joined
moritz has experience reading blog posts about node.js 15:11
pmurias heh
15:13 clkao joined
masak pmurias: not really. 15:14
pmurias :/, I need someone to consult with on what's the node.js idiomatic way of doing things
moritz don't they have an IRC channel themselves? 15:15
or does it require too much p6 background knowledge?
pmurias stuff like how should I map Perl 6 module namespace to node.js requires some p6 knowledge 15:16
15:18 clkao left 15:20 clkao joined
pmurias moritz: the answers I get from the channel seem to imply there is no idiomatic way of doing anything 15:22
masak heh.
pmurias "What's the recommended way of building a module?" "Only a package.json is required." ;) 15:24
JimmyZ node.js 's module is something nested installed 15:27
15:29 clkao left
pmurias the actually caused a test failure, as the bigints created from two copies of the bigint module where not compatible ;) 15:29
15:30 clkao joined 15:33 zakharyas joined, sqirrel left
pmurias jnthn: nqp doesn't support having two disjoint compilation targets? like having a 'js' and 'node-module' target? 15:34
jnthn pmurias: Well, we have classfile and jar on JVM, which kinda works out 15:35
15:36 Ulti joined
dalek p/relex: c508bbb | jnthn++ | src/NQP/Actions.nqp:
Tweak MAIN handling to not need auto-close.
15:37
15:41 dmol left 15:42 TgMts left
jnthn away for the evening & 15:42
15:43 keta1 joined
keta1 Hello 15:43
I have installed rakudo-star-2013.09.msi on Windows 8. I also have the git commandline client that came with GitHub for Windows (git version 1.8.3.msysgit.0).
When I try to install something with Panda (e.g. XML::Writer) it fetches and starts to build the thing but then fails while trying to remove a .pack file in the .work\...\.git\... folder. That file is indeed write protected.
The full output is here: gist.github.com/schroeer/6743158
Any suggestions? 15:44
JimmyZ FROGGS_: ^^
masak I know Windows Git can be troublesome with permissions.
but that's not a full analysis of the problem, mind. 15:45
15:47 rindolf joined 15:50 keta1 left 15:51 keta1 joined 15:53 ajr joined, bbkr_ joined, bbkr left, ajr is now known as Guest18992 15:54 Guest18992 is now known as ajr_
FROGGS_ keta1: I had that problem too, but I did not check for write permissions... Can you file a panda issue? ( github.com/tadzik/panda/issues ) 15:54
keta1: or you fix panda, and create a pull request :o) 15:55
15:57 Rotwang joined
keta1 In Panda.pm:113 it does 'rm_rf'. Maybe it could emphasize that f a bit more. 15:58
FROGGS_ maybe do a "try chmod ..." before deleting a single file or directory? 16:00
"try" because it might fail on other OSes 16:01
16:01 bbkr_ left
FROGGS_ keta1: I can test on windows xp, windows 7 and linux then 16:01
keta1 This is not to be fixed in Panda in my opinion. It is the sub rm_rf in Shell/Command.pm that does not do what it promises. 16:03
That sub uses unlink() which appears to be a Rakudo built-in. Is there a way to make unlink() force-delete write protected files? 16:05
16:05 bbkr joined
moritz no 16:06
keta1 The sub should not be called rm_rf then.
FROGGS_ keta1: if Shell::Commands sub is called rm_rf, this this one should force the f 16:08
keta1 Yes. So the chmod should possibly be in there. 16:09
FROGGS_ yeah, that is what I think 16:10
keta1: you can try first to remove the write-protection flag on that file with a one-liner first
before putting that piece of code in rm_rf() 16:11
16:16 clkao left, clkao joined
keta1 I have only just now noticed that the desired module is already there as part of Rakudo Star. So the problem with Panda has lost some relevance for me. I'll see what I can do later anyway. 16:22
moritz ++keta1 16:24
16:26 bbkr_ joined, avar left, bbkr left 16:27 avar joined 16:31 camelo joined
camelo hi 16:31
moritz hi camelo
16:32 groky joined 16:35 logie joined 16:46 pmurias left 16:48 diakopter joined
diakopter .tell [Coke] looks like too many open files is killing my irssi 16:48
yoleaux diakopter: I'll pass your message to [Coke].
diakopter chtop
16:48 diakopter left 16:49 diakopter joined
diakopter TimToady: is your irssi+screen being killed? 16:51
16:51 bbkr joined, TgMts joined 16:52 bbkr_ left 16:55 rindolf left 16:59 denis_boyun_ left 17:00 cognominal left, cognominal joined 17:01 japhb_ joined 17:02 zakharyas left 17:03 FROGGS_ is now known as FROGGS 17:04 logie left 17:05 mtk joined
keta1 moritz, FROGGS 17:09
FROGGS keta1: yes?
keta1 moritz, FROGGS: Failed to set the mode of '...' to'0o666': chmod not implemented on Win32
FROGGS hmmm
then it is time to implement it... (or find the right thing we need to do) 17:10
damn, that exception is thrown from parrot 17:14
okay, it looks like we need to call SetFileAttributes (from C), but we need to translate the flags first... I believe libapr has such a translation as a macro 17:22
I'll investigate after dinner
keta1 Here is something that works for me: gist.github.com/schroeer/6744615 17:52
I know that it is ugly
FROGGS keta1: that is not too bad... I still think the chmod/shell call should be protected by prefixing with 'try' 17:54
moritz: what do you think... should we release a hotfix for 2013.09? 17:55
maybe with this patch, or a chmod working on windows 17:56
keta1 What is it supposed to do if try { chmod | ATTRIB } fails? It is then going to fail at the unlink() anyway. 17:58
18:00 mtk left 18:01 mtk joined
moritz uh oh 18:10
there's a race condition with security implications in that thing
diakopter oh? 18:11
moritz it first sets the *read* permissions more permissive than they might have been before
and then deletes
and in between, an attacker might delete the file
erm
read the file
or modify
diakopter attrib -r ? 18:13
moritz I don't think you can modify the permissions of a file unless you're the owner
dalek ast: 290d6f4 | coke++ | S02-types/array_extending.t:
pugs fudge
moritz so there's not much point in changing any permissions except that of the owner
diakopter also "ATTRIB -R $f" is not safe because it's not quoting/escaping the filename 18:14
moritz oh, good point
diakopter and if you're going to shell to attrib, you might as well just shell to del /q instead 18:15
keta1 It's only a draft, eh
moritz has gone through the RaNIW notes, and learned a lot from day 2
diakopter but really, the built-in unlink shouldn't need the attrib -r, so it's a bug if it does
moritz keta1: sure, and I don't mean any offense, it's just good to note such things as early as possible, IMHO 18:16
diakopter keta1: are you able to push to the perl6 org? moritz or I can add you if you'd like to push to all those repos (spec, test suite, nqp)
(but my memory's so poor, for all I know you've been pushing for years... :) 18:17
FROGGS btw, this is from Perl5's unlink for win32: 18:19
if (attrs & FILE_ATTRIBUTE_READONLY) {
(void)SetFileAttributesA(filename, attrs & ~FILE_ATTRIBUTE_READONLY);
ret = unlink(filename);
if (ret == -1)
(void)SetFileAttributesA(filename, attrs);
so it deletes these files by default 18:21
18:24 zacts joined
keta1 I cannot commit to any of these and really don't plan to do so. I'd prefer if someone uses my problem report and proposal and makes something out of it. I am not a programmer. 18:25
FROGGS yeah, we'll care about that 18:26
moritz: how do you think about Perl5's behaviour? 18:34
18:36 darutoko left 18:40 zacts left
FROGGS is here somebody who likes do (re-)implement nqp::spawn aka run() for unixes? 18:41
moritz FROGGS: p5's unlink sounds sane 18:42
FROGGS k 18:43
hmmm, again stuff we either need to fix in parrot or move to nqp 18:46
should we infiltrate parrot and make it how we want it to be?
diakopter nah; nqp is fine 18:47
easier to copy to moarvm from there
FROGGS true 18:48
well, for this I would steak from nqp first I guess :o)
err, moarvm
keta1 I am not so sure that unlink() should delete write protected files by default. Some people set that flag for a reason.
FROGGS keta1: well, if you can remove it, you sorta have write permissions 18:49
diakopter well, the practical question is how would you provide a "force" or "override" option
if you wanted to respect the write protection
FROGGS diakopter: unlink() has no such option
diakopter right
it was a rhetorical question :P 18:50
keta1: the main thing is that since p5 has done that for decades, it's best to follow its behavior
FROGGS if you want to make a wrapper that has a force-option, then you would want to call chmod first, which is NYI 18:51
keta1 I'll know who to sue when I accidentally delete my $$$ project 18:56
diakopter :P
FROGGS *g*
18:56 TgMts left
diakopter keta1: you'd sue Perl 5? :) 18:57
19:01 zacts joined
keta1 diakopter: lwall and YOU 19:04
diakopter heh. 19:05
somehow I think you'd run into the "no warranty" warning you agree to when you use the software.. 19:06
"Your honor, I told my computer to delete a file, but I was lying, I didn't really want it to delete the file; the software should've known how to read my mind." "Umm, yeah..." 19:07
19:07 Mouq left
keta1 The software should have respected the DO_NOT_MODIFY_OR_DELETE sticker that I have put onto that file 19:12
But really don't care much
I
I am surprised though that Perl5 behaves that way. 19:14
Both rm and Windows DEL have special 'force delete' switches. Why not unlink()? 19:15
diakopter b/c it's a unix thing 19:16
er,
moritz keta1: both rm and windows are high-level things, unlink() is a low-level thing 19:17
19:17 mtk left
moritz keta1: the real question is "why don't we have the high-level thing in Perl 6?" 19:17
lue hello world o/ 19:19
19:32 ivanshmakov joined 19:33 mtk joined
GlitchMr rn: say 4.sin(fail => 84) 19:34
camelia rakudo 2813ce: OUTPUT«-0.756802495307928␤»
..niecza v24-95-ga6d4c5f: OUTPUT«Unhandled exception: Excess arguments to Cool.sin, unused named fail␤ at /home/p6eval/niecza/lib/CORE.setting line 0 (Cool.sin @ 1) ␤ at /tmp/esit1Ipoa1 line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4583 (ANON @ 3) ␤ at /home…»
GlitchMr In my opinion, it's Rakudobug. 19:35
moritz the spec says it's a nieczabug
GlitchMr huh?
moritz S12, section "interface consistency" or so
GlitchMr But, Rakudo Perl behavior adds bugs.
This is really unexpected. 19:36
19:36 japhb_ left
GlitchMr Seriously, what? 19:36
Implicit *%_. Why? 19:37
>>> [].sort(fail=84) 19:38
TypeError: 'fail' is an invalid keyword argument for this function
This sounds like a feature to add bugs, not something helpful.
moritz GlitchMr: you are repeating yourself 19:39
GlitchMr I guess it makes sense if you use inheritance. 19:40
But, only if you use nextsame. 19:41
Couldn't nextsame be implemented as a macro that modifies method signature to have *%_?
lue I like the phrasing of that section: "will get an implicit *%_ parameter declared for them whether they like it or not." :) 19:42
GlitchMr Still, is there a reason for such behavior other than nextsame? 19:43
Or perhaps some syntax to call method ignoring unspecified named arguments? 19:47
lue you can mark method-holding classes as hidden, it would seem. 19:48
19:48 japhb_ joined
timotimo php is going to eat perl6's cake with 'Hack'. 19:49
GlitchMr <?php $hack = new Hack();
diakopter dares to ask what i Hack 19:50
timotimo no, you have to use <?hh instead
lue moritz: how difficult is it to turn an only sub into a multi-candidate? (e.g. use Foo::Bar has an only sub Baz, and after importing Foo::Bar I want to write make Baz multi and write a new candidate) [more]
diakopter *is
GlitchMr <?hh; $hack = new Hack();
Works too.
timotimo preferably you'd use <?hh //strict, though
diakopter timotimo: wuts hack
lue Wait. that S12 section you referenced, does it only apply to methods, or all kind of subs?
timotimo diakopter: it seems like the hiphop people came up with it. gradual typing with type inference for php. 19:51
grondilu rn: proto f($) { gather {*} }; multi f(Int $n) { take $n }; say f(7);
camelia rakudo 2813ce, niecza v24-95-ga6d4c5f: OUTPUT«␤»
moritz lue: only methods have an implicit *%_ 19:53
GlitchMr glitchmr@feather ~> echo '<?hh; $hack = new Hack();' | php
PHP Fatal error: Class 'Hack' not found in - on line 1
Except it doesn't work.
I need to declare Hack.
moritz lue: proto Baz(|) { * }; multi Baz($original_signature_from_FOO_BAR_Baz) { Foo::Bar::Baz(|args) }; multi <your own candidate here> 19:54
lue OK, so ignore where my mind was going :) . I agree with the implicit *%_, but what about an implicit *@_? Or is there some existing guarantee that you'll never need to force a *@ parameter.
lue makes note of the only-to-multi code for future reference.
timotimo GlitchMr: why would you expect Hack to be in your distro's supplied php version? 19:56
GlitchMr It's not my distro.
It's feather.
timotimo ah, right. so why expect to have it there?
diakopter you have your own distro?
GlitchMr No 20:04
dalek p/nqp_delete_f: 401ed62 | (Tobias Leich)++ | src/vm/parrot/ (2 files):
added our own nqp::unlink() op

Which might be able to delete write-protected files on windows.
20:04 SmokeMachine joined
dalek rl6-roast-data: dcaf34a | coke++ | / (5 files):
today (automated commit)
20:07
FROGGS :o( 20:13
timotimo what's the trick to make such a report with rakudo.jvm?
i'd like to try it myself
FROGGS t/test_summary? 20:15
timotimo is building a fresh parakudo at the moment
FROGGS is doing the same on good old windows xp 20:16
20:24 zacts left, bruges joined 20:26 keta2 joined, bbkr left 20:27 keta1 left 20:28 Mouq joined
FROGGS keta2: seems like that unlink() works now... (at least like we decided how it should like :o) 20:29
20:32 Mouq left 20:38 rhr joined 20:44 Mouq joined 20:46 zakharyas joined
keta2 FROGGS: bravo 20:47
20:48 keta2 is now known as keta1 20:50 ajr_ left
timotimo i'm running an old checkout of t/spec >_< 20:57
FROGGS :/
timotimo restarts
dalek p: 401ed62 | (Tobias Leich)++ | src/vm/parrot/ (2 files):
added our own nqp::unlink() op

Which might be able to delete write-protected files on windows.
21:03
kudo/nom: d3c8d57 | (Tobias Leich)++ | tools/build/NQP_REVISION:
use nqp's unlink, rather than parrot's
21:04
21:17 eternaleye joined
lue
.oO(Those edument slides are wonderful in making you feel like you *can* do work with/on NQP)
21:21
21:21 benabik joined 21:22 grondilu left
keta1 Another thing: I have an empty file "A.pm" and a file "B.pm" in the same folder. B.pm only contains the line "use A;". Running "perl6 B.pm" gives: "===SORRY!=== Invalid operation on binary string" 21:22
Same behaviour with more complex files of course. 21:23
FROGGS hmmm
keta1 'use'ing files stored at ...\rakudo\lib\parrot\5.5.0\languages\perl6\lib works though. 21:24
21:24 btyler joined
FROGGS PERL6LIB=. perl6 B.pm works for me 21:25
trying windows linefeeds now
no, still works
keta1: what is your PERL6LIB set to? 21:26
keta1 FROGGS: Thank you. PERL6LIB did the trick. Helpful error message. 21:28
FROGGS keta1: so it contained garbage?
keta1 It was not set at all
FROGGS hmmm
okay, I'll try to get this error too, to be able to improve that message 21:29
lue Huh, I ran nqp's make test just for fun, and I got this: "t/nqp/19-file-ops.t ................... 1/40 src/io/utilities.c:370: failed assertion 'byte_length > 0'" is this known? 21:30
timotimo already back up to S05 ...
FROGGS lue: I believed this was already fixed by arnsholt++ 21:31
lue: nqp/HEAD passes on linux
lue not for me it seems. I'm pretty sure I still have latest parrot checkout compiled and installed. 21:32
(because git pull in parrot a short time ago said "up-to-date")
I think I'll be able to live with it, at least for now. I just ran make test for the fun of it. 21:33
FROGGS lue: what is your nqp --version ? 21:35
lue This is nqp version 2013.09-40-g401ed62 built on parrot 5.7.0 revision RELEASE_5_7_0-8-g918f0da (compiling rakudo atm, so you know)
FROGGS yeah, that is HEAD 21:36
weird
Mouq FROGGS: That test was failing for me too last night, Mac OS X 21:38
FROGGS so something triggers it... but what? 21:39
lue I'm on linux amd64 using gcc 4.8.1, if you'd like such additional info :)
FROGGS linux amd64 gcc 4.7.3 with icu
Mouq "not ok 15 - nqp::readallfh end of file"
lue I can put the error as it appeared in a gist if you want to see the trace. 21:40
21:40 PacoAir left
FROGGS lue: or you make an issue 21:40
lue ah yes, that would be better :) 21:41
FROGGS github.com/perl6/nqp/issues/133
-.-
my brain does not seem to be in a fit state
lue hey, I got twenty-*three* stack frames, so that's different :) . 21:42
(I feel I should try that remove install/ tip before commenting on the issue...) 21:43
FROGGS IIRC he who had the problem I filed, had gcc-4.8 too
lue My processor is kinda like the original issue too, only an Athlon Dual Core instead. 21:44
21:45 spider-mario left
lue I'm using gentoo too! ō.o 21:45
lue investigates the difference between "3.11.0-gentoo" "3.10.7-gentoo" 21:46
oh, the kernel. :) 21:47
21:48 zakharyas left
FROGGS gnight 21:48
lue good ♞ FROGGS o/
timotimo reached S26, yay 21:53
lue timotimo: If I may ask, what are you doing? 21:54
timotimo running a full test_summary on rakudo.jvm in the hopes of getting more percentage out of it than coke did on his last runs
lue Ah, that explains the "reaching Sxx" announcements :) . 21:57
timotimo yes. this process takes a long time due to being single-threaded and apparently not using the evalserver?
lue
.oO(On a related note, I just remembered how nice it is to have a computer that can compile rakudo in a reasonable amount of time.)
21:59
diakopter lue: let alone a rakudo vm/backend that's fast enough 22:05
we all want a 60 Ghz computer
Mouq lue: I just upgraded my parrot to 5.7.0, and it now dies in the same way on Mac 22:07
*the test
lue diakopter: Anything is an improvement from a 500 MHz processor and 384 MiB of ram :) 22:08
Mouq: you might want to add a note to the issue FROGGS mentioned earlier, that it fails with 5.7.0 on OS X as well.
Mouq lue: Ok, did so 22:13
22:13 porkman joined
porkman d 22:14
22:14 porkman left
lue
.oO(We've been porkman'd!)
22:16
22:17 xinming_ joined
timotimo my result is "total", 27349, 10, 665, 1469, 29493, 27113 22:24
"Synopsis", "pass","fail","todo","skip","plan","spec" 22:25
on cokes run it was 16728, 7795, 532, 1140, 26195, 26899
on parrot it is 27370, 10, 663, 1446, 29489, 27113
so pretty darn close. 22:26
diakopter heh.
timotimo r: say 27349/27370
camelia rakudo d3c8d5: OUTPUT«0.999233␤»
22:27 btyler left
timotimo the 10 fails are in S02: S02-magicals/env.rakudo.jvm........................Unexpected named parameter 'exists' passed 22:29
potential fallout from turning exists into exists_key and exists_pos? 22:30
gist.github.com/timo/46d8bc1822e94c4abb03 here's the file 22:31
Mouq Did you get the latest roast? 22:32
timotimo yes, 1 hour 30 minutes ago
it's still up to date as of now
22:33 BenGoldberg joined, mberends left
timotimo well, jnthn++ recently did a whole bunch of work on those tests for jvm =) 22:34
turns out it worked well
sleep & 22:35
BenGoldberg rn: map { say 'alive' }, 1..2;
camelia ( no output )
..rakudo d3c8d5: OUTPUT«alive␤alive␤»
Mouq timotimo++ gnight
BenGoldberg If 'map 22:36
If 'map' is done in sink context, can a perl6 implementation legally choose not to execute it? 22:37
Mouq I don't know, but S02 says: "The sink statement prefix will eagerly evaluate any block or statement, throw away the results, and instead return the empty Parcel value, ()" 22:38
Which implies that things should be executed in sink context
BenGoldberg rn: sink: map { say 'alive' }, 1..2; 22:39
camelia ( no output )
..rakudo d3c8d5: OUTPUT«alive␤alive␤»
BenGoldberg rn: say join 'x', map { say 'alive' }, 1..2; 22:40
camelia rakudo d3c8d5, niecza v24-95-ga6d4c5f: OUTPUT«alive␤alive␤TruexTrue␤»
BenGoldberg rn: map { say 'alive' }, 1..2; say 'after';
camelia rakudo d3c8d5: OUTPUT«alive␤alive␤after␤»
..niecza v24-95-ga6d4c5f: OUTPUT«after␤»
Mouq n: sink map { say 'alive' }, 1..2 22:42
camelia niecza v24-95-ga6d4c5f: OUTPUT«===SORRY!===␤␤Action method statement_prefix:sink not yet implemented at /tmp/6SO7KRkCXH line 1 (EOF):␤------> sink map { say 'alive' }, 1..2⏏<EOL>␤␤Unhandled exception: Unable to resolve method statement_level in t…» 22:43
BenGoldberg blinks.
Mouq n: eager map { say 'alive' }, 1..2
camelia niecza v24-95-ga6d4c5f: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'eager' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 36) ␤ at…»
BenGoldberg Oh, so when I wrote 'sink:' it was treated as a label
Mouq r: sink map { say 'alive' }, 1..2 22:44
camelia rakudo d3c8d5: OUTPUT«alive␤alive␤»
Mouq But yeah, looks like Niecza is being too lazy. 22:45
r: lazy map { say 'alive' }, 1..2
camelia rakudo d3c8d5: OUTPUT«===SORRY!=== Error while compiling /tmp/Gq_qY73cO0␤Undeclared routine:␤ lazy used at line 1␤␤»
BenGoldberg rn: my @a; @a = map { say 'alive' }, 1..2;
camelia rakudo d3c8d5, niecza v24-95-ga6d4c5f: OUTPUT«alive␤alive␤»
Mouq S04:848 22:47
synopsebot Link: perlcabal.org/syn/S04.html#line_848
Mouq std: lazy map { say 'alive' }, 1..2 22:48
camelia std 7c17586: OUTPUT«ok 00:00 45m␤»
Mouq rn: my @a; @a := map { say 'alive' }, 1..2; 22:49
camelia ( no output )
..rakudo d3c8d5: OUTPUT«alive␤alive␤»
Mouq And I think there rakudo is being over-eager
Oh, actually: S04:1392 22:51
synopsebot Link: perlcabal.org/syn/S04.html#line_1392
Mouq rnp: eval "say '$_: ';"~$_~' {say "ok"}' for <do once gather lift lazy sink try quietly contend async> 22:55
camelia niecza v24-95-ga6d4c5f: OUTPUT«do: ␤ok␤Unhandled exception: Undeclared routine:␤ 'once' used at line 1␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 5651 (STD.sorry @ 6) ␤ at /home/p6eval/niecza/src/STD.pm6 line 5429 …»
..rakudo d3c8d5: OUTPUT«do: ␤ok␤once: ␤ok␤gather: ␤===SORRY!=== Error while compiling eval_3␤Undeclared routine:␤ lift used at line 1. Did you mean '&list'?␤␤»
..pugs: OUTPUT«do: ␤ok␤once: ␤gather: ␤ok␤lift: ␤lazy: ␤sink: ␤try: ␤ok␤quietly: ␤contend: ␤async: ␤ok␤»
Mouq rnp: try eval "print '$_: ';"~$_~' {say "ok"}' for <do once gather lift lazy sink try quietly contend async>
camelia pugs: OUTPUT«do: ok␤*** Cannot cast from VBool True to VCode (VCode)␤ at /tmp/lf5N3URAP0 line 1, column 1-43␤»
..niecza v24-95-ga6d4c5f: OUTPUT«do: ok␤»
..rakudo d3c8d5: OUTPUT«do: ok␤once: ok␤gather: »
22:56 silug_ is now known as silug
Mouq rnp: try {eval "print '$_: ';"~$_~' {say "ok"}'} for <do once gather lift lazy sink try quietly contend async> 22:56
camelia pugs: OUTPUT«pugs: Missing required parameters: $_␤»
..niecza v24-95-ga6d4c5f: OUTPUT«do: ok␤gather: try: ok␤»
..rakudo d3c8d5: OUTPUT«: ok␤: ok␤: ok␤: ok␤: ok␤: ok␤: ok␤: ok␤: ok␤: ok␤»
23:06 keta1 left
BenGoldberg rnp: try { say $_ } for 1..5 23:23
camelia pugs: OUTPUT«pugs: Missing required parameters: $_␤»
..niecza v24-95-ga6d4c5f: OUTPUT«1␤2␤3␤4␤5␤»
..rakudo d3c8d5: OUTPUT«Nil␤Nil␤Nil␤Nil␤Nil␤»
23:24 kaare_ left
Mouq rnp: do { say $_ } for 1..5 23:24
camelia rakudo d3c8d5: OUTPUT«===SORRY!=== Error while compiling /tmp/a2YUafY9GD␤Unsupported use of do...for; in Perl 6 please use repeat...while or repeat...until␤at /tmp/a2YUafY9GD:1␤------> do { say $_ } for 1..5⏏<EOL>␤ expecting any of:␤ po…»
..niecza v24-95-ga6d4c5f: OUTPUT«===SORRY!===␤␤Unsupported use of do...for; in Perl 6 please use repeat...for at /tmp/MLOuxbmeDY line 1 (EOF):␤------> do { say $_ } for 1..5⏏<EOL>␤␤Parse failed␤␤»
..pugs: OUTPUT«*** ␤ Unexpected end of input␤ expecting operator␤ at /tmp/sE2wrJlBKl line 2, column 1␤»
Mouq :p
rnp: (do { say $_ }) for 1..5 23:25
camelia pugs: OUTPUT«␤␤␤␤␤»
..niecza v24-95-ga6d4c5f: OUTPUT«1␤2␤3␤4␤5␤»
..rakudo d3c8d5: OUTPUT«Nil␤Nil␤Nil␤Nil␤Nil␤»
BenGoldberg rakudobug?
Mouq vOv 23:26
I would assume
rnp: (my $b = { say $_ }, do $b) for 1..5 # ? 23:27
camelia ( no output )
Mouq rnp: ((my $b = { say $_ }), do $b) for 1..5 # ?
camelia ( no output )
Mouq Yeah, I'm being dumb 23:28
23:30 sizz joined, Rotwang left
BenGoldberg rnp: for <do once gather sink try quietly contend async lift lazy > -> $a { print "$a: "; try { eval $a ~ ' {say "3ok1"}'; CATCH { say '4NOT ok1' } } } 23:39
camelia pugs: OUTPUT«do: 3ok1␤once: gather: 3ok1␤sink: try: 3ok1␤quietly: contend: async: 3ok1␤lift: lazy: »
..niecza v24-95-ga6d4c5f: OUTPUT«do: 3ok1␤once: 4NOT ok1␤gather: sink: 4NOT ok1␤try: 3ok1␤quietly: 4NOT ok1␤contend: 4NOT ok1␤async: 4NOT ok1␤lift: 4NOT ok1␤lazy: 4NOT ok1␤»
..rakudo d3c8d5: OUTPUT«do: 3ok1␤once: 3ok1␤gather: 3ok1␤sink: 3ok1␤try: 3ok1␤quietly: 4NOT ok1␤===SORRY!=== Error while compiling eval_5␤Undeclared routine:␤ quietly used at line 1␤␤»
BenGoldberg in spite of the try/CATCH, the error propogates upward... dunno why. 23:40
23:40 camelo left
BenGoldberg I probably have to put soething inside of the CATCH to tell perl that the exception has been handled 23:41
lue BenGoldberg: how'd you do the bolding and coloring? Just some normal ANSI escapes? 23:48
Mouq rnp: for <do once gather sink try quietly contend async lift lazy > -> $a { print "$a: "; try { eval $a ~ ' {say "ok"}'; CATCH { say 'NOT ok'; last } } }
camelia rakudo d3c8d5: OUTPUT«do: ok␤once: ok␤gather: ok␤sink: ok␤try: ok␤quietly: NOT ok␤NOT ok␤»
..pugs: OUTPUT«do: ok␤once: gather: ok␤sink: try: ok␤quietly: contend: async: ok␤lift: lazy: »
..niecza v24-95-ga6d4c5f: OUTPUT«do: ok␤once: NOT ok␤gather: sink: NOT ok␤try: ok␤quietly: NOT ok␤contend: NOT ok␤async: NOT ok␤lift: NOT ok␤lazy: NOT ok␤»
BenGoldberg Actually, normal IRC escapes :) 23:50
Bold is turned on and off with control-b, green is control-k 3, and black is control-k 1. 23:51
4Red is control-k 4. 23:52
diakopter 4
didn't work
BenGoldberg No space between them.
diakopter 4
BenGoldberg Hmm.
diakopter didn't work
Mouq diakopter: do you mean ^V+^K
BenGoldberg Check your irc client manual, then.
Mouq 4 23:53
Nope
Well
4test 23:54
Irssi uses ^c 23:55
BenGoldberg rn: printf '%d,%dX', $_ % 16, $_ / 16 for (0..255).pick(*) 23:59
camelia rakudo d3c8d5: OUTPUT«2,7X11,8X15,6X8,15X10,3X5,7X14,4X15,0X15,15X13,2X9,10X7,0X12,6X1,0X5,9X5,13X6,6X9,5X15,13X2,10X2,0X8,7X12,15X0,6X5,12X11,1X2,2X13,6X4,15X6,14X0,1X8,8X6,4X1,6X3,8X14,15X6,15X5,1X3,9X9,12X14,3X8,3X14,2X4,10X11,14X2,5X…»
..niecza v24-95-ga6d4c5f: OUTPUT«13,3X6,2X2,15X7,0X10,1X9,3X8,15X7,11X4,6X2,3X1,4X12,5X0,4X6,15X14,4X14,11X11,3X6,0X8,3X15,1X2,14X9,2X2,4X15,15X3,5X9,6X15,9X10,5X13,13X7,15X12,14X7,1X12,7X4,10X8,2X12,9X0,10X14,12X3,6X10,3X12,2X4,15X14,2X0,12…»
23:59 Maddingue left, Maddingu1 joined, Grrrr joined