pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, smop: etc.) || We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/ Set by TimToady on 25 January 2008. |
|||
pmichaud | pugs: my @a = <1 2 3>; say @a.perl; | 00:03 | |
exp_evalbot | OUTPUT[["1", "2", "3"]] | ||
pmichaud | pugs: say <1 2 3>.perl; | 00:04 | |
exp_evalbot | OUTPUT[("1", "2", "3")] | ||
spinclad | seems a subtle distinction: container v. none? | 00:07 | |
= array v. list | |||
00:33
araujo left
00:46
icwiener left
00:51
eternaleye joined
00:57
[particle] joined
|
|||
mncharity | sigh. all ruby's StringScanner positions are byte offsets, not character offsets. how... inconvenient. | 01:08 | |
Patterner | Nobody needs Unicode. | 01:11 | |
Juerd | I need Unicode. | 01:12 | |
I'm not nobody. | |||
You lied. | |||
Patterner | Nope. I didn't say "Only Nobody needs Unicode." | 01:13 | |
Tene | Juerd++ # needs unicode | ||
01:13
[particle3 left
|
|||
Patterner | You should have said "I don't need Unicode. I'm a Nobody." to make my statement a lie. | 01:14 | |
mncharity | saw a note go by that a Japanese cell phone company has been inventing new glyphs for text messaging... something you can do in Japanese... but which rather doesn't fit with the Unicode picture of the universe. ;) | 01:15 | |
Tene | Juerd: you still have interest in work on a good web framework for Perl 6? | ||
Juerd | Tene: Yes but no tuits. | ||
Well, insufficient tuits. | 01:16 | ||
Tene | Would you have enough to harass me about doing it wrong if I started following up on that proposal you generated a while back? | ||
Juerd | Yes | 01:17 | |
Tene | Okay. I'll let you know if I do. I'm hoping to use that as a project to drive my rakudo hacking. | ||
01:25
Ched- left,
Ched- joined
01:31
syle joined
|
|||
Juerd | Tene: Great | 01:34 | |
Tene: I'd suggest beginning simple, with just a CGI interface. | |||
Do fastcgi, mod_rakudo (?), etcetera later. | 01:35 | ||
Tene nods. | |||
Juerd | In any case, auto detection would be SO nice. | 01:36 | |
CGI.pm does it too. It rocks. | |||
Tene | auto detection of what? | ||
Juerd | The backend | 01:37 | |
Tene | Ahh. | ||
Juerd | CGI.pm can be used in mod_perl scripts but also in CGI scripts | ||
Now, this is hardcoded and that should be more flexibel in Perl 6 of course, but the basic idea is wonderful. | |||
flexible | |||
01:38
dalek left,
dalek joined,
meppl left
|
|||
TimToady | pmichaud: yes, prefix:<\>, though note that \<ws> wins as unspace under ltm | 01:57 | |
01:58
meppl joined
|
|||
TimToady | and no, I'm not on the plane to Tokyo right now, since our plane broke. | 01:58 | |
so we'll try breaking a different plane tomorrow | |||
02:01
justatheory joined
|
|||
meppl | good night | 02:07 | |
mncharity | good night meppl | 02:09 | |
meppl | ;) | 02:10 | |
02:10
meppl left
|
|||
mncharity | TimToady/pmichaud: new prefix:<\> has what precedence? | 02:10 | |
02:15
pbuetow left
02:22
Schwern joined
|
|||
Tene | I think that commit finished my first real feature in rakudo, and it's something pugs never got quite right. | 02:35 | |
That was a lot of fun. | |||
mncharity | what feature? | 02:38 | |
re fun, :) | 02:39 | ||
Tene | Placeholder vars. I got the start in yesterday, I think, and as of today they throw an error if used in a block with a signature, and are sorted properly in the signature. | 02:40 | |
rakudo: sub f { say $^b, $^a }; f(1,2) | |||
exp_evalbot | OUTPUT[12] | ||
Tene | Hm. Looks like evalbot hasn't caught up. | ||
mncharity | ah, nifty | 02:42 | |
Tene | Oh, huh, looks like named positional aren't working quite right. | 02:49 | |
Juerd | What does " | 02:53 | |
You passed an initialization parameter that does not have a matching attribute."? mean? | 02:54 | ||
(In Rakudo) | |||
Tene | Juerd: It means that you tried to create a new object and passed a parameter to 'new' that doesn't match an attribute of the class you're trying to make an instance of. | 02:58 | |
Juerd | Ah. I guess its parser must be really broken then :) | ||
Or I'm not getting it. | |||
Tene | Juerd: example? | 02:59 | |
Juerd | Tene: Are you on feather? | ||
Tene | Yes. | ||
Juerd | Tene: ~juerd/creole | ||
Creole is a wiki syntax. | 03:00 | ||
Would be so cool to have a Perl 6 wiki :) | |||
Tene | Do you know where the error is coming from? | 03:01 | |
Juerd | The if block somehow. | 03:02 | |
Tene | Huh. | ||
Juerd | I first commented away the $<foo> = things in the grammar so it would parse the grammar | ||
Then when it no longer threw an error, I added the if block to test. | |||
Then it gave "You passed an initialization parameter that does not have a matching attribute." | |||
03:08
fullermd left
03:11
fridim_ left
|
|||
Tene | Happened somewhere in rule heading | 03:11 | |
It's something about the captures. | 03:16 | ||
Commenting the captures makes it not fail on trying to match. | |||
03:18
Schwern left
|
|||
Juerd | Oh | 03:23 | |
In any case I have to try again in a few weeks :) | |||
pmichaud | Tene++ # placeholder vars | 03:27 | |
mncharity: according to S03, prefix:\ has the same precedence as the other tight unaries | 03:28 | ||
(if I'm reading it correctly, that is.) | |||
03:30
araujo joined
|
|||
mncharity | pmichaud: doh. I forgot the big operator table in S03. hmm, I wonder what else in it is missing from STD.pm... | 03:33 | |
pmichaud | S03 is what convinced me that "prefix:<\>" was probably right in the first place. | ||
without that, I was wondering where the leading \'s were being parsed :-) | 03:35 | ||
Tene | Anyone know how often exp_evalbot updates its rakudo? | ||
pmichaud | not me. | ||
mncharity | no idea, sorry | 03:36 | |
Tene | Eh, it'll update eventually. | ||
mncharity | possibly missing: .:: | ||
TimToady | actually, it'd be spelled prefix:<\\>, I suppose | 03:37 | |
pmichaud | right | ||
mncharity | ?& div mod (Multiplicative) | 03:38 | |
lambdabot | Maybe you meant: . ? @ v | ||
pmichaud | TimToady: how about $a => $b .... is that infix:<< => >> or just not in STD.pm yet? | 03:39 | |
(or am I missing it in STD.pm?) | |||
ah... I see it in the "item assignment" precedence level | 03:40 | ||
mncharity | sin et.al. (Named_unary) | ||
pmichaud | (in S03) | ||
TimToady | but yes, it seems to be missing | ||
pmichaud | Juerd: depending on how it's written, I would think that rakudo would be able to handle $<foo> = ... in regexes | 03:42 | |
mncharity | S03 mentiones an absent Nonchaining leg . err, what's a leg? | 03:43 | |
pmichaud | leg is the string version of <=> | 03:44 | |
i.e., what p5 would call 'cmp' | |||
mncharity | ah, ok. | 03:45 | |
eqv missing from Chaining | |||
min max from Tight_or | 03:46 | ||
S03 has ff and fff as Conditional, but STD has them Nonchaining. ?? | 03:47 | ||
the S03 table doesn't mention level List_assignment | 03:49 | ||
03:49
alester joined
|
|||
TimToady | they're supposed to be conditional | 03:50 | |
mncharity | thanks. :) hey, that's a STD.pm edit I can do (if someone else doesn't do it first this evening:) | 03:51 | |
X~X X*X XeqvX missing from List_infix | 03:52 | ||
03:53
yewenbin joined
|
|||
mncharity | <<==, ==>> missing from Terminator | 03:54 | |
TimToady | the table at the front is not meant to be complete | ||
merely suggestive | 03:55 | ||
pmichaud | I think mncharity is saying that items in the table are missing from STD.pm | ||
TimToady | the XxX's are metaops | ||
so don't get their own rule | 03:56 | ||
mncharity | ah, ok | ||
got it infix_circumfix_meta_operator:sym<X X> | |||
S03 mentions a List prefix : . which is that? | 03:59 | ||
TimToady | at one point we were analyzing the invocant marking : that way, not sure now | 04:01 | |
04:01
alanhaggai joined
|
|||
TimToady | but it's probably actually the : on the end of $obj.meth: or meth obj: | 04:02 | |
mncharity | strawman "things to add to STD": Symbolic_unary prefix:<\\>. .:: in dotty:sym<.*>. Multiplicative ?& div mod . Item_assignment => . Named_unary sin (and many others... hmm :/ ). Nonchaining leg . Chaining eqv . Tight_or min max . ff fff changed to Conditional. Terminator <<== ==>> . | 04:03 | |
re : , ah, ok. hmm. add that too, or wait? | 04:04 | ||
Much nicer to work in this direction than parsefail->debug->etc. | 04:05 | ||
:) | |||
TimToady | at least one form of it is already under methodop | 04:06 | |
mncharity | right. ok, punt for now. | ||
mncharity goes back to debugging "add unicode character, get high order nonlinear non-local slowdown" problem... | 04:08 | ||
pmichaud: thanks for mentioning the table. :) | 04:09 | ||
pmichaud | do named unaries appear in STD.pm, or should they be a function of the fact that things like sub foo ($) { ... } automatically appear at named unary precedence? | ||
(from S06) | 04:10 | ||
TimToady | not any more | ||
must use prefix:<foo> | |||
pmichaud | ah, S06 is out of date then? | ||
and then my question becomes... do named unaries such as sin, etc. appear in STD.pm, or do we treat them in the same way that we would "sub prefix:<sin> ($) { ... }" ? | 04:11 | ||
04:12
sri_work left
|
|||
TimToady | they come from Prelude | 04:13 | |
maybe even by import | 04:14 | ||
pmichaud | okay, works for me. | ||
04:15
rindolf joined
|
|||
pmichaud | TimToady: hope your talk went well :-) | 04:15 | |
TimToady | for being very hand-to-mouth, and changing the last half on the day-of, it went quite well. | 04:16 | |
pmichaud | heh | ||
"creating the last half on the day-of" seems to be my m.o. lately. | |||
although I think that won't happen much this year, as I've already given drafts of my talks for the summer :-) | 04:17 | ||
I might even find time to add some graphics and pictures. :-) | 04:18 | ||
04:22
alanhaggai left
|
|||
pmichaud | well, time for sleep | 04:24 | |
afk, be back tomorrow | |||
mncharity | shudder. gross slowdown resolved. a s/a small re/ /g... where it looks like the two spaces ended up in a different encoding from the string (ruby being "let things have lots of different encodings"). from the glacialness looks like it was repeatedly reencoding the string, adding two spaces, reencoding it back, etc. | ||
good night | 04:25 | ||
congrats on drafts | |||
04:31
Psyche^ joined
04:42
kanru left
04:47
Patterner left,
Psyche^ is now known as Patterner
04:59
lisppaste3 left
05:16
lisppaste3 joined
05:35
Psyche^ joined,
justatheory left
|
|||
mncharity goes looking for the default precedence of infix ops... | 05:39 | ||
05:52
Patterner left,
Psyche^ is now known as Patterner
|
|||
mncharity | pugs: while $x-- { return 24; } return 42; | 05:54 | |
exp_evalbot | OUTPUT[***  Unexpected "--" expecting "::" Variable "$x" requires predeclaration or explicit package name at /tmp/hQoV3VbQBT line 1, column 9] | ||
Tene | rakudo: sub f { say $^b, $:c, $^a }; f(1,2,:c(3)) | ||
exp_evalbot | OUTPUT[231] | ||
mncharity | pugs: while false { 3 } return 4; | 05:55 | |
exp_evalbot | OUTPUT[*** No such subroutine: "&false" at /tmp/YPfZxS7AM9 line 1, column 7-13] | ||
mncharity | pugs: while 0 { 3 } return 4; | ||
exp_evalbot | OUTPUT[*** Cannot use this control structure outside a 'routine' structure at /tmp/QIYqh0igIm line 1, column 15-23] | ||
mncharity | pugs: while 0 { 3 } say(4); | ||
exp_evalbot | OUTPUT[4] | ||
mncharity | Anyone have an opinion on whether that while is properly terminated, or instead requires a ; after the } ? | 05:56 | |
05:59
Southen joined
06:01
rindolf left
|
|||
Eevee | what else could go after it? | 06:01 | |
also, mncharity: latest moose has a way different arrangement of tests than pugs/t/from_moose. worth syncing? | 06:02 | ||
06:03
alester left
|
|||
mncharity | jo Eevee | 06:15 | |
re what else, 'while 0 { 3 }; say(4);' vs 'while 0 { 3 } say(4);'. ie, is the semicolon required. | |||
s/jo/hi/ | 06:16 | ||
off by one error | |||
Eevee | I know, I mean: is there an ambiguity? could anything except a new statement go after the closing brace | ||
mncharity | re worth syncing, don't know. either sync, or svn rm all the .t.orig files which were never touched (my fuzzy recollection is one was worked on?). | 06:17 | |
re ambiguity, while 0 {} if 1; | 06:18 | ||
maybe | 06:19 | ||
06:22
Auzon joined
|
|||
Eevee | ehh. that's kinda awkward, not sure if it's worth requiring a semicolon (or making it parse differently based on whether or not a newline follows) | 06:23 | |
now that I think about it, a for {} else {} would be handy | 06:26 | ||
but that's a different block, shouldn't need a semicolon there either | 06:27 | ||
mncharity | the issue is more that there are a set of conditions in which a semicolon is faked after a block. and my initial impression is that example doesn't match any of the current conditions. | 06:28 | |
pmichaud | S04: Though certain control statements could conceivably be parsed in a self-contained way, for visual consistency all statement-terminating blocks that end in the middle of a line must be terminated by semicolon unless they are naturally terminated by some other statement terminator: | 06:30 | |
mncharity | stdstopper in svn.pugscode.org/pugs/src/perl6/STD.pm , though it's a bit broken there at the moment. | ||
pmichaud | S04: while yin() { yang() } say "done"; # ILLEGAL | ||
mncharity | yay. thanks. | 06:31 | |
fixing test... | |||
pmichaud | fwiw, I like the approach rakudo uses for handling statement terminators. There's probably some case it can't handle properly, but thus far it's worked out very well in NQP and rakudo. | 06:33 | |
Eevee | oh, okay then | 06:35 | |
mncharity | svnbot looks to still be broken. anyone? | 06:41 | |
anyway, pmichaud++ Eevee++ | |||
Auzon | where is svnbot stored? | ||
mncharity | feather? dunno :/ | 06:42 | |
do we have an infrastructure doc? looking... | |||
examples/network/README | 06:43 | ||
pmichaud | afk again, sleep for real this time :-) | ||
Auzon | I found an svnbot.pm in /pugs/docs/feather. Is that the right file? | 06:44 | |
mncharity | SLAVES | ||
sleep++ end of day for me two. :) | |||
Auzon | see you | 06:45 | |
Eevee | sleep sounds good, eventually | ||
mncharity | the SLAVES entry for svnbot is diakopter | ||
diakopter: svnbot is silent... | |||
examples/network/svnbot.pl docs/feather/svnbot.pm | 06:46 | ||
re 'Is that the right file?', no idea. | 06:47 | ||
Auzon | I think it is. I suspect it just needs to be restarted on feather | 06:48 | |
mncharity | sounds plausible. could be nice to expand the feather/README file with details. | 06:49 | |
ah well. can't check in today's STD_red changes without breaking elf. have to thing about that. tomorrow. non-choking on pugs t/ up from ~60% to just under 70% of files. (usual caveat - non-choke does not imply a correct or useful parse). almost there. just need a few more files clear before fleshing out elf. | 06:52 | ||
TimToady: re strawman STD.pm changes previously mentioned, so... should I make the changes, or no? | 06:53 | ||
good night all & | 06:54 | ||
re feather, can we tweak svnbot or otherwise set things up, so it gets restarted automagically? | 06:55 | ||
06:55
mncharity left
07:01
Auzon left
|
|||
Tene | It's unclear whether @_ and %_ should throw a parse error not when used in a block that already has a signature. | 07:13 | |
s/not/or not/ | |||
07:34
icwiener joined
07:59
fullermd joined
08:08
meppl joined
08:10
alanhaggai joined
08:55
Ched- left
09:08
iblechbot joined
09:52
schmalbe joined
10:10
icwiener left
10:22
turrepurre left
11:11
rindolf joined
11:21
simcop2387 joined
11:46
masak joined
12:05
eternaleye left
12:06
Ched- joined
12:07
Ched- left
12:15
Ched- joined
12:29
icwiener joined
12:58
meteorjay joined
13:22
fridim_ joined
13:26
rindolf left
13:40
schmalbe left
13:44
themeofn joined,
themeofn left
13:50
icwiener_ joined
14:06
icwiener left
14:49
elleg joined
14:52
chris2 joined
14:58
Ched joined
15:02
rindolf joined
15:06
vixey joined
15:09
Ched- left
15:12
Jedai joined
15:14
yewenbin left
15:20
[particle] left
15:25
[particle] joined
15:39
pbuetow joined
15:43
icwiener_ left
16:11
japhb left
16:13
japhb joined
16:43
jan joined
16:59
MikeDavis joined
17:04
MikeDavi_ joined
17:05
MikeDavi_ left,
MikeDavi_ joined
17:06
r0bby left,
MikeDavi_ left
17:07
MikeDavi_ joined
17:12
MikeDav__ joined
17:13
masak left
17:20
MikeDavis left
17:37
r0bby joined
17:39
REPLeffect_ joined
17:40
b_jonas joined
17:41
MikeDavi_ left
18:17
b_jonas left
18:29
MikeDav__ left
19:43
mncharity joined
20:03
peeps left
20:04
syle left
20:20
Psyche^ joined
20:32
Patterner left,
Psyche^ is now known as Patterner
|
|||
Tene | rakudo: sub f { say $^foo, $:quxx, $^bar, @_[0], %_<frob> }; f(1, 2, 3, :quxx(4), :frob(5)); | 20:58 | |
exp_evalbot | OUTPUT[24135] | ||
21:00
rindolf left
21:14
chris2 left
|
|||
mncharity | diakopter: svnbot still dead :( | 21:17 | |
21:23
IllvilJa left
21:41
ispy_ joined
|
|||
meppl | good night | 21:44 | |
mncharity | 'night | ||
meppl | ;) | 21:45 | |
21:45
meppl left
|
|||
mncharity | Tene: while it's all fresh, could you review/add test coverage? | 21:53 | |
22:14
vixey left
22:16
IllvilJa joined
22:21
jan left,
jan_ joined,
jan_ is now known as jan
22:22
jan left,
Jan_ joined
22:37
elleg left
22:53
eternaleye joined
22:58
eternaleye left,
eternaleye joined
23:04
alanhaggai left
23:15
lisppaste3 left
23:29
lisppaste3 joined
23:42
iblechbot left
|