»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by diakopter on 25 January 2010. |
|||
lue | o/ | 00:00 | |
arlinius | rakudo: my::foo | 00:02 | |
p6eval | rakudo 1f2bd0: OUTPUT«Malformed my at line 11, near "::foo"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
arlinius | rakudo: my ::x | ||
p6eval | rakudo 1f2bd0: OUTPUT«Malformed my at line 11, near "::x"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
lue is currently a azombie | 00:05 | ||
lue needs to drink caffeine, aaaaandc fast | |||
00:24
daemon left,
daemon joined
00:33
airbase joined
|
|||
lue | I'll be here for the nightshift :D | 00:41 | |
00:48
nihiliad left
00:55
nihiliad joined
01:11
ascent_ left
01:12
ascent_ joined
01:18
lestrrat is now known as lest_away
01:23
yinyin joined
02:11
lest_away is now known as lestrrat
02:16
astrojp left
02:25
nihiliad left
02:27
Chillance left
02:34
quester joined
02:47
rgrau left
02:49
f00li5h[HireMe] joined
02:50
wknight8111 left
03:01
nihiliad joined
03:24
nihiliad left
03:26
am0c left
|
|||
colomon | 25085 passing tests, and then to bed. | 03:29 | |
03:34
agentzh joined
03:40
nihiliad joined
03:41
am0c joined
03:43
mikehh left
03:47
alester joined
03:51
eternaleye left
04:39
xinming_ joined
04:43
xinming left,
nihiliad left
05:12
Sarten-X2 left
|
|||
lue | anybody here? Or all you all off watching the olympics :) | 05:18 | |
Tene | I'm here, for a bit. | 05:20 | |
Sleeping shortly. | |||
lue | good. It's been quiet for hours here. Good thing I wasn't here the whole time :) | 05:23 | |
05:27
xomas joined,
xomas left,
xomas joined
05:31
yinyin left
05:34
mssm left
05:56
am0c is now known as am0c_away
06:13
Trashlord left
06:33
eternaleye joined
06:49
eternaleye left
06:50
kaare joined,
kaare is now known as Guest73108
06:52
uniejo joined
06:53
justatheory left
07:01
quester left
07:08
masak joined
|
|||
masak | a very good morning to you, #perl6. happy new week! | 07:08 | |
phenny | masak: 28 Feb 20:46Z <Tene> tell masak "For a given grammatical category, a default parsing rule or set of rules is used". The spec doesn't discuss where this "default parsing rule" is defined. | ||
masak: 28 Feb 20:53Z <Tene> tell masak That was the big omission, at least. Search the logs for mention of that quote to find my discussion with TimToady about it. | 07:09 | ||
masak: 28 Feb 20:55Z <Tene> tell masak I hear you're going to get a lot of messages. Good luck with that. | |||
masak: 28 Feb 21:00Z <Tene> tell masak Ah, nevermind, I was misinformed. Looks like it's only me in your messages so far. | |||
masak | Tene: well, if I'm getting a lot of messages, I know whom to blame. :P anyway, thanks for the information. | 07:10 | |
07:13
eternaleye joined
|
|||
Tene | masak: morning | 07:21 | |
07:22
Su-Shee joined
|
|||
Su-Shee | good morning | 07:23 | |
masak | Tene, Su-Shee: good morning. | 07:24 | |
07:29
alester left
|
|||
Tene up way too late, sleeps. | 07:32 | ||
masak | Tene: 'night | ||
hejki | good morning to you masak :) | 07:33 | |
masak found the macro discussion at irclog.perlgeek.de/perl6/2009-12-22#i_1862388 | |||
hejki: \o | |||
hejki | :> | ||
Tene | masak: I'll be interested to see any comments you have on macros. | ||
looking at it again, there are several cases that it looks like I could handle just fine. | |||
masak | sounds great. | 07:34 | |
Tene | anything with an "is parsed" is do-able. | ||
masak | I'll see if I have any comments. | ||
Tene | I guess that many macros are parsed just as the name of the macro. The 'macro moose' example, for example. | ||
I need to finish with exceptions refactor in parrot first, though, I think. | 07:35 | ||
(not related, just want to get it finished) | |||
masak | nod. | ||
07:36
agentzh left
07:59
quester joined
08:05
jonasbn joined
|
|||
masak | any Japanese readers online? what does the person say? twitter.com/osa9/status/9787029741 | 08:05 | |
something about 'no sign of it'. | 08:06 | ||
lestrrat | "there's no sign of Perl6 arriving" | ||
masak | thanks. | ||
lestrrat | "there's no sign of Perl6 arriving (any time soon)" -- is probably more accurate. | 08:07 | |
08:10
iblechbot joined
|
|||
masak | I replied this: twitter.com/carlmasak/status/9815984415 | 08:10 | |
I would use Google Translate to reply in Japanese, but I don't trust it not to botch my English into something unintelligible, insulting, or both. | 08:11 | ||
jonasbn | masak: just to clarify, you need accomodation for Friday, Saturday, Sunday and Monday - right | 08:12 | |
08:12
am0c_away left
|
|||
jonasbn | ? | 08:12 | |
masak | jonasbn: right. sorry for being so unclear before. | ||
jonasbn | masak: no problem, writing the OSD ppl now, have not hear a THING from them about the hotels | 08:13 | |
I do not know whether to be concerned or not | |||
masak | huh. | ||
jonasbn: I'm working on my presentation as we speak. it makes me really look forward to giving the talk. :) | 08:14 | ||
jonasbn | great :) | ||
masak | jonasbn: before I forget: thank you for pulling this together. it's a great opportunity to meet, hack, talk and generally push Perl 6 and Rakudo forward in time for the Rakudo * release. | 08:16 | |
jonasbn | no problem, I got my Copenhagen release ;-) | 08:17 | |
masak | :-) | ||
jonasbn | one thing I have learned over the years with open source community is that it is often easier to do things yourself | 08:18 | |
I need coffee | 08:19 | ||
masak | [backlogging] fwiw, I'd expect that an optimizer would turn '@a ?? ... !! ...' and '+@a ?? ... !! ...' and '?@a ?? ... !! ...' into the same bytecode. | ||
jonasbn: yes. but there's a distinction between doing things yourself, and doing things in isolation. I certainly wouldn't be as active with Perl 6 if I were working in a vacuum. | 08:20 | ||
(cue "no, you would be asphyxiating" jokes) | |||
jonasbn | agreed | ||
well apart from the "asphyxiating" part, I have to look that up | 08:21 | ||
ah, hehehe | |||
masak | rakudo: my @a=0..*; @a[Inf]=3; say @a[Inf]; # found by lue | 08:24 | |
I mean lue++ | |||
p6eval | rakudo 588a34: OUTPUT«Cannot use negative index on arrayscurrent instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)» | ||
masak | rakudo: my @a; say @a[Inf]; | ||
p6eval | rakudo 588a34: OUTPUT«Cannot use negative index on arrayscurrent instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)» | ||
masak submits rakudobug | |||
jonasbn | masak: shouldn't you submit a test? | 08:25 | |
masak | jonasbn: I'm sorry? | ||
jonasbn | masak: nothing, I was just wondering | ||
08:26
xomas left
|
|||
moritz_ | good morning | 08:26 | |
masak | moritz_: \o | ||
jonasbn | masak: I have so much to learn at the hackathon :) | ||
masak | jonasbn: it's been proposed before. the conclusion of that discussion was that I'll happily leave it to more competent people to submit tests, and not be encumbered by a complicated bug submitting process. | ||
moritz_ | jonasbn: did you organize the accommodation? | 08:27 | |
masak | moritz_: we talked about that in the backlog. :) | ||
08:27
am0c_away joined
|
|||
masak | moritz_: seems the hotel is ping-timeouting or something. | 08:27 | |
jonasbn | moritz_: I have mailed the information to the OSD ppl, but I have not heard anything back | ||
masak | oh, the OSD people. | ||
jonasbn | yeah, hence the comment about open source community :-/ | 08:28 | |
masak | ah. :) | ||
jonasbn | :) | ||
masak | maybe you accidentally emailed the OCD people, and they've been meticulously working on a reply ever since. :P | ||
jonasbn | now for that coffee | ||
hejki | coffee is bad, drink tea :) | ||
jonasbn | hejki: no | ||
masak is more of a rooibos kinda guy | |||
hejki | i quitted coffee and it actually did increase my productivity :) | 08:29 | |
rooiboses (or how the heck you make a plural out of it) are nice, but tend to be too sweet for my likings | 08:31 | ||
and those aren't actually tea afaik, someone to back me up on this one? :) | 08:32 | ||
masak | hejki: then the unflavoured one just might be for you. | ||
hejki | :o | ||
masak | hejki: no, it's not tea. that's consistent with what I've said so far. :) | ||
hejki | i have only seen 2 flavors here in finland | ||
jonasbn | hejki: I appreciate what you are saying, but I am adicted | ||
hejki | ye. it's some shrubbery they're making it from? | ||
jonasbn: i was too, the physical symptoms stop after 5-7 days | |||
after that your body normalizes and you should see increase in productivity as well as in common alertness :) | 08:33 | ||
masak | I'm not so sure the flavoured rooibos types are so good for the environment. many are transported through Germany just to be flavoured. | ||
hejki | and it's a scientific fact that caffeine doesn't make you any more awake | ||
Su-Shee | jonasbn: ignore it, coffee has many advantages. as usal it depends on the dosage. | ||
hejki | masak: well my GF drinks some "organic rooibos" stuff, not sure how good that is for the env :P | 08:34 | |
Su-Shee | masak: by driving through germany you get flavour? cool. :) | ||
jonasbn | my only problems is, if drink too much, it ruins my concentration | ||
masak | hejki: rooibos is made from some shrubbery, yes. it's also transported by African swallows. | ||
hejki | Su-Shee: yup, the land most often makes everyone taste and smell like sausages and beer ;> | ||
masak | Su-Shee: causation/correlation :P | ||
Su-Shee | I would have called it semantics.. :) | ||
hejki | jonasbn: yup, caffeine is totally unbeneficial for human beings when addicted | ||
masak | hejki: 'organic', misnomer as it is, usually means 'good for the environment' :) | 08:35 | |
Su-Shee | we have like 20 variations of rooibos in the office. | ||
hejki | masak: yeh, usually :) | ||
masak: the stuff is still made in africa and then transported :P | |||
can't see how that's good for the environment tho :P | |||
masak | hejki: in my family, it means 'not dissolvable in water'. | ||
jonasbn | hejki, I am also addicted to the Internet and cake | ||
hejki | heh :) | ||
Su-Shee | jonasbn: let's have cake and a cup of coffee. :) | ||
hejki | jonasbn: internet addiction is not curable, cake is a lie so you can't be addicted to that | ||
jonasbn | a lie? | 08:36 | |
masak | you can be addicted to a lie. | ||
jonasbn: that's a "Portal" reference. | |||
jonasbn | portal? | ||
jonasbn is lost and addicted | |||
hejki | someone doesn't know "the cake is a lie"-meme? :o | ||
08:36
riffraff joined
|
|||
hejki | you should google and sophisticate yourself a bit | 08:37 | |
masak | jonasbn: www.youtube.com/watch?v=nd6RhzsO5js | ||
here at #perl6, we welcome people from all segments of the meme path. :) | 08:38 | ||
hejki | tbh i'd pay good money in order to forget some of the internet memes i've seen | 08:39 | |
like tubgirl/typicalmacintoshuser | |||
masak | perhaps this video better explains the meme, actually: www.youtube.com/watch?v=0pig3PbHyJY | ||
jonasbn | okay, my coffee and cake issues seem very insignificant compared to the "portal" thing you lot got going | 08:40 | |
hejki | :> | 08:41 | |
masak | now, ain't that the truth. | 08:43 | |
hejki | i haven't played portal tbh | ||
i just know the meme and i think the idea behind it is wonderful | 08:44 | ||
and reflects how modern world works | |||
your boss praises your good job without giving the words any meaning | |||
08:56
payload joined
08:57
mssm joined
09:01
pmurias joined
09:06
dakkar joined
09:07
IllvilJa left
|
|||
pugssvn | r29896 | moritz++ | test for RT #73136, stripping of leading and trailing ws in angle brackets | 09:09 | |
09:36
jonasbn left
09:38
eternaleye left
09:40
Trashlord joined
09:43
eternaleye joined
09:44
quester left
09:45
Trashlord left
|
|||
masak | so, class Child is Parent; both have a .foo method, each with a PRE block. we call $child.foo, the PRE block in Child.foo fails, but the PRE block in Parent.foo succeeds, so no exception is thrown. did I get that right? | 09:47 | |
the followup question to that is: why does it work like that, rather than, say, the PRE blocks of the methods in the class and its ancestors being &&-ed together, like the POST blocks. | 09:48 | ||
s/\.$/?/ | |||
09:53
JimmyZ joined
09:54
JimmyZ left
09:55
JimmyZ joined
09:56
JimmyZ left,
lestrrat is now known as lest_away
10:07
Trashlord joined
10:14
snarkyboojum left
10:18
mikehh joined
10:26
orafu left,
orafu joined
10:33
pmurias left
10:40
ruoso left
|
|||
moritz_ | masak: substitution principle | 10:46 | |
masak | I'm listening. | ||
moritz_ | masak: the child method substitutes the parent method, so it has to accept at least what the parent method accepts | ||
it can only weaken the precondition | |||
masak | ah. | ||
so the PRE in Child is interpreted as a weaker alternative? | 10:47 | ||
that does make sense. | |||
Liskov strikes again! :) | |||
10:47
IllvilJa joined
10:51
hanekomu left
11:09
lest_away is now known as lestrrat
11:27
lichtkind joined
|
|||
lichtkind | cognominal: hi | 11:31 | |
11:40
mikehh left,
mikehh joined
11:43
payload left
11:50
kfo joined
|
|||
cognominal | lichtkind, hi | 11:52 | |
lichtkind | cognominal: :) | ||
11:57
iblechbot left
|
|||
jnthn | o/ | 11:59 | |
lichtkind | jnthn: hai | 12:04 | |
12:13
IllvilJa left
|
|||
colomon | \o | 12:13 | |
lichtkind | jnthn: ping | 12:20 | |
12:21
cognominal left
|
|||
lichtkind | masak: ping | 12:23 | |
jnthn | lichtkind: pong | 12:26 | |
12:29
snearch joined
12:30
b_jonas joined
12:34
ruoso joined
12:37
synth left
|
|||
masak | lichtkind: pong | 12:38 | |
12:40
synth joined
12:41
[synth] joined
12:42
mikehh left,
mikehh joined
12:44
ruoso left
12:49
takadonet joined
|
|||
takadonet | morning all | 12:49 | |
12:49
cognominal joined
|
|||
masak | takadonet: \o | 12:49 | |
12:59
ruoso joined
13:01
payload joined
13:05
am0c_away is now known as am0c
13:06
ignacio_ joined
13:12
ruoso left
13:15
jaldhar left
13:19
iblechbot joined,
jaldhar joined
|
|||
colomon | rakudo: my sub abc (:$äöü) { 1000 + $äöü }; say abc(äöü => 42) | 13:20 | |
p6eval | rakudo 588a34: OUTPUT«Malformed UTF-8 stringcurrent instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)» | ||
masak | rakudo: $ä | 13:21 | |
p6eval | rakudo 588a34: OUTPUT«Symbol '$\xE4' not predeclared in <anonymous>current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)» | ||
masak | rakudo: my $ä | ||
p6eval | rakudo 588a34: ( no output ) | ||
pugssvn | r29897 | colomon++ | [t/spec] Add single fudge so Rakudo parses this. | ||
jnthn | There's something about unicode and named params. :-/ | ||
It's odd because the code gen looks sane. | |||
masak | rakudo: my $äöü | ||
p6eval | rakudo 588a34: ( no output ) | ||
13:22
[synth] left
|
|||
jnthn | rakudo: my $łöł | 13:22 | |
p6eval | rakudo 588a34: ( no output ) | 13:23 | |
masak | LOL: The Polish-German edition. | 13:24 | |
pmichaud | I'm guessing parrotbug. | ||
(good morning, #perl6) | |||
colomon | That was the only test (well, pair of tests) failing in S02-lexical-conventions/unicode.t. I've fudged and will push the test as soon as my spectest finishes. | ||
m-locks | gm pm | ||
colomon | o/ | 13:25 | |
jnthn | hi pmichaud | ||
masak | hi pmichaud++ | 13:26 | |
colomon | hmmm.... we need something like a thousand tests back a week to get back to alpha's passing level in time for R*? | 13:30 | |
dalek | kudo: 1bd66da | (Solomon Foster)++ | t/spectest.data: Turn on S02-lexical-conventions/unicode.t. |
13:31 | |
jnthn | colomon: Yes, but S05-* has LOADS. | ||
That can probably be won back relatively quickly-ish. | |||
colomon | oooo, 4000+, I see... | ||
13:34
mikehh left
|
|||
colomon | rakudo: say "\x[6211" | 13:34 | |
p6eval | rakudo 588a34: OUTPUT«\x[6211» | ||
colomon | S02-literals/char-by-number.t has that in a eval_dies_ok test.... master just seems to shrug and get on with life instead of dying. | 13:35 | |
13:35
cognominal left
13:37
mikehh joined
|
|||
colomon | rakudo: say "\123" | 13:37 | |
p6eval | rakudo 588a34: OUTPUT«\123» | ||
m-locks | oh noes | 13:38 | |
masak | alpha: "\123" | ||
p6eval | alpha 30e0ed: OUTPUT«\123 form deprecated, use \o123 instead at line 10, near "\\123\""in Main (file <unknown>, line <unknown>)» | 13:39 | |
masak submits rakudobug | |||
lichtkind | masak++ | 13:42 | |
masak | ;) | ||
pugssvn | r29898 | colomon++ | [t/spec] Fudge to work around masak's latest bug. | 13:44 | |
13:46
mikehh left
13:47
snearch left,
mikehh joined,
EXAAFZJ9 joined
|
|||
colomon | rakudo: say qw/$foo $bar/ | 13:49 | |
p6eval | rakudo 588a34: OUTPUT«Confused at line 11, near "say qw/$fo"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
13:49
jaldhar left,
jaldhar joined
13:50
jaldhar left
13:51
jaldhar joined
13:54
mikehh_ joined
13:55
mikehh left
13:56
SmokeMachine joined
13:58
alester joined
14:00
payload1 joined
14:02
payload left
|
|||
masak | anyone else get just an empty page on npw2010.fsfi.is/ ? | 14:05 | |
colomon | masak: me | ||
masak | hokay. thanks. | ||
jnthn | Oh no, masak breaks another thing | ||
;-) | |||
masak | it wasn't me, I promise! | ||
jnthn | hehe :-) | ||
yay iceland :-) | 14:06 | ||
jnthn expects it to be a really cool conference. | |||
m-locks | yes, its empty | ||
masak | jnthn: I'm seriously considering going there. :) | ||
jnthn | laik srsly? | ||
colomon | rakudo: say Mu eq Mu | ||
p6eval | rakudo 588a34: OUTPUT«No applicable candidates found to dispatch to for 'infix:<eq>'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
jnthn | ng: Object eq Object | 14:07 | |
oops | |||
alpha: Object eq Object | |||
p6eval | alpha 30e0ed: ( no output ) | ||
jnthn | ... | ||
D'oh. | |||
Wonder if master had eq written in PIR | |||
m-locks | rakudo: say Mu ~~ Mu | ||
p6eval | rakudo 588a34: OUTPUT«1» | ||
colomon | rakudo: say Int eq Int | 14:08 | |
p6eval | rakudo 588a34: OUTPUT«1» | ||
jnthn | colomon: The siggy of infix:<eq> is (Any, Any) or so. | ||
So Mu won't bind. | |||
colomon | ah. | ||
easy fix? | |||
jnthn | Not meant to be fixed. | ||
That's why my $a; defaults to Any rather than Mu now :-) | |||
14:08
alester left
|
|||
colomon | hmmmm... guess this test is broken, then. | 14:09 | |
jnthn | Maybe Any eq Any is a more sensible test now. | ||
14:11
IllvilJa joined
|
|||
colomon | rakudo: say sqrt(2).[perl | 14:12 | |
p6eval | rakudo 588a34: OUTPUT«Confused at line 11, near "say sqrt(2"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
colomon | rakudo: say sqrt(2).perl | ||
p6eval | rakudo 588a34: OUTPUT«1.4142135623731» | ||
14:12
mikehh_ left
|
|||
colomon | rakudo: say sqrt(2).perl.eval | 14:12 | |
p6eval | rakudo 588a34: OUTPUT«» | ||
colomon | rakudo: say 1.4142135623731 | ||
p6eval | rakudo 588a34: OUTPUT«No applicable candidates found to dispatch to for 'infix:<div>'current instr.: 'perl6;Rat;new' pc 317124 (src/gen/core.pir:37411)» | ||
colomon | arrrgh. | ||
m-locks | lol | 14:13 | |
colomon | rakudo: say "}".perl | 14:16 | |
p6eval | rakudo 1bd66d: OUTPUT«"}"» | ||
colomon | rakudo: say "\}".perl | ||
p6eval | rakudo 1bd66d: OUTPUT«"\\}"» | ||
colomon | rakudo: say "\{".perl | ||
p6eval | rakudo 1bd66d: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 11current instr.: 'perl6;Regex;Cursor;FAILGOAL' pc 1664 (ext/nqp-rx/src/stage0/Regex-s0.pir:907)» | ||
colomon | rakudo: say '{'.perl | ||
p6eval | rakudo 1bd66d: OUTPUT«"\{"» | 14:17 | |
14:17
ignacio_ left
|
|||
colomon | rakudo: say '{'.perl.eval | 14:17 | |
p6eval | rakudo 1bd66d: OUTPUT«» | ||
colomon | rakudo: say "hello".perl.eval | 14:19 | |
p6eval | rakudo 1bd66d: OUTPUT«hello» | ||
colomon | rakudo: say '$a @string %with &sigils()'.perl | ||
p6eval | rakudo 1bd66d: OUTPUT«"\$a \@string \%with \&sigils()"» | ||
14:19
jonasbn joined
|
|||
colomon | rakudo: say True.perl | 14:22 | |
p6eval | rakudo 1bd66d: OUTPUT«1» | ||
colomon suspects he can fix this one easily. | 14:23 | ||
yup. | 14:29 | ||
pugssvn | r29899 | colomon++ | [t/spec] Fudge for Rakudo. | ||
14:34
cognominal joined
14:36
jaldhar left,
jonasbn left,
JimmyZ joined
|
|||
lichtkind | colomon++ | 14:39 | |
colomon: are you interested in hackin on november? | |||
colomon | lichtkind: in vague theory, but in practice I'm pretty sure I don't have the time. :) | 14:40 | |
masak | I know the feeling. :) | ||
lichtkind | :) | ||
we all here :) | |||
jnthn | ETOOMUCHTOHACKON | 14:41 | |
colomon | rakudo: sub rt69516( :f($foo) ) { "You passed '$foo' as 'f'" }; &rt69516.signature.perl ~~ m/ ':f(' \s* '$foo' \s* ')' / | 14:42 | |
p6eval | rakudo 1bd66d: ( no output ) | ||
colomon | rakudo: sub rt69516( :f($foo) ) { "You passed '$foo' as 'f'" }; say &rt69516.signature.perl ~~ m/ ':f(' \s* '$foo' \s* ')' / | ||
p6eval | rakudo 1bd66d: OUTPUT«:f($foo)» | ||
colomon | Huh. I've broken that someone locally. | 14:43 | |
> sub rt69516( :f($foo) ) { "You passed '$foo' as 'f'" }; say &rt69516.signature.perl ~~ m/ ':f(' \s* '$foo' \s* ')' | |||
Confused at line 1, near "say &rt695" | |||
any notions? I think all I've done is define Bool.perl.... | 14:44 | ||
crazy, removing Bool.perl fixes it... | 14:53 | ||
rakudo: sub rt69516( :f($foo) ) { "You passed '$foo' as 'f'" }; say &rt69516.signature.perl | 14:55 | ||
p6eval | rakudo 1bd66d: OUTPUT«:(Any :f($foo)» | ||
14:56
b_jonas left
|
|||
colomon | > sub rt69516( :f($foo) ) { "You passed '$foo' as 'f'" }; say &rt69516.signature.perl | 14:57 | |
:(Any :f($foo where Bool::True) | |||
jnthn: help? | 14:58 | ||
14:58
Guest73108 left
14:59
bacek joined
|
|||
bacek | o hai | 15:00 | |
colomon | o/ | ||
bacek | rakudo: foo(/\b/, "{}") | ||
p6eval | rakudo 1bd66d: OUTPUT«Null PMC access in get_string()current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
bacek | rakudo: foo(/\b/, "{$1}") | ||
p6eval | rakudo 1bd66d: OUTPUT«Method 'postcircumfix:<[ ]>' not found for invocant of class ''current instr.: '!postcircumfix:<[ ]>' pc 10518 (src/builtins/Role.pir:45)» | ||
bacek | interesting... | 15:01 | |
15:04
JimmyZ left
|
|||
jnthn | colomon: Oh, may be some hack in Signature.perl. | 15:05 | |
colomon | jnthn: finally found the code.... no idea what's the problem, though | ||
jnthn | colomon: let me look | ||
15:05
eternaleye left
|
|||
jnthn | (sorry, packing is rather consuming me atm) | 15:05 | |
colomon: line 61 of Signature.pm is RONG. | 15:06 | ||
15:06
ruoso joined
|
|||
jnthn | s/'1'/'Bool::True'/ should do it. | 15:07 | |
15:07
mikehh_ joined
|
|||
colomon | trying. | 15:08 | |
15:09
zostay joined
|
|||
colomon | \o/ | 15:10 | |
15:11
stepnem joined,
abra joined
|
|||
colomon | will push as soon as spectest passes (he said, fingers crossed) | 15:13 | |
lichtkind | hacking should only be fun !! | 15:14 | |
15:14
nihiliad joined
15:15
uniejo left,
bacek left
15:18
wasy left
|
|||
jnthn | Wow. While packing I just found tokens for the Minsk and Moscow metros! | 15:20 | |
15:21
Salada345 joined
15:23
wasy joined
|
|||
colomon | okay, changes pushed | 15:29 | |
afk | |||
15:30
hanekomu joined
|
|||
dalek | kudo: 9efead6 | (Solomon Foster)++ | src/core/Bool.pm: Add Bool.perl. |
15:33 | |
kudo: bbe9441 | (Solomon Foster)++ | t/spectest.data: Turn on S02-literals/char-by-number.t and S02-names_and_variables/perl.t. |
|||
kudo: af0424a | (Solomon Foster)++ | src/core/Signature.pm: "Bool::True" instead of "1", as per jnthn. |
|||
15:46
Patterner left
15:47
Psyche^ joined,
Psyche^ is now known as Patterner
15:52
pmurias joined
|
|||
pmurias | hello | 15:52 | |
lichtkind | pmurias: hai | ||
15:54
lichtkind left,
ignacio_ joined
16:03
riffraff left
16:04
justatheory joined,
riffraff joined
16:05
alester joined
16:10
f00li5h[HireMe] left
16:12
abra left
16:13
uniejo joined
16:15
jaldhar joined
16:25
f00li5h[HireMe] joined
|
|||
masak | slow business today. :) | 16:40 | |
can someone give me a really juicy use case for Perl 6 macros? | 16:41 | ||
Su-Shee | can't you take a famous lisp macro use case and translate it? | ||
masak | good idea. | 16:42 | |
can someone give me a really juicy LISP macro use case? :P | |||
Su-Shee | *haha* :)) | ||
16:42
am0c left
|
|||
masak | outsourcing ftw. :) | 16:42 | |
jnthn | Only if it produces results. :-) | 16:43 | |
Su-Shee | I have to prepare perl 6 developer lessons. | ||
16:45
xomas joined,
xomas left,
xomas joined
|
|||
masak | there actually seems to be a classic LISP use case. something called with-transaction, that makes sure to always do either commit or proper rollback. | 16:50 | |
actually, there's seemingly a whole family of those with-* macros: with-open-file, with-output-to-string, with-timeout, etc. weitz.de/macros.lisp | 16:51 | ||
TimToady | obviously we need metamacros... | 16:52 | |
16:53
payload1 left
|
|||
TimToady | we could call them, oh, monads, or something | 16:54 | |
masak hides | |||
Tene | weitz.de/macros.lisp details with-transaction | 16:55 | |
I don't see what the advantage of with-transaction as a macro is over with-transaction as a function | |||
masak | I suppose the same could be done with phasers in Perl 6. | 16:56 | |
TimToady | when all you have is a macro, everything starts looking like an AST | ||
masak | could be worse :) | ||
colomon | heh. | 16:57 | |
16:57
pmurias left
|
|||
colomon | one thing I've been wondering... an awful lot of the trig functions are exactly identical modulo a string change. | 16:57 | |
so Any.sin is | |||
multi method sin($x) { $x.Num.sin; } | 16:58 | ||
Any.cos is | |||
multi method cos($x) { $x.Num.cos; } | |||
etc. | |||
(actually, that leaves out the $base argument, but the end result is exactly the same.) | |||
It would be pretty awesome if Perl 6 had a way to say | |||
masak | can that be made into a macro? | ||
that would be kinda neat? | 16:59 | ||
s/\?/./ | |||
colomon | for <sin cos tan etc> -> $function multi method $function($x) { $x.Num.$function } | ||
Yeah, I don't know if that's a macro thing or not. | |||
but thought it might be worth mentioning. :) | |||
TimToady | problem is getting a run-time statement to poke the right thing into the right lexical scope | 17:00 | |
jnthn | Macro would be desirable. | ||
Because...what TimToady sai.d | |||
TimToady | a BEGIN can make it run at the right time, but we don't have indirection in declarative names | 17:01 | |
masak | macro add_trig($name) { multi method {{{$name}}}($x) { $x.Num.{{{$name}}} } } | ||
TimToady | multi method ::($function)() or some such | ||
masak | would that work? | ||
TimToady | no | ||
masak suspected that :) | |||
I'm kind of a Perl 6 macro n00b. | 17:02 | ||
TimToady | you're using quasi unquoting gwithout a quasi quote | ||
masak | oh. | ||
masak reads up | |||
macro add_trig($name) { quasi { multi method {{{$name}}}($x) { $x.Num.{{{$name}}} } } } | 17:03 | ||
how about now? | |||
TimToady | but it looks like you're trying to do an unhygienic macro anyway with text substitution | ||
masak | that sounds uncomfortably accurate :) | 17:04 | |
TimToady | I think quasi unquotes only work where certain grammatical things are expected, and a name may not be one of them | ||
masak | so, is there no good way to do this, or have I just not stumbled upon it yet? | ||
TimToady | at a minimum, you might have to convert $name into something different for the one spot than the other | ||
deflongname vs methodname, or some such | 17:05 | ||
whatever it is that the parser expects at that point | 17:06 | ||
Tene | macro statement_control:sym<when>($cond, $body) { quasi { if $_ ~~ {{{ $cond }}} { {{{ $body }}} } } } | 17:07 | |
TimToady | otoh, if we did have the ::() syntax as a declarative name, then you could just use the macro as a fancy BEGIN | ||
Tene | Look, it has a lot of trailing close symbols! It *must* be lisp! | ||
Oh, I remember my traditional example now. | 17:08 | ||
masak | satisfied that I've created an interesting discussion, I now take my leave. :) I'm going swimming. | ||
Tene | debug(get_expensive_but_unnecessary($arg)) | ||
17:09
masak left
|
|||
Tene | if debug is a macro that expands to a conditionally-evaluated block, you don't need to stick the function call in a closure. | 17:09 | |
TimToady | macro add_trig($name) { quasi { multi method ::({{{$name}}}) ($x) { $x.Num."{{{$name}}}" } } } or some such | ||
not that unquote would work in a "" | |||
macro add_trig($name) { quasi { multi method ::({{{$name}}}) ($x) { $x.Num."{ {{{$name}}} }" } } } or some such | 17:10 | ||
Tene | macro debug($arg) { quasi { if $*DEBUG { log('debug',{{{$arg}}}) } } } | ||
TimToady | no problem in CS that can't be solved by another layer of curlies... | ||
colomon | except the problem of too many curlies! ;) | ||
TimToady | yes, well, we'll change 'em all to parens | ||
that should make it readable... :/ | 17:11 | ||
Tene | macro open($n) { '{' x $n } | ||
etc. | |||
colomon | Ugh. If I wanted that, I'd just program in LISP. | ||
TimToady | speaking of FP, I think the FP view is what will be the sane approach to the array/list/iterator thing | 17:13 | |
in the FP view, @foo is just a pointer into a list that you want to keep around so you can [$n] it | 17:14 | ||
and whether or not @foo keeps values is entirely a GC issue | |||
and @foo.grep can throw away @foo if static analysis says that we don't need @foo afterwards, and then the GC cleans it | 17:15 | ||
and iterators are always just pointers into an existing list, so in a sense are always cloned | 17:16 | ||
diakopter | rakudo: {{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{ | 17:18 | |
p6eval | rakudo af0424: OUTPUT«maximum recursion depth exceededcurrent instr.: 'perl6;PAST;Op;pirop' pc 804 (compilers/pct/src/PAST/Node.pir:385)» | ||
colomon | you had me nodding up until that last one. | ||
TimToady | so both shift and get are basically just following CDR in the FP mentality | ||
colomon | right now iterators are very definitely NOT always pointers into an existing list. | 17:19 | |
and a whole lot of the current concepts are broken if that is the case. | |||
TimToady | it only exists in the abstract :) | ||
and the difference in this view between @ and $ in this view is not in the binding, but in whether you clone when you ask for an iterator | 17:20 | ||
$ doesn't, and @ does. | |||
more generally, Iterable clones whenever you pull and Interator from it | 17:21 | ||
s/Int/It | 17:22 | ||
colomon | "whenever you pull an Iterator" ? | ||
(ie s/and/an/ too?) | 17:23 | ||
TimToady | nod | ||
Iterable.List if we lump all iterators as List | 17:24 | ||
colomon | Hmmm.... I like the cleanness of the idea, but I'm not convinced it's the right thing to do in a non-FP environment. | ||
TimToady | but we already tell people they can't change an array while iterating it, or undefined things happen | ||
colomon | or rather, it seems doable, but might be a terrible can of worms for an implementation. | ||
TimToady | so the array is effectively immutable while iterating | ||
colomon | I'm thinking of the lines("hugefile") case. | 17:25 | |
seems like your idea suggests we are likely to cache the lines read in, unless we can somehow prove we won't need them again. | |||
TimToady | that's what @ promises, I think, in which case don't use @ | 17:26 | |
colomon | but $ wouldn't promise that? | ||
TimToady | or we spec when the static analysis can throw undef @ | ||
let's say, that's what Positional promises | 17:27 | ||
and @ requires a Positional by binding or coercing | |||
so an Array is still intrinsically Positional, even if passed as $ | |||
but binding a list to @ needs a Positional upgrade/delegation of some sort | 17:28 | ||
which is sort of where we started, with binding @ | |||
colomon | That sounds like a reasonable approach to me. | 17:29 | |
TimToady | but that upgrade is probably not automatic in binding, but the Any/Cool sort of upgrade | ||
a non-positional just fails to bind to @ | 17:30 | ||
seems pretty clean | |||
will think more about this, of course... | 17:31 | ||
but I rather like the notion of information destruction staying in the domain of GC, to the extent we can make that automatic | |||
and multiple iterators pointing into the same overall data (likely with some sops thrown in here and there for mutability) | 17:32 | ||
possibly some COW semantics if we know we're iterating through something mutable | 17:33 | ||
colomon | I presume a raw iterator would have to be upgraded to an "iterator with memory" to handle multiple iterators (just like it would need to handle Positional). | ||
TimToady | for now we can just say, if you iterate and mutate, it's erroneous | 17:34 | |
that's the Coolish @ upgrade; you poke the iterator in as the imaginary part of the @ | |||
rather, a clone of that iterator, i think | 17:35 | ||
colomon | has to be the original iterator I think. | ||
TimToady | cloning iterators becomes a non-problem with immutable data | ||
colomon | many iterators aren't clonable. | ||
TimToady | the ones that aren't have to be used carefully | ||
colomon | like gather loop { take rand; } | 17:36 | |
TimToady | it will always be possible to break iterator cloning with non-idempotent iterators | ||
17:36
payload joined
|
|||
TimToady | but the clean thing is to require people to eager/batch those to the extent that cloning would break things | 17:37 | |
colomon | that's why I was suggesting the @ upgrade, as you call it -- it essentially provides the memory you need to clone the iterator. | ||
TimToady | but I think that can be explicit in the Anyish upgrade | ||
doesn't have to be magical binding, except to fail to bind the non-Positional to @ | 17:38 | ||
diakopter | should I consider it a bad thing that I don't understand any of the last few hundred msgs here? | ||
TimToady | we can think about making binding more magical if we find we're writing too many upgrade methods | ||
diakopter tries to lower my obtuse dial .oO( which way does it turn again? ) | |||
TimToady | diakopter: you need to have read several days of backlog | 17:39 | |
and know all of OO and FP :) | |||
diakopter | hm. | ||
TimToady | helps to be omnicient too | ||
*omniscient | |||
diakopter | speaking of. | ||
17:40
payload left,
payload joined
|
|||
diakopter | all these newfangled terms | 17:40 | |
TimToady | so basically, in this view, @foo := 1..1000 simply fails to bind | 17:43 | |
@foo := [1..1000] would be fine though | 17:46 | ||
colomon | oooooo, TimToady++ | ||
diakopter | does "fails to bind" mean run-time error or other-time error? | 17:47 | |
TimToady | run-time, primarily, though the compiler is always allowed to carp about things it knows will fail | ||
(see type theory :) | |||
and Haskell, for an extreme example :) | 17:48 | ||
diakopter | rakudo: [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ | 17:50 | |
p6eval | rakudo af0424: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | ||
diakopter | man is but beast | ||
17:52
jaldhar left
17:53
szabgabx joined,
lichtkind joined
17:54
PerlJam joined
|
|||
TimToady | std: [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ | 18:00 | |
p6eval | std 29899: OUTPUT«===SORRY!===Unable to parse array composer; couldn't find final ']' at /tmp/olFPus3TCM line 1 (EOF):------> [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[⏏<EOL> expecting any of: prefix or term semicolon list statement listFAILED | ||
..00:01 115m» | |||
18:00
dakkar left
|
|||
TimToady | ah, yes, it limits context to 40 chars on either side | 18:02 | |
18:06
b_jonas joined
18:07
ShaneC joined
|
|||
diakopter | rakudo: say "d" ~~ m{{{::booyah}}d} | 18:07 | |
p6eval | rakudo af0424: OUTPUT«d» | ||
diakopter | std: say "d" ~~ m{{{::booyah}}d} | 18:08 | |
p6eval | std 29899: OUTPUT«===SORRY!===Unrecognized regex metacharacter (must be quoted to match literally) at /tmp/jRPrEPEi4b line 1:------> say "d" ~~ m{{{::booyah⏏}}d} expecting any of: quantifier regex atomFAILED 00:01 106m» | ||
diakopter | I don't know which to believe | 18:09 | |
18:09
f00li5h[HireMe] left,
Chillance joined
|
|||
colomon | rakudo: my $a; $a += 1; say $a | 18:10 | |
p6eval | rakudo af0424: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)» | ||
colomon | That's a new one on me. | ||
rakudo: my $a;say $a + 1; say $a | 18:11 | ||
p6eval | rakudo af0424: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)» | ||
diakopter | rakudo: my Int $a; $a += 1; say $a | ||
p6eval | rakudo af0424: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)» | ||
diakopter | hm | ||
colomon | I'm betting there's a check for Mu in there which now should be a check for Any. | 18:12 | |
rakudo: my $a = Mu; say $a + 1 | |||
p6eval | rakudo af0424: OUTPUT«No applicable candidates found to dispatch to for 'infix:<+>'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | rakudo: my $a; say +$a; | 18:13 | |
p6eval | rakudo af0424: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)» | ||
18:15
jaffa4 joined
18:16
jaldhar joined,
cosimo joined
18:17
Trashlord left
18:19
f00li5h[HireMe] joined
|
|||
colomon | rakudo: my My $a; say $a + 1 | 18:19 | |
p6eval | rakudo af0424: OUTPUT«In "my" declaration, typename My must be predeclared (or marked as declarative with :: prefix) at line 11, near " $a; say $"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
colomon | rakudo: my Mu $a; say $a + 1 | 18:20 | |
p6eval | rakudo af0424: OUTPUT«No applicable candidates found to dispatch to for 'infix:<+>'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | rakudo: my Any $a; say $a + 1 | ||
p6eval | rakudo af0424: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)» | ||
colomon | rakudo: my Mu $a; say +$a | 18:22 | |
p6eval | rakudo af0424: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)» | ||
colomon | rakudo: my Any $a; say +$a | ||
p6eval | rakudo af0424: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)» | ||
18:24
parrot joined
18:28
ruoso left
18:36
somekool joined
18:37
cognominal left
18:38
cosimo left
18:40
payload left
18:43
ruoso joined
18:53
colomon left
18:56
parrot left,
_Jedai_ joined
18:57
bkeeler_ joined
19:01
jaffa4 left,
jaffa4 joined
19:02
f00li5h[HireMe] left,
cosimo joined
19:05
f00li5h[HireMe] joined
19:06
uniejo left
19:07
parrot joined,
stephenlb joined
19:13
colomon joined
19:14
ignacio_ left
|
|||
pugssvn | r29900 | colomon++ | [t/spec] Convert a couple of Rats to the Nums they were intended to be. | 19:21 | |
19:21
hercynium joined
|
|||
colomon | rakudo: my @foo; say @foo[0].WHAT | 19:22 | |
p6eval | rakudo af0424: OUTPUT«Proxy()» | 19:23 | |
colomon | rakudo: my $foo; say $foo.WHAT | ||
p6eval | rakudo af0424: OUTPUT«Any()» | ||
19:25
pyrimidine joined
|
|||
pugssvn | r29901 | colomon++ | [t/spec] Refudge for Rakudo, and change Mu to Any in descriptions according to latest spec change. | 19:26 | |
19:27
meppl joined
|
|||
pugssvn | r29902 | colomon++ | [t/spec] Add fudge, change to reflect 2.0's new status as Rat, add two new tests which do what that test was originally intended to do. | 19:29 | |
colomon | rakudo: my @a = 1, 3, 2; @a .= sort; say @a | 19:31 | |
19:31
riffraff left
|
|||
p6eval | rakudo af0424: OUTPUT«123» | 19:31 | |
colomon | rakudo: $_ = -42; .=abs; | 19:32 | |
p6eval | rakudo af0424: OUTPUT«Cannot assign to readonly valuecurrent instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)» | ||
colomon | rakudo: say ~(1, 2, 3) | 19:33 | |
p6eval | rakudo af0424: OUTPUT«3» | ||
colomon | rakudo: my @b = <foo 123 bar 456 baz>; @b.grep({/<[a..z]>/})}.eager.perl.say | 19:34 | |
p6eval | rakudo af0424: OUTPUT«Confused at line 11, near "}.eager.pe"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
colomon | my @b = <foo 123 bar 456 baz>; @b.grep({/<[a..z]>/}).eager.perl.say | ||
rakudo: my @b = <foo 123 bar 456 baz>; @b.grep({/<[a..z]>/}).eager.perl.say | 19:35 | ||
p6eval | rakudo af0424: OUTPUT«("foo", "123", "bar", "456", "baz")» | ||
colomon | rakudo: say "123" ~~ /<[a..z]>/ | ||
p6eval | rakudo af0424: OUTPUT«» | ||
19:35
rgrau joined
19:40
ignacio_ joined
|
|||
pugssvn | r29903 | colomon++ | [t/spec] Unfudge a bunch of tests, fudge a bunch more. | 19:41 | |
19:52
masak joined
|
|||
masak | o/ | 19:52 | |
dalek | kudo: 64e4d36 | (Solomon Foster)++ | t/spectest.data: Turn on bit.t, equality.t, increment.t, and inplace.t, all in S03-operators. |
||
diakopter | masak: | 19:54 | |
masak | diakopter: | 19:55 | |
pugssvn | r29904 | colomon++ | [t/spec] Unfudge a couple of passing tests. | 19:56 | |
20:00
pochi joined
|
|||
diakopter | rakudo: say (^Inf).WHAT | 20:01 | |
p6eval | rakudo af0424: OUTPUT«Range()» | ||
diakopter | rakudo: say (^Inf).iterator | ||
p6eval | rakudo af0424: ( no output ) | ||
masak | what should that produce? | ||
diakopter | dunno | 20:02 | |
std: say (^^0) | 20:04 | ||
p6eval | std 29903: OUTPUT«===SORRY!===Preceding context expects a term, but found infix ^^ instead at /tmp/4TycNZNoIV line 1:------> say (^^⏏0)FAILED 00:01 105m» | ||
diakopter | rakudo: say (^^0) | ||
p6eval | rakudo af0424: OUTPUT«» | ||
masak submits rakudobug | |||
diakopter | :) | ||
did that get a [WEIRD] marker? | 20:05 | ||
masak | hm... good question. | ||
diakopter | ltm fail, it seems | ||
masak | I think it gets a [WEIRD] marker. it doesn't directly affect any sensible user. :) | 20:06 | |
colomon | rakudo: say (^Inf).batch(10).perl | ||
p6eval | rakudo af0424: OUTPUT«Method 'batch' not found for invocant of class 'Range'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | rakudo: say (^Inf).iterator.batch(10).perl | ||
TimToady | there's a specific rule disallowing prefix:<^^> | ||
p6eval | rakudo af0424: OUTPUT«(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)» | ||
diakopter | colomon: ah | ||
TimToady | token prefix:sym<^^> | ||
{ <sym> <.badinfix> <O(|%symbolic_unary)> } | |||
20:07
riffraff joined
|
|||
colomon | diakopter: I guess an iterator doesn't properly stringify, fails or somesuch? | 20:07 | |
25276 passing tests now. | 20:09 | ||
masak | \o/ | ||
colomon++ | 20:10 | ||
colomon | That's today's share of the deathmarch to 35000 done. ;) | 20:11 | |
20:11
ruoso left
|
|||
jnthn | .oO( But I don't want to die in April! That means I miss the Perl Workshop in Iceland! ) |
20:12 | |
20:12
masak left
20:16
jaldhar left
20:17
colomon left,
colomon joined
|
|||
pugssvn | r29905 | lwall++ | [STD] make indirect methods not complain like they used to didn't | 20:19 | |
TimToady | std: foo 42: | ||
p6eval | std 29903: OUTPUT«Undeclared routine: 'foo' used at line 1ok 00:01 106m» | ||
TimToady | that should fix itself now | ||
20:22
payload joined
|
|||
colomon | jnthn: Any thoughts on the +Mu / +Any issue? | 20:23 | |
alpha: my $a; say +$a | 20:25 | ||
p6eval | alpha 30e0ed: OUTPUT«Use of uninitialized value0» | ||
colomon | rakudo: my $a; say +$a | ||
p6eval | rakudo 64e4d3: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)» | ||
PerlJam | That "Use of type object..." message is our new "Null PMC access" message :) | 20:29 | |
20:35
payload left
20:37
riffraff left
|
|||
jnthn | colomon: not immediately, but I kinda have a sizable distraction at the moment, so I don't have any ideas about much... :-/ | 20:39 | |
colomon | PerlJam: It's a perfectly sensible message here -- it is a type object, and we're trying to use it as a value. | ||
20:40
SmokeMachine left
20:41
jonasbn joined,
SmokeMachine joined
20:43
jaldhar joined
20:44
jaldhar left,
jaldhar joined
20:45
ash_ joined
|
|||
ash_ | hmmm, i just found an odd bug | 20:48 | |
TimToady | do tell | 20:50 | |
ash_ | i typed: say (1.8.Num + 0.1).fmt("%.20f") in to the command line perl6, after doing it 2 or 3 times it would give me: Unable to coerce value for '$str' from Str to signature; no coercion method defined instead of the answer | ||
it worked 2 or 3 times (kinda inconsistent) then it died, i can't seem to repeat it without the command line perl6 | 20:51 | ||
jnthn | huh, I thought I fixed that bug yesterday. | ||
ash_ | oh | ||
maybe i haven't updated | |||
jnthn | ash_: Are you running latest? | ||
Ah, ok | |||
ash_ | let me check | ||
nome, i was not, nevermind then | |||
jnthn | If you're older than 4d8935ee8218862a611fbd09e2da8980aa88b9e7 then it's probably just that. | 20:52 | |
ash_ | rakudo: say (1.8.Num + 0.1).fmt("%.20f"); say (1.8 + 0.1).fmt("%.20f"); # is the difference because 1.3 is normally a Rat not a Num? | ||
p6eval | rakudo 64e4d3: OUTPUT«1.900000000000000133231.89999999999999991118» | ||
ash_ | s/1.3/any decimal/ | 20:53 | |
TimToady | yes, presumably | 20:54 | |
ash_ | gotcha, just curious | 20:55 | |
TimToady | rakudo: say 1.9.WHAT | ||
p6eval | rakudo 64e4d3: OUTPUT«Rat()» | ||
TimToady | rakudo: 1.9.fmt("%.20f").say | ||
p6eval | rakudo 64e4d3: OUTPUT«1.89999999999999991118» | ||
TimToady | rakudo: 1.9.Num.say | 20:56 | |
p6eval | rakudo 64e4d3: OUTPUT«1.9» | ||
TimToady | uses a smaller %f | ||
ash_ | ah, i guess i could of been more direct about it, i thought it had to do with casting internally, but i guess not | ||
rakudo: 1.9.Num.fmt("%.20f").say; | |||
p6eval | rakudo 64e4d3: OUTPUT«1.89999999999999991118» | ||
ash_ | hmm | 20:57 | |
TimToady | fmt is already converting to float, so the Num is redundant | ||
well, other order, but you know what I mean | |||
ash_ | yeah | ||
%f eventually converts to a float/double in C somewhere under the hood | 20:58 | ||
and thats when it gets inaccurate (probably) when compared to a rat i'd imagine | |||
20:58
jaffa4 left
|
|||
ash_ | rakudo: (1.8 + 0.1.Num).fmt("%.20f").say; | 20:59 | |
p6eval | rakudo 64e4d3: OUTPUT«1.90000000000000013323» | ||
21:00
ignacio_ left
|
|||
pugssvn | r29906 | colomon++ | [t/spec] Fudge failing function. | 21:09 | |
21:11
SandroToronto joined
21:17
tjc joined
21:19
jonasbn left
21:20
tlb joined
|
|||
colomon | so.... is there really supposed to be a so method? | 21:20 | |
alpha: say 10.so | 21:22 | ||
p6eval | alpha 30e0ed: OUTPUT«Method 'so' not found for invocant of class 'Int'in Main (file src/gen_setting.pm, line 324)» | ||
21:22
snarkyboojum joined
|
|||
TimToady | std: foo 42: | 21:24 | |
p6eval | std 29905: OUTPUT«ok 00:01 108m» | ||
TimToady | that's better | ||
ash_ | whats that supposed to mean? is that method foo where self is 42? (kinda guessing...) | 21:25 | |
TimToady | yes, the colon makes 42 the invocant | ||
b_jonas | foo is a real method or what? | ||
21:25
jaldhar left
|
|||
ash_ | i suppose you could do foo 42: $a, $b; so $a and $b are extra params, right? | 21:26 | |
TimToady | yes, it's entirely equivalent to 42.foo: | ||
correct | |||
21:26
iblechbot left
|
|||
TimToady | push @x: 1,2,3 for instance, is just @x.push(1,2,3) | 21:26 | |
b_jonas | I mean, why did it say "ok" instead of "can't find method foo in class Integer" or similar | 21:27 | |
TimToady | the test that failed was saying exists %h2: 'a' or some such | ||
pugssvn | r29907 | colomon++ | [t/spec] Refudge for Rakudo. | ||
TimToady | not that an exists method is spec | ||
ash_ | b_jonas: std: is for validating syntax according to the spec, its not actually running the program | 21:28 | |
TimToady | mildew: 42.foo | ||
p6eval | mildew: OUTPUT«Can't open perl script "mildew": No such file or directory» | ||
TimToady | sprixel: 42.foo | ||
p6eval | sprixel 29906: ( no output ) | 21:29 | |
ash_ | perl6: say 5; | ||
b_jonas | ash_: ah, I see | ||
ash_ | i think perl6 still does all of them, i think... | ||
p6eval | elf 29907, pugs, rakudo 64e4d3: OUTPUT«5» | ||
ash_ | or tries to | 21:30 | |
TimToady | pugs: foo 42: | ||
p6eval | pugs: OUTPUT«*** No such method in class Int: "&foo" at /tmp/NcJp2r6kIN line 1, column 1 - line 2, column 1» | ||
21:30
tjc left
|
|||
TimToady | vill: foo 42: | 21:30 | |
guess it's not evalbotified | 21:31 | ||
anyway, mildew would in theory be running STD's parser | |||
$geezer-state .= nap(); | 21:35 | ||
21:36
eternaleye joined
|
|||
diakopter | std: foo 42 | 21:38 | |
p6eval | std 29906: OUTPUT«Undeclared routine: 'foo' used at line 1ok 00:01 105m» | ||
dalek | kudo: 5e5969d | (Solomon Foster)++ | t/spectest.data: Turn on S04-statements/ given.t and if.t. |
21:39 | |
ash_ | does === use a function kinda how ~~ uses X.ACCEPTS($_) | 21:43 | |
21:46
supernovus joined
21:52
jaldhar joined
21:57
b_jonas left
|
|||
supernovus | Hmm, no masak. I was going to ask about the state of the "temporal flux" project. It seems it hasn't seen any commits since November. Was thinking that some of my CMS stuff needs some nice date/time formatting abilities. Instead of "fudgng" it with an app-specific library, I could help out by contributing to the temporal flux project. But I'd want to ask masak first before I just "jumped in". | 21:59 | |
PerlJam | ash_: do you think that it should? | 22:00 | |
supernovus | Oh, and in case anyone is interested, running a web app using SCGI instead of "normal" CGI, decreases page access time from around 30 seconds to about 2 seconds. Tested with Apache 2.2 and mod_scgi, on my home PC (Ubuntu 9.10, Intel Core 2 Quad 2.33 Ghz, 4GB RAM). github.com/supernovus/SCGI | 22:04 | |
22:04
SmokeMachine left
22:06
somekool left,
somekool joined
|
|||
m-locks | supernovus: got any web apps written on that? | 22:11 | |
supernovus | m-locks: None that are usable yet. I'm rewriting my custom Perl 5 CMS into Perl 6 though. It was during testing of that when I got annoyed with the 30-40 second page load time and decided to look at a way to speed it up. mod_perl6 doesn't work with January's Rakudo, FastCGI's API looked like a nightmare to implement, so when I found SCGI, I figured it sounded like a good match for what I was doing. Hopefully others will find it | 22:16 | |
22:18
Salada345 left
|
|||
m-locks | so that one works with rakudo? | 22:19 | |
supernovus | m-locks: It works with the January release of Rakudo. None of my projects currently work with the new master, as some of the features I depend upon have not been re-implemented yet. | 22:20 | |
PerlJam | supernovus: such as? | ||
m-locks | oh ok, i think i have the new master | ||
i was actually unable to build the alpha release, for reasons unknown to me | |||
supernovus | PerlJam: Well, last time I checked, BEGIN { @*INC: './lib' }; use Some::Library::Name; was dying miserably. However, that was last week, so by now it may be fixed :-) | 22:21 | |
pyrimidine | PerlJam: I have the same problem as supernovus, features NYI | ||
and the same issue with @*INC | 22:22 | ||
colomon | supernovus: I believe @*INC came on-line in Rakudo master two days ago. :) | ||
supernovus | colomon: I'm going to go and update my copy of master! :-) | 22:23 | |
m-locks | git pull | ||
supernovus | The SCGI library should actually work in the new master anyway (as long as IO::Socket::INET is working.) | 22:24 | |
snarkyboojum | mberends++ re @*INC in master :) | ||
22:30
Su-Shee left
|
|||
supernovus | Okay, my non-scientific times were a bit off. I was exagerating at 30 seconds (it felt like it though...) here's the times after I actually measured it. | 22:32 | |
22:32
tlb left
|
|||
supernovus | Running cgi script from command line: 12.5 seconds. Calling Apache 2.2 with mod_cgi: 13.6 seconds. Calling Apache 2.2 with mod_scgi: 2.755 seconds. Not as HUGe of a speedup as I had made out, but it's still nearly 5 times faster! | 22:37 | |
m-locks | i'm looking for some info on getting those separate apache instances working side by side, snow leopard has one builtin version that conflicts with the one built with macports | 22:42 | |
colomon | m-locks: do you have current rakudo running on snow leopard? | 22:43 | |
m-locks | aye, its building right now | 22:44 | |
has worked since that february release | |||
colomon | \o/ | ||
m-locks | :) | 22:45 | |
colomon | I've been putting off upgrading to snow leopard... if rakudo works, that's a big step forward for me. :) | ||
m-locks | rakudo works, not sure about all the other software | ||
bkeeler_ | I use snow leopard + rakudo with no problems | ||
22:46
pyrimidine left
|
|||
m-locks | i mean i had this 3g mobile internet access and it didn't work on snow leopard, but the same unit did work with tiger | 22:47 | |
22:47
somekool left
|
|||
ash_ | PerlJam: i think having some function associated with === might make things easier... instead of overloading the multi-method infix:<===> for your object, but i duno, i am not exactly sure how comparision semantics between custom objects "should" work | 22:47 | |
m-locks | bkeeler_: do you use apache2 with modules also? hows that configured on your system? | 22:50 | |
supernovus | I'm still having the problem with: "load_bytecode" couldn't find file 'SCGI.pir' on any "use Module" even if it's in the same directory and not using @*INC. | ||
bkeeler_ | I haven't messed with apache on snow leopard at all, sorry | ||
m-locks | aye, ok | 22:51 | |
ash_ | i have a bit, whats working/not working/should be working? | 22:52 | |
i am on 10.6, i rather like 10.6, i haven't had any issues with rakudo or parrot | |||
m-locks | not with rakudo, rather with apache | 22:53 | |
arnsholt | Anyone going to Copenhagen around? | ||
ash_ | whats wrong with apache m-locks? | 22:54 | |
m-locks | i mean the system has got an apache instance of its own (used thru System Preferences) and then i've got this another one installed with macports, but i seem to be unable to get the macports instance working | 22:55 | |
supernovus | There is definitely something not right with my Rakudo master. I'm going to throw away the directory and start over. Even "use Test" fails with "load_bytecode" couldn't find file 'Test.pir' | ||
m-locks | i think i need to add some aliases | ||
ash_ | how are you starting the macports one? | 22:56 | |
22:56
quietfanatic left
|
|||
m-locks | sudo apachectl start | 22:57 | |
22:57
spinclad left
|
|||
ash_ | do a which on apachectl, which one is it? macports or system | 22:57 | |
22:58
spinclad joined
|
|||
ash_ | eh, i'll message you, no need to flood #perl6 with os x junk | 22:58 | |
m-locks | aye | ||
22:59
cosimo left,
cosimo joined
|
|||
m-locks | newest rakudo fails lots of tests, btw | 23:00 | |
i think i'm gonna paste this bit somewhere when it's done | 23:01 | ||
23:02
bkeeler joined
|
|||
colomon | m-locks: fails a lot of what tests? | 23:05 | |
supernovus | So, I've deleted my whole rakudo folder, git cloned a new copy, and am rebuilding with --gen-parrot. Hopefully that resolves the load_bytecode error. | 23:06 | |
m-locks | colomon: well its a long list, but just to inform that none of those errors messages appeared when i ran those tests last time | 23:10 | |
colomon | m-locks: I'm just looking for context here. On my machine currently make spectest tests clean. I don't know if you're talking about that or some entirely different set of tests. | 23:11 | |
m-locks | make spectest | 23:12 | |
23:12
hercynium left
|
|||
m-locks | Failed 29/238 test programs. 418/25745 subtests failed. | 23:12 | |
ash_ | which test failed? | 23:13 | |
i just ran spec test, i am not done, but i haven't seen any failures yet.. | |||
pmichaud | good afternoon, #perl6 | 23:14 | |
m-locks | S03-operators/basic-types | ||
bkeeler_ | afternoon, pmichaud | 23:15 | |
m-locks | gm pm | ||
its almost morning here ;P | |||
colomon | o/ | ||
ash_ | pmichaud: how does one go about making comparison for custom objects? | 23:17 | |
23:17
wknight8111 joined
23:18
daemon left
|
|||
m-locks | probly have to make a new clone | 23:18 | |
paste too large :( | 23:19 | ||
23:19
daemon joined,
snarkyboojum left
|
|||
pmichaud | ash_: what sort of comparison? | 23:19 | |
ash_: but ultimately, I suspect overloading infix:<cmp> | |||
ash_ | equality? | ||
pmichaud | yes, likely overload infix:<cmp> for the type | 23:20 | |
anyway, that's a good question to put into pm.txt, or ask p6l | |||
ash_ | does cmp have an associated function it calls? i know ~~ uses .ACCEPTS | ||
pmichaud | no, I'm not aware of one. | ||
ash_ | i guess i am weary of overloading common operators | 23:21 | |
23:21
snarkyboojum joined,
snarkyboojum left
|
|||
pmichaud | right, I understand. Thus perhaps a post to p6l might be worthwhile :) | 23:21 | |
I have to rush off -- bbl. | |||
ash_ | someone who's not in a rush, whats p6l? | ||
diakopter | the perl6-language mailing list | ||
bkeeler_ | And what's pm.txt? | 23:22 | |
ash_ | ah, kk, thanks, i can do that | ||
pm.txt a list of questions pm had for TimToady | |||
s/a/is a/ | |||
m-locks | well imma hit the sack now, but for those who are interested users.tkk.fi/~tisaari/rakudo_build_fails_tests | ||
ash_ | its in the pugs repo | 23:23 | |
diakopter | perlcabal.org/svn/pugs/browse/misc | ||
colomon | m-locks: at a quick glance, it looks like those tests are ones I re-fudged with in the last couple of days. Is it possible you don't have an up-to-date copy of t/spec for the spectests? | 23:26 | |
supernovus | Well, looks like even with a fresh build, it still won't load files using "use". Does anyone see a problem with this line of code (which works in the January release): | 23:27 | |
colomon | Does tools/test_summary (which I assume is what ran this) actually do svn up t/spec before running? | ||
supernovus | return self.err("malformed netstring, expecting terminating comma, found \"$comma\"") if $comma ne ','; | ||
m-locks | colomon: might be, does the git pull / make spectest update those tests? | ||
colomon | make spectest should. | 23:28 | |
m-locks | well i ran that | ||
but now i'm on to building a new clone to see if its ok | |||
colomon | can you do | ||
svn info t/spec | |||
m-locks | umm no :D | ||
cos i kinda deleted it | |||
colomon | aye, that does make it harder. :) | 23:29 | |
ash_ | so, do you just email perl6-language at perl.org to mail the mailing list? | 23:35 | |
m-locks | you can use it thru google groups | ||
23:41
parrot left
|
|||
supernovus | I'm working around a few issues, but now I've found this: | 23:44 | |
In "has" declaration, typename IO::Socket must be predeclared (or marked as declarative with :: prefix) at line 84, near " $.socket " | |||
Coming from a line: has IO::Socket $.socket = IO::Socket::INET.socket(2, 1, 6).bind($!addr, $!port).listen(); | 23:46 | ||
I worked around it by removing the type constraint for now, but it seems that there may be something up with that. | 23:47 | ||
23:55
nihiliad left
|