Parrot 2.5.0 release time is on 15th at 12:00 UTC | parrot.org | Log: irclog.perlgeek.de/parrot/today | Nopaste: nopaste.snit.ch:8001 | GSOC Students: trac.parrot.org/parrot/wiki/GSoCersStartHere | Priorities: fix io_ops mess in corevm/coretest, review and update documentation before release
Set by moderator on 9 June 2010.
00:21 Khisanth joined 00:27 whiteknight joined 00:32 snarkyboojum joined
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#34321), fulltest) at r47559 - Ubuntu 10.04 amd64 (g++) 00:35
dalek TT #1135 closed by mikehh++: t/op/annotate-old.t fails using -f core 00:39
TT #1135: trac.parrot.org/parrot/ticket/1135
kudo: e22e80f | (Solomon Foster)++ | src/core/ (2 files):
Tidy up Numeric and Real.
00:48
whiteknight I wonder if Chandon ever figured out that segfault he was seeing 00:50
purl msg Chandon the "$P0 = new ['Scheduler']" line is unnecessary. The scheduler is an interpreter-global singleton that is created at program startup. 00:53
purl Message for chandon stored.
01:03 tetragon_ joined
mikehh kid51: BTW I was looking at ticket TT #292 in rewlation to t/codingstd/pod_description.t - has anything ever been done about that 01:09
s/rewlation/relation/
01:10 TiMBuS joined
mikehh kid51: # Found 234 files without DESCRIPTION sections. 01:13
whiteknight purl msg Chandon I fixed your segfault issue in r47560. Tricky GC-related order-of-destruction bug. Your example should work fine now 01:14
purl Message for chandon stored.
whiteknight the tests in t/pir/*.t are not run as part of coretest 01:20
dalek rrot: r47560 | whiteknight++ | trunk/src (2 files):
[gc] Gix order-of-destruction bug discovered by Chandon++. The check for aliveness of the scheduler in Parrot_cx_delete_taskwas failing, so in Scheduler.destroy I null out the ->scheduler field of the interpreter to ensure it gets around the segfault here. I don't think gc finalization adds PMCs back onto the free list, so the test there was failing
01:22
whiteknight ...don't appear to run for make test either 01:25
anybody around who knows enough about the test targets to fix that omission?
kid51 mikehh: It's effectively stalled.
Reason: In order to transform the POD in the way Allison wanted, you'd have to be able to measure your progress ... 01:26
... which, IIRC, would require modifications to CPAN module Pod::Simple, ...
... whose maintainer, at least then, was: Allison!
whiteknight kid51: Do you have any insight into my problem? I can't quite figure out how the test targets work, or how they decide which tests get run 01:30
kid51 whiteknight: sorry, I've been looking at tickets; didn't see your posts here 01:33
whiteknight it's okay 01:34
kid51 t/pir/*.t: Added by fperrad Apr 25 of this year.
He probably forgot to add a target. 01:35
whiteknight kid51: how do targets even get added? I can't figure it out
kid51 But, let me ask: Looking at them, do you think they need to be in a directory of their own?
whiteknight idiomatic perl, like in t/harness, is incredibly difficult for me to grok
kid51 First, let's see what they do.
whiteknight kid51: those two tests by themselves are not a big deal, no. I'm planning to add new tests
kid51 Tonight is my first look at them. 01:36
whiteknight I have tests to add that don't fit neatly into t/pmc or t/ops
kid51 What do your tests do?
whiteknight the one tests an order-of-destruction bug in the GC
but it involves a few specific ops, and a few specific pmcs 01:37
kid51 regular or 'dyn'?
whiteknight regular
kid51 Should they be runnable after 'make corevm'?
whiteknight yes. They should be in the coretest target 01:38
kid51 r u working in trunk or in a specific branch?
whiteknight trunk 01:39
I just fixed a bug in r47560, and want to add a test for it
mikehh whiteknight: they prove ok after make corevm - could be added to the make coretest target 01:42
whiteknight yeah, I've been running them here to make sure
kid51 vi +61 ./lib/Parrot/Harness/DefaultTests.pm
They should probably go in one of the directories included in @runcore_tests. 01:43
They => your 47560 correction tests.
Probably t/op/ or t/pmc/. 01:44
Take your pick.
whiteknight I'm trying it now
kid51 There's no cop on that beat to give you a ticket if you select the wrong one.
dalek TT #227 closed by jkeenan++: t/op/pushaction fails with runcore PBC 01:45
TT #227: trac.parrot.org/parrot/ticket/227
whiteknight works. Kid51++ 01:46
kid51 Now, can you take a look at those two tests in t/pir/*.t? Do we need a directory just for them? 01:47
whiteknight yes, I think we do 01:48
kid51 k
whiteknight t/pmc are tests for individual pmcs (one file per pmc, etc), t/op is tests for specific ops, and t/pir is for emergent or compound behavior
at least, that's my "vision" for it
kid51 BTW, you'll need a reconfigure or make realclean for your change to DefaultTests to take effect.
And should t/pir/*.t tests require 'make' or just 'make corevm'? 01:49
whiteknight kid51: I didn't need to realclean. It just worked 01:50
kid51: make corevm, I think
kid51 has to start thinking about where he's going to watch World Cup matches tomorrow. 01:53
whiteknight you a world cup fan?
kid51 Yes 01:54
It's about the extent of my contact with the sporting world.
Two draws in Group A today.
dalek rrot: r47561 | whiteknight++ | trunk/lib/Parrot/Harness/DefaultTests.pm:
the files from t/pir/ should be run as part of coretest. There aren't many. kid51++ and mikehh++ for assistance
01:55
rrot: r47562 | whiteknight++ | trunk (2 files):
[t] Add a test for my fix in r47560. Test adapted from a test case provided by Chandon++
whiteknight kid51: I played a lot of organized soccer as a kid, so naturally I hate it now
of course, I'm not much of a fan of any sport 01:56
kid51 I didn't play any except in graduate school (the first time). 01:57
All the foreign grad students would put the Americans into the game for comic relief.
But that was a long time ago ... before we even had a whiteknight! 02:00
02:01 particle joined
mikehh whiteknight: fixed codetest failures with your new test and coretest passes with it 02:02
whiteknight damnit 02:03
stupid codetest stupid failures
particle oh, yeah, don't blame your stupid fingers. 02:05
02:06 eternaleye joined
whiteknight holycrap, I broke all the codetests 02:06
or, a good portion of them
mikehh whiteknight: fixed and make test passes
02:06 szabgabx__ joined
whiteknight mikehh: you fixed? 02:07
mikehh whiteknight: yes
whiteknight nice, mikehh++
dalek rrot: r47563 | mikehh++ | trunk/t/pir/timer_exit.t:
add svn properties, copyright, Id lines and coda
02:11
mikehh whiteknight: fulltest passes as well 02:18
whiteknight what does this error mean, in perl 5.10: Can't call method "say" without a package or object reference 02:21
I thought say was a built-in in 5.10 02:22
mikehh It needs use 5.10; 02:23
or use Modern::Perl; 02:24
whiteknight ah, use 5.10. That's what I'm missing
mikehh if you get chromatic's module
dalek kudo: 20a512b | (Solomon Foster)++ | src/core/ (2 files):
Tidy Int and Rat.
02:32
kudo: 006bdf0 | (Solomon Foster)++ | src/core/ (2 files):
Move Num operators from Real.pm to Num.pm.
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#34323), fulltest) at r47563 - Ubuntu 10.04 amd64 (g++) 02:34
bacek aloha, humans 02:39
seen cotto
purl cotto was last seen on #parrot 20 hours, 12 minutes and 11 seconds ago, saying: braids?
bacek seen cotto_work
purl cotto_work was last seen on #parrot 6 hours, 34 minutes and 27 seconds ago, saying: We've got layers.
bacek msg cotto Do you have github id? 02:40
purl Message for cotto stored.
mikehh hey bacek 02:41
dalek r: c7ca31b | bacek++ | src/PIR/Compiler/Grammar.pm:
Don't capture C<panic> during parsing.
r: 273817b | bacek++ | src/PIR/Compiler/Grammar.pm:
Shorten binary_* rule names to "LTM" over them to <call>
r: 4a8b2e2 | bacek++ | src/PIR/Compiler/Grammar.pm:
Change names of various rule for manual LTMing...
purl dalek: that doesn't look right
r: 5f7852c | bacek++ | src/PIR/Compiler/Grammar.pm:
Add keyword rule
r: a1e7ac5 | bacek++ | t/0 (22 files):
Move old tests into old_t
02:42
bacek mikehh, aloha 02:43
mikehh bacek: how are you supposed to use/test pirate 02:46
bacek mikehh, "parrot setup.pir test" 02:47
"use" is far-far away...
whiteknight good morning bacek, throw another shrimp on the barbie?
mikehh so you need to work from an installed parrot
bacek mikehh, yes.
whiteknight, it's a good plan. Weather is quite good today :) 02:48
02:48 janus joined
whiteknight bacek: now that you're an Aussie, I have to speak your language? 02:48
...that wasn't supposed to be a question
bacek whiteknight, mate, not everyone speaks "ozzy" here :) 02:49
whiteknight :) 02:50
mikehh bacek: but you got the paspers to show you do now
papers
whiteknight bacek: what was your citizenship before Australia? 02:51
bacek mikehh, twitpic.com/1vhszc
whiteknight, I still have Russian citizenship.
whiteknight bacek: ah, okay
mikehh bacek: there you go 02:52
bacek whiteknight, Russia allow dual citizenship.
02:54 tetragon_ joined
bacek want "pir coverage tool"... 02:54
and "nqp coverage"
and world domination
purl i guess world domination is the eventual goal
bacek and pony...
Time to make some lunch 02:56
whiteknight bacek: what do you mean "pir coverage tool"?
bacek whiteknight, similar to any other coverage tools. Run test, show how many time each line was executed. 03:00
whiteknight ah, okay.
bacek Similar to Devel::Cover
whiteknight that shouldn't be too hard, especially not with an instrumentation tool like what khairul is developing
bacek Yes. But I want it NOW :) 03:01
whiteknight :) 03:02
okay, it's late and I'm going to bed. Enjoy the lunch, bacek
bacek whiteknight, g'night
03:24 ash_ joined 04:09 rurban_ joined
dalek TT #1596 closed by coke++: PIR methods fail to be added to PMCs unless marked :nsentry 04:32
TT #1596: trac.parrot.org/parrot/ticket/1596
Coke msg notfound - can we close TT #300 ? 04:38
purl Message for notfound stored.
dalek TT #1458 closed by coke++: Don't add probed warnings to config information. 04:48
TT #1458: trac.parrot.org/parrot/ticket/1458
TT #1558 closed by coke++: Request wiki edit-access 05:05
TT #1558: trac.parrot.org/parrot/ticket/1558
TT #900 closed by coke++: NQP parses functions beginning with 'make' as keyword 05:21
TT #900: trac.parrot.org/parrot/ticket/900
TT #933 closed by coke++: building NQP on ppc stops with 'Segmentation fault'
TT #933: trac.parrot.org/parrot/ticket/933
TT #842 closed by coke++: [DEPRECATED] NQP PIR q:to:...
TT #842: trac.parrot.org/parrot/ticket/842
TT #837 closed by jimmy++: [DEPRECATED] NQP quoting rules going to be close to Perl6. 06:11
TT #837: trac.parrot.org/parrot/ticket/837
06:15 JimmyZ joined
dalek TT #1079 closed by jimmy++: Chaining operator ':=' is ignored in NQP 06:27
TT #1079: trac.parrot.org/parrot/ticket/1079
TT #1051 closed by jimmy++: [TODO] NQP should report use of undeclared variable
TT #1051: trac.parrot.org/parrot/ticket/1051
TT #459 closed by jimmy++: $(...) syntax in NQP
TT #459: trac.parrot.org/parrot/ticket/459
TT #1066 closed by jimmy++: Add %(...) expression to NQP
TT #1066: trac.parrot.org/parrot/ticket/1066
cotto msg bacek I'm cotto on github 07:09
purl Message for bacek stored.
cotto helllo
dalek rrot: r47564 | khairul++ | branches/gsoc_instrument (49 files):
Sync with trunk
07:12 tcurtis_ joined 07:16 bacek joined, aloha joined
cotto Wow. jimmy++ for going nuts on old nqp tickets 07:19
bacek aloha, cotto 07:23
cotto, I've added you to pirate contributors. Feel free to hack it :) 07:25
cotto He left too early. A coverage tool is essentially trivial with the existing profiling runcore. 07:29
as far as the info from imcc is accurate, that is 07:32
msg bacek PIR coverage should be pretty trivial with the profiling runcore. You'll have to do some post-processing though. 07:34
purl Message for bacek stored.
dalek kudo: 8fc1ef5 | dukeleto++ | (3 files):
Add test for loading perl6.pbc bytecode
07:41
kudo: a63c7e0 | moritz++ | (4 files):
add stresstest target, and move day 17 of the advent tests to stresstest
08:04
08:12 szabgabx joined
dalek kudo: 5ad963b | moritz++ | src/ (5 files):
s/CREATE_HASH_LOW_LEVEL/CREATE_HASH_FROM_LOW_LEVEL/
08:22
kudo: edf0072 | moritz++ | t/harness:
default to one test job at a time, due to complaints from avar++ and sorear++
08:24 szabgabx_ joined 08:26 szabgabx joined
dalek website: tcurtis++ | It's Finally Time to Write Some Optimizations (Almost) 08:46
website: www.parrot.org/content/its-finally-...ons-almost
09:06 mmcleric joined
bacek mmcleric, привет :) 09:09
cotto, do we have anyone who can write coverage report?...
09:10 radu joined 09:24 JimmyZ_ joined 09:26 aukjan joined
dalek kudo: aecd470 | moritz++ | (2 files):
early, hacky implementation of callframe($level) and class CallFrame

callframe().line # the current line callframe(1).line # caller's line callframe(1).file # caller's file
09:43
mmcleric bacek, привет :) а у нас тут Джонатан - Ń€ŃŠ“Š¾Š¼ сиГит 09:46
dalek kudo: 6fe0817 | (Vyacheslav Matjukhin)++ | src/core/Any-list.pm:
#RT75626 - [TODO] Implement Any.all (and .any, .one, .none) in Rakudo
09:48
09:50 bacek joined 09:51 aloha joined
dalek kudo: 46e9ac2 | jonathan++ | src/ (3 files):
Start to store attribute type constraints so we can introspect them.
09:54
10:29 mj41 joined
bacek mj41, heya! Where is my dependency projects in TapTinder? 10:33
10:36 clinton joined 10:37 whiteknight joined
mj41 bacek, ahoj! Sorry. No time to code anything, but I'm thinking about it a lot. Preparing wedding day during weekends :-). 10:39
bacek mj41, Congratulations :) 10:40
mj41 bacek Thanks. Is "dependency projects" support useful without Git support for you? Which project are your favourite? All from proto.perl6.org/ :-) ? 10:42
bacek I need to automate testing TapTinder a bit first. Should we move this discussion to irc://irc.freenode.net/#taptinder ? 10:45
bacek mj41, I would like to see git support. Almost all HLLs use git. 10:47
mj41, (I'm little busy now for more discussions... :/ ) 10:48
whiteknight good morning, #parrot 10:52
mj41 bacek, ok np 10:59
whiteknight ACCEPTSEXACTLY() ? I don't know what ACTLY is, but does an optimizer really need to be ACCEPTing SEX? 11:00
seems suboptimal to me
moritz an _ won't hurt 11:01
bacek whiteknight, why you reject ACTLY sex??? 11:03
mikehh opbotsa, names 11:07
opbots, names
whiteknight tcurtis++ # blog 11:09
11:11 radu joined
dalek kudo: 92b1f42 | (Vyacheslav Matjukhin)++ | src/core/RangeIter.pm:
RangeIter works with values which are idempotent to .succ (closes RT#75526)
11:26
11:28 lucian joined 11:32 aukjan1 joined 12:06 khairul joined 12:09 rurban_ joined, radu_ joined
whiteknight is starting the process of installing icc again 13:03
13:19 snarkyboojum joined
dalek kudo: 0d0672b | (Solomon Foster)++ | src/core/Numeric.pm:
Add stubs with fail for the Real-only methods, so that using them incorrectly
13:23
kudo: b502e87 | (Solomon Foster)++ | src/core/Complex.pm:
Tweak Complex a bit, including requiring Real values be passed to new, moving

and Complex.sign.
13:26 JimmyZ joined
dalek rrot: r47565 | gerd++ | trunk/NEWS:
add two news for the next release
13:28
moritz finds the documentation of most PMCs very C centric 13:48
take the LexPad PMC 13:49
PMC *get_pmc_keyed_str(STRING *name)
the user is assumed to know that this is what you can access as $P0[$S1]
which is not very friendly for the casual user, who wants to use PIR most of the time 13:50
whiteknight moritz: good observation 13:51
moritz do we want to do anything about it? if yes, what? 13:54
whiteknight Well, we do have two audiences that really do need documentation 13:55
the C coders do need proper docs for their work
but the PIR coders do too
moritz can we automatically translate it? 13:56
whiteknight I don't know. How do you propose that? 13:58
moritz we know that get_pmc_keyed_str translates to $P0[$S1]
so from PMC *get_pmc_keyed_str(STRING *name) we could generate 13:59
C access: PMC *get_pmc_keyed_str(STRING *name)
PIR access: .local str name \\n $P0[name]
whiteknight we could try that, I assume. But the automatic translation would have to play nicely with the existing documentation, where available 14:00
if you and your perl6 magic can make it happen, power to you 14:01
moritz well, I guess perl 5 magic would be more appropriate 14:02
might be worth a try, but other ideas would be welcome too
mikehh needs to reboot 14:07
14:13 mikehh joined 14:19 szabgabx joined 14:21 davidfetter joined 14:27 tetragon joined
whiteknight damnit. I cannot get icc installed today 14:35
or, to be more precise, I've barely gotten it installed, but I can't get it to compile anything 14:36
dalek kudo: 5c78c71 | jonathan++ | src/Perl6/Compiler/Package.pm:
Set an attribute type to Any if there's no supplied type constraint.
14:41
kudo: 52873b9 | jonathan++ | (3 files):
A little tweak so we can augment P6metaclass classes in the setting as well as
kudo: 8731a52 | jonathan++ | src/metamodel/Attribute.nqp:
Attribute.build should not return a Parrot Undef; it explodes leakily in Perl 6.
kudo: 02d164d | (Vyacheslav Matjukhin)++ | src/Perl6/Actions.pm:
colonpair shortcuts with twigils fixed (closes RT#73908)
14:58
15:00 kid51 joined 15:08 ambs joined
dalek kudo: c19f148 | moritz++ | (3 files):
callframe().my returns a LexPad.
15:22
kudo: 57ec550 | jonathan++ | src/Perl6/Compiler/Package.pm:
Default to unconstrained, not Any, for attribvutes in order to be consistent
15:27
kudo: ae1300f | jonathan++ | src/core/operators.pm:
Fix infix:<...> with a list to the right so it doesn't flow away data. Patch
15:56 patspam joined 16:04 hercynium joined 16:16 theory joined
dalek rrot: r47566 | chromatic++ | trunk/config/gen/makefiles/root.in:
Added IO dynop dependency to Message.pbc and distutils (Andy Dougherty, TT
16:24
16:48 darbelo joined 16:57 ambs joined
dalek rrot: r47567 | jkeenan++ | branches/cfunctionsdocs (9 files):
[codingstd] Provide documentation for C functions.
16:57
17:00 ambs joined 17:03 ambs_ joined 17:04 szabgabx joined 17:28 tcurtis joined 17:42 LoganLK joined
dalek rrot: r47568 | darbelo++ | branches/gsoc_nfg (2 files):
Add NFG tests.
17:46
rrot: r47569 | darbelo++ | branches/gsoc_nfg/t/op/string_nfg.t:
Transcoding tests.
18:01 Italianguy85 joined 18:15 Italianguy85 left 18:16 lucian_ joined
dalek rrot: r47570 | tcurtis++ | branches/gsoc_past_optimization (4 files):
Update MANIFEST.generated, fix a dependency loading problem, and add support for bare string and integer children with PAST::Walker.
18:19
18:20 LoganLK joined
cotto bacek, I'm afk for most of the weekend but I don't think it'd be difficult to hack up a quick PIR coverage tool. The output of the profiling runcore is a simple text-based format. 18:22
docs/dev/profiling.pod
If you don't beat me to it, I'll take a shot at writing something. 18:23
dalek rrot: r47571 | tcurtis++ | branches/gsoc_past_optimization/runtime/parrot/library/PAST/Pattern/Node.nqp:
Factor out ACCEPTSGLOBALLY.
19:09
rrot: r47572 | tcurtis++ | branches/gsoc_past_optimization/runtime/parrot/library/PAST (4 files):
Move option handling and :g logic of .ACCEPTS into PAST::Pattern.
19:42
19:47 aukjan joined 20:04 Psyche^ joined 20:43 ambs_ joined
bacek aloha, humans. 20:45
20:46 eternaleye joined
darbelo bacek, aloha. 20:56
bacek darbelo, aloha 20:57
darbelo No wait. Wrong order.
aloha, bacek :)
darbelo get confised by multiple robots.
bacek seen chromatic 21:13
purl chromatic was last seen on #parrot 3 days, 19 hours, 25 minutes and 29 seconds ago, saying: I thought we had one, courtesy of duke. [Jun 9 01:48:29 2010]
dalek rrot: r47573 | bacek++ | branches/gc_massacre/src/gc/gc_ms2.c:
Fix typo in threshold variable name. Lock liveset size.
21:36
rrot: r47574 | bacek++ | branches/gc_massacre/src/string (3 files):
Avoid useless Parrot_str_copy call. Just create proper string.
rrot: r47575 | bacek++ | branches/gc_massacre/src/pmc/imageio.pmc:
Clean allocated memory in ImageIO. GC doesn't do it implicitely anymore.
22:09
22:16 ruoso joined
dalek rrot: r47576 | bacek++ | branches/gc_massacre/t/op/gc-leaky.t:
Increase amount of allocated object in GC test.
22:26
rrot: r47577 | bacek++ | branches/gc_massacre/src/gc/gc_ms2.c:
Cleanup allocated string storage as workaround for PackFile garbage packing...
rrot: r47578 | darbelo++ | branches/gsoc_nfg (50 files):
Sync with trunk.
tcurtis PAST::Pattern is, I think, usable for optimizations now. About to write some documentation. 22:50
bacek tcurtis++ # Hooray!
tcurtis, you can probably claim trac.parrot.org/parrot/ticket/620 22:51
dalek rrot: r47579 | tcurtis++ | branches/gsoc_past_optimization (3 files):
Add :p, fix the deep-matching children bug, and no-op 'walk'ing non-nodes(NQP-rx appears to explode if I box them into PAST::Vals).
22:59
tcurtis bacek, I don't think PAST::Pattern is quite lightweight enough to qualify for that(still need to manually add the stage), nor is it really a language. However, I think it's a convenient and high-level enough interface to justify writing the docs and writing optimizations in it now. Designing a syntax for it seems like more of a "it would be nice" thing, and it would probably be better to wait until some optimizations have been written to start worrying abou 23:00
and we better know what is needed for it.
That was a somewhat excessively lengthy reply: summary: maybe, but it's probably better that I wait to worry about that. 23:01
bacek fair enough 23:03
darbelo tcurtis++ # Work now, worry later :) 23:07
Coke msg bacek and plobsing, can you check out TT #1628? 23:16
purl Message for bacek stored.
Coke msg plobsing and bacek, can you check out TT #1628? 23:17
purl Message for plobsing stored.
Coke msg hachi - is there any way to purl-msg two people with the same message?
purl Message for hachi stored.
Coke seen austin? 23:20
purl austin was last seen on #parrot 39 days, 17 hours, 20 minutes and 26 seconds ago, saying: gitorious.net/kakapo/kakapo/blobs/m...Syntax.nqp [May 4 05:59:49 2010]
darbelo Coke: That's an 'Track experimetal status' ticket.
tcurtis thought he had a bug because --target=past with his modified NQP-rx was putting out the unoptimized PAST. 23:21
darbelo Parrot_str_unescape sucks, so Parrot_str_unescape_string was added (experimentally)
Look near line 130 of DEPRECATED.pod 23:22
tcurtis Of course, given that my optimization stage runs after "past", it would be quite strange if --target=past produced the optimized PAST. 23:23
bacek ~~ 23:26
Coke ask++ 23:32
dalek TT #1431 closed by coke++: Register assigned to .local string variable is mis-remembered
TT #1431: trac.parrot.org/parrot/ticket/1431
Coke darbelo: it doesn't say what was added.
at least not in a way that I can understand. it reads like we need to add "a function that does..." 23:33
Can you clarify the verbiage?
ah.
you mention Parrot_str_unescape_string here, but not in the ticket. =-)
darbelo I can recite most of src/string/api.c from memory by now. 23:35
I don't have time to properly pretty up the ticket *now*. But I'll add it to my TODO, for tomorrow morning. 23:37
purl: msg darbelo can you check out TT #1628? 23:40
purl Message for darbelo stored.
dalek rrot: r47580 | darbelo++ | branches/gsoc_nfg/src/string (3 files):
Make replace nfg-aware. Adjust the API to make that a little more convenient.
23:48