Parrot 2.1.1 Released! | parrot.org/ | Tasks: PCC deprecations branch, HLL subclassing and MMD branch
Set by moderator on 19 February 2010.
NotFound Looks like the problem is that loading a library inside an :immediate sub doesn't work well. 00:01
mikehh sys_mem_reduce branch: 00:04
t/examples/shootout.t - Failed test 'examples/shootout/nsieve-bits.pir' - results wrong (less than required)
all other tests PASS (pre/post-config, make corevm/make coretest, smoke (#32303), fulltest) at r44262 - Ubuntu 9.10 amd64 (g++ with --optimize)
# Failed test 'examples/shootout/nsieve-bits.pir' 00:05
# at t/examples/shootout.t line 99.
# got: 'Primes up to 40000 4329
# Primes up to 20000 2277
# Primes up to 10000 1194
# '
# expected: 'Primes up to 40000 4203
# Primes up to 20000 2262
# Primes up to 10000 1229
sorry should say more not less
NotFound Worse, that way is not 'reduce' 00:10
bacek mikehh, fixed 00:12
NotFound, bad joke, no cookie...
:)
NotFound Was a bad cookie, anyway. 00:13
00:19 snarkyboojum joined 00:21 davidfetter joined
NotFound In my amd64 system the problem doesn't appear. Trying a fresh checkout on the 386 00:22
mikehh bacek: ok that works
bacek NotFound, I can't reliably reproduce it on i386...
NotFound bacek: doesn't break the build for me, but fails. 00:23
00:23 chromatic joined
bacek chromatic, aloha 00:24
dalek rrot: r44263 | bacek++ | branches/sys_mem_reduce/src/pmc/fixedbooleanarray.pmc:
Explicitely clean allocated memory in FBA.
00:25
rrot: r44264 | bacek++ | branches/sys_mem_reduce/t/pmc/fixedbooleanarray.t:
Add test for initial FBA filling with 0.
NotFound BTW, there is some reason to build a fakecutable for that tool? 00:26
bacek no idea
chromatic has the very beginnings of an idea to unify PIR/C PMCs. 00:30
Whiteknight chromatic: do tell 00:31
00:32 patspam joined
chromatic Make every PMC into a Class. 00:32
Whiteknight you mean every built-in PMC type? 00:33
chromatic Yes.
NotFound And every instance an object?
chromatic Not necessarily; they don't have to be. 00:34
00:35 theory joined
mikehh sys_mem_reduce branch: 00:37
All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32304), fulltest) at r44263 - Ubuntu 9.10 amd64 (g++ with --optimize)
Whiteknight chromatic: I would like to see that idea fleshed out a little 00:39
chromatic I need to think about it some. 00:42
Mostly I want to move to a model where we define as much in PIR (or "not in C") as possible. 00:43
NotFound I reverted to r44251 and fails same way. Not my fault :) 00:44
Whiteknight with only a few small tweaks I think we could have the option to write VTABLES and METHODS in PIR for built-in types 00:46
00:47 snarkyboojum joined
NotFound The funny thing is that the program runs even if PackFile_unpack gives a lot of error messages, 00:53
So it looks like the :immediate usage is a premature pessimization 00:54
chromatic Boy, those GETATTR macros could easily become assignments. Ternary operator. 00:55
Whiteknight Parrot really should use the packfile PMCs natively foreverything internally 00:56
00:57 snarkyboojum joined 01:40 lucian joined 01:55 plobsing_ joined 02:08 theory joined
dalek nie: r108 | allisonrandal++ | trunk/ (3 files):
Fix a bug and add a missing method in dictionaries, reported in

tests.
02:15
nxed: r422 | julian.notfound++ | trunk/examples/wpack.winxed:
get opcodes by name instead of harcoding in the example wpack
02:18
02:37 snarkyboojum joined 02:46 JimmyZ joined 02:54 bacek joined
dalek rrot: r44265 | plobsing++ | trunk/tools/dev/nci_thunk_gen.pir:
add --dynext option to parrot_nci_thunk_gen to choose options suitable for use as parrot dynext libraries
03:25
03:26 nbrown joined 03:36 confound joined 03:46 myhrlin_ joined
dalek rrot: r44266 | plobsing++ | trunk (3 files):
rename HashPointer to more descriptive nci_funcs and use PARROT_ASSERT in files generated by nci_thunk_gen
03:58
04:01 janus joined
dalek rrot: r44267 | chromatic++ | trunk/tools/dev/nci_thunk_gen.pir:
[NCI] Added header for NCI loader function in NCI thunk generator.
04:15
rrot: r44268 | chromatic++ | trunk/src/pmc/opcode.pmc:
[PMC] Added a cast to get_integer_keyed_int() in Opcode PMC to avoid signedness
rrot: r44269 | chromatic++ | trunk/src/call/args.c:
[PCC] Avoided "use of uninitialized pointer" compiler warning in fill_results().
rrot: r44270 | chromatic++ | trunk/src/main.c:
[src] Removed unnecessary cast when parsing tracing flags in parseflags(). Not

false sense of security that we've done any argument checking there.
rrot: r44271 | chromatic++ | trunk/src/debug.c:
[debugger] Removed dead code from PDB_get_command(), identified by Coverity in

Tidied surrounding code; no functional changes.
04:27 jsut joined
dalek rrot: r44272 | plobsing++ | trunk (3 files):
add extra_nci_thunks dynext
04:31
04:35 Andy joined
ttbot Parrot trunk/ r44272 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/206583.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) 04:35
Coke plobsing_: I think you broke the build again. 04:57
(missing a dep on data_json, perhaps?
05:23 bacek joined
bacek o hai... 05:24
Anyone willing to cleanup PackFiles? With something like flamethrowing machete... 05:26
They are crashing under Boehm GC with memory corruption errors... 05:27
05:38 Andy joined
chromatic Valgrind time? 05:59
bacek Valgrind doesn't work in current GC... 06:04
because we allocate big-chunk-of-memory and reallocate small chunks from it
dalek kudo/master: e904536 | duff++ | src/Perl6/ (2 files):
Simple statement modifier for loop
kudo/master: ed656df | duff++ | src/core/Any-list.pm:
Add non-method form of map
bacek so, from valgrind point of view everything is Ok
chromatic --gc-debug runcore? 06:10
bacek doesn't work either...
--gc inf may help
+ valgrind 06:11
right after sys_mem_reduce landing and resurrecting GC INF. 06:14
dalek rrot: r44273 | bacek++ | branches/boehm_gc_2/lib/Parrot (2 files):
Store ATTRibutes bitmap layout in VTABLE and calculate it in pmc2c
06:58
rrot: r44274 | bacek++ | branches/boehm_gc_2/lib/Parrot/Pmc2c/PMCEmitter.pm:
Fix generating attr_layout for arrays
rrot: r44275 | bacek++ | branches/boehm_gc_2/src/gc/gc_boehm.c:
Use attr_layout in gc_boehm
07:21 iblechbot joined 07:29 cotto joined
dalek kudo/master: 68bb56b | duff++ | src/Perl6/ (2 files):
simplify statement_mod_loop logic a little
07:30
07:38 Austin joined 08:14 chromatic joined
Austin Well, that was harder than it should have been... 08:16
dalek rrot: r44276 | mikehh++ | trunk/src/main.c:
add cast to get g++ to build
09:41
ttbot Parrot trunk/ r44276 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/206808.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) 09:44
Austin I love it! Less code! 09:51
JimmyZ this cast was removed and re-added again and again 09:52
mikehh jimmyZ: it is required by a g++ build (not gcc) 09:56
JimmyZ mikehh: I see
mikehh jimmyZ: I am sure there is another way to get around it - but I need to thionk about that 09:58
s/thionk/think/
Austin w00t. Testing --version. 10:00
JimmyZ r44276 still make failed on mswin32
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32308), fulltest) at r44276 - Ubuntu 9.10 amd64 (g++ with --optimize) 10:12
10:15 payload joined 10:28 snarkyboojum_ joined
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32309), fulltest) at r44276 - Ubuntu 9.10 amd64 (gcc with --optimize) 10:40
heading over to i386 to do some tests there - bbiab 10:41
11:36 mikehh joined 12:02 mikehh joined
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32312), fulltest) at r44276 - Ubuntu 9.10 i386 (g++ with --optimize) 12:07
12:19 lucian joined 12:20 mikehh joined 12:24 Austin joined 12:54 Guest90088 joined 13:00 mikehh joined
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32314), fulltest) at r44276 - Ubuntu 9.10 i386 (gcc with --optimize) 13:14
rakudo - make test PASS, make spectest_smolder #32316 - two tests FAIL - Ubuntu 9.10 i386 (gcc with --optimize) 13:30
heading back to amd64 - bbiab 13:31
13:38 payload joined 13:42 plobsing joined 13:45 kid51 joined 13:47 mikehh joined 13:57 Whiteknight joined
Whiteknight good morning #parrot 14:02
mikehh hi Whiteknight 14:03
Whiteknight hello mikehh\\
14:03 iblechbot joined
mikehh need any branches testing? 14:03
Whiteknight nope, not at the moment 14:05
14:13 joeri joined
plobsing Is anyone here on a windows box? 14:22
kid51 mikehh: bacek, on list, requested testing of sys_mem_reduce branch
14:26 bacek joined
Whiteknight plobsing: not today 14:31
kid51 sys_mem_reduce branch: Last Changed Rev: 44264: PASS buildtools_tests and codetest 14:38
sys_mem_reduce branch: Last Changed Rev: 44264: PASS make test: smolder.plusthree.com/app/projects/...ails/32318 14:46
15:03 kjeldahl joined
Austin plobsing: Using a windows box, or building parrot on a windows box? (I'm running andlinux on top of windows) 15:24
kthakore hi 15:38
the latest parrot broke something in testing toolchain 15:39
my working test for ParrotSDL
are no longer working
t/sdl_lib.t .. Unknown PMC type to thaw 29807
current instr.: 'main' pc 0 (t/sdl_lib.t:18)
???
what does that mean?
purl That boy needs therapy.
Whiteknight kthakore, nopaste your code? 15:42
kthakore ok 15:43
nopaste? 15:44
purl well, nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others) or gist.github.com/ or paste or gtfo or tools/dev/nopaste.pl or trac.parrot.org/parrot/browser/tru...nopaste.pl
Austin Can the <ws> rule use :sym extensions?
nopaste "kthakore" at 99.234.159.149 pasted "broken t/sdl_lib.t" (54 lines) at nopaste.snit.ch/19726 15:45
kthakore Austin: the rest of the code is on github.com/kthakore/parrotSDL 15:46
Austin: the funny thing is it dies at line 18
.sub 'main' :main
what?
Whiteknight kthakore: update your parrot and rebuild the PBCs 15:49
kthakore ok 15:50
Whiteknight could be a PBC_COMPAT
15:50 Psyche^ joined
Austin kthakore: Clearly it's making some progress, since it knows how many tests you were running. I expect that one or more of the .pbc files is bad, or is an old pbc format. (Remember, they pbc format changes in an incompatible way every time they do a release, or after 20 minutes.) 15:50
kthakore oh ok 15:51
it works now!
pmichaud purl messages 15:57
15:56 <purl> Coke [Sat Feb 20 16:34:13 2010] said: you might want to make --gen-parrot rm the local parrot directory and do a fresh checkout.
svn checkouts are so slow already, I really would prefer not to do that :) 15:58
--gen-parrot does do a "make realclean", however. (Yes, I recognize there are places where "make realclean" isn't sufficient.)
Whiteknight that said, there *shouldn't* be cases where realclean isn't sufficient 16:08
pmichaud correct :-) 16:11
Whiteknight Austin, PBC format doesn't change every release
Austin Sure man
pmichaud 15:43 <Austin> Can the <ws> rule use :sym extensions?
Austin: yes. It's just another regex.
Austin W00t.
pmichaud++
I notice you got rid of the whitespace cache in favor of a generalized cache 16:12
Can nqprx handle nqprx closures yet, or still just pir?
pmichaud afaik, it handles closures. 16:13
checking.
hmmm, looks like possibly not. 16:14
Austin Hmm
Does the parrot-nqp that I have with 2.1.0 run nqp-rx, or some dumbed down edition?
pmichaud nqp-rx, should be.
afaik there aren't any dumbed-down editions. nqp-rx is dumb enough already, I hear :) 16:15
nopaste "Austin" at 68.37.46.53 pasted "Bad parsing, or bad error handling?" (38 lines) at nopaste.snit.ch/19727 16:18
pmichaud need the ... 16:20
proto token ws { ... }
16:20 Austin joined
pmichaud bad error message from nqp 16:20
Austin Grrr... stupid firefox
firefox--
pmichaud need the ...
proto token ws { ... }
Whiteknight a better error message would be something like "yo fool, where the elipses at?"
pmichaud exactly
Whiteknight "...at line 18"
pmichaud fixing
Austin S5 shows it with no content: proto token sigil { } 16:21
pmichaud that might be a fossil
kthakore Austin: what is wrong with firefox?
Austin kthakore: In this 5 minutes: it's search function is apparently O(N**2)
pmichaud I'll have to get a spec clarification about S05 16:22
kthakore oh ouch
which version are you on?
3.6 is supposed to be faster searching
Austin So when you are viewing, say, one of the perl synopsis docs, which tend to be elephantine, and you try to search, and you search for the wrong thing, it goes <dead>......several seconds pass <beep!>... several more seconds <beep!> 16:23
pmichaud STD.pm says...
16:22 <pmichaud> std: proto token foo { }
16:22 <p6eval> std 29794: OUTPUTĀ«===SORRY!===␤Null pattern not allowed at /tmp/ZhexAtix5z line 1:␤------> proto token foo { ā}␤FAILED 00:01 107m␤»
Austin Yeah, the version I'm not on is always gonna be faster.
pmichaud so looks like S05 is incorrect
fixing
Austin It needs the <> too? 16:24
That's just wrong.
purl Fire and brimstone coming down from the skies. Rivers and seas boiling! Forty years of darkness, earthquakes, volcanos. The dead rising from the grave! Human sacrifice, dogs and cats living together... mass hysteria!
Austin pmichaud: { ... } or { <...> } ?
pmichaud ...
no angles
Austin Nope, doesn't work. 16:25
pmichaud oh, needs angles 16:26
checking...
Austin This works: 7 proto token ws { <...> } 0 but this dies 7 proto token ws { ... }
This works: 7 proto token ws { <...> } O but this dies 7 proto token ws { ... }
sorry about that.
pmichaud yes, I misremembered -- should be proto token ws { <...> }
Austin Hmm. What's the meaning of the innards? 16:27
Is there any parsing or generation going on there?
pmichaud <...> normally means "yada yada yada" -- it's the "method/sub stub" marker.
Austin I figured that for {...} 16:28
pmichaud in regexes we put it in angles, because ... already has another meaning :-)
Austin It does?
purl if you say so...
pmichaud (match exactly 3 characters)
... is the same as . . . 16:29
Austin okay 16:30
dalek rrot: r44277 | fperrad++ | trunk/runtime/parrot/library/distutils.pir:
[distutils] add a cc_run utility
Austin So I would say 7 sub foo() {...} O to stub a subroutine, but I have to say 7 token foo { <...> } O? 16:31
pmichaud yes. 16:32
(not sure about the O's in your query)
Austin That's me mis-remembering how to do colors.
pmichaud ah
np
Austin I was using CO instead of O
7 colored original
ttbot Parrot trunk/ r44277 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/207048.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) 16:33
pmichaud anyway, I'm fixing nqp-rx to give a better message.
Austin Hell, it's too late now. I've already learnt this lesson.
pmichaud too late for you, maybe, but think of all of the people who now benefit from your lesson! 16:34
Austin Is there any way to control the order of evaluation of the sub-parts of a proto ?
pmichaud it's normally controlled by ltm
which is imperfect at the moment in nqp
Austin Hmm. Is it smart enough to know that { <?MARKED('ws')> } is 0 width?
pmichaud yes 16:35
Austin Bummer
pmichaud and to break ties, nqp has a cheating heuristic where it uses the length of the :sym<...> name.
Austin Heh
pmichaud so, foo:sym<abc> will be tried before foo:sym<a>.
Austin Hmm 16:36
Given that ws rules always have to match zero width ...
I probably want to create a proto-fied subrule
pmichaud ws is always treated as zero-width for longest-token calculations
Austin Is that magic?
(if rulename eq 'ws' ...)
kthakore where can I read about how NCI works? 16:37
Austin kthakore: No idea, sorry.
pmichaud it's not magic based on the name, no.
checking
PerlJam kthakore: docs/pdds/draft/pdd16_native_call.pod
(I don't know why that's still "draft") 16:38
pmichaud okay, it's magic within Perl 6
pasting
As a consequence of the previous point, and because the standard
grammar's C<< <ws> >> rule defines whitespace using C<||>, the
longest token is also terminated by any part of the regex or rule
that I<might> match whitespace using that rule
...
Austin Is the || op permissive about a null first item, the way | is?
pmichaud yes. 16:39
> proto token foo { } 16:40
Proto regex body must be <...> at line 1, near "{ }\\n"
Austin Available two days after Steak & BJ day, I guess. 16:41
(Parrot 2.2 - 16 March) 16:42
kthakore PerlJam: thanks
pmichaud well, we'll likely put a new version of nqp-rx into the parrot repo before then, for people who happen to be developing from parrot trunk
Austin Sure. But that's madness.
I did it for a few months... 16:43
What's the LTM do with + and * patterns? Just assign them +Inf, or does it do more (or less)? 16:44
dalek p-rx: 09ded51 | pmichaud++ | src/NQP/Grammar.pm:
Throw a useful error message if a protoregex is given a body other than <...>.
16:46
pmichaud according to spec, + and * are supposed to be included in the ltm 16:47
(but they don't count as inf -- it's not a static calculation)
so:
Austin Howzat?
If you've got to decide which subpattern to try first, you're kind of stuck with a precomputation, no? 16:48
pmichaud token xyz:sym<abc> { abc }
you don't decide a-priori
ltm actually looks into the subpatterns to decide
so
token xyz:sym<abc> { abc }
token xyz:sym<other> { \\w* }
token xyz:sym<abcdef> { abcdef }
knows to call the first for "abc", the second for "abcd" and "abcde", the third for "abcdef", and the second for "abcdefghijkl" 16:49
(yes, this is hard to implement, which is why nqp-rx doesn't have a full implementation yet. neither does the standard grammar :) 16:50
Austin Is that "knows," as in 'in nqprx right now', or is that "will know" as in 'soon, but not today'?
Ahh.
pmichaud 'knows' as in "that's what the Perl 6 spec requires"
more to the point, even patterns like 16:51
token xyz:sym<another> { \\w*ghi }
Austin use 6; if $@P < $@NP {...}
pmichaud properly participate in the longest token match
i.e., the length isn't assumed to be infinite because of the * -- we actually evaluate the first part of each subregex to decide what its longest sequence is before selecting the rule to fire 16:52
Austin okay
pmichaud (again, this is Perl 6 spec, not what NQP does at the moment) 16:53
NotFound There is some reason to have a 'lower' method in String PMC but not having 'upper' ?
pmichaud NotFound: as far as I'm concerned, I wish we didn't even have 'lower'
NotFound: I'm not sure why it's there.
Austin So we have no excuse to not use the lowercase form of the language name in the root namespace. 16:55
dalek nxed: r423 | julian.notfound++ | trunk/winxedst1.winxed:
port to stage 1 the autoboxing on method call feature of stage 0
16:59
Austin pmichaud: The proto elements generate horrible sub names (!PREFIX__WS:sym<foo>). So they can't be inline code? 17:00
pmichaud ? 17:01
"inline code"?
Austin (A la "method WS:sym<foo>() {...}" )
Procedural code?
What's the description I'm looking for?
pmichaud you're saying that normal methods can't participate in a protoregex group ?
Austin I'm asking how 17:02
Because the obvious way doesn't seem to work.
pmichaud at present, there's not a way for a normal method to participate in a protoregex group.
but a protoregex is a method :-)
Austin Yeah, I saw that.
So it's 7 token WS:sym<foo> { <?foo()> } sub foo() {...} for now? 17:03
pmichaud yes, or you can just use inner curlies
token WS:sym<foo> { { ... nqp code goes here ... } }
Austin Cool. 17:04
17:09 iblechbot joined 17:10 theory joined 17:14 jan joined 17:44 tetragon joined
dalek rrot: r44278 | fperrad++ | trunk/runtime/parrot/library/distutils.pir:
[distutils] add an option setup (for setup.nqp)
17:52
fperrad msg Austin with r44278, add :setup('setup.nqp') in %kakapo 17:53
purl Message for austin stored.
17:54 Austin joined
ttbot Parrot trunk/ r44278 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/207112.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) 17:54
Whiteknight SDL? 19:20
purl SDL is, like, Simple Directmedia Layer aka DirectX for Unix except with 59% less evil. There's Perl bindings. Frozen Bubble is written using it. or or allows that nifty doom game to run on ayrnieu's *Zaurus*
kthakore Whiteknight: yay SDL
Whiteknight kthakore: I'm writing a short blogpost about your project, have any information to share? 19:21
what your status is, etc?
kthakore Whiteknight: status is experimental and brand new 19:22
purl Since Tue Feb 16 10:19:41 2010, there have been 1346 modifications and 776 questions. I have been awake for 5 days, 9 hours, 2 minutes, 0 seconds this session, and currently reference 826619 factoids. Addressing is in optional mode.
kthakore Whiteknight: I do have a road map
Whiteknight: get all examples working with current NCI
Whiteknight ok
kthakore Whiteknight: add tests, because testing is good 19:23
Whiteknight: then once NCI callback stuff changes
Whiteknight: we are going to move over to modular SDL bindings
Whiteknight: one layer is pure bindings and 2nd layer is sugar
Whiteknight: simpler to SDL_perl redesign on github.com/kthakore/SDL_perl 19:24
Whiteknight okay, nice
kthakore Whiteknight: I am split between parrotSDL and SDL_perl but I am commited to it 19:25
Whiteknight very awesome
kthakore Whiteknight: if there are pir hackers who want to help I can provide SDL insight
that is pretty much it 19:26
Whiteknight: is that enough?
Whiteknight: oh also it is plumageable
github.com/kthakore/parrotSDL 19:27
Whiteknight: also can you post that we are located over on #sdl irc.perl.org 19:31
Whiteknight kthakore, that's plenty, thanks! 19:32
kthakore Whiteknight: no thank you! I no this will be a looooong project but the marketing will get helpers and then I can enjoy perl6 SDL ;)
s/no/know for the 22nd one 19:33
oops
2nd
19:35 wknight8111 joined
Whiteknight Okay, blog post comes out tomorrow morning 19:36
kthakore Whiteknight: thanks! 19:40
ttbot Parrot trunk/ r44279 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/207215.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) 19:47
dalek rrot: r44279 | whiteknight++ | trunk/src/pmc/namespace.pmc:
add note about TT #1472
rrot: r44280 | whiteknight++ | trunk/src/pmc/pmcproxy.pmc:
[cage] add some whitespace in PMCProxy to be more like other PMC sources
ttbot Parrot trunk/ r44280 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/207233.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) 19:51
kthakore Whiteknight: oh I forgot to ask where is your blog?
Whiteknight wknight8111.blogspot.com 19:52
kthakore Whiteknight: I am on yapgh.blogspot.com 19:54
Whiteknight okay, nice
if you write about Parrot stuff, you could be on the Planet Parrot aggregate 19:55
aggregator
purl aggregator is some function to perform on a bunch of elements
dalek TT #1472 created by whiteknight++: Namespace.get_pointer_keyed is TOTAL KLUDGE
20:18 theory joined 20:19 bacek joined 20:25 dhg joined 20:26 ttbot joined 20:28 snarkyboojum joined
ttbot Parrot trunk/ r44281 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/207312.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) 20:30
20:31 contingencyplan joined
dalek rrot: r44281 | whiteknight++ | trunk/src/pmc/oplib.pmc:
add caching to OpLib PMC. One Opcode PMC for each opcode. Since these are read-only, no reason to have more than one for the same op
20:36
bacek Whiteknight, there is "singleton" pragma exists. You don't have to do it manually for OpLib 20:38
Whiteknight bacek: what do you mean? 20:39
bacek pmclass OpLib singleton { ... }
Austin pmclass attribute keyword
Whiteknight bacek: what do you mean do it manually?
bacek class_init? 20:40
Whiteknight bacek: that's what all the singletons do 20:41
bacek ah, ok...
Whiteknight Parrot doesn't manage it automatically
bacek why???
Whiteknight it should, but doesn't
because pmc2c is stupid
bacek sigh... 20:42
Whiteknight there was a ticket about it somewhere. I think darbelo was griping about it
bacek Someone have to rewrite it in NQP. O, wait...
Whiteknight it's not just pmc2c, Parrot doesn't have any support for singletons 20:43
bacek pmc2c first, Parrot_pmc_new second 20:44
flawless victory
purl FINISH HIM
bacek botsnack!
purl :)
Austin The problem with having three monitors, is 3x the sun glare... 20:46
nopaste "bacek" at 122.110.82.47 pasted ""Proper" singletons support in Parrot_pmc_new" (57 lines) at nopaste.snit.ch/19728 20:57
bacek Whiteknight, something like this nopaste.snit.ch/19728 ?
20:59 snarkyboojum joined
Austin Is it considered a bug that when I ask for bytecode to be loaded twice, it gets loaded twice? 21:01
21:04 rblackwe joined
Austin Here's a more relevant question: What's the difference between throw and rethrow? 21:04
21:10 ttbot joined
dalek rrot: r44282 | bacek++ | trunk (2 files):
Made OpLib singleton
21:25
ttbot Parrot trunk/ r44282 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/207371.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) 21:26
21:31 joeri left 21:36 payload joined
Whiteknight Austin: one has 5 letters, one has 7 21:50
Austin Correct! 21:51
Whiteknight++
Also, rethrow marks the exception unhandled.
I was going to embark on a rant about this, but then I read the PDD, and i realized the entire exception subsystem is a farce.
That which is documented is inadequate and poorly thought out. And that which is implemented doesn't do even remotely what is documented. 21:52
Whiteknight Austin: you're preaching to the quoir 21:55
dalek rrot: r44283 | bacek++ | branches/sys_mem_reduce/src/gc/api.c:
Add assertions to check that GC susbsystem has complete API
21:58
Austin sings, "But on eliminating every other reason for our sad demise, they logged the only explanation left: this species has amused itself to death!" 22:00
What's does spew() do? 22:02
Ahh, truncates the file 22:03
Whiteknight I don't think I've ever heard anybody express satisfaction with the Exceptions system 22:18
I know a lot of work has been done, I think Tene was taking charge of it 22:20
but there is a long way to go to even get where the spec requires
Austin yeah
22:31 cognominal joined
Whiteknight What problems do you have with the PDD? 22:33
22:39 snarkyboojum_ joined
Austin whiteknight: The pdd makes the assumption that exception filtering will be done based on 'type', but provides no mechanism for extending the 'types'. The logical (and widely popular) alternative is to filter based on subclass. The pdd's answer to that is that you can throw anything, if you just stuff it in the payload. So naturally, the parameters to the exception handler objects are the... 22:50
...exception and it's *message*.
The throw/rethrow ops differ in that rethrow marks the exception unhandled. IMO, rethrow should be transparent - particularly, the exception backtrace should still point at the original location where the exception occured. The pdd makes nothing of this, and naturally parrot gets it wrong. 22:51
davidfetter hello 22:52
Austin There are too many categories of severity, too many attributes (backtrace versus resume versus thrower; severity versus exit code versus type versus class).
Hello, david 22:53
davidfetter so i'm trying to hack a makefile for PL/Parrot
Austin and you realized that there are 825 flavors of make...
davidfetter it needs to do stuff based on pg server version, which i have a script for
i'm thinking it's good for all the makes pg is good for, so this needs to be pretty cross-platform 22:54
Austin By which I assume you mean "installed pg library" version, and not "version of software on some remote box"
davidfetter from R'ing TFM, i see there's ifeq directives
Austin Heh
davidfetter however, i need something more like iflt 22:55
or ifge
Austin What is it you want to do?
Because I'm not sure how narrowly-focused the #IF directives that parrot config supports, are.
davidfetter basically something like iflt ($PG_VERSION, 90000) REGRESS_OPTS = --dbname=$(PL_TESTDB) --load-language=plpgsql else REGRESS_OPTS = --dbname=$(PL_TESTDB) endif 22:56
however, there's no iflt
Austin Right.
I think this is a config thing, not a makefile thing.
(Which means it gets written in a procedural language - woot) 22:57
davidfetter REGRESS_OPTS is a PGXS thing
Austin Sure.
But this setting is about what's loaded on the computer, right?
"Which version of gcc are you running?" 22:58
"Which version of PGXS are you running?"
See what I mean?
davidfetter hrm
Austin You need configuration foo, which I think is someone like kid51 or Coke. 22:59
Is the PG_VERSION always stored in an environment variable?
davidfetter i've stored it there, yes 23:00
PG_VERSION = $(shell psql -Atc 'show server_version_num')
Austin Ahh.
Is PG only *nix ?
davidfetter no :(
Austin Does the same command work on windows? 23:01
psql -Atc 'show server_version_num' ?
Whiteknight Austin: Mind if I quote you (extensively) on a blog post? 23:10
Austin I don't mind at all, Whiteknight. It's a logged, public forum. 23:12
But there needs to be revenue sharing... :)
Whiteknight Austin: Sure, I'll give you 80% of all the money I make 23:13
23:15 AndyA_ joined
Whiteknight according to google, my all-time ad earnings are... 23:15
...0.04$ 23:16
I'll write you a check.
23:16 AndyA_ joined 23:17 lucian joined 23:24 lucian_ joined 23:27 lucian__ joined 23:30 preflex joined
dalek parrot: cda3a3a | (David Fetter)++ | Makefile:
Atrocious hack to make "make installcheck" succeed for both pre-9.0
23:33
23:47 snarkyboojum joined
Austin msg pmichaud I think PCT/HLLCompiler.pir contains a bug at line 737: unless encoding == 'utf8' ... - it seems to me this only sets the ifh.encoding if the desired encoding is utf8, when I suspect you meant either if== or unless != 23:51
purl Message for pmichaud stored.
dalek rrot: r44284 | fperrad++ | trunk (3 files):
[build] fix the build of runtime/parrot/library/data_json.pbc on Windows
23:53
ttbot Parrot trunk/ r44284 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/207460.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) 23:57