»ö« 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 failedFAILED 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«12345» | ||
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«121» | ||
..niecza v24-95-ga6d4c5f: OUTPUT«11» | |||
BenGoldberg | rn: map { .say; last } gather { .say, .take for 1..2 } | 03:00 | |
camelia | rakudo b1d675: OUTPUT«===SORRY!=== Error while compiling /tmp/eW25W3wqp6Two terms in a rowat /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«121» | |||
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«121» | ||
..niecza v24-95-ga6d4c5f: OUTPUT«121 » | |||
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 "121" | ||
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«121» | |||
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«12<1>» | |||
Mouq | Err no | ||
BenGoldberg | rn: map { say('<', $_, '>'); }, gather { .say, .take for 1..2 } | ||
camelia | ( no output ) | ||
..rakudo b1d675: OUTPUT«12<1><2>» | |||
Mouq | rn: say map { $_ if $_ == 1 }, gather { .say, .take for 1..2 } # THIS one | ||
camelia | rakudo b1d675: OUTPUT«121» | ||
..niecza v24-95-ga6d4c5f: OUTPUT«121 » | |||
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«alivealive» | |||
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«alivealive» | |||
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 { .talivealive» | ||
..rakudo b1d675: OUTPUT«alivealive» | |||
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«alivealive» | ||
BenGoldberg | rn: my @a; map { say 'alive'; 1 }, gather { .take for 1..2 }; @a = 1; | ||
camelia | ( no output ) | ||
..rakudo b1d675: OUTPUT«alivealive» | |||
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«alivealive» | |||
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«alivealive» | |||
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«alivealive» | |||
BenGoldberg | rn: say join 'x', map { say 'alive' }, 1..2; | 22:40 | |
camelia | rakudo d3c8d5, niecza v24-95-ga6d4c5f: OUTPUT«alivealiveTruexTrue» | ||
BenGoldberg | rn: map { say 'alive' }, 1..2; say 'after'; | ||
camelia | rakudo d3c8d5: OUTPUT«alivealiveafter» | ||
..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 1Unhandled 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«alivealive» | ||
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_qY73cO0Undeclared routine: lazy used at line 1» | ||
BenGoldberg | rn: my @a; @a = map { say 'alive' }, 1..2; | ||
camelia | rakudo d3c8d5, niecza v24-95-ga6d4c5f: OUTPUT«alivealive» | ||
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«alivealive» | |||
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: okUnhandled 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: okonce: okgather: ===SORRY!=== Error while compiling eval_3Undeclared routine: lift used at line 1. Did you mean '&list'?» | |||
..pugs: OUTPUT«do: okonce: gather: oklift: lazy: sink: try: okquietly: 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: okonce: okgather: » | |||
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: okgather: 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«12345» | |||
..rakudo d3c8d5: OUTPUT«NilNilNilNilNil» | |||
23:24
kaare_ left
|
|||
Mouq | rnp: do { say $_ } for 1..5 | 23:24 | |
camelia | rakudo d3c8d5: OUTPUT«===SORRY!=== Error while compiling /tmp/a2YUafY9GDUnsupported use of do...for; in Perl 6 please use repeat...while or repeat...untilat /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«12345» | |||
..rakudo d3c8d5: OUTPUT«NilNilNilNilNil» | |||
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: 3ok1once: gather: 3ok1sink: try: 3ok1quietly: contend: async: 3ok1lift: lazy: » | ||
..niecza v24-95-ga6d4c5f: OUTPUT«do: 3ok1once: 4NOT ok1gather: sink: 4NOT ok1try: 3ok1quietly: 4NOT ok1contend: 4NOT ok1async: 4NOT ok1lift: 4NOT ok1lazy: 4NOT ok1» | |||
..rakudo d3c8d5: OUTPUT«do: 3ok1once: 3ok1gather: 3ok1sink: 3ok1try: 3ok1quietly: 4NOT ok1===SORRY!=== Error while compiling eval_5Undeclared 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: okonce: okgather: oksink: oktry: okquietly: NOT okNOT ok» | ||
..pugs: OUTPUT«do: okonce: gather: oksink: try: okquietly: contend: async: oklift: lazy: » | |||
..niecza v24-95-ga6d4c5f: OUTPUT«do: okonce: NOT okgather: sink: NOT oktry: okquietly: NOT okcontend: NOT okasync: NOT oklift: NOT oklazy: 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
|