»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo:, alpha:, pugs:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by lichtkind on 5 March 2010. |
|||
00:02
BrowserUk joined
00:24
whiteknight joined,
gbacon joined
|
|||
snarkyboojum | 32911 passing tests o/ | 00:45 | |
00:49
hercynium joined
|
|||
snarkyboojum | over 83% pass rate | 00:54 | |
jnthn | :-) | 00:55 | |
00:56
jrtayloriv left
|
|||
snarkyboojum | that's amazing progress.. almost 600 additional passing tests since may 21 | 00:57 | |
(core-devs)++ :) | |||
jnthn | FINALLY! | ||
Backtraces that might actually be useful. | |||
snarkyboojum | :O | 00:59 | |
jnthn | With actual line numbers that relate to your Perl 6 program. :-) | 01:00 | |
01:01
BrowserUk left
01:08
pausenclown left
01:12
pausenclown joined
|
|||
snarkyboojum | jnthn: wowsers :) | 01:12 | |
01:17
molaf_ joined
01:19
f00li5h is now known as coin-robot
01:20
coin-robot is now known as f00li5h
01:21
molaf left
|
|||
jnthn | snarkyboojum: gist.github.com/418686 for example | 01:27 | |
lue | ohai! | 01:29 | |
Did I just hear that backtraces are ..... useful? | |||
sorear | snarkyboojum: don't forget certain non-core devs who make tests pass. | 01:30 | |
lue | jnthn: if a part of Rakudo's insides were to fail, would it still look as nice as this? | 01:37 | |
jnthn | lue: Well, not if the part of the internals is the backtrace printer. ;-) | ||
lue: For subs in the setting, it should be able to do something sensible in theory. | |||
lue: In practice we may have one more Parrot bug to fix yet. | 01:38 | ||
lue | .rnd(must .... get.... phone..... with MeeGo) | 01:40 | |
jnthn | OK, dare I commit the backtrace code... :-) | 01:41 | |
sorear | YES | ||
jnthn | :-) | ||
We can debug and hack on it together to make it awesome. :-) | |||
sorear | It doesn't matter if you break all the spectests - it will still be worth pulling | ||
jnthn | sorear: Oh, it doesn't do that | ||
All pass | 01:42 | ||
Just didn't want to commit something that's even less helpful that the status quo. | |||
But I think what I have now actually reporting real line numbers is more helpful. | |||
lue | .oO(the next step in error message technology: STD-like suggestions as to what zarked up) |
01:43 | |
sorear | I never payed attention to Parrot backtraces | ||
jnthn | sorear: Heh. Maybe nobody other than a few core devs did either. I dunno. :-) | ||
sorear: They probably look a tad offputting though. | |||
sorear | No, they were better than your version | 01:44 | |
However, not containing any correct information compensated for the superior formatting | |||
jnthn | sorear: Heh, superior? :-) | 01:45 | |
What do you like better about the Parrot ones? | |||
Also, patches welcome. ;-) | |||
sorear | I thought we had the various fields lining up, but I just checked and I misremembered | 01:46 | |
jnthn | sorear: ah | ||
sorear: But nice thought. | |||
sorear | also, I'd like to see more information in backtraces | ||
01:46
whiteknight left
|
|||
sorear | like the PC value | 01:46 | |
(I really did use that) | |||
jnthn | Erm | ||
Wow. :-) | |||
sorear: In that case I'm going to suggest, let's provide a flag --pir-backtrace or something, that disables this. | 01:47 | ||
sorear | does your version know how to format long names when it's not being compiled into GLOBAL? | ||
jnthn | sorear: And then people can see the real Parrot backtrace and get the PC. | ||
sorear: Not yet, that's one of the next things to add. | |||
sorear | What about code in other HLL universes? | ||
jnthn | sorear: It should be able to show that too. | ||
sorear: It assumes it has a Parrot sub and anything more it can find out beyond that is a bonus. | 01:48 | ||
01:52
Intensity joined
|
|||
dalek | kudo: b066578 | jonathan++ | (3 files): First cut of a backtrace printer. With recent Parrot improvements, it actually come, but commit early, commit often and all that. :-) |
01:53 | |
kudo: 339d0b9 | jonathan++ | build/PARROT_REVISION: Bump PARROT_REVISION to get latest Parrot with various backtrace production |
|||
sorear wonders whether enhancing the "make generated code pretty" functions would help or hurt debugging | 02:03 | ||
jnthn | sorear: Depends what chance they stand of breaking the code they're beautifying. ;_) | 02:05 | |
02:05
alester joined
|
|||
jnthn | Wow...it's getting light outside already. :-) | 02:07 | |
lue | Well then, good morning jnthn o/ | 02:09 | |
jnthn | ;-) | 02:11 | |
Saturday late-night hacking has been *so* easier since I moved to Sweden. :-) | |||
(Having church at 5pm rather than 9:30am means I can stay up just as long as I want and not worry about missing it. :-)) | 02:12 | ||
sorear: Adding namespace to the backtrace too | 02:13 | ||
lue | I thought now it was Sunday early-morning hacking :) | 02:14 | |
jnthn | It's all relative. :-) | 02:19 | |
dalek | kudo: 8b3bb0b | jonathan++ | src/Perl6/BacktracePrinter.pm: Include fully qualified names of routines in the backtrace, plus better handling |
02:22 | |
02:30
eternaleye joined,
patspam left
|
|||
jnthn | lue: Thanks for the inspiration - I tried to do something nice to make it clear what comes from the core setting: gist.github.com/418727 | 02:37 | |
lue | Ooh, nice. Now it helps both coders & P6 developers in one shot! | 02:41 | |
jnthn | :-) | ||
I hope this will make using Rakudo more -Ofun. :-) | 02:42 | ||
lue | I'm assuming <anon> is short for anonymous ? | ||
jnthn | lue: yeah | ||
lue | ERROR: maybe you should try calling something that exists | ||
jnthn | And the angles to indicate it's something special-ish. | ||
;-) | |||
rakudo: 0/0 | 02:43 | ||
p6eval | rakudo 9581e6: OUTPUT«Divide by zerocurrent instr.: 'infix:<div>' pc 365157 (src/gen/core.pir:22103)» | ||
lue | please email this error code to Rakudo developers, so they can help diagnose the problem: ID-10T | ||
jnthn | Awww, it's not updated yet. | ||
oh argh, I seem to have broken something | 02:44 | ||
lue | RD* is just a space station full of broken vases :P | 02:45 | |
jnthn | Heh, found it. | 02:50 | |
Only broke -e and repl. ;-) | |||
lue | "only" :) | 02:51 | |
jnthn | I "only" have a small glass of Nemiroff! | ||
lue | It "only" accounts for ~50% of all examples in P6 RT tickets :) | ||
jnthn | What, Nemiroff? :-) | 02:52 | |
yay, all fixed. | |||
lue | .oO(Quaternions — A healthy part of this balanced 3D modeling library) |
02:53 | |
rakudo: my @a=((1,2,3),(4,5,6)); my @b=((7,8),(9,1),(2,3)) my @c = (@a * @b); say @c | 02:57 | ||
p6eval | rakudo 8b3bb0: OUTPUT«===SORRY!===Confused at line 11, near "my @b=((7,"» | ||
lue | Awesome, jnthn! | ||
jnthn++ | |||
But that looks suspiciously like STD... | 02:58 | ||
std: my @a=((1,2,3),(4,5,6)); my @b=((7,8),(9,1),(2,3)) my @c = (@a * @b); say @c | |||
p6eval | std 30972: OUTPUT«===SORRY!===Two terms in a row at /tmp/zK7i83RhI9 line 1:------> ,3),(4,5,6)); my @b=((7,8),(9,1),(2,3)) ⏏my @c = (@a * @b); say @c expecting any of: bracketed infix infix or meta-infix statement modifier loopParse | ||
..failedFAILED 00:01 … | |||
jnthn | STD is still a bit better | ||
Colors. :-) | |||
lue | Not for me [at least in Konversation] | ||
jnthn | But yes, we are trying to converge with STD, so we now are SORRY about parse errors. | ||
Ah, irssi shows them. | |||
lue | What caused a perfectly good matrix multiplication to go wrong? | 02:59 | |
jnthn | A missing ; before the my | ||
(the my @c) | |||
lue | durh :) | ||
rakudo: my @a=((1,2,3),(4,5,6)); my @b=((7,8),(9,1),(2,3)); my @c = (@a * @b); say @c | |||
p6eval | rakudo 8b3bb0: OUTPUT«36» | ||
lue | hyper operators go like «*», right? | 03:00 | |
rakudo: my @a=((1,2,3),(4,5,6)); my @b=((7,8),(9,1),(2,3)); my @c = (@a «*» @b); say @c | |||
p6eval | rakudo 8b3bb0: OUTPUT«7162741018» | ||
lue | rakudo: my @a=((1,2,3),(4,5,6)); my @b=((7,8),(9,1),(2,3)); my @c = (@a «*» @b); say @c.perl | ||
jnthn | Yup, if you want both sides to dwim. | ||
p6eval | rakudo 8b3bb0: OUTPUT«[7, 16, 27, 4, 10, 18]» | ||
lue | I don't think it's dwimming | 03:01 | |
[for matrices anyway] | |||
jnthn | Oh, it won't do matrix mult. :-) | ||
lue | rakudo: my @a=((1,2,3),(4,5,6)); my @b=((7,8),(9,1),(2,3)); my @c = (@a »*« @b); say @c.perl | ||
p6eval | rakudo 8b3bb0: OUTPUT«[7, 16, 27, 4, 10, 18]» | ||
lue strangles air | 03:02 | ||
jnthn watches the air wither and die | |||
lue thinks of a machine that converts CO2 into diamonds (carbon) and oxygen | |||
how would you make matrix multiplication work? | 03:03 | ||
What happens above shouldn't happen, mathematically. It's errorful :) | 03:04 | ||
[or can I not have 2d arrays?] | |||
jnthn | Well, thing is that parcels flatten | ||
03:04
gbacon left
|
|||
lue | I thought that happened. | 03:05 | |
jnthn | So for a 2D array you want [1,2,3] not (1,2,3). | ||
lue | ah, dankon | ||
03:06
gbacon joined
|
|||
lue | rakudo: my @a=en.wikipedia.org/wiki/Special:Searc...3],[4,5,6; my @b=en.wikipedia.org/wiki/Special:Searc...9,1],[2,3; my @c = @a »*« @b; say @c.perl | 03:06 | |
p6eval | rakudo 8b3bb0: OUTPUT«===SORRY!===Confused at line 11, near "my @a=http"» | ||
lue | AH!? | ||
rakudo: my @a=en.wikipedia.org/wiki/Special:Searc...3],[4,5,6; my @b=en.wikipedia.org/wiki/Special:Searc...9,1],[2,3; my @c = @a »*« @b; say @c.perl | |||
p6eval | rakudo 8b3bb0: OUTPUT«===SORRY!===Confused at line 11, near "my @a=http"» | ||
lue | > my @a=en.wikipedia.org/wiki/Special:Searc...3],[4,5,6; my @b=en.wikipedia.org/wiki/Special:Searc...9,1],[2,3; my @c = @a »*« @b; say @c.perl | ||
what the... | |||
Could this have happened because of something server-side? | 03:07 | ||
rakudo: say [[1,2,3], [4,5,6]] | 03:08 | ||
p6eval | rakudo 8b3bb0: OUTPUT«1 2 3 4 5 6» | ||
03:09
eternaleye left
|
|||
lue | rakudo: my @a=[[1,2,3], [4,5,6]]; my @b=[[7,8], [9,1], [2,3]]; my @c = @a »*« @b; say @c.perl | 03:09 | |
p6eval | rakudo 8b3bb0: OUTPUT«[6]» | ||
TimToady | should fail | ||
lue strangles ozone, going for an extra oxygen this time | |||
TimToady | hyper is only for strict parallelism | 03:10 | |
lue | apparently, typing en.wikipedia.org/wiki/Special:Searc...,3],[4,5,6 causes some weird parsing thru IRC... | ||
TimToady | it's not do-what-a-mathematician-means | ||
lue | what if I am a mathematician? Then it has to dwim. :) | 03:11 | |
lue ponders a Matrix type... | |||
TimToady | »op« does not mean that | ||
jnthn | TimToady: I suspect Rakudo doesn't yet know about nested arrays in hypers. There was a patch to support it, but don't think it was yet applied. | ||
TimToady: (thus why it didn't fail as expected) | |||
lue | rakudo: my @a=[[1,2,3], [4,5,6]]; my @b=[[7,8], [9,1], [2,3]]; my @c = @a «*» @b; say @c.perl # just in case it differs | ||
p6eval | rakudo 8b3bb0: OUTPUT«[6]» | 03:12 | |
03:12
meppl left
|
|||
TimToady | that also should not do what you mean :) | 03:12 | |
lue | How does that happen? | ||
just the [6], i mean | |||
TimToady | I imagine it's multiplying 2 by 3 | ||
jnthn | I fear so. :-) | 03:13 | |
lue: It's numifying the arrays (and getting the number of elements) rather than descending into them. | |||
TimToady | rakudo: my @a = [1,2,3], [4,5,6]; say (@a »*» 3).perl | 03:14 | |
lue | yeah. Seems rakudo is too scared to go farther than the first dimension :) | ||
p6eval | rakudo 8b3bb0: OUTPUT«[9, 9]» | ||
TimToady | alpha: my @a = [1,2,3], [4,5,6]; say (@a »*» 3).perl | ||
jnthn | phenny: help | ||
phenny | jnthn: Hi, I'm a bot. Say ".commands" to me in private for a list of my commands, or see inamidst.com/phenny/ for more general details. My owner is sbp. | ||
p6eval | alpha 30e0ed: OUTPUT«Non-dwimmy hyperoperator cannot be used on arrays of different sizes or dimensions.in Main (file <unknown>, line <unknown>)» | ||
jnthn | hugme: help | ||
hugme | jnthn: (add $who to $project | list projects | show $project | hug $nickname | tweet $twittername $message ) | ||
jnthn | hugme: tweet rakudoperl Rakudo now has proper backtraces with line numbers from your Perl 6 code. | 03:15 | |
hugme | jnthn: You need to register with freenode first | ||
jnthn | hugme: tweet rakudoperl Rakudo now has proper backtraces with line numbers from your Perl 6 code. | ||
hugme hugs jnthn; tweet delivered | |||
jnthn | \o/ | ||
Well, maybe I should take some sleep. | 03:16 | ||
lue | yeah, before noon happens. :) Good night jnthn o/ | ||
OOPS morning | |||
03:17
Wolfman2000 joined
|
|||
lue | I love jnthn's new backtrace :) | 03:19 | |
Wolfman2000 | seems like rakudo is being updated more recently. (I've been following twitter) | ||
dalek | kudo: 6e39fe1 | jonathan++ | src/Perl6/Compiler.pir: Little tweak so things in the core setting get shown in the backtrace with a |
03:21 | |
kudo: 34542f7 | jonathan++ | src/Perl6/Actions.pm: Emit file annotation so backtraces have file names. |
|||
jnthn | night o/ | 03:23 | |
TimToady | o/ | ||
Wolfman2000 | Still, Twitter doesn't say everything. How goes the Perl 6 development? | 03:25 | |
TimToady | it's rapidly catching up with the future | 03:26 | |
lue | .oO(And the future keeps coming to the present. It's very annoying. :) ) |
||
Wolfman2000 | *chuckles* | ||
I'm hoping to get a new Macbook Pro in a few months. Should have plenty of ram and hard drive space. When that happens, I can try compiling Perl 6 again......unless you guys managed to make Perl 6 compile with a gig of ram with no problems. | 03:27 | ||
TimToady | that is much improved, I think | 03:28 | |
03:28
BrowserUk joined
|
|||
Wolfman2000 | ...my current laptop has 2 GB ram, roughly 20 GB hard drive space left. Think I can compile Rakudo at this point with few issues? | 03:29 | |
03:30
alester left
|
|||
TimToady | looks like you only need 275MB of disk | 03:30 | |
Wolfman2000 | hard drive space I assume for that | 03:31 | |
TimToady | and 2GB ram should be plenty adequate | ||
I certainly have no trouble with 3GB | 03:32 | ||
Wolfman2000 | Fair enough | ||
lue | is src/Perl6/BacktracePrinter.pm written in NQP ? | ||
Darn. Looks like it is. I looked at it and thought := was implemented :) | 03:33 | ||
Wolfman2000 | well, may as well try to build it now | 03:35 | |
Wolfman2000 gets the git source | |||
lue has been struck by what to call %_ | 03:39 | ||
lue is slowly going mad again | |||
Is there any language with a pronoun for a hash-like structure? | 03:40 | ||
Wolfman2000 | ...huh. It compiled...relatively quickly. Seemed too quick. | 03:42 | |
Wolfman2000 goes to run the tests | 03:43 | ||
sorear | rakudo compilation has gotten a LOT faster in the last two months | 03:44 | |
it was around 10 hours when I joined the project for me | |||
now it's down to 7 ... minutes | |||
Wolfman2000 | Compiler.pir took awhile to compile, but it...did its job | ||
lue | Maybe when R* comes along, I should try to compile on this old computer again. | ||
Wolfman2000 | It was about 7 minutes on my end as well, and I'm also pushing my ram usage to full. | ||
Wolfman2000 is watching an iTunes U movie | 03:45 | ||
sorear | should take about 300 now | ||
2 months ago, it was running 2500 | |||
which hurt a lot with 384 physical :/ | |||
(all numbers in megabytes) | |||
lue | I'd say. that's my number of physical ram (in MiB) | 03:47 | |
Wolfman2000 | failed part of the spectest | 03:49 | |
t/spec/S05-capture/caps.rakudo ................................. Failed 2/21 subtests | |||
03:50
gbacon left
|
|||
sorear | you ... ran... the... spectest....? | 03:51 | |
lue | I think I heard something about that a while ago. | ||
Wolfman2000 | still running | ||
sorear | oh okay | ||
Wolfman2000 | it's just the first failing line | 03:52 | |
sorear | the spectest takes like 4 hours, i's very exhaustive and not really intended to be run online | ||
Wolfman2000 | ...no summer classes on Memorial day. I can wait if need be | ||
sorear | (we'll call it Perl 6 once it passes the entire spectest with no TODOs) | ||
Wolfman2000 | I haven't seen any TODOs yet. Still on S-06 | 03:53 | |
err...just skipped to S-09 somehow | |||
sorear | the TODOs are applied by a special script that runs before the test harness | ||
when you see a file .rakudo, it's been modified | |||
Wolfman2000 | t/spec/S12-attributes/instance.rakudo .......................... ok random line that has .rakudo. Clarify what you mean by modification here. Should they be .t instead? | 03:54 | |
03:54
envi^home joined
|
|||
lue | the .rakudo means it's been fudged. | 03:54 | |
aka some parts of that test file don't pass yet, and break the spectest. They are "fudged" so things don't break. | |||
sorear | Wolfman2000: look in the t/spec/S12-attributes/instance.t file | 03:55 | |
lue | [How I understand it at least] | ||
sorear | you'll see some special comments like #?rakudo skip 1 "This is not yet implemented" | ||
Wolfman2000 | ...I'll check later | ||
t/spec/S29-context/die.rakudo .................................. Failed 2/15 subtests | 03:56 | ||
03:56
patspam joined
03:57
patspam left
03:58
isBEKaml joined
04:00
Eevee left
|
|||
Wolfman2000 | computer slowing up... | 04:00 | |
hopefully not getting kernel paniced here | |||
04:01
hercynium left
04:05
alester joined
|
|||
isBEKaml | TimToady: S02:629, missing variable? | 04:07 | |
04:11
xinming_ is now known as xinming
|
|||
Wolfman2000 | ...huh. The Perl 6 code we made for Advent 2009 is part of the test spec now? | 04:12 | |
Also: the spec test has finished. | |||
sorear: 30-40 minutes | |||
...huh. TimToady: paste.lisp.org doesn't seem to want me to paste to #perl6. Perhaps you can check? | 04:14 | ||
lue | That happens sometimes. Try gist.github.org | ||
Wolfman2000 | no server | ||
or rather, can't find server | 04:15 | ||
04:15
Eevee joined
|
|||
lue | on paste.lisp.org ? | 04:16 | |
Wolfman2000 | gist.github.org couldnt' find server | ||
saaki | maybe your dns is flubbered, been working for me | 04:17 | |
lue | .com | ||
saaki | gist.github.com | ||
lue | sorry :) | ||
Wolfman2000 | paste.lisp.org/display/110959 | ||
pugssvn | r30973 | lwall++ | [S02] missing var noticed by isBEKaml++ | 04:27 | |
Wolfman2000 | ...do I have to --gen-parrot AGAIN for that one change? | 04:28 | |
04:29
TimToady sets mode: +vvv buubot dalek hugme,
TimToady sets mode: +vv ilogger2 IRSeekBot,
TimToady sets mode: +vv p6eval phenny,
TimToady sets mode: +v pugssvn
|
|||
lue | :O I search for 'dr math quaternion' and on the first page I get a CPAN module for quaternions (P5 of course, but still) | 04:30 | |
Wolfman2000 | ...oh, that's pugs. Not rakudo. | ||
sorear | Wolfman2000: --gen-parrot is for Parrot changes, which aren't even announced here | 04:31 | |
also, Rakudo doesn't generally track the latest parrot | 04:32 | ||
there is a file in your Rakudo tree, build/PARROT_REVISION | |||
Wolfman2000 | ...I forgot there are many bots in this room. | ||
sorear | TimToady: hi! any comments on the LTM-in-rules question? | ||
Wolfman2000 | rakudo: ([+] (1..999).grep( { $_ % 3 == 0 || $_ % 5 == 0 } )) | 04:33 | |
p6eval | rakudo 8b3bb0: ( no output ) | ||
Wolfman2000 | ...didn't do it right | ||
sorear | Wolfman2000: and yes, advent stuff is in the spectests. It makes great regression fodder | ||
TimToady | sorear: I usually set BEGIN { $ENV{STD5DEBUG} = -1; } | ||
and figure it out from the logs | |||
sorear | Wolfman2000: you need to add a .say there | 04:34 | |
Wolfman2000 | rakudo: ([+] (1..999).grep( { $_ % 3 == 0 || $_ % 5 == 0 } )).say | ||
sorear | Wolfman2000: p6eval just reads and evaluates, it doesn't print | ||
p6eval | rakudo 8b3bb0: OUTPUT«233168» | ||
Wolfman2000 | sorear: if I recall right...doesn't rakudo ahve a time limit? | ||
...guess not | |||
TimToady | alias mc='less -R' will display the log in colors on Linux | ||
sorear | TimToady: I've actually been setting that on the command line | ||
ye | |||
but the question which I refer to is a semantic one, not a debugging one | 04:35 | ||
take a look at STD.pm6:1430 | |||
notice that both sides of the alternation start with <.ws> | 04:36 | ||
there should be no LTM going on, right? | |||
TimToady | ah, that is factored out | ||
Wolfman2000 | rakudo: "5065726C36".comb(/<xdigit>**2/)».fmt("0x%s")».chr.join.say | ||
p6eval | rakudo 8b3bb0: OUTPUT« | 04:37 | |
Wolfman2000 | ...yeah, that still fails | ||
rakudo: "5065726C36".comb(/<xdigit>**2/).map: { chr "0x" ~ $_ }).join.say | |||
p6eval | rakudo 8b3bb0: OUTPUT«===SORRY!===Confused at line 11, near ").join.say"» | ||
TimToady | if there's whitespace before [ a | b | c ] it ignores the first whitespace on each alternative | ||
Wolfman2000 | ...and that should have worked | ||
sorear | TimToady: gimme5 factors it out, but I rather suspect it's doing so in error, since it changes the semantics - <.ws> ends a LTM pattern | ||
TimToady | a new LTM starts at the [] alternation | 04:38 | |
Wolfman2000 | rakudo: ("5065726C36".comb(/<xdigit>**2/).map: { chr "0x" ~ $_ }).join.say | ||
p6eval | rakudo 8b3bb0: OUTPUT«Perl6» | ||
Wolfman2000 | there | ||
TimToady | each alternation is its own LTM | ||
unless the first thing in a token | |||
sorear | I don't follow | ||
TimToady | but certaint that particular one stands on its own | ||
sorear | each alternation starts with sigspace | 04:39 | |
so LTM shouldn't be able to affect which one is called? | |||
04:39
finanalyst joined
|
|||
TimToady | sorear: I said it factors that whitespace out | 04:40 | |
since there is whitespace before the [], there is no need to match first inside the [] | |||
so it ignores that | |||
sorear | gimme5 does, viv doesn't | ||
I think S05 supports viv | |||
but I'm not sure | 04:41 | ||
TimToady | well, then S05 is wrong :) | ||
or at least incomplete | 04:42 | ||
finanalyst | good morning all | 04:46 | |
TimToady | biab & | ||
finanalyst | run across a bug, just checking to see if its known already | ||
04:47
Lorn left
|
|||
finanalyst | rakudo: sub s ( $a ) { return $a }; class A { has $.b = s(2) }; my A $x .= new(); say $x.b | 04:48 | |
p6eval | rakudo 8b3bb0: OUTPUT«Could not find sub &sin <anon> at line 11in main program body at line 11» | ||
sorear | TimToady: pastie.org/983940 ? | ||
lue | rakudo: our sub s ( $a ) { return $a }; class A { has $.b = s(2) }; my A $x .= new(); say $x.b | 04:50 | |
p6eval | rakudo 34542f: OUTPUT«2» | ||
finanalyst | lue: thanx | ||
lue | you are welcome. | 04:51 | |
sorear | TimToady: As a different but related issue, STD parses x ** y as x <.ws> ** y. Wrong? | 04:53 | |
lue | afk | 04:56 | |
05:03
envi^home left
|
|||
TimToady | sorear: that looks fine | 05:05 | |
S05:945 talks about the other | 05:06 | ||
pugssvn | r30974 | sorear++ | [S05] Describe alternation left-factoring in rules, long implemented by gimme5 | 05:07 | |
sorear | what about sigspace with ~ ? | ||
TimToady | I think ~ currently screws up under sigspace | 05:08 | |
at the moment it's just a "Doctor, it hurts when I do this." | 05:09 | ||
"So, don't do that." | |||
sorear | the viv component which reparses ~ currently just strips <.ws> from both sides | ||
it runs a bit too low level though and even strips /explicit/ <.ws> ... | |||
I wonder what the ideal behavior is | 05:10 | ||
TimToady | well, if we think of '(' ~ ')' <atom> as subbing in the <atom> for the ~, it kinda makes sense to transfer the ws to around <atom> | 05:11 | |
but generally, in practice, <atom> will be something that already handles whitespace | |||
<statementlist> for instance | |||
or EXPR | |||
so the situation doesn't arise often in practice, and we could just say it treats it as '('~')' | 05:12 | ||
sorear | *lightbulb* the parsing behavior we want for ~ is exactly the same as for ** | ||
TimToady | praps | ||
sorear | let's parse it as a psuedo quantifier | ||
TimToady | whatever works, and isn't *too* disgusting :) | 05:13 | |
sorear | It'd be less disgusting than the current approach. | ||
heh. I used $self->{dba} in the translation code for ~, but ~ is parsed with dba:additive... | 05:19 | ||
TimToady | you can always override the default dba | ||
sorear | no, $self is the match object for the ~ regex_infix__S_Tilde | 05:20 | |
that code would have been correct if I had written it as a method on a RE_node | |||
pugssvn | r30975 | sorear++ | [viv] Fix a stupid phaso which caused all parsing failures to be reported as "additive" | 05:21 | |
05:24
alester left
|
|||
TimToady | biab & | 05:28 | |
05:31
kaare joined,
kaare is now known as Guest67735
|
|||
pugssvn | r30976 | sorear++ | [viv] More aggressive filtering of sigspace in ~ | 05:32 | |
05:39
JimmyZ joined
|
|||
JimmyZ | std: { } () | 05:40 | |
p6eval | std 30975: OUTPUT«===SORRY!===Strange text after block (missing comma, semicolon, comment marker?) at /tmp/GZr1AW0sff line 1:------> { }⏏ () expecting any of: bracketed infix infix or meta-infix statement modifier loopParse failedFAILED | ||
..00:01 115m» | |||
JimmyZ | std: {}() | ||
p6eval | std 30975: OUTPUT«ok 00:01 111m» | ||
JimmyZ | rakudo: {}() # oh hi, is it a bug? | 05:41 | |
p6eval | rakudo 34542f: OUTPUT«invoke() not implemented in class ''in main program body at line 11:/tmp/fV4VLyeY9P» | ||
JimmyZ | rakudo: { say 'hi'; }() | ||
p6eval | rakudo 34542f: OUTPUT«hi» | ||
JimmyZ | rakudo: { say 'hi'; } () | ||
p6eval | rakudo 34542f: OUTPUT«===SORRY!===Confused at line 11, near "{ say 'hi'"» | ||
JimmyZ | rakudo: { } () | 05:42 | |
p6eval | rakudo 34542f: OUTPUT«===SORRY!===Confused at line 11, near "{ } ()"» | ||
JimmyZ | std: { } () | 05:43 | |
p6eval | std 30975: OUTPUT«===SORRY!===Strange text after block (missing comma, semicolon, comment marker?) at /tmp/lH4PkUNOFT line 1:------> { }⏏ () expecting any of: bracketed infix infix or meta-infix statement modifier loopParse failedFAILED | ||
..00:01 112m» | |||
JimmyZ | TimToady, hello | 05:44 | |
TimToady | a postfix may not have space in front of it | ||
JimmyZ | rakudo: { say 'hi' }() | 05:48 | |
p6eval | rakudo 34542f: OUTPUT«hi» | ||
JimmyZ | rakudo: { }() | ||
p6eval | rakudo 34542f: OUTPUT«invoke() not implemented in class ''in main program body at line 11:/tmp/uhsZpZL0Wn» | ||
TimToady | rakudo: {;}() | ||
p6eval | rakudo 34542f: OUTPUT«invoke() not implemented in class ''in main program body at line 11:/tmp/cKD0G2h84Y» | ||
TimToady | rakudo: Hash.new() | 05:49 | |
p6eval | rakudo 34542f: ( no output ) | ||
JimmyZ | rakudo: {1;}() | ||
TimToady | rakudo: Hash.new()() | ||
p6eval | rakudo 34542f: ( no output ) | ||
rakudo 34542f: OUTPUT«invoke() not implemented in class ''in main program body at line 11:/tmp/zLkd13L4Fp» | |||
JimmyZ | rakudo: {say;}() | ||
p6eval | rakudo 34542f: OUTPUT«» | ||
JimmyZ | rakudo: {True;}() | 05:50 |
|