|
Parrot 0.8.1 "Tio Richie" Released | parrot.org | 588 RT | 11 trac Set by moderator on 5 December 2008. |
|||
|
00:05
allison joined
00:07
Limbic_Region joined
00:09
AndyA joined
00:15
bacek joined
00:33
stockwellb joined
|
|||
| chromatic | I like this look: | 00:44 | |
|
00:44
kid51 joined
|
|||
| chromatic | wardley.org/use.perl.org/test.html | 00:44 | |
| jonathan | It's certainly an improvement. :-) | 00:47 | |
| Fixing the Recent Journals box that disappeared would be a Good Thing to. | |||
| *too | |||
| Of course, I'm preaching to the choir here... | 00:48 | ||
|
00:49
contingencyplan joined
|
|||
| dalek | r33528 | jkeenan++ | testparrottest: | 00:50 | |
| : 1. Move sub generate_languages_functions() farther down in file for ease of | |||
| : editing. (We'll probably move this out of this package eventually, as it | |||
| : pertains only to languages built on Parrot, and not to PASM, PIR or C.) | |||
| : 2. Throw in some print STDERR statements to facilitate debugging in | |||
| : _run_test_file and related unit tests. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33528 | |||
| jonathan | use.perl.org/~JonathanWorthington/journal/38035 # ramblings about my adventures in parrot today | 00:51 | |
| bacek | rakudo: say "hi" | 00:58 | |
| polyglotbot | No output (you need to produce output to STDOUT) | ||
| bacek | jonathan++ # making Rakudo better | ||
| <bacek> perl6: token CommentContent { .* }; token Comment { '(:' <CommentContent>? ':)' }; say "(: Hi :)" ~~ / <Comment> /; say ~$/ | |||
| <p6eval> rakudo 33527: OUTPUT[ā¤ā¤] | |||
| Why <Comment> didn't matched? | 00:59 | ||
| lathos | jonathan++ # Fixing block segfaults. Now I can write much nicer code. | 01:01 | |
| dalek | r33529 | jkeenan++ | testparrottest: | 01:03 | |
| : Improve debugging statements. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33529 | |||
| jonathan | bacek: Becuase it's a token and it doesn't backtrack. | 01:04 | |
| So the .* swallows up the last :) | |||
| bacek | jonathan: ah. ok | 01:05 | |
| Infinoid | has anyone worked on JIT on x86-64? | ||
| I'm betting the NX bit stuff would have gotten in the way of that | 01:06 | ||
| bacek | <bacek> rakudo: token CommentContent { <- [ '(:' | ':)']>* }; token Comment { '(:' <CommentContent>? ':)' }; say "(: Hi: There :)" ~~ / <Comment> /; | 01:14 | |
| <p6eval> rakudo 33527: OUTPUT[ā¤] | |||
| dalek | r33530 | jkeenan++ | testparrottest: | 01:15 | |
| : Improve debugging message. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33530 | |||
| bacek | jonathan: why this one failing? (It works for comment without : | 01:16 | |
| jonathan | I suspect because you're trying to make a character class...even so, hmm. | 01:20 | |
| dalek | r33531 | simon++ | trunk: | ||
| : Fixes to column-lookup code, and some more tests | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33531 | |||
| jonathan | Maybe negated cc's ain't done yet... | ||
| bacek | jonathan: np. thei0s on #perl6 explained me already. | 01:21 | |
| .*? <before '(:'> | |||
| jonathan | Yes, that should work. :-) | 01:22 | |
| bacek | jonathan: it actually works! :) | ||
| Files=6, Tests=193, 30 wallclock secs ( 0.08 usr 0.00 sys + 28.56 cusr 0.56 csys = 29.20 CPU) | 01:24 | ||
| ...but slowly... | |||
| jonathan | bacek: What are you working on? | 01:26 | |
| bacek | I learning perl6. By implementing XQuery :) | ||
| jonathan | Cool! | 01:27 | |
| jonathan should write some Perl 6 some day. | |||
| bacek | jonathan: perl6 is very cool language. You'll like it :) | 01:28 | |
| Limbic_Region | jonathan - prelude now supports inline PIR ;-) | ||
| jonathan has some evil ideas | |||
| bacek | jonathan: btw, 'conquer the world' is mine! | 01:30 | |
|
01:33
allison joined
|
|||
| Infinoid | eh, it's been done. | 01:33 | |
| jonathan | Yeah. I'll go for something more challenging. | 01:34 | |
|
01:35
lifeless left
|
|||
| Limbic_Region | jonathan: a perl 6 implementation that is a self-bootstrapping quine that is feature complete? | 01:36 | |
| jonathan | I didn't mean *that* much more challenging! | 01:37 | |
| Infinoid | and 32.5% more evil than a quine | 01:38 | |
| cotto | self-bootstrapping? | ||
| Limbic_Region | parses and executes itself | ||
| without the need to first be parsed and executed in an intermediate language | |||
| cotto runs away | 01:39 | ||
| Limbic_Region | er s/$/first/ | ||
| dalek | r33532 | Whiteknight++ | calling_conventions: | 02:10 | |
| : [calling_conventions] update to trunk r33531. No fixes | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33532 | |||
| wknight8111 | this branch is supremely frustrating | 02:12 | |
|
02:19
rdice left
|
|||
| jonathan | wknight8111: Parrot guts often can be, especially bits like those you're working on. :-( | 02:19 | |
| wknight8111 | jonathan, you have time to look at an interesting problem? | 02:20 | |
| because the calling_conventions branch could use a fresh set of eyes | |||
| jonathan | wknight8111: It's 3:20am here, so I've really not got the concentration right now - I already gave up on some (vastly more trivial) Rakudo hacking earlier. | 02:21 | |
| Another time though, I can try and take a look. | 02:22 | ||
| wknight8111 | yeah, you need to get some rest then | ||
| I saw your blog post today, good job! jonathan++ | |||
| jonathan | Yeah, had some "fun" with Parrot guts stuff. | 02:23 | |
| Was a couple of things that worked because something else didn't. | |||
| nopaste | "pmichaud" at 72.181.176.220 pasted "...why doesn't this work?" (30 lines) at nopaste.snit.ch/14831 | 02:28 | |
|
02:31
tak joined
|
|||
| jonathan | pmichaud: Ah, is that the ".incldue didn't work out" thing? | 02:42 | |
| I think I saw you mention that, but forgot about it... | |||
| pmichaud: What error gives it? | 02:43 | ||
| nopaste | "pmichaud" at 72.181.176.220 pasted "error from converting 'cat' to a sequence of .includes" (8 lines) at nopaste.snit.ch/14832 | 02:44 | |
| jonathan | I'm really not sure. .include isn't meant to do anything clever - I thought it even operated at the lexer level... | 02:47 | |
| bacek | Is <cut> implemented in Rakudo? | ||
| pmichaud | right, that's what I was thinking also. | ||
| bacek: no. | |||
| jonathan | Well, don't have the engergy for it now, but it'd be maybe good to fix that. | ||
| pmichaud | yeah, it kinda bugs me that it gives an error at all. | ||
| bacek | pmichaud: sigh... | ||
| purl | there's no crying in perl programming! | ||
| jonathan | Same...I can't think why it'd do that. | ||
| pmichaud | it's failing in the 'init' :vtable method of Perl6::Compiler, though. And I'd prefer that Perl6::Compiler not have an 'init' :vtable method, so maybe if I clean that up it'll avoid whatever bug we're tickling. | 02:49 | |
| switching to laptop | 02:50 | ||
| brb | |||
| jonathan | If it does clear it up, it'll give us a hint... | ||
| pmichaud | it doesn't appear to clear it up | 03:02 | |
| dalek | r33533 | pmichaud++ | trunk: | 03:15 | |
| : [rakudo]: Convert an :init vtable to run at :load :init instead. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33533 | |||
| r33534 | jkeenan++ | testparrottest: | |||
| : Place POD for 'SEE ALSO' in correct location. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33534 | |||
| jonathan | pmichaud: OK. I need to sleep now | 03:16 | |
| pmichaud | sure thing -- see you tomorrow. | ||
| I'll probably do the same soon. | |||
| jonathan | Given it's 4am here, don't think I'll be doing an early one tomorrow. ;-) | ||
| jonathan is so much more a night person... | |||
| pmichaud | you'll still probably be up before me :-) | ||
| jonathan | :-) | ||
| night | |||
| pmichaud | great work today | ||
| jonathan | Thanks, was less -Ofun, and but -Oneeded | 03:17 | |
| s/but/more/ | |||
| jonathan -> sleeeep | |||
| bacek | pmichaud: Is there any way to prevent backtracking after certain position? | 03:22 | |
| pmichaud | sure, :: or ::: will do it | 03:26 | |
| also <commit> | |||
| dalek | r33535 | jkeenan++ | testparrottest: | 03:30 | |
| : Reposition debugging statement | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33535 | |||
|
03:48
tak_ joined
04:01
jimmy joined
04:02
elmex joined
04:05
stockwellb joined
|
|||
| Infinoid loses focus and makes stupid mistakes | 04:16 | ||
| time to call it a day. | |||
|
04:16
stockwellb joined
|
|||
| kid51 must sleep | 04:25 | ||
| purl | $kid51->sleep(8 * 3600); | ||
| dalek | r33536 | jkeenan++ | testparrottest: | ||
| : Insert some inline comments to help diagnose excessively long subroutine. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33536 | |||
| Coke | pmichaud: want a Configure.pl of perl6's own? | 04:34 | |
| pmichaud | Coke: I copied the tcl one earlier, it works great (after I remembered to change 'tcl' to 'perl6') | 04:35 | |
| but didn't get a chance to ci it | |||
| short answer: "yes, please!" :-) | |||
| Coke | brt. | ||
| pmichaud | actually, I'm thinking we should add one to mk_language_shell.pl, too :-) | ||
| dalek | r33537 | coke++ | trunk: | 04:38 | |
| : [perl6] add a Configure.pl for perl6; use this to regenerate the Makefile. | |||
| : - also, regen MANIFEST. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33537 | |||
|
04:57
particle joined
05:15
YJH joined
05:22
YJH left
|
|||
| Coke wonders why switching rakudo's builtins to be .include'd instead of inlined fails. | 05:30 | ||
| fails trying to find the P6 compiler when turning Test.pm into Test.pir | 05:31 | ||
| dalek | r33538 | coke++ | trunk: | 05:33 | |
| : [perl6] - ignore more generated files (OS X) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33538 | |||
|
05:35
apeiron joined
|
|||
| Coke | AHA. | 05:43 | |
| cotto | aha++ | 05:45 | |
| Coke | there. rakudo's src/gen_builtins.pir is now .includes instead of duplicated code. | 05:51 | |
| dalek | r33539 | coke++ | trunk: | 05:52 | |
| : [perl6] Convert src/gen_builtins.pir to be .include instead of inline copies. | |||
| : (This makes IMCC report line numbers you can fix instead of lines in a copy of a file you shouldn't edit.) | |||
| : Only issue preventing this was a missing =cut tag in one of the builtins. | |||
| : Also fixup manifest. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33539 | |||
| r33540 | coke++ | trunk: | 06:00 | ||
| : [CAGE] pass t/distro/*meta* | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33540 | |||
|
06:07
rhr joined
|
|||
| jimmy | #!/home/tewk/srcs/parrot/perl6 ?? | 06:17 | |
|
06:19
Theory joined
|
|||
| jimmy | does it really work? | 06:20 | |
| cotto | If there's an exectuable at that location, it will work. | 06:21 | |
| jimmy | yes :) | 06:23 | |
| rev=33540 , i don't think there is | 06:24 | ||
| i should say it's wrong at r33540 | 06:25 | ||
| cotto | That's probably not a standard location for the perl6 exectuable. | 06:26 | |
| dalek | r33541 | infinoid++ | trunk: | 06:49 | |
| : [CAGE] Remove trailing whitespace from 5 source files. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33541 | |||
| r33542 | infinoid++ | trunk: | |||
| : [CAGE] Fix 15 failures of t/codingstd/c_parens. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33542 | |||
| r33543 | infinoid++ | trunk: | 06:54 | ||
| : [CAGE] Fix a linelength.t failure in perl6multisub.pmc | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33543 | |||
| r33544 | infinoid++ | trunk: | |||
| : [CAGE] Fix a couple of t/codingstd/c_code_coda.t failures. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33544 | |||
| r33545 | infinoid++ | trunk: | |||
| : [CAGE] | |||
| : * Fix a couple of t/codingstd/c_header_guards.t failures. | |||
| : * Fix several t/codingstd/c_operator.t failures. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33545 | |||
|
07:05
Hadi joined,
Hadi left
|
|||
| Infinoid | does rakudo have "use strict" and "use warnings"? perlcritic.t is complaining about them being missing from the new perl6 SQLite libraries, but that seems unlikely to be valid | 07:09 | |
|
07:18
johbar joined
07:23
MariachiElf joined
|
|||
| dalek | r33546 | duff++ | trunk: | 07:40 | |
| : [rakudo] Add :nth() and :x() flags to .subst($str,$repl) and .subst($regex,$repl) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33546 | |||
|
07:55
Hadi joined
07:56
Hadi left
07:58
jimmy joined
08:42
iblechbot joined
09:20
particle joined
|
|||
| dalek | r33547 | fperrad++ | trunk: | 10:06 | |
| : [Lua] mathx | |||
| : - more tests | 10:07 | ||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33547 | |||
|
10:12
TiMBuS joined
|
|||
| moritz | Infinoid: both are enabled by default | 10:15 | |
| dalek | r33548 | moritz++ | trunk: | 10:31 | |
| : [rakudo] remove debugging output. Closes RT #61078. ihrd++ | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33548 | |||
|
10:40
Hadi joined
10:41
Hadi left
11:57
lu_zero joined
11:58
register joined
12:01
Theory joined
12:10
PacoLinux joined
|
|||
| jimmy | can anybody process trac.parrot.org/parrot/ticket/19 ? it blocks me to create another patch. | 12:34 | |
|
12:35
contingencyplan joined
|
|||
| moritz | jimmy: why do we need those '=cut's? it works fine without... | 12:39 | |
| jimmy | doesn't | ||
| try make html under docs | 12:40 | ||
| dalek | r33549 | julianalbo++ | trunk: | ||
| : fix exception.pmc:get_bool | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33549 | |||
| jimmy | it is necessary for pod docs in /* */ | ||
| purl | Hmm. No matches for that, jimmy. | ||
| dalek | r33550 | moritz++ | trunk: | 12:42 | |
| : [cage] trailing whitespaces | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33550 | |||
| jimmy | and some method missed docs | ||
| moritz | if the cuts are needed, we should have a codingstd test for them | 12:44 | |
| jimmy | unfortunately, no | ||
|
12:45
riffraff joined
|
|||
| jimmy | you can consult related pods | 12:45 | |
| riffraff | hello | ||
| purl | niihau, riffraff. | ||
| moritz | jimmy: first I'm trying to clean up some other codingst failures, then I'll take a look at your patch | 12:46 | |
| dalek | r33551 | moritz++ | trunk: | ||
| : [cage] some missing copyright and $Id$ lines (more to come) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33551 | |||
|
12:46
particle joined
|
|||
| jimmy | moritz: ok, without the patch ,make html will build wrong html docs | 12:46 | |
| i.e. macro.hmlt | 12:47 | ||
| i.e. macro1.html | |||
| dalek | r33552 | moritz++ | trunk: | 12:48 | |
| : [cage] fix $Id$ statements, moritz-- | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33552 | |||
| r33553 | moritz++ | trunk: | 12:51 | ||
| : [cage] clean up codingstd failures in ext/SQLite3/ | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33553 | |||
|
12:52
particle joined
|
|||
| dalek | r33554 | moritz++ | trunk: | 12:53 | |
| : [cage] clean up two Configure.pl's (svn id, copyright) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33554 | |||
|
12:56
masak joined
|
|||
| moritz | jimmy: I can't find a macro.html or macro1.html - where should it be? | 12:56 | |
| jimmy | masak: some of your journal using chinese ,funny | 12:57 | |
| moritz: it is macro1.html under docs/html | |||
| masak | jimmy: funny-nice, or funny-unreadable? | ||
| jonathan | morning^Wafternoon all | ||
| masak | jonathan: dito | ||
| jimmy | masak: funny-nice | 12:58 | |
| moritz | jonathan: haha, I sleep to 11:00, it' still morning for me ;-) | ||
| masak | jimmy: great :) | ||
| thanks | |||
|
12:58
particle1 joined
|
|||
| jimmy | masak: use.perl.org/~masak/journal/37976 here | 12:58 | |
| masak | jimmy: for some reason, I think that conveys laughter much better than does "haha" | 12:59 | |
| jimmy | charset=iso-8859-1, though. | ||
| and O(ā©_ā©)Oåå~ | |||
| masak | huh? not here. | ||
| jimmy | or (*^__^*) å»å»ā¦ā¦ | ||
| masak | jimmy: oh, you mean I should have written it like that? :) | ||
| masak first thought O(n_n) was a complexity measure | 13:00 | ||
| jimmy | as you like it. | ||
| masak | jimmy: still learning Asian emoticons, I'm afraid ^_^ | 13:01 | |
| jimmy | should be O(ā©_ā©)O, it's like face of laughing | ||
| masak | yes, I see that now. | ||
| they're so strange, they're all rotated 90 degrees clockwise :) | |||
| jimmy | it's not the part of chinse, just like : ) on the web | 13:02 | |
| masak | jimmy: ęē„é | ||
| dalek | r33555 | moritz++ | trunk: | ||
| : add '=cut' lines to some POD documents. Closes trac #19, jimmy++ | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33555 | |||
| jimmy | hmm,it's outputed from sogou shuru fa. | 13:03 | |
| masak | sogou? | ||
| I know "shuru fa", but what's "sogou"? | 13:04 | ||
| jimmy | www.sogou.com | ||
| it's pinyin.sogou.com/ | |||
| and you will see it. | 13:05 | ||
| it's one of the best shurufa in china now. | 13:07 | ||
| lathos | masak: They're rotated clockwise because Chinese and Japanese traditionally read top to bottom not left to right. | 13:08 | |
| masak | jimmy: what makes it so great? | ||
| lathos: oh, so it has nothing to do with real faces normally being rotated that way? (I was trying to be funny when I said the above.) | |||
| lathos | (I just made that up but it sounds believable.) | ||
|
13:08
alvar joined
|
|||
| masak | lathos: ah. | 13:08 | |
| jimmy | moritz: so i think there should be code standard for missing '=cut' | 13:09 | |
| masak | lathos: Chinese ideograms of animals are normally rotated 90 degrees clockwise, i.e. the opposite direction from smilies. | ||
| moritz | jimmy: patches welcome | ||
| purl | That's swahili for "Put up or shut up." | ||
| jimmy | lathos: should be top to bottom and left to right. | 13:10 | |
| jonathan | lathos: You're in Japan, IIRC? | 13:11 | |
| jonathan is pondering doing YAPC::Asia this year...and guesses it will be in Japan. | 13:12 | ||
| Well, next year | |||
| purl | next year is the first year nordakker have tax write-offs | ||
| lathos | I am. | ||
| jonathan | 2009. :-) | ||
| lathos | But next year I will be in the UK. :) | ||
| COming back in 2010. | |||
| jonathan | Ah, OK. | ||
| jimmy | masak: it is so great, for humanity and creativity and so and so | ||
| lathos | This year's YAPC::Asia was excellent. | ||
| jonathan | I'll not see you there, then. ;-) | ||
| Yes. I've not seen any dates for the 2009 one yet, but will keep an eye out. | |||
| lathos | They were talking about having it in Kyoto. | 13:13 | |
| If I get a job and do interesting Perl things between now and then I may come back for it. | |||
| masak | jimmy: by "humanity", do you mean "humane user interface"? | 13:14 | |
| jonathan | OK. If I go I'll probably spend 2 weeks or so over in Japan. | ||
| And visit a few places. | |||
| So I won't mind which city it's in. :-) | |||
| lathos | Cool. | ||
| jonathan | Never been there before, and would really like to. | ||
| lathos | Top tips: Tokyo and Osaka are not worth much time. Kyoto, Nara, Hiroshima are the places to go. | ||
| jimmy | masak: i think i should say 'be close to humanity', my poor english though. | 13:15 | |
| masak | jimmy: 'close to humanity' is still poor English, I'm afraid. | ||
| jimmy: do you mean 'easy to use, because it's designed according to the way people think'? | |||
| jonathan | Thanks - good to know. | 13:16 | |
| jimmy | hmm, i should say 'be close to human's custom. | ||
| masak | jimmy: that's what I thought. | ||
| jimmy | or äŗŗę§å | ||
| masak | jimmy: it's usually just called 'useable' or 'user-friendly'. | ||
| lathos | Intuitive. | ||
| purl | rumour has it intuitive is in the brain of the beholder or EXCEPT NIPPLES. EVERYONE understands nipples. or a word people apply to interfaces they're familiar with (or nipples) or use.perl.org/~petdance/journal/12908 | ||
| jonathan | ...that wasn't quite what I was expecting... | 13:17 | |
| jimmy | masak: or humanization? it is right ? | ||
|
13:17
ruoso joined
|
|||
| jonathan | purl++ # keeping us surprised | 13:17 | |
| masak | jimmy: not that I've heard. | ||
| jimmy: sounds like you're trying to transform something into a human. | |||
| lathos | äŗŗēå is literally humanizing, but what you mean is "intuitive". | ||
| masak | aye. | 13:18 | |
| jimmy | so i should say ' it is humanized' | ||
| lathos | Intuitive. | ||
| purl | intuitive is in the brain of the beholder or EXCEPT NIPPLES. EVERYONE understands nipples. or a word people apply to interfaces they're familiar with (or nipples) or use.perl.org/~petdance/journal/12908 | ||
| jimmy | lathos: your know chinese? good, a new one | 13:19 | |
| s/your/you/ | |||
| it is humanized. it is right ? | |||
| lathos | I know ę¼¢å | ||
| Intuitive. Not going to say it again. | |||
| jimmy | be good at it ? | 13:20 | |
| lathos | Well, I can read Japanese. I can read a little bit of Chinese. | ||
| jimmy | there were so many words in english. and there were 4000 word in chinese. my memory was full. | ||
|
13:20
bacek joined
|
|||
| riffraff | question wrt HLLCompiler.pir | 13:21 | |
| should'nt the interactiveroutine have a "print" phase? | 13:22 | ||
| jimmy | lathos++ | ||
| lathos | jimmy: There are 4000 letters in Chinese. There are 26 letters in English. :) | ||
| jimmy | that not letter | ||
| that was a half of word | 13:23 | ||
| riffraff | as of now it does read, eval, possibly print PAST/PIR/POST, loop. IMHO it should also print the result of the last step | ||
| jimmy | or it is a word sometimes | ||
| jonathan | riffraff: You can insert your own stages. | 13:24 | |
| riffraff: See Rakudo, we have a check phase too | |||
| jimmy | just like äŗŗ means person or people, and äŗŗē±» means human or human being | 13:25 | |
| lathos | Yep. So much more than 4000 words. | ||
| jimmy | and no peoples or humans or persons with 's' | 13:26 | |
|
13:27
ElPenguin joined
|
|||
| riffraff | jonathan, yes, but I have the feeling that the default should be to have a print of the operation result, I think it's the expected behaviour in all the interactive interpreters I know | 13:28 | |
| (in rakudo too :) ) | |||
| jonathan | Yeah, Pugs I think did work like that | ||
| riffraff | (err.. meaning "it would be nice to have") | ||
| jonathan | I wouldn't object to Rakudo's REPL having that. | 13:29 | |
| Especially if it showed the type of the thingy that resulted too. | |||
| jonathan had his first REPL experience with ML | |||
| Maybe I've been unduly influenced. :-) | |||
| riffraff | :) | 13:31 | |
| ElPenguin | it does seem like most interactive interpreters do that | 13:32 | |
|
13:32
Whiteknight joined
|
|||
| ElPenguin | most lisp REPLs are just (loop (print (eval (read)))) | 13:32 | |
| riffraff | another small thing, again in the HLLCompiler interactive method.. it seems to be setting the prompt at every iteration, shouldn't that be done only once at start? | ||
| jonathan | I think it is useful to be able to per iteration | 13:33 | |
| lathos | That's not a REPL, that's a LPER. | 13:34 | |
| jonathan | Like, it'd be good if we could support typing | ||
| lathos | If you did "{print (eval read)} loop" would it be a PERL? | ||
| jonathan | > class Foo { | ||
| - has $x; | |||
| - } | |||
| As in, you get a difference prompt when you open a curly. | |||
| lathos | "Foo>" | ||
| jimmy | moritz: trac.parrot.org/parrot/attachment/ticket/20 i think i should tell you. | 13:35 | |
| ElPenguin | lathos: if you make function calls (args)funcname then it could be read eval print loop ;) | ||
| riffraff | ah makes sense | ||
| jonathan | We don't do that yet. | ||
| I'd love it if we did. :-) | |||
|
13:46
particle joined
|
|||
| jimmy | I really know nothing of the difference between humanization and humanizing. | 13:48 | |
| masak | jimmy: neither of them is a good translation of "äŗŗēå", as lathos pointed out. it is a _literal_ translation, but not a good one. | 13:52 | |
| jimmy | thanks. should be 'äŗŗę§å'. but, is there different between these two words? | 13:54 | |
| masak | which two words? | ||
| the point is that 'äŗŗę§å' is best translated as 'intuitive' or 'user-friendly' in English. | 13:55 | ||
| jimmy | humanization and humanizing | ||
| lathos | humanization is a noun, humanizing is adjective or participle. | ||
| masak | the translation 'humanizing' conveys what the individual hanzi mean, but that is not relevant in an English translation. | ||
| lathos | s/adjective/adverb/ | 13:56 | |
| masak | lathos: no, adjective | ||
| lathos | Yes. I'm confused. | ||
| So åč© versus å½¢å®¹č© if that makes sense in Chinese. | |||
| jimmy | hmm, with ing sometime it is noun too. | 13:57 | |
| lathos | Normally it's a participle used as a noun. | ||
| "Surfing" is actually a participle, it just looks like a noun. | 13:58 | ||
| jimmy | lathos: aye. to make us understanding the accidence, participle was re-named to noun in dict. | 14:00 | |
| it is so called 'verb-noun' | 14:01 | ||
|
14:01
mfredrickson joined
14:04
kj joined
|
|||
| jimmy | I think, the handicap of learning chinese pronunciation and the handicap of learning english should be vocabulary. i was always confused with the same meaning of words such as barrier,obstruction and handicap. | 14:11 | |
| lathos | English is not the only language that has synonyms. | 14:17 | |
| äŗŗē, ēę¶Æ, ēę“» are all "life" in English. | |||
| Oh, and so are ēå½ and å½. | 14:18 | ||
| ElPenguin is curious about how you input chinese characters | |||
| jimmy | using chatzilla | ||
| hmm. ēę“» is noun and verb, it is life and live | 14:19 | ||
| ēę¶Æ means career . i.e: lathos's career | 14:21 | ||
| ēå½ is a noun and ē is verb | 14:22 | ||
| äŗŗēč§ means philosophy | 14:23 | ||
| ē usually is not used as a word | 14:25 | ||
| such as 'membership-based' | |||
| bacek want LTM... | |||
| badly | |||
| jimmy | lathos: re-name means āé-å½åā, the word 're' just like a word in chinese. and there were difference of 're' and build the word | 14:27 | |
| bacek | "Curiosity killed the cat". | 14:28 | |
| Guys, it's #parrot, not #chinese | 14:29 | ||
| jimmy | sorry. i was just learning english. | ||
| i was chinese. | |||
| bacek: are you free now? | 14:31 | ||
| bacek | jimmy: yes | ||
| jimmy | and please deal with trac.parrot.org/parrot/attachment/ticket/20. i was always blocked to create another patch for my patch. | 14:32 | |
| bacek | jimmy: Sorry, I'm not commiter... | 14:33 | |
| dalek | r33556 | moritz++ | trunk: | ||
| : [tools/dev/mk_language_shell.pl] use tokens for matching literals. | |||
| : Patch courtesy by Gabriele Renzi, riffraff++. Closes RT #61086 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33556 | |||
| bacek | jimmy: You can ask moritz :) | 14:34 | |
| jimmy | i am reading all over the docs. and finding some bugs, sometimes for my poor english, there was outdated docs with little change to make it's right, and i don't know how to describe it. | 14:35 | |
| riffraff | thanks moritz :) | 14:36 | |
| jimmy | i should say rewrite it. | 14:37 | |
| dalek | r33557 | kjs++ | trunk: | 14:40 | |
| : [pirc] fix bugs in bytecode generator. | |||
| : + can emit string constants, num constants | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33557 | |||
| moritz | afk | 14:44 | |
|
14:45
stockwellb joined
|
|||
| dalek | r33558 | Whiteknight++ | trunk: | 14:47 | |
| : [Book] small updates and fixes to Chp4 and Chp6 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33558 | |||
| r33559 | Whiteknight++ | trunk: | 14:49 | ||
| : [IMCC] remove .param type "name" => value syntax from IMCC, per RT#57410 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33559 | |||
|
14:53
iblechbot joined
|
|||
| riffraff | is there default stringish representation for everything inside parrot? It seems some things do not have get_string and so fail with "say" | 15:00 | |
| (RTF $file welcome) | |||
| lathos | Sounds like you know the answer to that question. | 15:02 | |
| kj | riffraff: you probably want to look into documentation about PMCs | 15:08 | |
| dalek | r33560 | kjs++ | trunk: | 15:09 | |
| : [pirc] documentation rocks! | |||
| : + and cleanups too. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33560 | |||
|
15:14
randi joined
|
|||
| dalek | r33561 | Whiteknight++ | trunk: | 15:19 | |
| : [Book] add information about named parameters and optional parameters to chapter 4 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33561 | |||
|
15:26
particle1 joined
15:27
Theory joined
|
|||
| dalek | r33562 | kjs++ | trunk: | 15:28 | |
| : [pirc] fix some bugs I introduced previous commit (reordering of statements) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33562 | |||
| r33563 | kjs++ | trunk: | 15:35 | ||
| : [pirc] fix heredoc preprocessor to handle comments at end of file properly. If you write a line comment on the last line, without a \\n at the end, the # would be written to the intermediate file; the PIR lexer doesn't know how to handle #s, so error. Fix this. (easy fix: the {EOL} in a line comment becomes optional, so that the rule is also matched if there's no \\n) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33563 | |||
|
15:35
particle joined,
stockwellb joined
15:36
workbench joined
|
|||
| dalek | r33564 | fperrad++ | trunk: | 15:37 | |
| : [Lua] complex | |||
| : - more tests | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33564 | |||
|
15:42
particle1 joined
|
|||
| dalek | r33565 | kjs++ | trunk: | 15:44 | |
| : [pirc] update README.pod | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33565 | |||
|
15:47
particle joined
15:53
jimmy left
15:57
tetragon joined
15:58
particle joined
16:06
jhorwitz joined
|
|||
| register | what does the set_reg_usage function do? | 16:07 | |
| kj | register: what file? | 16:10 | |
| register | kj | ||
| don't ask me to read the pod documentation in the sourcecode: | |||
| it says: | 16:11 | ||
| kj | eh? | ||
| register | locate Sub according to pc | ||
| purl | Speak up, sonny! | ||
| register | 1281 * - set register usage in context | ||
| i am trying to figure out the jit source code... | |||
| kj | I asked in what file that function is located | ||
| register | it is located in src/jit.c | ||
| kj | ... not to ask the pod documentation | ||
| s/ask/read/ | |||
| ok. Well, I'mnot familiar with that code, but for each Sub, parrot allocates a number of registers that are needed for executing that sub | 16:12 | ||
| it might have something to do with that, but can't say for sure | |||
| register | ok | 16:13 | |
| what exactly is a segment? | |||
| from a parrot point of view? | |||
| kj | bytecode consists of a nubmer of segements | ||
| register | ok | ||
| kj | a code segment, a constants segment | ||
| see pdd13 I think | |||
| register | ok | ||
| kj | byte bytecode pdd anyway | ||
| register | thx kj you have been very helpful | ||
| kj | ok, you're welcome | ||
| Whiteknight | i've never even figured out the JIT code | 16:16 | |
| register | well i got the big picture and now i am beginning to slowly figuring out the details... | ||
| but it is a slow process... | 16:17 | ||
| it's pretty full of stuff | |||
| and of details... | |||
|
16:18
Theory joined
16:19
tak joined
|
|||
| dalek | r33566 | duff++ | trunk: | 16:21 | |
| : [ncigen] Added a note to the README about the IPC::Run3 requirement | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33566 | |||
| kj | register: do you happen to know whether there's any mentioning of 'basic block' in the JIT code? | 16:23 | |
| besides a code and constants segment, bytecode also has a 'jit' segment, and I'm just looking into that in bytecode generation | |||
|
16:25
mberends joined
|
|||
| dalek | r33567 | fperrad++ | trunk: | 16:29 | |
| : [win32] setup | |||
| : fix RT #60986 | |||
| : Now, PrivilegesRequired=none (admin was the default value) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33567 | |||
| pmichaud | PerlJam: ping | ||
| dalek | r33568 | pmichaud++ | trunk: | 16:32 | |
| : [rakudo]: spectest-progress.csv update: 228 files, 4708 passing | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33568 | |||
| r33569 | Whiteknight++ | trunk: | 16:51 | ||
| : [src/gc] add a small comment to smallobject.c that isn't worth pursuing now. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33569 | |||
|
16:55
dngor joined
16:59
riffraff joined
|
|||
| jonathan | parrotbug? | 17:04 | |
| purl | parrotbug is mailto:parrotbug@parrotcode.org or svn.perl.org/parrot/trunk/docs/submissions.pod or see also "rakudobug" or needs to be converted to trac | ||
| jonathan | rakudobug? | ||
| purl | i guess rakudobug is mailto:rakudobug@perl.org | ||
| kj | jonathan: Hi, do you know how the var-arg ops (set_returns, get_params, etc) are stored in bytecode? | 17:05 | |
|
17:06
kid51 joined
|
|||
| jonathan | kj: Yes | 17:06 | |
| kj: One moment, just dealing with something else, then will explain | |||
| kj | okay, thx | ||
| dalek | r33570 | jkeenan++ | testparrottest: | ||
| : Add tests for 3 c_output* test functions. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33570 | |||
| kj | In the mean time I'll just type here how I think it's done. So that might help in your explanation (or even drastically shorten it, if I'm right :-) ) | 17:07 | |
| pmichaud | I have a very quick question that jonathan (or someone) might be to answer | 17:08 | |
| src/pmc/capture.pmc doesn't have a custom mark() subroutine. Should it? | |||
| kj | pmichaud: if the PMC has any extra data structures as attributes, my guess would be 'yes' | 17:09 | |
| (I take it capture inherits from some other pmc?) | |||
| jonathan: (my view on var-args-bytecode) Let's say we want to emit get_params "0,0,0,0", $P0, $P1, $P2, $P3, then the following is emitted: <opcode for get_params>, <index for fixedpmcarray object in constants-table>, and finally this: 0, 1, 2, 3 | 17:12 | ||
| pmichaud | capture doesn't inherit from another pmc | 17:13 | |
| it does have extra PMC attributes | |||
| kj | the fixedpmcarray should have the encoding of flags, and I would guess it also knows what register types 0-3 are. | ||
| pmichaud: in my (limited) understanding, the PMC is responsible for marking everythign it references | 17:14 | ||
| pmichaud | kj: that's my understanding as well. | ||
| kj | so, the custom mark method should do that , I'd say | ||
| pmichaud | okay, I'll try that | 17:15 | |
| tnx | |||
| dalek | r33571 | moritz++ | trunk: | ||
| : [rakudo] add regression tests for errors in signatures | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33571 | |||
| pmichaud | oh, wait. we have | ||
| PObj_data_is_PMC_array_SET(SELF); | |||
| so I think that must take care of it. | 17:16 | ||
| maybe. | |||
| yes, that's it. | |||
| jonathan | pmichaud: Yes, that may (should, hopefully ;-)) take care of it. | 17:19 | |
| I don't like using that flag so much because I think you gotta make sure you have a valid value in one of the cachevals too so it knows how many thingies to mark, IIRC. | |||
| pmichaud | yes, in the int_val slot, I think. | 17:20 | |
| PMC_int_val(SELF) = CAPTURE_DATA_SIZE; | |||
| jonathan | Yes. | 17:21 | |
| kj: You are pretty much correct, yes. | |||
|
17:21
allison joined
|
|||
| jonathan | The FixedPMCArray goes in the constants table. | 17:22 | |
| dalek | r33572 | jkeenan++ | testparrottest: | ||
| : Add a 'c_output_unlike' test function. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33572 | |||
| jonathan | For named parameters things are more interesting, as they get two entries in the array - one saying where the name comes from, and another saying where the value comes from. | ||
| But each value in the fixedintegerarray (is not pmcarray, sorry) is both the register type and any additional flags. | 17:23 | ||
| They are specified in PDD03. | |||
| kj | ah yes, I see now. Thanks | 17:26 | |
| jonathan | pmichaud: How's assignment stuff going? | 17:27 | |
| pmichaud | I'm working on a capture optimization at the moment | 17:28 | |
| to try to speed up parsing | |||
| but I think I've found an imcc bug | |||
| nopaste coming | |||
| nopaste | "pmichaud" at 72.181.176.220 pasted "code generated for regex / (hello) \\s+ $0 /" (138 lines) at nopaste.snit.ch/14836 | ||
| pmichaud | another nopaste coming | 17:29 | |
| nopaste | "pmichaud" at 72.181.176.220 pasted "trace for matching 'hello hello' to regex in nopaste 14836" (118 lines) at nopaste.snit.ch/14837 | ||
| pmichaud | the problem line in the trace is: | 17:30 | |
| 230 local_branch P2, -70 P2=ResizableIntegerArray=PMC(0x81ec6a0) | |||
| I _think_ this corresponds to the following line in the PIR source | 17:31 | ||
| local_branch cstack, R14 | |||
| I don't understand the "-70" | |||
| jonathan | What would R14 be? | 17:32 | |
| Oh, the destination label? | |||
| pmichaud | if you look in the source, it comes *after* the local_branch statement | ||
| yes, destination label | |||
| jonathan | -70 would suggest it thinks it came before | 17:33 | |
| pmichaud | and clearly the instructions being executed after the local_branch are not the ones at R14 | ||
| dalek | r33573 | moritz++ | trunk: | ||
| : [rakudo] add test file to spectest.data (binding of closures to &variables) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33573 | |||
| pmichaud | it looks as though it branched instead to R11_close | 17:34 | |
| This code was generated with some local patches in place | 17:36 | ||
| jonathan | That's odd, because surely if there was a bug in this we'd have been seeing it long before now... | ||
| pmichaud | but nothing significant | ||
| I've basically switched PGE from using the Capture_PIR class to the Capture PMC | |||
| let me see what I get without my local patches | 17:37 | ||
| also, this is the _only_ failing test in the PGE test suite with my local modifications | |||
| and the (PIR) code that is generated is correct. | |||
| btw, Coke++ figured out what was going on with the .include stuff :-) | 17:38 | ||
| we had a file that was missing a =cut | |||
| which was causing .includes to be treated as comments :) | |||
| dalek | r33574 | jkeenan++ | testparrottest: | 17:40 | |
| : Add can_ok test for c_output_unlike. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33574 | |||
| moritz | we should have a codingstd test that checks for missing =cut lines | ||
| jonathan | pmichaud: Ah! :-) | ||
| lol | |||
| Will be interesting to see if it works without your local patches...and very odd too. | 17:41 | ||
| nopaste | "pmichaud" at 72.181.176.220 pasted "PIR for / (hello) \\s+ $0 / in trunk (no local mods)" (136 lines) at nopaste.snit.ch/14838 | ||
| jonathan | pmichaud: And that works? | 17:42 | |
| nopaste | "pmichaud" at 72.181.176.220 pasted "trace for nopaste 14838" (166 lines) at nopaste.snit.ch/14839 | ||
| "pmichaud" at 72.181.176.220 pasted "code used to generate pir / traces" (17 lines) at nopaste.snit.ch/14840 | 17:44 | ||
| pmichaud | yes, it gives the correct value. | ||
| but the trace looks _really_ odd to me | |||
| I think I should realclean and try again | |||
| in nopaste 14839, we have | 17:45 | ||
| 230 local_branch P2, -70 P2=ResizableIntegerArray=PMC(0x81c0e54) | |||
| which is the same problem I noticed in the earlier one | |||
| so either I'm reading the trace wrong, or _somehow_ we're managing to "match" even with such an obvious bug in the code | |||
| so, I'm going to backtrack and look again closely | 17:46 | ||
| the program in 14840 is sufficient to generate both the PIR and the trace | |||
| oh, I'm misreading the trace | 17:47 | ||
| just a sec | 17:48 | ||
| register | let me see if i have correctly understood this | ||
| if a fixup is of tipe enum_fixup_sub | |||
| then it's offset | |||
| pmichaud | the line I'm thinking corresponds to R14 is actually | ||
| local_branch cstack, R11_close | |||
| register | its offset is a pointer in the constanct table | ||
| pmichaud | which of course is what we're seeing. | ||
| register | to a subroutine | 17:49 | |
| pmichaud | okay, forget all my nopastes -- I'll try again. | ||
| purl | pmichaud, I didn't have anything matching all my nopastes -- i'll try again | ||
| jonathan is thankful that there isn't an IMCC bug to try and find | 17:54 | ||
| pmichaud | me too. | ||
| dalek | r33575 | jkeenan++ | testparrottest: | 17:57 | |
| : Refactor C code used in CODE into . | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33575 | |||
| pmichaud | oh, I see the issue. | 17:59 | |
| interesting. | 18:00 | ||
| bbiab | 18:07 | ||
| jonathan hopes not *too* interesting... | |||
| pmichaud | it has to do with whether the Capture PMC "does hash does array" or not | 18:08 | |
| Capture_PIR isn't "does array" | |||
| Capture is. | |||
| and PGE gets confused by that. | 18:09 | ||
| back in 15 | |||
| jonathan | back after $time_it_takes_to_buy_beer | 18:10 | |
|
18:12
mberends joined
18:23
paco joined
|
|||
| PerlJam | pm: pong | 18:28 | |
| pmichaud | PerlJam: nice work on :nth. Unfortunately, it's wrong. | ||
| :-) | |||
| :nth doesn't mean "every" | |||
| PerlJam | I wasn't sure about the interaction between :g, :nth(), and :x() and that seemed "nice" to me :) | 18:29 | |
| pmichaud | ah | ||
| :nth(3) means replace only the third occurrence | |||
| :nth(2..4) means replace the second through fourth occurrences | |||
| the _easy_ way to do :nth is (I think) to smart match it against each repetition number | 18:30 | ||
| that way :nth( { .is_prime } ) will work, too. | 18:31 | ||
| PerlJam | so ... should I check the pmc to see if it isa 'Sub' or isa 'Range' for those? (how do Ranges come across?) | 18:32 | |
| pmichaud | no | ||
| you just do a smart match on whatever you get | |||
| let smart match take care of figuring out what you got | |||
| that way it even works for things like | |||
| PerlJam | smart matching in perl6 I understand. I'm not sure I quite understand it in parrot. | 18:33 | |
| pmichaud | $P0 = 'infix:~~'(number, nthpmc) | ||
| if $P0 ... | |||
| PerlJam | (or maybe it's exactly the same and I have some sort of mental block) | ||
| pmichaud | or you can perhaps get away with | 18:34 | |
| $P0 = nthpmc.'ACCEPTS'(number) | |||
| PerlJam | so what should happen if there's both :g and :nth(3) ? | ||
| pmichaud | I would think that :nth(3) would take precedence | ||
| PerlJam | why? | 18:35 | |
| pmichaud | ...but I wouldn't worry about that yet, honestly. | ||
| I would kinda see :g :nth(3) as being overlapping constraints | |||
| there is a case to be made that it means "keep doing :nth(3) as long as you can" | |||
| PerlJam | sort of like ANDing them? | 18:36 | |
| pmichaud | yeah | ||
| can also think of it that :nth and :x imply :g (at least to some minimum number needed to satisfy :nth and :x) | |||
| those are probably questions for p6l | 18:37 | ||
| but I'd say to get the basic :nth implementation correct, and then we can let the test-suite and actual use cases identify the interactions | 18:38 | ||
| PerlJam | What's the real difference between 'infix:~~'(number,nthpmc) and nthpmc.'ACCEPTS'(number) ? Is it just that the former is symmetric and the later isn't? | 18:40 | |
| pmichaud | smart match isn't symmetric | ||
| at all. | |||
| PerlJam makes a mental note to re-read S05 :) | 18:41 | ||
| pmichaud | ...and S03, probably :-) | ||
| jonathan | infix:~~ will end up calling .ACCEPTS | ||
| PerlJam | so what's the difference? | ||
| pmichaud | infix:~~ will also have some "syntactic smarts" in it | ||
| so that $x ~~ .method ends up calling .method on $x instead of $_ | |||
| jonathan | But they're syntactic, so they'll be in the parser/actions. | ||
| pmichaud | correct | 18:42 | |
| but it may also mean there's not really an 'infix:~~' sub at some point. | |||
| jonathan | So at the PIR level, calling them there is identical, I think. | ||
| pmichaud | I'd go with .ACCEPTS for now. | ||
| jonathan | Ah, yes, true. We could translate straight to the call to .ACCEPTS. | ||
| pmichaud | that's also more likely to do what you want for Junctions: :nth(3|5|7) | ||
| pmichaud recommends reviewing the synopsis before implementing any new feature in Rakudo. :-) | 18:43 | ||
| jonathan learnt this one the hard way. | |||
| Just because the synopsis *used* to have it the way you think it works... :-) | |||
| PerlJam | Well, if I have some time tonight, I will re-implement :nth() then. | 18:49 | |
|
18:49
contingencyplan joined
|
|||
| pmichaud | cool. | 18:50 | |
| that would be awesome. I'll even see about getting the :3rd :1st :2nd adverbs to parse properly | |||
| PerlJam | I figured last night's implementation was temporary anyway :) | ||
| pmichaud | yeah, it concerned me a bit because it's headed down the wrong path (and I'm worried about it being copied into .match) | ||
| I suppose we could say that .subst really ought to be implemented in terms of .match | 18:51 | ||
| but I haven't figured out exactly how to do :global with :match yet | |||
| (if you can figure that out from S05, that would help also :-) | |||
| PerlJam | Is Match related to Capture at all? | 18:52 | |
| pmichaud | in PGE, Match isa Capture | ||
| PerlJam | awesome | 18:53 | |
| pmichaud | I don't know if we'd definitively decided that it should be that way, but they have enough in common that it makes sense | ||
| s/we'd/we've/ | |||
| PerlJam | So ... where exactly would you be parsing :1st and friends (IIRC, you should be able to use :23rd and :23st and :23nd as well) | 18:57 | |
| pmichaud | colonpair | ||
| purl | i guess colonpair is really a term | ||
|
18:57
paco joined
|
|||
| pmichaud | it's an easy thing to add, if it's not there already | 18:57 | |
| (it's not.) | |||
| and we should probably come up with an easy way to map adverb synonyms | 18:58 | ||
| so that it's easy to say "give me either :global or :g" or "give me :nth, :st, :nd, :rd, :th" | |||
| PerlJam | yep | ||
| pmichaud | I was thinking a private sub for now -- something like | 18:59 | |
| $P0 = '!get_option'(options, ':nth', ':st', ':nd', ':rd', ':th', 'default'=>1) | |||
| of course, p6 allows a signature to specify both long and short name for an option... but we're not quite there yet (parrot calling conventions need work) | 19:00 | ||
| paco | ; | 19:06 | |
| \\; | |||
|
19:10
allison joined
19:17
chromatic joined
|
|||
| nopaste | "pmichaud" at 72.181.176.220 pasted "why does tracing not know how to dump set_p_k_p ?" (25 lines) at nopaste.snit.ch/14841 | 19:45 | |
| pmichaud | afk, lunch. | ||
|
20:09
stockwellb joined
20:12
mj41 joined
20:52
masak joined
20:54
davidfetter joined
20:57
dmknopp joined
21:18
MariachiElf joined
21:31
TiMBuS joined
|
|||
| dalek | r33576 | pmichaud++ | trunk: | 21:42 | |
| : [pge]: Update PGE/Hs.pir so it doesn't directly access private @!list | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33576 | |||
| pmichaud | I'm getting test failures in t/op/calling.t | 21:43 | |
| t/op/calling.t 5 1280 98 5 5.10% 73-75 78 82 | |||
| r33575+ | |||
| (haven't done a bisect to see when this first started appearing) | |||
| dalek | r33577 | pmichaud++ | trunk: | 21:45 | |
| : [tge]: When iterating keyed values of TGE;Parser (Match) objects, use .hash() | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33577 | |||
| r33578 | pmichaud++ | trunk: | 21:46 | ||
| : [core]: Updates to Capture PMC | |||
| : * Don't automatically create array/hash if simply fetching a value | |||
| : * Allow set_pmc (setref op) to quickly release array/hash components | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33578 | |||
| jonathan | pmichaud: Optimizatoins? | 21:48 | |
| pmichaud | yes | ||
| looks like about a 12% speedup in parsing. | |||
| jonathan | Wow! | ||
| pmichaud++ | |||
| pmichaud | sorry, 12% speedup in parsing + code gen, which means the parsing speedup is actually a bit more than that. | ||
| jonathan | That makes it even better. | 21:49 | |
| pmichaud | I have another couple of patches coming that might improve it more. | ||
| Whiteknight | pmichaud++ | ||
| jonathan | ...and this is *before* Cursor, protoregexes and LTM... | ||
| pmichaud | This also cleans up some code in TGE and other places that were making incorrect assumptions about Match objects | ||
| yes, this is before all of those. | |||
| jhorwitz | tewk: ping | ||
| pmichaud | I got tired of waiting for "make spectest" to take so long, so I figured I'd go for the quick optimization :-) | ||
| Whiteknight | protoregexes and LTM are going to speed up parsing? | ||
| pmichaud | Whiteknight: I expect at least an order of magnitude improvement | 21:50 | |
| jonathan | Cursor change should give maybe another 10% though? | 21:51 | |
| pmichaud | I don't know... it might | ||
| I'd guess closer to 5% to be conservative | |||
| jonathan | OK. | ||
| pmichaud | I'll be very happy if it's 10% | ||
| (which it could be) | |||
| jonathan | But it'll make knowing about line numbers easier? | ||
| pmichaud | I also have a *big* utf8 improvement to do | ||
| jonathan | Or more efficient? | ||
| pmichaud | cursor will make line numbers very simple and efficient, yes. | ||
| jonathan | Great. | ||
| Does that come after assignment and parameters? ;-) | 21:52 | ||
| pmichaud | that is the next PGE enhancement | ||
| yes, it comes after assignment and params | |||
| jonathan | Great. | ||
| jonathan will dig back into bytecode annotations early next week. | |||
| pmichaud | excellent. we should be timing the two items about right then. | ||
| jonathan | Yup. | 21:53 | |
| Maybe in January's Parrot release we ship a Rakudo that spits out line numbers and files. :-) | 21:54 | ||
| pmichaud | Yes. | ||
| that seems very likely. | |||
|
21:54
chromatic joined
|
|||
| jhorwitz perks up for line numbers | 21:54 | ||
| masak | (line numbers and files)++ | ||
| pmichaud | chromatic: I think we can reject #43485 | ||
| I don't know that the issue was resolved, but a bunch of stuff has changed (including a TGE change I just committed) that perhaps invalidates the ticket. | 21:55 | ||
|
21:56
stockwellb joined
|
|||
| dalek | r33579 | pmichaud++ | trunk: | 21:56 | |
| : [pge]: Workaround problem of trying to shift PMCs from a Hash iterator. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33579 | |||
| chromatic | pmichaud, I agree. | ||
| dalek | r33580 | pmichaud++ | trunk: | 21:59 | |
| : [pge]: Switch PGE::Match to use Capture PMC instead of Capture_PIR objects. | |||
| : This results in a 13% speed improvement in the "Rakudo actions.pm | |||
| : benchmark" (was 45.75sec, now 39.80sec on my system). | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33580 | |||
| jonathan wonders what this does to make spectest | 22:01 | ||
| pmichaud | should also be ~~ 13% improvement, I would think. | ||
| jonathan | Nice. | 22:02 | |
| pmichaud | maybe slightly less, since Rakudo compilation isn't quite as efficient as NQP compilation | ||
|
22:02
allison joined
|
|||
| jonathan | It does have a slightly harder task to do. ;-) | 22:02 | |
|
22:03
stockwellb joined
|
|||
| pmichaud | I'm improving PAST nodes next. | 22:03 | |
|
22:03
Aisling joined
|
|||
| jonathan | More optimization? | 22:04 | |
| pmichaud | yes | ||
| trivial to do, may result in a significant speed up (more likely a small one) | |||
| jonathan | True, but the two together maybe give 15% overall. That's not bad! | ||
| pmichaud | correct, that's what I'm thinking. | 22:05 | |
| and it's a speedup we all benefit from when doing language development. | |||
| so I figured it was worth investing the time today. | |||
| it also means I can look at deprecating Capture_PIR | 22:07 | ||
| jonathan | Yes, I'll certainly be glad of it. | 22:09 | |
| Though its a rather see-saw process. | |||
| We make it faster...then we add more tests...then we make it faster...then we run more tests... :-) | 22:10 | ||
| So hopefully we'll swallow up the gains soon, by passing lots more tests. ;-) | |||
| pmichaud | probably. | ||
| purl | Really? Probably? Are you Certain it's not certain? Are you sure it's unsure? I think you need to look harder. | ||
|
22:11
stockwellb joined
22:38
particle joined
22:40
Limbic_Region joined
|
|||
| GeJ | Good morning everyone | 22:44 | |
| masak | GeJ: evenin' | ||
| GeJ | hej masak | 22:45 | |
| masak | :) | ||
| GeJ | How are things in Sweden? | 22:46 | |
| masak | dark, chilly and moist. | 22:47 | |
| GeJ | bright, hot and dry for me. But that's probably because I'm on the other side of the planet. | 22:48 | |
| masak | might be, yes. :) | ||
| where exactly are you? | 22:49 | ||
| GeJ | New Caledonia. A small island in the vicinity of Australia. | 22:50 | |
| masak | cool! | ||
| no wonder you always come in here saying 'good morning' when I'm about to go to bed :) | |||
|
22:56
tak joined
23:02
allison joined
23:04
gmansi joined
23:08
ruoso joined
|
|||
| bacek | pmichaud++ # My tests speeds up from 55 to 43 seconds! | 23:11 | |
| self-- # ...but still failing... | 23:12 | ||
| moritz | I get some failures in t/op/calling.t | 23:25 | |
| are they worth reporting? | |||
| pmichaud | I get them also. | 23:28 | |
| I think it's due to some imcc changes earlier. | |||
|
23:29
LimbicRegion joined
|
|||
| pmichaud | I suspect r33559 broke it | 23:30 | |
| the log says it removes the '.param pmc "a" => a' syntax, but they're still in the tests. | |||
| jonathan | Ah. | ||
| Was that syntax deprecated already? | 23:31 | ||
| pmichaud | yes, I think so. | ||
| jonathan | OK, so it should just be a case of ripping out the tests. | ||
| pmichaud | ...although it doesn't say anything about it in DEPRECATED | ||
| so... I dunno | |||
| also RT #57410 | 23:32 | ||
| moritz | oh, and t/spec/S05-transliteration/with-closure.t fails | 23:33 | |
| Method 'ord' not found for invocant of class 'PGE;Match' | |||
| pmichaud | okay. that might be due to some of the changes I made today. | 23:34 | |
| Limbic_Region | pmichaud - are you still doing prep work for prelude or has work in prelude begun? | ||
| pmichaud | still doing prep work | ||
| we have inline PIR working now, so we're getting close | |||
| just need to update parameter handling, I think. | |||
| Limbic_Region | right, I read that | 23:35 | |
| pmichaud | and reorganize the src/ directory. | 23:37 | |
| Limbic_Region | what is the preferred target for testing parrot these days? | ||
| pmichaud | you mean as in os/platform? | ||
| Limbic_Region | no, make test | 23:38 | |
| make fulltest | |||
| etc | |||
| moritz | 'make spectest' | ||
| Limbic_Region | not rakudo | ||
| parrot | |||
| pmichaud | for parrot, 'make test' or 'make test codetest' | ||
| moritz | oh | ||
| pmichaud | for rakudo, 'make spectest' | ||
| moritz should really go to bed now | |||
| Limbic_Region | sleep well moritz | ||
| pmichaud | switching PAST to use Capture instead of Capture_PIR gives us another 7.5% speedup | 23:40 | |
| jonathan | Wow. | ||
| Almost 20% total speedup. | |||
| pmichaud | yes, about 19.6% total | 23:41 | |
| I'm also running a test on the rx.t spectest, since it heavily uses PGE and Rakudo compilation | |||
| ...except Test.pm isn't compiling at the moment | 23:42 | ||
| Limbic_Region | ok, so it has been a while since I have ran make test for parrot | 23:46 | |
| and it is failing | |||
| purl paste | |||
| purl | rumour has it paste is (see: nopaste) or like glue but a little safer to sniff. or nopaste.snit.ch:8001/ or scsys.co.uk:8001/ anywhere shadowpaste is or mmm, sticky paste or You there! Eating the paste. or <see> 2 girls, 1 paste | ||
| nopaste | "Limbic_Region" at 98.231.130.59 pasted "make test on Win32/MinGW - just svn up'd" (997 lines) at nopaste.snit.ch/14842 | 23:47 | |
| Limbic_Region | is that anything to be concerned about? | ||
|
23:50
bacek joined
|
|||