|
Parrot 2.6.0 | parrot.org Log: irclog.perlgeek.de/parrot/today | Nopaste: nopaste.snit.ch:8001 | fix 'make html' (talk to Coke), merge gc_* branches, fix/replace/optimize hashing Set by moderator on 3 August 2010. |
|||
| bacek_at_work | aloha, humans | 00:00 | |
| Austin | whiteknight: link? | 00:07 | |
| purl | link is for me? | ||
|
00:09
brianwisti joined
|
|||
| whiteknight | Austin: science.slashdot.org/story/10/08/08...P?from=rss | 00:13 | |
|
00:19
Patterner joined,
Chandon joined,
bacek joined,
cotto joined,
contingencyplan joined,
workbench joined,
bacek_at_work joined,
particle joined,
TonyC joined,
jhelwig joined,
japhb joined,
jdv79 joined,
Khisanth joined,
GeJ joined,
mattp joined,
p6eval joined,
dzoe joined,
sri joined,
mikegrb joined,
atrodo joined,
Maddingue joined,
frodwith joined,
tewk_ joined,
szbalint joined,
confound joined,
sorear joined,
Tene joined,
Infinoid joined
|
|||
| Austin sings, "Someday soon I'll leave this world of pain and toil and sin." | 00:31 | ||
| Austin sings, "The Lord will take my by the hand to join all of me kin'" | 00:32 | ||
| Austin sings, "Me only wish is when the savior comes for me and you..." | |||
| Austin sings, "He kills the cast of Riverdance, and Michael Flatley, too!" | |||
| cotto | brings a tear to my eye | 00:47 | |
| Austin | DaVinci's Notebook, "Another Irish Drinking Song" | 01:05 | |
|
01:37
rurban_ joined
|
|||
| Austin | Jeez. It's about time! bootstrap/Pmc/Hash.nqp passes, finally. | 01:55 | |
| Austin ++ | |||
|
01:56
kid51 joined
|
|||
| dalek | rrot: r48351 | jkeenan++ | branches/tt1726_pmc_pod/t/codingstd/pmc_docs.t: Refactor internals so as to create a data structure where the documentation iteration through this data structure. Some changes to output. |
01:58 | |
| purl | Since Thu Aug 5 20:55:17 2010, there have been 286 modifications and 210 questions. I have been awake for 3 days, 5 hours, 3 minutes, 39 seconds this session, and currently reference 853176 factoids. Addressing is in optional mode. | ||
| cotto | stupid bot | 01:59 | |
| purl | Bad programmer, no cookie! | ||
| Austin | vomit, hurl, whorf, fail. | 02:04 | |
|
02:11
jimk joined
|
|||
| cotto | My student seems to have come up with something of non-trivial shininess. | 02:18 | |
| not quite perfect, but shiny | 02:20 | ||
| nopaste | "cotto" at 192.168.1.3 pasted "explodey code for khairul" (64 lines) at nopaste.snit.ch/22634 | 02:24 | |
|
02:32
khairul joined
02:35
janus joined
02:37
Andy joined
02:48
dduncan joined
|
|||
| khairul | cotto: ping | 02:52 | |
| cotto | khairul, pong | 02:53 | |
| nopaste.snit.ch/22634 | |||
| I heard you like segfaults. | |||
| nopaste | "cotto" at 192.168.1.3 pasted "more minimal test case for khairul" (33 lines) at nopaste.snit.ch/22635 | 03:04 | |
|
03:05
plobsing joined
03:10
bacek joined
03:15
aloha joined
03:27
hercynium joined
|
|||
| nopaste | "cotto" at 192.168.1.3 pasted "diff from trunk and khairul's branch" (49 lines) at nopaste.snit.ch/22636 | 03:29 | |
| "cotto" at 192.168.1.3 pasted "diff from trunk and khairul's branch, v2" (33 lines) at nopaste.snit.ch/22637 | 03:34 | ||
|
03:35
LoganLK joined
|
|||
| nopaste | "cotto" at 192.168.1.3 pasted "gsoc_instrument test failures on ubuntu 10.04 x86 for khairul" (22 lines) at nopaste.snit.ch/22638 | 03:39 | |
| dalek | kudo: ded33e1 | pmichaud++ | docs/release_guide.pod: Update release guide to note new publication strategy for |
03:45 | |
| rrot: r48352 | cotto++ | branches/gsoc_instrument/src/pmc/task.pmc: remove some unneeded changes to Task |
03:55 | ||
| rrot: r48353 | khairul++ | branches/gsoc_instrument/t/dynpmc/instrumentclass.t: Fixed copy-paste error. |
|||
| rrot: r48354 | cotto++ | trunk (2 files): store a reference to a thrown exception in the runloop struct |
04:11 | ||
| kudo: 38f9f12 | duff++ | docs/release_guide.pod: volunteer for the Oct release |
04:14 | ||
|
04:23
khairul joined
|
|||
| dalek | rrot: r48355 | khairul++ | branches/gsoc_instrument/src/dynpmc/instrument.pmc: Mark attr->event_handlers. |
04:28 | |
|
04:43
brianwisti joined
|
|||
| Austin ++ # Array bootstrap works | 04:49 | ||
| cotto | msg khairul t/dynpmc/instrument.t passes with r48355 | 04:53 | |
| purl | Message for khairul stored. | ||
| cotto | if you want to karma yourself, you can always abuse nopaste | 05:03 | |
|
05:05
Casan joined
05:09
petdance joined
|
|||
| Austin | Surprising how frustrating this is... | 05:28 | |
| I don't really want karma. I'm just giving myself a moral pat on the back... | 05:29 | ||
| sorear | why abuse nopaste when you can abuse dalek instead | 05:30 | |
| Austin sings, "... and I'm all strung out on heroin on the outskirts of town" | 05:33 | ||
| Hmm | 05:34 | ||
| Maybe something is wrong with String.defined | |||
|
05:41
dduncan left
05:48
somebody_ joined
|
|||
| dalek | rrot: r48356 | plobsing++ | branches/dynop_mapping (51 files): sync with trunk |
05:51 | |
|
06:08
AndyA joined,
uniejo joined
|
|||
| Austin | Ahh. Undef.defined now returns 1... | 06:39 | |
| purl, make me a sandwich | 06:50 | ||
| purl | Austin: what? | ||
| Austin | purl, sudo make me a sandwich | ||
| purl | Austin: excuse me? | ||
| Austin | :( | ||
|
06:55
Casan joined
07:14
fperrad joined
|
|||
| dalek | TT #1734 created by moritz++: PCT::Compiler should null temporaries when they are no longer needed | 07:34 | |
| TT #1734: trac.parrot.org/parrot/ticket/1734 | |||
|
08:29
janus joined
08:44
AndyA joined
|
|||
| dalek | kudo: c1e19af | moritz++ | docs/ChangeLog: update ChangeLog a bit |
08:50 | |
|
09:38
rurban_ joined
09:40
NotFound joined
|
|||
| NotFound | Hi | 09:40 | |
| purl | privet, NotFound. | ||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, test, fulltest) at r48356 - Ubuntu 10.04 amd64 (g++ with --optimize) | 10:37 | |
| winxed r585 builds on parrot r48659, make test/test1/test2 PASS - Ubuntu 10.04 amd64 (g++ with --optimize) | 10:46 | ||
| partcl-nqp (7548f1a) builds on parrot r48356 - make test PASS (t/cmd_expr.t - TODO passed: 287) - Ubuntu 10.04 amd64 (g++ with --optimize) | 10:51 | ||
| oops - the winxed is at parrot r48656, (don't know where the 9 came in, must check what I type before hittin' enter) | 10:54 | ||
|
10:59
bacek joined,
aloha joined
|
|||
| Austin | NotFound++ ; TT update | 11:26 | |
|
11:31
NotFound joined
12:05
dafrito joined
12:12
lucian joined
12:25
whiteknight joined
|
|||
| dalek | rrot: r48357 | NotFound++ | trunk/src/call/args.c: fix pcc handling of slurpy after optional, TT #1733 |
12:33 | |
|
12:33
Andy joined
12:50
bluescreen joined
|
|||
| nopaste | "bluescreen" at 192.168.1.3 pasted "Don't know if this is the expected behavior or not" (23 lines) at nopaste.snit.ch/22644 | 12:51 | |
| bluescreen | when I execute that I get Method 'someMethod' not found for invocant of class 'String' | 12:52 | |
| Austin_away | .lex creates an alias for self. Looks okay to me. | 12:53 | |
| Coke wonders how long lua was dead when we were saying it was the only complete impl. =-) | |||
| bluescreen | so, so when i store something in var1 it overwrites self? | 12:54 | |
| moritz | bluescreen: you're calling 'someMethod' on a string. What else would you expect? | ||
| bluescreen | I thought .lex was some sort of var1 declaration not an alias | ||
| moritz | it says "declare variable var1, and associate it with self" | ||
| bluescreen | that code is generated through NQP-rx, when i create a Variable var1 with value self | 12:56 | |
| and use the .isdecl(1) | |||
| Coke | nqp-rx only has := | ||
| bluescreen | so, should do it in some other way? | ||
| Coke | can you show us the nqp-rx code? | ||
| Austin_away | I think he means "Past" | ||
| bluescreen | well yes! i meant PAST | 12:57 | |
| Coke | past is a library, not a language. =-) | ||
| anyway, if you can show us the /source/ of what you're doing, we can help you figure out if that's what you mean to do. | |||
| bluescreen | my $variable := PAST::Var.new(:name($name), | 12:58 | |
| :scope<lexical>, | |||
| :viviself<Undef>, | |||
| :node($/) ); | |||
| $variable.isdecl(1); | |||
| NotFound | Coke: I think It broke recently with some pcc optimiations | ||
| bluescreen | this is from parrot 2.4.9 | ||
| 2.4.0 | |||
| Coke | NotFound: (recently) well, that's something. NotFound++ for fixing it! | ||
| Austin_away | I don't see self | ||
| moritz | bluescreen: first step: update to 2.6.0 | 12:59 | |
| NotFound | Coke: probably was me who broke it, so the world is balanced ;) | ||
| Austin_away | NotFound-- # for breaking it | ||
| Coke focuses on $DAYJOB. | 13:00 | ||
| bluescreen | Austin_away: Its a long code and part of an HLL and I don't want to bore everyone, I now know that .lex are aliases | ||
| thanks, Coke, moritz, NotFound and Austin_away | 13:01 | ||
| moritz | basically you shouldn't have to care what variables they are being aliased to | ||
| Austin_away | bluescreen: This may still be an optimization bug. Beware. | ||
| moritz | unless you want to interface with the generated PIR in some non-standard way | ||
| bluescreen | and you saying this is something that is broken since 2.4.0? | 13:02 | |
| guys what would be a good go-to site when I try to understand for instance the expected behavior of ".lex" and other directives/opcodes ? | 13:17 | ||
| Austin_away | #parrot on irc. :) | 13:18 | |
| bluescreen | lol.. I guess doc is not up-to-date | 13:20 | |
| mikehh | rakudo (c1e19af) builds on parrot r48356 - make test PASS, make stresstest (pugs r31933) FAIL - Ubuntu 10.04 amd64 (g++ with --optimize) | 13:22 | |
| t/spec/S03-smartmatch/any-bool.t - No subtests run | |||
| Austin_away | bluescreen: docs.parrot.org/parrot/latest/html/...r.pod.html | 13:23 | |
| The $_PARROT/docs directory contains these pod files, too, so you don't have to be online. | 13:24 | ||
| bluescreen | thanks Austin_away, looks good | ||
| Austin_away | What it doesn't make clear is the relation between .local and .lex | ||
| In your case, "self" is a built-in .local symbol, that creates an alias 'self' for some register ($P14, say) | 13:25 | ||
|
13:25
smash joined
|
|||
| smash | hello everyone | 13:26 | |
| Austin_away | So saying .lex 'var1', self | ||
| is the same as saying .lex 'var1', $P14 | |||
| The thing is, either approach to modifying $P14 -- using self or using 'var1' -- changes both aliases. | |||
| bluescreen | thanks! | 13:29 | |
|
13:45
plobsing joined
14:20
ruoso joined
14:23
clinton joined
14:24
bubaflub joined
|
|||
| Austin_away | What happened to the File pmc? | 14:33 | |
| Coke | probably a dynpmc now. | 14:36 | |
| hai. there it is. | 14:37 | ||
| plobsing | ping NotFound | 14:39 | |
| Austin_away | coke++ #found it | 14:40 | |
| Coke | I am using the OS pmc in partcl-old, damned if I see how I'm loading it. | ||
| Austin_away | Me too. It must be loaded by something basic | 14:43 | |
| plobsing | HLL.pbc loads it (trial and error) | 14:44 | |
|
14:45
jsut joined
|
|||
| jdv79 | pmichaud: are your talks from the YAPCs this year online anywhere? | 14:52 | |
| moritz | pmichaud.com/2010/pres/ has some slides | 14:53 | |
| jdv79 | ah, i just realized i should look harder. thanks. | ||
| moritz | afaict the video recordings from YAPC::EU aren't online yet | 14:54 | |
| there are some talks from YAPC::NA on www.presentingperl.org/yn2010/ | |||
| plobsing | msg NotFound I've entered a couple issues in the winxed issue tracker (not sure how often you check there) | 14:55 | |
| purl | Message for notfound stored. | ||
|
15:04
theory joined
15:14
brianwisti joined
15:24
Andy joined
|
|||
| dalek | kudo: 6d9691d | petdance++ | src/binder/bind.c: Fix a problem of setting *error with itself. (RT #77098) |
16:02 | |
| Andy | yay me | ||
| Coke | Andy++ | 16:06 | |
| Andy | I like to be fixin' the stuff. | ||
| Coke | ok. tell me how to make git show me the short id. =-) | 16:07 | |
| Andy | heh, dunno. | 16:10 | |
| Coke | ah, git log --abbrev-commit # not --abbrev. | ||
| dafrito | Coke: git log --oneline is useful for a brief summary, if you were wondering :) It also abbreviates commits | 16:13 | |
| Coke | dafrito: danke. | 16:14 | |
| dafrito | And you can combine it with an alias, too, for brevity's sake. This will make 'git ol' output the 10 most recent commits, in oneline form: git config --global --add alias.ol 'log --oneline -10' | 16:19 | |
| I like aliasing up ones like that, along with things like ci=commit, rb=rebase, and so forth | |||
|
16:27
luben_work joined
16:31
lucian_ joined
16:34
luben_work joined,
luben_work_ joined
16:35
luben_work_ left
16:36
luben_work joined
|
|||
| Coke | evalbot? | 16:38 | |
| purl | evalbot is probably set to do something when people say something | ||
| Coke | purlbot? | ||
| purl | i think purlbot is moderation accurate there | ||
|
16:40
luben_work joined
16:46
cotto_work joined
|
|||
| dalek | rtcl-nqp: 3d4dff5 | Coke++ | (2 files): [namespace qualifiers] Austin++ for nqp syntax help. |
16:55 | |
| cotto_work was really hoping for P = NP | 17:17 | ||
| Chandon | Someone offered you really good odds in a bet? | 17:19 | |
| cotto_work | Nah. It's unlikely but it'd really shake things up. I wouldn't bet on it. | 17:21 | |
|
17:28
bubaflub joined
17:29
dafrito joined
17:30
lucian joined
|
|||
| cotto_work | dafrito, you pinged me earlier? | 17:31 | |
| dafrito | cotto_work: Yeah, I did some more looking-into with the svn-to-git stuff | 17:32 | |
| I tweaked my script a bit, and let it list out commits that are unmapped. I hosted it on github: github.com/dafrito/map-svn | 17:33 | ||
| Coke | dafrito? | ||
| ENOPURLTIDBIT | |||
| cotto_work | You don't exist if purl doesn't know anything about you. | 17:34 | |
| ;) | |||
| dafrito | I'm absurdly new | ||
| cotto_work | purl, dafrito is absurdly new | ||
| purl | OK, cotto_work. | ||
| dafrito | haha | ||
| I also found some stuff that git has/creates that could help. It looks like it creates a revision db of its own. It also has 'git svn find-rev' that will find a commit for a given SVN revision | 17:35 | ||
| cotto_work | nice | ||
| that should make it trivial | 17:36 | ||
| dafrito | git svn find-rev was slow for me, but that might be because my repo is a clone of a clone, so it has no SVN metadata | ||
| Do you have one? | |||
|
17:38
rurban__ joined
|
|||
| dalek | kudo: 4bd4783 | pmichaud++ | docs/ROADMAP: Add operator precedence traits to ROADMAP. |
17:42 | |
| dukeleto | 'ello | 17:43 | |
|
17:43
ruoso joined
|
|||
| cotto_work | hi | 17:43 | |
| purl | what's up, cotto_work. | ||
| cotto_work | dukeleto: what do you use for your git clone of Parrot on github? | 17:47 | |
| dukeleto | cotto_work: git svn | 17:48 | |
| moritz | Coke: I ran perl Configure.pl --gen-parrot in partcl-nqp, and it did run parrot's configure, but not make (or make install) | 17:52 | |
| Coke: so the subsequent version detection of parrot failed | |||
| dafrito | dukeleto: would you mind putting your .git/svn directory for that repo somewhere? | ||
| dukeleto attempts to update the parrot mirror on github | |||
| dafrito: what are you trying to do? | 17:53 | ||
| moritz | Coke: ... and there's no 'make install' target, which I would kinda expect | 17:54 | |
| dafrito | dukeleto: I wrote a script to parse the git-svn-id's in the commits, but I think git already keeps a database for itself called rev.db or something similar | ||
| dukeleto | dafrito: this is probably more useful for you technosorcery.net/system/parrot-git-svn.tbz | ||
| dafrito: which is linked from trac.parrot.org/parrot/wiki/git-svn-tutorial | |||
| dafrito | dukeleto: ooh, awesome, thank you | 17:55 | |
| that's probably what cotto pointed me to the other day, too. silly me :( | 17:56 | ||
| moritz | Coke: I can deal with all that, just wanted to tell you about my experiences | 17:57 | |
|
17:58
p6eval joined
|
|||
| moritz | partcl-nqp: put 3 | 17:58 | |
| p6eval | partcl-nqp: OUTPUTĀ«Could not find sub putā¤current instr.: '_block11' pc 12 (EVAL_1:10)ā¤called from Sub 'tcl;HLL;Compiler;_block470' pc 24271 (ext/nqp-rx/src/stage0/HLL-s0.pir:7848)ā¤called from Sub 'tcl;HLL;Compiler;eval' pc 24151 (ext/nqp-rx/src/stage0/HLL-s0.pir:0)ā¤called from Sub | ||
| ..'tcl;PCT;HLLCompil⦠| |||
| Coke | partcl-nqp: puts moritz++ | 17:59 | |
| p6eval | partcl-nqp: OUTPUTĀ«moritz++ā¤Ā» | ||
| moritz | Coke: or do you want it as 'partcl' only? | 18:00 | |
|
18:01
p6eval joined
18:05
tcurtis joined
|
|||
| Coke | no, -nqp is fine. partcl is still something else. | 18:05 | |
| purl | okay, Coke. | ||
| Coke | *facepalm* | ||
| moritz: I never use --gen-parrot - I'll fix that up and add an install target. no one has asked for it before. =-) | 18:06 | ||
| moritz++ | |||
| partcl-nqp: puts \\u6666 | 18:07 | ||
| p6eval | partcl-nqp: OUTPUTĀ«ę¦ā¤Ā» | ||
| Coke | partcl-nqp: puts \\u1234 | ||
| p6eval | partcl-nqp: OUTPUTĀ«į“ā¤Ā» | ||
| Coke | partcl-nqp: puts [string totitle PARROT end-4 4] | 18:08 | |
| p6eval | partcl-nqp: OUTPUTĀ«PArroTā¤Ā» | ||
| Coke bounces! | 18:09 | ||
| dafrito | cotto_work: yeah, using the git-svn tarball, "git svn find-rev r34542" is quick and does what you were looking for :) | 18:12 | |
|
18:12
luben joined
|
|||
| cotto_work | Great. It sounds like the problem of getting the map is solved. | 18:12 | |
| dukeleto updated the parrot mirror on github | 18:16 | ||
| bubaflub | dukeleto: hola | 18:21 | |
| purl | hi, bubaflub. | ||
| dukeleto | bubaflub: hola | 18:22 | |
| purl | que tal, dukeleto. | ||
| dukeleto notes that today is the soft "pencils down" date for GSoC | |||
| bubaflub | dukeleto: yeah, that's a bummer... | 18:23 | |
| dukeleto | bubaflub: you still have a week until the hard "pencils down" date | 18:25 | |
| bubaflub | dukeleto: yeah, which means sprint to the finish | ||
| dukeleto: i definitely didn't hit all my targets )-: | |||
| dukeleto | bubaflub: what do you think you can get done in the next week? | ||
| bubaflub | dukeleto: i might be able to finish up the out of directory building, i'm almost finished with that | 18:26 | |
| combined with my earlier work on getting Configure.pl to work with cross compiling stuff, that'll build a libparrot to link with embedded targets | |||
|
18:27
AndyA joined
18:28
Paul_the_Greek joined
|
|||
| Paul_the_Greek | Hey folks. | 18:28 | |
| Do we have the usual chat meeting tomorrow at 4:30? | |||
| dukeleto | Paul_the_Greek: are you talking about #parrotsketch ? 4:30 without a timezone doesn't mean much to anybody | 18:29 | |
| bubaflub | purl: parrotsketch? | ||
| purl | parrotsketch is a status meeting for parrot core committers held every Tuesday at 20:30 UTC in #parrotsketch | ||
| bubaflub | i believe that's 4:30 on the eastern coast of the US | 18:30 | |
| Paul_the_Greek | Oops, pardon my parochialism. Yes, the meeting at 20:30 UTC. | ||
| dukeleto | bubaflub: i think you should put all your concentration into getting out of directory building working | ||
| Paul_the_Greek: no worries, timezones are the devils work | |||
| bubaflub | Paul_the_Greek: I haven't heard / read otherwise | 18:31 | |
| dukeleto: okey dokey. i got a good amount done over this weekend - only thing i need to do now is fix some of the gen:: steps | |||
| Paul_the_Greek | Is that the venue to discuss potential fixes to bugs? | ||
| dukeleto | Paul_the_Greek: possibly, but here is fine as well | ||
| Paul_the_Greek: #ps is mostly to have everyone at the same place so that the group can make decisions and decide on priorities | 18:32 | ||
| Paul_the_Greek | Okay, then I'll annotate the ticket with my questions and point people here to it. | 18:33 | |
| Where are types like INTVAL defined? | 18:36 | ||
| dukeleto | bubaflub: ok, ask questions if you get stumped by something. | 18:38 | |
| Paul_the_Greek | I found INTVAL. Never mind. | ||
| Can someone check this ticket: trac.parrot.org/parrot/ticket/1245 | 18:39 | ||
| bubaflub | dukeleto: hah, was just about to PM you with one. what i'm stuck on right now are some steps (the gen:: ones) where a template gets copied. some of those templates exist in subfolders (like include/parrot). those subfolders don't exist in the build directory. | ||
| dukeleto: should i have the configure script copy all of those files just to the build dir (without the subfolder structure) and modify the makefile? or should i make the configure script create those folders if they don't exist | 18:40 | ||
| Paul_the_Greek | Never mind that ticket. I answered my own question. | ||
| Coke | Paul_the_Greek: check it for what now? | ||
| ... WIN! | |||
| Paul_the_Greek | I assigned that ticket to myself. Seems like a good way to learn something about PMCs. | 18:41 | |
| dukeleto | bubaflub: which is the easier thing to do? which has fewer bad effects? what does Chris say? | 18:51 | |
| bubaflub | dukeleto: hmmm... maybe mirroring the directory structure. i won't have to modify the Makefile (which itself is a beast) | ||
| well, won't have to modify the paths to those files | |||
| Paul_the_Greek | If anyone has an opinion on this ticket: trac.parrot.org/parrot/ticket/1731 | 18:52 | |
| I'd appreciate it. The last note summarizes the issue. | 18:53 | ||
|
19:05
brianwisti joined
|
|||
| Coke | partcl-nqp: foreach {i j} {a b c d e f} { puts "$i..$j"} | 19:11 | |
| p6eval | partcl-nqp: OUTPUTĀ«a..bā¤c..dā¤e..fā¤Ā» | ||
| dalek | ee-optimization: c7ba4aa | tcurtis++ | s (5 files): Add PAST::Optimizer and PAST::Optimizer::Pass. |
19:13 | |
| ee-optimization: b608fde | tcurtis++ | t/tree-optimizer.t: Test deeper trees with :combine. |
|||
| Coke | see, tcl is a lot like perl6. =-) | 19:14 | |
| tcurtis | Coke: I don't know. foreach? sounds a little five-y. :) | ||
| Coke wonders if it would be at all worthwhile to write any of partcl in tcl. | 19:15 | ||
| atrodo | Coke> That's pretty cool. Does the bot stay up to date? | ||
| Coke | atrodo: moritz++, I assume it's as up to date as rakudo. | 19:17 | |
| rakudo: "what".say | |||
| p6eval | rakudo 4bd478: OUTPUTĀ«whatā¤Ā» | ||
| Coke | moritz: hey, is there anything I can do to faciliate the sha1 showing up for partcl? | ||
| msg moritz hey, is there anything I can do to faciliate the sha1 showing up for partcl? (right, he's many TZ away) | 19:18 | ||
| purl | Message for moritz stored. | ||
|
19:23
brianwisti left
|
|||
| dalek | ee-optimization: 1bb674a | tcurtis++ | src/PAST/Transformer.nqp: Strings and Integers don't have children. Don't try walking them. |
19:38 | |
| Paul_the_Greek | Can someone explain the relationship between default.pmc, scalar.pmc, and integer.pmc? | ||
| cotto_work | Default provides default implementations of all VTABLE functions. If a PMC doesn't implement a VTABLE function, it gets Default's version. | 19:39 | |
| I'm not entirely clear on why we have Scalar. | |||
| I'd think it'd have been nuked if it were useless, but that's not a safe assumption in Parrot. | 19:41 | ||
| Paul_the_Greek | scalar.pmc has neg, for example, while integer.pmc has absolute. | ||
| (for integers) | 19:42 | ||
| cotto_work | Some PMCs seem to extend it. | 19:43 | |
| Paul_the_Greek | Oh, let's see ... | ||
| Coke | scalar is a leftover from the "our pmcs should be like perl5" days, I think. | ||
| I'm not sure that it would survive a rethink. | |||
| Paul_the_Greek | I'll leave it alone. | ||
| Coke | default is basically a placeholder for default method/vtable implementations. | 19:44 | |
| Paul_the_Greek | How does the dispatching work, though? How can all the neg vtable functions have the same signature? | ||
| cotto_work | If you felt ambitious, I suspect it could go away. | ||
| Coke | I think it's just a convenience because we didn't have roles. I also don't think it would survive a rethink. | ||
| Paul_the_Greek | Ah, I see. The compiled .c files have expanded the signatures to include the file name. | 19:45 | |
| I'll start with this simple ticket: trac.parrot.org/parrot/ticket/1245 | |||
| I bet that same bug exists in negate. | 19:46 | ||
| Yes, it does. | 19:49 | ||
| purl | if you say so... | ||
| GeJ | Bonjour everyone. | 20:15 | |
|
20:16
hercynium joined
|
|||
| NotFound | msg plobsing Issues accepted, thanks | 20:29 | |
| purl | Message for plobsing stored. | ||
| tcurtis | Hi, GeJ, | 20:31 | |
| cotto_work | +1 to applying the patch from TT #1402 (after running headerizer) if anyone wants some easy karma | 20:34 | |
| cotto can take care of it if nobody else does before he can get to it | 20:35 | ||
| moritz | Coke: easist way: write the SHA1 to file when 'make' is run | ||
| Coke: I haven't yet installed an automatic rebuild script, so currently nothing is updated | 20:36 | ||
| Coke | moritz: understood. | 20:40 | |
|
20:43
bluescreen joined
|
|||
| bubaflub | cotto_work: i can apply that patch. what is the command to run the headerizer? | 20:45 | |
| cotto_work | make headerizer | ||
| bubaflub | hahaha. ok | 20:46 | |
| cotto_work: should i credit Paul_the_Greek for this one? | 20:51 | ||
|
20:51
whiteknight joined
|
|||
| cotto_work | It'd be nice. | 20:54 | |
|
20:55
darbelo joined
|
|||
| bubaflub | alright, r48358 is out | 20:55 | |
| i'll close the ticket as well | |||
| darbelo is back | |||
| cotto_work | Wheee. paul_the_greek's first commit | 20:56 | |
| you might add him to CREDITS too | |||
| dalek | rrot: r48358 | bubaflub++ | trunk (2 files): Deprecate mem_internal_*alloc functions [TT #1402] Paul_the_Greek++ |
||
| bubaflub | purl, Paul_the_Greek? | 20:58 | |
| purl | i haven't a clue, bubaflub | ||
| cotto_work | Paul C. Anagnostopoulos on trac | ||
| bubaflub | cotto_work: r48359 has him in the credits | 21:00 | |
| dalek | TT #1402 closed by bubaflub++: Deprecate mem_internal_*alloc functions. | 21:05 | |
| TT #1402: trac.parrot.org/parrot/ticket/1402 | |||
| darbelo | And now that I have net access again... It's dcommit time! | 21:06 | |
| bacek: ping. | 21:07 | ||
| cotto_work | Does that branch actually build without strstart? | 21:08 | |
| nm. next commit answers that question | 21:09 | ||
| darbelo | cotto_work: builds and passess tests! | 21:10 | |
| cotto_work | darbelo++ | ||
| also, sed++ | |||
| ;) | |||
| darbelo | sed-- # leaving out the casts :) | 21:11 | |
| cotto_work | it's only as smart as its user | ||
| darbelo | That was allways unix's most crippling limitation. In my experience. | 21:12 | |
| :) | |||
| cotto_work | M7 should fix that | 21:13 | |
| it | |||
| dalek | rrot: r48363 | darbelo++ | branches/unshared_buffers/include/parrot/pobj.h: Remove strstart from the string definition. I knew I'd eventually eliminate this sucker! |
||
| cotto_work | 's a smop | ||
| rrot: r48364 | darbelo++ | branches/unshared_buffers/src (31 files): Mindless strstart replacement. All hail Buffer_bufstart()! |
|||
| rrot: r48365 | darbelo++ | branches/unshared_buffers/src/gc/alloc_resources.c: Minor update to src/gc/alloc_resources to better work on the new world of unshared buffers. |
|||
| rrot: r48366 | darbelo++ | branches/unshared_buffers/src (3 files): Minor typo fixes. Also, add some casts here and there. |
|||
| rrot: r48367 | darbelo++ | branches/unshared_buffers (2 files): Boostrap ops. |
|||
| rrot: r48368 | darbelo++ | branches/unshared_buffers/docs/pdds/pdd28_strings.pod: Update the strings PDD a bit. |
|||
| rrot: r48369 | darbelo++ | branches/unshared_buffers/t/op/string_mem.t: Remove test for a feature that no longer exists. |
|||
| rrot: r48370 | darbelo++ | branches/unshared_buffers/src (9 files): Fix the c++ build. |
|||
| rrot: r48371 | darbelo++ | branches/unshared_buffers/src/string/api.c: Make codetest happy. |
|||
| rrot: r48372 | darbelo++ | branches/unshared_buffers (4 files): Remove the buffer flags used to tag the low bits of the pool pointer. They are irrelevant if we aren't sharing buffers anymore. |
|||
| darbelo | Okay. Now it's benchmarking time. I'll take suggestions from the audiemce. | 21:15 | |
|
21:17
lucian joined
|
|||
| bacek | Good morning, humans. | 21:20 | |
| darbelo, pong | |||
| cotto_work | good morning, baceks | 21:21 | |
| darbelo | bacek: I'm experimenting with 'unsharing' string buffers. It works now, but I wanted to know if there's any optimizations that would enable. | ||
| bacek | darbelo, "precise" buffer compacting at least. | 21:22 | |
| sorear | darbelo: you can probably use your increased simplicity to make compact_pool less stupid | ||
| darbelo | I removed strstart from the string header, and the 'shared' and 'moved' buffer flags so far. | ||
| sorear | interning would also be pretty spiffy | ||
| darbelo | bacek: What do you mean 'precise'? | 21:23 | |
| bacek | darbelo, currently we can't tell if previously shared buffer isn't used anymore. | 21:24 | |
| darbelo, check C<free_buffer> in src/gc/mark_sweep.c | 21:26 | ||
| /* We can have shared buffers. Don't count them (yet) */ | |||
| if (!(*buffer_flags & Buffer_shared_FLAG)) { | 21:27 | ||
| block->freed += ALIGNED_STRING_SIZE(Buffer_buflen(b)); | |||
| } | |||
| darbelo | Right, I already removed that :) | ||
| bacek | I hope you just removed "if", but left "block->freed += ..." :) | 21:28 | |
| darbelo | Well, yeah. | ||
| nopaste | "darbelo" at 192.168.1.3 pasted "free_buffer" (29 lines) at nopaste.snit.ch/22653 | 21:29 | |
| bacek | darbelo, leftover comment is wrong :) | ||
| darbelo | I was wondering about "XXX Jarkko reported that on irix pool->mem_pool was NULL" too. | 21:30 | |
| bacek | How differ examples/benchmarks/stress_strings.pir between branch and trunk? | ||
| (In terms of performance) | |||
| darbelo | Haven't finished callgrinding it. My linux box isn't all that fast. | 21:31 | |
| bacek | wallclock should be good enough for initial benchmarking | 21:32 | |
|
21:32
Coke joined
|
|||
| darbelo | Given the way callgrind's hogging the cpu, I doubt wallclock will be very useful right now :) | 21:34 | |
| bacek | callgrind is 10-100 times slower than raw speed :) | 21:36 | |
| nopaste | "darbelo" at 192.168.1.3 pasted "Lots of meaningless numbers!" (35 lines) at nopaste.snit.ch/22654 | 21:42 | |
|
21:42
Paul_the_Greek joined
|
|||
| bacek | purl, (23588786662 - 21159680036) / 23588786662 * 100 | 21:43 | |
| purl | 10.2977175587973 | ||
| bacek | 10%. Looks about all right :) | ||
| Real world test - wallclock for rakudo compilation. | 21:44 | ||
| darbelo | And peak memory usage. | ||
| bacek | yes. | ||
| I suspect it will be _lower_ due precise compacting and lots of short-lived substrings. | 21:45 | ||
| darbelo++ # good job! | |||
| darbelo | I'll get on that. Do you have any recomendations for good measuring of parrot memory usage? | ||
| bacek | darbelo, no, sorry. I use top usually. | 21:46 | |
| sorear | darbelo: the Great Language Shootout has a tool | 21:48 | |
| bacek | afk # get ready for $dayjob | ||
| sorear | darbelo: /usr/bin/free can report peak memory usage exactly. This doesn't work on Linux, but if you should happen to have a BSD or OSX VM lying around, you could use that | 21:50 | |
| Paul_the_Greek | Is there a way to get make to run one specific test? | 21:51 | |
| cotto_work | you can run them manually with prove | 21:52 | |
| there are also makefile targets to run a subset of the full test suite | 21:53 | ||
| Paul_the_Greek | Wow. How come I can enter 'prove' in my top-level parrot directory? | 21:59 | |
| darbelo | It's already installed, prove comes with perl. | 22:01 | |
| Paul_the_Greek | Oh. | ||
| Silly me. | |||
| Okay, here's a question: How do we determine whether PARROT_INTVAL_MIN needs to be handled specially? | 22:03 | ||
| See if -PARROT_INTVAL_MAX != PARROT_INTVAL_MIN ? | |||
| bubaflub | Paul_the_Greek: not totally sure if this helps, but those values are determined at configuration time | 22:04 | |
| Paul_the_Greek | Yes, but what we don't know is whether it's a two's-complement machine. | 22:05 | |
| bubaflub | Paul_the_Greek: ah, i see what you're saying | ||
| i'm not sure if or how we test for that | |||
| someone more knowledgable about the configuration system will have to answer that one | |||
| Paul_the_Greek | Looking around ... | 22:07 | |
| Chandon | What machine isn't two's complement, anyway? | 22:10 | |
| Paul_the_Greek | It doesn't appear that we know if it's a two's-complement machine. | ||
| These days? ... hmm ... let me see. | |||
| CDC Cyber 170. Probably none running now. | 22:14 | ||
| I could add an assertion somewhere that -PARROT_INTVAL_MAX != PARROT_INTVAL_MIN. | 22:15 | ||
| sorear | Paul_the_Greek: Perl 5 requires a twos complement machine or else the SvIV -> SvNV failover code will break horribly | 22:24 | |
| Paul_the_Greek: therefore, Configure.pl can automatically assume twos complement | 22:25 | ||
| also, Perl 5 assumes CHAR_BIT == 8 | |||
| Paul_the_Greek | Okay, so we'll assume that. I'm trying out an assertion for it in config.h | ||
| sorear | the weirdest machines Perl 5 supports, CPU wise, are ones where sizeof(short) == 8 (Cray) or sizeof(double) <= sizeof(void*) (Alpha) | 22:26 | |
| Paul_the_Greek | Glad I'm working on the Memory_Block allocation problem, then. | 22:27 | |
| sorear | ? | 22:28 | |
| Paul_the_Greek | Hang on ... | 22:30 | |
| This one: trac.parrot.org/parrot/ticket/1731 | |||
| Wait a minute, how big are doubles and pointers on the Alpha? | |||
| sorear | both 64 bits | 22:32 | |
| Paul_the_Greek | Oh, I missed the = in <= | ||
| sorear | I don't see the issue with #1731 | ||
| it doesn't sound broken to me | |||
| Paul_the_Greek | The allocation of space in a Memory_Block assumes that the alignment of the memory space should be exactly the size of a pointer. | 22:33 | |
| That is, it assumes that in some places and explicitly does not assume it in others. | |||
| This is not a problem now because no one requests an alignment other than on a pointer boundary. | 22:34 | ||
|
22:38
kid51 joined
|
|||
| kid51 | msg mikehh When you get a chance, comment sought on trac.parrot.org/parrot/ticket/1726. | 22:40 | |
| purl | Message for mikehh stored. | ||
| Austin_away | Effing W00t! Kakapo full loads and runs p6object bootstrap tests! | 22:42 | |
| Austin ++ | |||
| whiteknight | Austin: !!! | 22:44 | |
| Austin | Whiteknight!!! | ||
| purl | whiteknight is, like, mailto:wknight8111@gmail.com or the grand master funk or wknight8111.blogspot.com/ | ||
| mikehh | kid51: looking at it now | ||
| whiteknight | Austin: Which branch, yours on gitorious? | ||
| Austin | Mine on my local hdd | ||
| whiteknight | push that shit! I needs to get me some | ||
| Austin | Heh | ||
|
22:47
aloha joined,
bacek joined
|
|||
| tcurtis | aloha, bacek. | 22:48 | |
| Austin | whiteknight: push failed. non fast-forward merge | 22:50 | |
| :( | |||
| Paul_the_Greek | So is config.h the correct place to test for two's-complement-ness? | 22:51 | |
| Austin | Mandatory restart cause by git upgrade... | 22:54 | |
| biab | |||
| cotto_work wonders | |||
|
22:56
aloha joined
|
|||
| whiteknight | Austin: you're breaking my heart | 22:56 | |
| sorear | Paul_the_Greek: you would be wise to be very careful about fixing things that aren't completely broken | 22:57 | |
| Paul_the_Greek | True. | ||
| I'm about to fix the negate and absolute Integer operations, which are broken. | 22:58 | ||
| The fix only works on a two's-complement machine, so I figure it makes sense to check for that. | |||
| sorear | Define broken | ||
|
22:59
bacek joined
|
|||
| Paul_the_Greek | The negative/absolute value of the minimum integer value do not work. | 22:59 | |
| trac.parrot.org/parrot/ticket/1245 | |||
| sorear | you'll need to run a deprecation cycle for that and wait until after 2.9 to merge your changes | 23:01 | |
| particle | we're pretty much assuming 2's complement, since we purport to follow IEEE 754 | 23:04 | |
| Paul_the_Greek | Oh my. Is this sort of bug something we have to deprecate? | 23:05 | |
| particle | which stores floats as 2's compliment. | ||
| Paul_the_Greek | Right, and also because Perl assumes it, apparently. | ||
| particle | yes, and perl's pretty portable. | ||
| Paul_the_Greek | I just figure it makes sense to check the assumption. No? | ||
| sorear | Yes, but please #error if it's not met | 23:06 | |
| particle | where are you checking, in config? | ||
| sorear | Also, do it in Configure.pl | ||
| NOT C | |||
| Our builds are slow enough already | |||
| particle | the check should be during the configure stage, and set a value that can be looked up from c, perl, pir, etc | ||
| it's a simple probe, probably added to an existing config step | 23:07 | ||
| Paul_the_Greek | Okay, in configure.pl, not in config.h. | ||
| More on this deprecation requirement: Why do you think this is something that must be deprecated? | 23:08 | ||
| Coke ROTFLS at the parrot appropriate: twitter.com/rjbs/status/20721483991 | 23:11 | ||
| sorear: if it's /a bug/, we don't need a deprecation cycle. | 23:13 | ||
| sorear | Paul_the_Greek: Also, you still haven't said exactly what you plan to change it *to* | ||
| Paul_the_Greek | Since Integers are supposed to promote to Bigints, I think this is a bug. | ||
| Negating or absoluting the minimum integer should produce a Bigint. | 23:14 | ||
| cotto_work | I thought we didn't want Parrot doing autopromoting. | ||
| leave it to the hlls | |||
| Paul_the_Greek | It does for addition and such. | ||
| Ah, actually, it's conditionalized. Perhaps it's set to simply raise overflow. | |||
| cotto_work | consistency, your name is not parrot | 23:15 | |
| Paul_the_Greek | I be attempting to introduce consistency. | ||
| The operations on native integers do not to any promoting. | |||
| sorear | all young project members think they can introduce consistency | 23:16 | |
| they all go mad | |||
|
23:16
Austin joined
|
|||
| Paul_the_Greek | I take it one ticket at a time. Otherwise y'all would kick me out the door in a flash. | 23:17 | |
| Coke | sorear: please don't scary away the new guys. Thanks. | ||
| whiteknight | Austin: you're breaking my heart | 23:18 | |
| Austin | ?? | 23:19 | |
| whiteknight | Austin: I'm waiting for Kakapo goodness!!! | 23:21 | |
| Austin | Yeah. | 23:23 | |
| Hold that thought. | |||
| Just a few conflicts... | 23:29 | ||
| kid51 | Paul_the_Greek: Let me provide a bit of historical background on trac.parrot.org/parrot/ticket/1245 | ||
| Paul_the_Greek | Appreciated. | 23:30 | |
|
23:30
Andy joined
|
|||
| kid51 | About 3 years ago, Paul Cochrane wrote a program which transformed all TODO, XXX, etc. comments in the source code into tickets in RT, which was then our bug tracking system. | 23:30 | |
| cotto_work | not a great idea, btw | ||
| kid51 | About 2 years ago, we began working in Trac, and eventually we moved all remaining unresolved RTs into TTs. | 23:31 | |
| So the TODO comment has been sitting there since pre-2007 ... possibly 3-5 years before that! | |||
| And we probably cannot determine who made the TODO comment in the first place. | 23:32 | ||
| So we can't query the OP. | |||
| And we have survived with this TODO item for several years. | |||
| Chandon | How is this particular issue not just "not a bug, that's how integers work"? | ||
| kid51 | So the TODO may be valid ... or it may be completely off the wall. | ||
| So, if you are going to take the TT, you will need to independently confirm whether the TODO is valid or not. | 23:33 | ||
| I am very glad to see you taking these old tickets. | 23:34 | ||
| cotto_work | What do you mean "And we probably cannot determine who made the TODO comment in the first place."? Isn't that what vcs is for? | ||
| Paul_the_Greek | Hang on one sec ... | ||
| kid51 | I simply caution that they may be murkier than they first appear. | ||
| Some of these TODOs have been in the code since we kept it in CVS. | |||
| cotto_work | oh | 23:35 | |
| Paul_the_Greek | I looked at things like add for Integer PMCs and it promotes to BigInt. | ||
| mikehh | kid51: ran the test with prove -v in the branch - looks good to me | ||
| Paul_the_Greek | If add does it, then negate and absolute should, too, I believe. | ||
| kid51 | cotto_work When I was involved in converting RTs to TTs, I tried to locate the source of the TODO ... (well, some of the time). | 23:36 | |
| Some times I was successful; sometimes not. | |||
| Paul_the_Greek | Or it overflows, dpending on PARROT_ERRORS_OVERFLOW_FLAG. | ||
| kid51 | Paul_the_Greek: Just attach any patch to the TT so that everyone who had a shot at this issue over the years can comment. | ||
| Paul_the_Greek | I certainly will. | 23:37 | |
| kid51 makes no claim to understand the specific issue | |||
| Paul_the_Greek | I will also add tests for it. | ||
| kid51 | mikehh: Do you think we can discontinue the "needs POD" output in make headerizer? | ||
| Tests! Paul_the_Greek++ | |||
| Coke | note that all the CVS commits are in the svn repository as well. | 23:38 | |
| kid51 | If you need to manipulate any of the configuration steps, I am available for consultation. | ||
| Chandon | Where does interp->current_runloop_id get incremented? | ||
| kid51 | Coke: True, but to dig back that far you usually have to svn cat -r {some old revision} of the file in which the TODO occurs ... and then do an 'svn blame' on that. | 23:39 | |
| High work/benefit ratio, IMO | |||
| A job for a cage cleaner. | 23:40 | ||
| Oh, wait, I *am* a cage cleaner. | |||
|
23:40
dngor joined
|
|||
| Chandon | Ha! Found it. Obviously the variable needed a different name just for that line of code. | 23:40 | |
|
23:44
davidfetter joined
|
|||
| Paul_the_Greek | I'm getting the feeling that there is a little bit of black art in writing tests. | 23:46 | |
| davidfetter | o/` more than a feeling o/` | 23:47 | |
| mikehh | kid51: certainly for PMC files if we have that test, I am not sure what we should do about the compilers/imcc/imcc.y and compilers/pirc/src/*.c files | 23:48 | |
| Paul_the_Greek | What does 'No plan found in TAP output' mean? | ||
| mikehh | Paul_the_Greek: generally that the test fialed before it set the plan | 23:49 | |
| Paul_the_Greek | And "set the plan" means? | ||
| sorear | plan 5; if you're using a Test module | ||
| otherwise print "1..5\\n" | |||
| Paul_the_Greek | Maybe I should read documentation on TAP. | ||
| whiteknight | Chandon: you found interp->current_runloop_id? | 23:50 | |
| sorear | Paul_the_Greek: a TAP test script prints 1..2\\nok 1\\n ok 2 | ||
| Paul_the_Greek: any deviation from that format = test failure | |||
| Chandon | whiteknight: Every instance of it, none of which were the increment. But I found that too so it's all good. | ||
| Paul_the_Greek | Oh. | ||
|
23:50
workbench joined
|
|||
| mikehh | Paul_the_Greek: in our TAP we usually set the number of tests to run, using the plan() function or tell it there is no plan, the message comes if the test did get that far | 23:51 | |
| sorear | there is a lot of legalese in the TAP spec, but the principle is extremely simple | ||
| Paul_the_Greek | Right, I see the plan() count. The trick is to get the output formatted correctly. | ||
| kid51 | Paul_the_Greek: For tests written in Perl 5: perldoc Test::More | ||
| Paul_the_Greek | It's in PIR. I presume is(...) generates the correct output? | 23:52 | |
| sorear | For tests not written in Perl 5, perldoc Test::More anyway, because its API is what everything else emulates | ||
| ok($bool) = print ($bool ? "" : "not ") . "ok " . ($testnum++) . "\\n"; | 23:53 | ||
| is($x,$y) = ok($x == $y) | |||
| kid51 | mikehh: Well, as far as "compilers/pirc/src/*.c files" to, I guess we have the larger question: What are we going to do about PIRC? | ||
| And since imcc.y is one of those Melvin Smith files, we face a similar problem there. | 23:54 | ||
| sorear | Melvin Smith? | 23:55 | |
| kid51 | i.e., whether 'make headerizer' tells us something about those files' POD is not a big worry. | ||
| mikehh | kid51: not sure, we have the problem that kjs++ stopped working on it and seems to have had a very low bus number | ||
| kid51 | mikehh: Yes, exactly. | ||
| mikehh | kid51: also we have new ideas in terms of pir/PIRATE etc | 23:56 | |
| kid51 | If the code is, for the time being, abandoned, we shouldn't worry too much about how thorough its POD is. | ||
| I'd rather focus on writing POD for those .pmc files. | |||
| In fact, what I thought I would do is to (i), put the =item entries where they should be, even without real documentation ... | 23:57 | ||
| mikehh | kid51: exactly, but we should retain the facility to test it if it proves necessary at some stage | ||
| kid51 | ... which would move them from 'missing' to 'boilerplate' | ||
| mikehh: Okay, so in the branch I'll cut out the message to terminal except for the non-.pmc files. | 23:58 | ||
| ... and then I would, ermm, seek assistance in getting real information into those =item sections. | 23:59 | ||
| mikehh | kid51: I think that is valid, certainly for me, haven't heard any other comments there | ||
|
23:59
Psyche^ joined
|
|||