|
Parrot 0.8.1 "Tio Richie" Released | parrot.org | 588 RT | 11 trac Set by moderator on 1 December 2008. |
|||
| dalek | r33469 | jonathan++ | trunk: | 00:04 | |
| : [rakudo] Track changes in namespace/class symbol handling in Parrot in code to convert multis to Perl6MultiSub. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33469 | |||
| particle1 | jonathan: does that fix spectest failures? | ||
| jonathan | particle1: Either alone or along with the patch that followed it, yes. | 00:05 | |
| particle1 | excellent. jonathan++ | ||
| dalek | r33470 | jonathan++ | trunk: | ||
| : [rakudo] Implement some missing methods and add some documentation to the Perl6MultiSub PMC. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33470 | |||
| jonathan | Hmm, the cache got disabled. Wonder if that was an attempt to fix things up. | 00:06 | |
| jonathan re-enables it and re-smokes. | |||
| chromatic | Nothing I did. | 00:08 | |
| On purpose. | |||
|
00:09
AndyA joined
|
|||
| jonathan | chromatic: Curious. | 00:09 | |
| purl gives the small curious key to Bilbo. Thorin sits down and starts singing about gold. | |||
| jonathan | chromatic: Anyway, fixed the problem now. | ||
| dalek | r33471 | jonathan++ | trunk: | 00:19 | |
| : [rakudo] Re-enable multi dispatch caching, tests continue passing. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33471 | |||
|
00:19
tak joined
00:25
davidfetter joined
|
|||
| Tene | pmichaud: why is that code commented out? | 00:25 | |
| in p6object.t? | 00:26 | ||
|
00:31
contingencyplan joined
|
|||
| dalek | r33472 | tene++ | trunk: | 00:43 | |
| : [t/library/p6object.t] | |||
| : * Remove dead code | |||
| : * Add a test for adding the protoobject to an EXPORT::ALL subnamespace | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33472 | |||
| Tene | purl: karma tene? | ||
| purl | tene: i haven't a clue | ||
| Tene | karma tene? | ||
| purl | tene has karma of 314 | ||
| Tene | 157*2 | 00:44 | |
| purl | 314 | ||
|
00:47
bacek joined
|
|||
| Tene | I like adding passing tests | 00:49 | |
| dalek | r33473 | jonathan++ | trunk: | 00:57 | |
| : [rakudo] .perl for proto-objects. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33473 | |||
| r33474 | jonathan++ | trunk: | |||
| : [rakudo] First cut of .perl for Signature. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33474 | |||
| r33475 | jonathan++ | trunk: | |||
| : [rakudo] When we have an ambiguous dispatch, report the signatures of the candidates that were ambiguous. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33475 | |||
|
01:04
davidfetter joined
01:23
petdance joined
|
|||
| GeJ | /win 4 | 01:29 | |
| sorry | |||
| Coke | all this time I was blaming ical/iphone/google for the parrotsketch event being in the wrong time half the year. turns out it's particle's fault. | ||
| Infinoid | as it shoulddddddddddddd be. | 01:34 | |
| hmm, keyboard fail | |||
| Coke | parrotsketch? | 01:36 | |
| purl | hmmm... parrotsketch is a status meeting for parrot core committers held every Tuesday at 18:30 UTC in #parrotsketch | ||
|
01:38
jimmy joined
|
|||
| Coke | p6? | 01:38 | |
| purl | p6 is prototype OO or the future, and it still supports MI via C3, so 6<->5 compat is enhanced by having c3 available in 5 | ||
| Coke | perl6? | ||
| purl | i think perl6 is see Perl 6 | ||
| Coke | phone? | ||
| purl | phone is probably always interrupting | ||
| Coke | chromatic? | ||
| msg particle I changed comp.lang.parrot calendar on google to be GMT instead of pacific time. | 01:40 | ||
| purl | Message for particle stored. | ||
| Coke | msg particle so now the meeting actually shows up at the right time when viewed through the lens of DST. | ||
| purl | Message for particle stored. | ||
| Coke | pmichaud? | ||
| purl | i think pmichaud is www.pmichaud.com/ or "Patrick R. Michaud" <mailto:pmichaud@pobox.com> or in charge of toaster experiments | ||
| jonathan | Coke: Erm, shouldn't it have been UCT? | ||
| Infinoid | utc ftw | 01:55 | |
| Coke | jonathan: I'm not sure that's a choice. | 01:57 | |
| Coke picked GMT/no DST | |||
| Infinoid | that should work | 01:59 | |
| jonathan | Aye. | 02:02 | |
| jimmy | coke: i improved indent_pir.vim | 02:06 | |
| Coke | Saw that got applied. | ||
| right? | |||
| jimmy | yes, what does your script do? that perl script | 02:07 | |
| Coke | it was deleted. | ||
| jimmy | poor engliash :( | ||
| it's difficult to indent every pir codes under runtime with using vim. | |||
| jonathan -> sleeeeeeeeeep | 02:14 | ||
|
02:27
kid51 joined
|
|||
| Coke | jimmy: it used to work by trying to parse an existing PIR file and reformatting it; it only handled a fraction of what a real pirtidy would do. | 02:27 | |
| you can dig back through svn in the tools/ directory if you want to see it. | 02:28 | ||
| kid51: hio. | |||
|
02:28
tak joined
|
|||
| Coke wanders back to his other computer | 02:28 | ||
| kid51 | Coke: yo | 02:29 | |
| dalek | r33476 | tewk++ | trunk: | 02:32 | |
| : [vim] added :nsentry | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33476 | |||
|
02:33
tak joined
|
|||
| Coke | lazyirc, can you convert 3pm eastern today to gmt? | 02:37 | |
| time? | |||
| purl | time is 02:37:11 2008 and (did you mean "clock"?) or flowing like a river | ||
| Coke | clock? | ||
| purl | Coke: LAX: Wed 6:37pm PST / CHI: Wed 8:37pm CST / NYC: Wed 9:37pm EST / LON: Thu 2:37am GMT / BER: Thu 3:37am CET / IND: Thu 8:07am IST / TOK: Thu 11:37am JST / SYD: Thu 1:37pm EST / | ||
|
02:40
particle1 joined
|
|||
| Coke | particle: check your messages. | 02:41 | |
| Also, just added a sixperl call to the comp.lang.parrot calendar. | |||
| someone bored could put the upcoming release dates into the comp.lang.parrot calendar. | 02:51 | ||
| Infinoid is boredly converting JIT buffer allocations to mmap, first. | 02:54 | ||
|
03:02
Alias joined
|
|||
| chromatic | mmap, yay. | 03:06 | |
| Infinoid | chromatic: this should solve the JIT issue on feather3. Turns out POSIX says don't call mprotect() on heap-allocated stuff | 03:11 | |
| (according to mprotect(2), the result is undefined) | 03:12 | ||
| tewk | chromatic: do we suspend GC while running imcc? | 03:14 | |
| dalek | r33477 | jkeenan++ | trunk: | 03:15 | |
| : Number of tests in plan was short by one. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33477 | |||
| kid51 | t/pmc/exception.t: Test #30, which was TODOed, just passed for me on Linux in a smolder test: ok 30 - catch ex from C-level MULTI function # TODO broken | ||
| smolder.plusthree.com/app/public_pr...m/8428/223 | |||
| chromatic | tewk, I believe not. | 03:17 | |
|
03:24
MariachiElf joined
03:31
ChrisDavaz joined
|
|||
| Tene | Hmm. I'm in Seattle this week. Maybe I should try to show up at Particle's house in person to ask him for an update on the PDS reimbursements. | 03:35 | |
|
03:52
davidfetter joined
04:13
wycats joined
|
|||
| Infinoid | ok, I've got mmap-based JIT working on linux/x86. I've probably broken all of the other platforms. | 04:19 | |
| tewk | Infinoid, ifdef it to be the old code on non linux | 04:20 | |
| Infinoid | I also had to add a size_t argument to mem_free_executable(), because munmap wanted that. but that works just fine just calling free(), too. | 04:21 | |
|
04:21
petdance joined
04:25
galf joined
|
|||
| Infinoid | tewk: do nopaste.snit.ch/14800 and nopaste.snit.ch/14801 look safe to you? | 04:28 | |
| I've checked that t/pmc/nci.t works on a 32 bit linux box, doing a real make test now | 04:29 | ||
| urk. would probably be more meaningful if I #ifdeffed on something that was defined on linux. | 04:35 | ||
| Infinoid uses __linux__ instead | 04:36 | ||
| oh, duh. this platform doesn't have PARROT_HAS_EXEC_PROTECT defined; it's totally useless for testing this. | 04:42 | ||
| Infinoid moves to feather | |||
| though I don't see any reason why mmap-capable architectures shouldn't always use it | 04:44 | ||
| tewk | I was going to suggest #if !defined(WIN32) | 04:46 | |
| Infinoid | is JIT only functional on win32 and linux x86? | 04:47 | |
| I think this mmap stuff should cover all of the POSIX platforms reasonably | |||
| tewk | jitted nci yes | ||
|
04:47
davidfetter joined
|
|||
| Infinoid | well, any other kind of jit code probably wouldn't work on feather3 either. | 04:48 | |
|
05:27
ChrisDavaz joined
|
|||
| tewk | pmichaud: | 05:46 | |
| make spectest says FAIL but doesn't say which tests failed | |||
|
06:00
Theory joined,
tetragon joined
|
|||
| tewk | looks like t/spec/S12-class/declaration-order.t test 2 is failing. | 06:03 | |
| Infinoid | goodie. on an x86 machine with NX bit support, miniparrot crashes when ManagedStruct.destroy() tries to free() one of my mmapped allocations. | ||
| tewk | Infinoid: we use ManagedStuct to manage the lifetime of the jit code | 06:04 | |
| Infinoid | well, it would help if ManagedStruct.destroy knew which free function to call | 06:05 | |
| tewk | We might need a specialized ManagedStuct that can hold mmaped memory. | ||
| chromatic | In theory, the Pointer PMC can handle this. | ||
| Infinoid | on an x86 machine without NX bit support, platform_interface.h just defines these things to mem_sys_allocate/mem_sys_free, so I can't test it there. but I'm considering breaking that for testing purposes... testing on feather takes a while. | 06:06 | |
| tewk | I really think we want a executable arena, otherwise we could have thousands of tiny mmaped regions. | ||
| Infinoid | is mmap really the only way to do this? it's unfortunate that mprotect() requires it | 06:07 | |
| but I'd prefer not to complicate an (already too complicated) allocation scheme for this. | |||
| is there some flag bit we can set to make ManagedStruct call the right free()? | 06:09 | ||
| that's an easy hack, if it won't come back and bite us down the road. | 06:10 | ||
| chromatic | I'm not a big fan, but once we have vtable swap it's not too bad. | ||
| Infinoid | subclassing ManagedStruct may be a cleaner way. | ||
| chromatic | For a proof of concept, the flag should work. | 06:11 | |
| Infinoid | ok. that would at least let me find out how much *other* stuff is broken. | 06:12 | |
|
06:13
particle1 left
|
|||
| Infinoid | ok. I've spent more than a couple hours on this... time to open a ticket | 06:26 | |
| goodnight all | 06:37 | ||
| samlh | night | 06:38 | |
|
06:40
particle2 joined
07:13
particle joined
07:18
uniejo joined
|
|||
| jimmy | coke : i am away for a long time. | 08:14 | |
|
08:35
tomyan left
08:38
iblechbot joined
|
|||
| chromatic | use.perl.org/comments.pl?sid=41743&cid=66182 | 08:39 | |
| Artist volunteering to help. | |||
| moritz | YaY | 08:40 | |
| cotto | How kind of him to volunteer. | 08:49 | |
| chromatic | Now we just need to figure out how to use him! | 08:50 | |
| moritz votes for re-designing www.perl.org | 08:51 | ||
| or maybe a logo for rakudo? | |||
|
08:58
bacek joined
|
|||
| jimmy | or nicer parrot logo? | 09:05 | |
|
09:07
elmex joined
|
|||
| chromatic | Rakudo could use a nice logo. | 09:09 | |
|
09:19
tomyan joined
09:58
alvar joined
|
|||
| moritz | purl: p6c? | 10:16 | |
| purl | wish i knew, moritz | ||
| moritz | purl: p6l? | ||
| purl | i think p6l is often funny. | ||
| moritz | oh well, it is :-) | ||
| p6u? | 10:17 | ||
| p6l is also the perl6-language mailing list | |||
| purl | okay, moritz. | ||
|
10:36
davidfetter joined
11:10
gaz joined
11:23
Alias joined,
kj joined
11:30
Hadi joined
11:31
Hadi left
11:44
ChrisDavaz joined
|
|||
| bacek | rakudo: say "hi" | 11:46 | |
| polyglotbot | No output (you need to produce output to STDOUT) | ||
| bacek | still failing... | ||
| purl | failing is good! | ||
| bacek | purl: bad girl | ||
| purl | bacek: huh? | ||
| jimmy | where is the source code of purl | 11:47 | |
| nopaste | "bacek" at 123.243.38.218 pasted "Pmichaud, why second version differ?" (4 lines) at nopaste.snit.ch/14802 | 11:48 | |
| jimmy | + means one or more ? | 11:50 | |
| bacek | jimmy: yes | 11:51 | |
| jimmy | <Token> <Token> means two token, not more , i think | 11:52 | |
| bacek | jimmy: indeed. And I pass two tokens. | 11:53 | |
| WWW is 'ws' | |||
| jimmy | too profound, i can not understand :( | 11:56 | |
| seems ws is not used | 12:00 | ||
| bacek | jimmy: it's used. | 12:02 | |
| jimmy: look at S05. 'rule' actually uses 'ws' | |||
| jimmy | ok, let me take a look. | 12:03 | |
| i hate the cli between windows and *nix like system | 12:07 | ||
| the differece quotations | 12:08 | ||
| different | |||
|
12:21
particle joined
12:26
particle1 joined
|
|||
| jimmy | bacek: seems that ws does not work | 12:29 | |
| pmichaud | defining 'ws' as a 'rule' is very likely a problem | ||
| it's a recursive definition, of sorts, since 'rule' uses 'ws' | |||
| you probably mean 'token'. | |||
|
12:29
particle joined
|
|||
| moritz | anyway, overriding <.ws> from within a Rakudo grammar doesn't work | 12:32 | |
| pmichaud | oh, I bet I know why. | 12:33 | |
| pmichaud didn't do that code. | |||
| jimmy | pmichaud\tdidn't do that code. ( what command should i use for display as this way? ) | 12:34 | |
| pmichaud | jimmy: /me | ||
| moritz | jimmy: /me | ||
| pmichaud | as in: /me didn't do that code. | 12:35 | |
| jimmy show test ? | 12:36 | ||
| thanks, moritz and pm | |||
| pmichaud says, "You're welcome!" | |||
| afk # making family's breakfast | 12:37 | ||
|
13:12
rdice joined
13:15
apeiron joined
13:16
alvar joined
|
|||
| dalek | r33478 | pmichaud++ | trunk: | 13:17 | |
| : [rakudo]: spectest-progress.csv update: 227 files, 4703 passing, 0 failing | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33478 | |||
| pmichaud | jonathan++ # we finally broke 4700 | 13:19 | |
| I'm doing list assignment and (simple) slices today, so maybe we can get close to 4800 | 13:20 | ||
| jonathan | pmichaud: Erm, I didn't commit anything new to help that! :-_ | 13:26 | |
| But thanks for the karma anyway. ;-) | |||
| pmichaud | jonathan: you fixed the multi so that the tests passed. | ||
| jonathan | Ah. | ||
| OK, karma accepted. | |||
| purl | accepted. has neutral karma | ||
| dalek | r33479 | pmichaud++ | assign: | ||
| : [rakudo]: start with a fresh copy of trunk for assignment changes | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33479 | |||
|
13:26
gmansi joined
|
|||
| dalek | r33480 | pmichaud++ | assign: | 13:26 | |
| : [rakudo]: fresh branch for doing assignment op changes | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33480 | 13:27 | ||
| jonathan -> lunch and slovak class, back later | |||
| lathos | Doesn't that inherit from Czech? | 13:28 | |
|
13:37
particle2 joined,
particle3 joined
13:52
cognominal joined
13:56
particle joined
14:02
ChrisDavaz joined
14:06
gmansi joined
14:10
gryphon joined
|
|||
| pmichaud | jonathan: is there a way to get VTABLE_assign for ObjectRef to be the same as (or forward to) VTABLE_assign for Perl6Object ? | 14:15 | |
| cognominal | does dispatching a multimethod involves only positional arguments? | ||
| s/involves/involve/ | |||
| pmichaud | cognominal: in Perl 6, Rakudo, or Parrot? | ||
| cognominal | Perl 6 | 14:16 | |
| pmichaud | I think multimethod dispatch in Perl 6 is more than just positionals. | ||
| cognominal | platonicain Perl 6 would say Timtoady | ||
| nopaste | "tewk" at 155.97.237.62 pasted "t/spec/S12-class/declaration-order.t test failure" (44 lines) at nopaste.snit.ch/14804 | 14:29 | |
| tewk | could this be related to subid? | ||
| pmichaud | tewk: no | 14:30 | |
| that's been around for a while. | |||
| tewk | Ok I thought jonathan fix it, but that was the other failure i guess. | ||
|
14:35
dtg joined
|
|||
| dtg | (noob parrot question inc) | 14:35 | |
| having done pbc_to_exe on my .pbc and got a .o | 14:36 | ||
| gcc filename.o -L$PWD/blib/lib/ -lparrot | |||
| gives | |||
| undefined reference to `Parrot_set_config_hash' | |||
|
14:36
jimmy joined,
jhorwitz joined
|
|||
| dtg | nm blib/lib/libparrot.so | grep set_config | 14:37 | |
| 001c6320 T Parrot_set_config_hash_internal | |||
| 001c6350 t parrot_set_config_hash_interpreter | |||
| tewk | dtg: I thought pbc_to_exe produces and executable as well as a .o | ||
| pmichaud | dtg: I think that pbc_to_exe depends on the build copy of Parrot being in place | ||
| (that may not be your issue -- just checking to make sure that the Parrot build is still around.) | 14:38 | ||
| dtg | I'm in the parrot source directory - I haven't done a make install | ||
| pmichaud | a 'make clean', perhaps? | ||
| i.e., did you do a 'make clean'? That would cause pbc_to_exe to fail also. | 14:39 | ||
| dtg | nope, no make clean | ||
| pmichaud | hmmm | ||
| what os? | |||
| dtg | tewk's right though, pbc_to_exe did make me the executable too | ||
| lathos | Does "make perl6" work? (Testing if pbc_to_exe works at all) | ||
| dtg | Linux / 2.6.20 | ||
|
14:41
gmansi joined
|
|||
| dtg | "make perl6" seems to work too | 14:42 | |
| tewk | dtg: does the executable work? what are you trying to do? | ||
| dtg | the exe works. I'm just wondering where Parrot_set_config_hash is, now | ||
| pmichaud | when pbc_to_exe creates the executable, it does a lot more flags than just -lparrot | ||
| so you might need some additional flags there. | |||
| see pbc_to_exe.pir:395 | 14:45 | ||
| dtg | handy. didn't spot that there | 14:47 | |
|
14:49
hercynium joined
|
|||
| dtg | different question, should '.local bigint n' work? | 14:53 | |
| pmichaud | no. | ||
| dtg | is there any alternative right now? | ||
| pmichaud | after .local should be int|num|string|pmc | 14:54 | |
| dtg | what's a pmc? or more generally, is there anything that will hold a bignum for me? | 14:56 | |
| pmichaud | bignum or bigint? | ||
| dtg | int, sorry | 14:57 | |
| pmichaud | .local pmc n | ||
| n = new 'BigInt' | |||
| see t/pmc/bigint.t for examples | |||
| dtg | would all the normal operators work with that? | ||
| pmichaud | I think so, yes -- keeping in mind that pmcs have reference semantics | 14:58 | |
| dtg | ok, ta | ||
|
15:00
gmansi joined
15:10
gmansi joined
|
|||
| jhorwitz is curious to see the python 3.0 adoption rate | 15:14 | ||
|
15:21
apeiron joined
15:24
masak joined
|
|||
| tewk | we should implement py3.0 with all our spare time. | 15:35 | |
| dalek | r33481 | tewk++ | trunk: | ||
| : [nsentry] method and nsentry now support unicode strings, subid needs a little more work for unicode support | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33481 | |||
| jimmy | tewk++ | 15:39 | |
| jonathan | cognominal,pmichaud: multimethod dispatch in Perl 6.0.0 is just on positionals, not on named. If you want named args, you need to write a proto to shuffle 'em into the correct positions. | 15:40 | |
| pmichaud: You want to delegate to the subclass? :-S | |||
| pmichaud | jonathan: I figured it out. | ||
| jonathan | pmichaud: OK. :-) | 15:41 | |
| pmichaud | I want assign_pmc on an ObjectRef to work exactly the same as assign_pmc on Object | ||
| (no delegation to subclass of Object) | |||
| basically I inspect Perl6Object for a list of its vtable overrides, grab the assign_pmc vtable override, and then call it. | |||
|
15:42
jimmy joined
|
|||
| jimmy | sometimes i can not understand it. #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) | 15:42 | |
| tewk | |||
| jonathan | pmichaud: OK. | 15:45 | |
| cognominal | thx, jonathan. | 15:48 | |
| pmichaud | tewk: there's no need for subid to support unicode. | 15:53 | |
| only nsentry and method need it for now. | |||
| tewk: new failing test in subflags.t, r33482 (test #25 marked todo) | 16:01 | ||
| dalek | r33482 | pmichaud++ | trunk: | ||
| : [nsentry]: Add a (todo'd) failing test to subflags.t . | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33482 | |||
| particle2 | tene's in seattle?! | 16:09 | |
| particle | that's better | 16:10 | |
| masak | the test summary report for Rakudo is empty, but the result is FAIL. what gives? | ||
| particle | what version of T::H? | ||
| masak | how to check? | ||
| particle | perl -MTest::Harness -e'print $Test::Harness::VERSION' | 16:11 | |
| masak | 3.11 | 16:12 | |
| particle | i've got 2.64, so that's no help | ||
| i should really upgrade, though... | 16:13 | ||
| ok, got 3.14 now | |||
| masak | I ran `make spectest` | 16:14 | |
| I do have the usual failed assertion at t/spec/S12-class/declaration-order | |||
| particle | can you upgrade T::H and try again? | ||
| masak | sure. | ||
| tewk | parrot asserts and dies in t/spec/S12-class/declaration-order | 16:15 | |
| I see the same behavior | |||
| masak | but that still doesn't cause any test failures for me. | ||
| tewk | 3.14 here | ||
| particle | i *really* like the time reporting with T::H | ||
| masak | oh, that's new since 3.11 | 16:16 | |
| particle | HARNESS_TIMER=1 | ||
| also, of course HARNESS_OPTIONS=-j9 | |||
| er, HARNESS_OPTIONS=j9 | |||
| masak | oh? where? | ||
| particle | set the env vars | 16:17 | |
| perldoc Test::Harness | |||
| masak | thanks. | ||
| would TEST_JOBS=2 do something similar? that's what I have in my config right now. | 16:19 | ||
| particle | that may be particular to the rakudo test harness, checking... | ||
| masak | aye, so it seems. | ||
| moritz | it also works with parrot's harness | ||
| Tene | particle: yes. I left you a message here on Sunday telling you. | ||
| masak | hm, I meant the Parrot harness. that's where I use it. | 16:20 | |
| again, empty summary report, and 'Result: FAIL' | 16:21 | ||
| particle | tene: ah, flaky irc client, probably missed it | 16:25 | |
| Tene | could be | ||
| particle | lucky thing i decided to read scrollback today, i still wouldn't know | 16:26 | |
| Coke | how are you running the tests, masak? | ||
| masak | Coke: as most people run them, I guess. `make spectest`. | ||
| Coke | If you're not seeing any output, I'd run one of the test files manually and see what happens. | ||
| masak | Coke: I'm not not seeing _any_ output, it's just that the final test summary is empty. | 16:27 | |
| Coke | ^_- | ||
| masak | which (at least to me) contradicts the result FAIL. | ||
| particle | what's the errorcode? | 16:28 | |
| Coke | yah, ok, wierd. | ||
| masak | particle: how do I find out? | ||
| particle | what is it on linux... echo $ERROR? | ||
| particle forgets atm | |||
| it's echo %ERRORLEVEL% on win32 | 16:29 | ||
| Tene | $! | ||
| masak | I'm on bash 3.2.17(1) | ||
| Tene | $? | ||
| purl | rumour has it $ is last exit code. or a scalar or vi's end-of-line command or filled in by system(), ``, and wait/waitpid or , in Haskell, is function application of very low precedence (or fixity as they say) | ||
| Tene | Yeah, $? is the return code | ||
| masak | oki | 16:30 | |
| I'll check as soon as they're done... again. | |||
| echo $? | 16:35 | ||
| 0 | |||
| Tene | success! | ||
| purl | success is finding king size papers | ||
| masak | aye. | 16:36 | |
| the FAIL kind of success, apparently. | |||
| particle | so make reports success, but the harness reports failure | 16:37 | |
| now take make out of the equation by running the harness directly | |||
| masak tries that | |||
| echo $? | 16:46 | ||
| 0 | |||
| but the comman now was `perl t/harness --fudge --keep-exit-code --jobs --tests-from-file=t/spectest.data` | |||
| jonathan | seen chromatic? | ||
| purl | chromatic was last seen on #parrot 7 hours, 36 minutes and 49 seconds ago, saying: Rakudo could use a nice logo. | ||
| masak | s/an/and/ | ||
| masak gets a sudden urge to design a nice logo | 16:47 | ||
| particle | my first idea for rakudo logo: static.zooomr.com/images/4425561_704903d087.jpg | 16:56 | |
| ...a flaming onion volcano. | |||
| jhorwitz | LOL | ||
| masak | :) | ||
| people will connect emotionally to the Flaming Onion Volcano. | 16:57 | ||
| particle | creativecommons.org/weblog/entry/11045 | 17:00 | |
| Title: Non-Commercial study questionnaire - Creative Commons | |||
| pmichaud | afk, lunch | 17:02 | |
| Alias | Somehow I think the flaming onion isn't cute enough | 17:03 | |
| masak | a kitten, then? drawn japanese-style, with big eyes. | ||
| Alias has another go at building parrot/perl6 | |||
| So let me double check what Larry said | |||
| make; make perl6 | |||
| Then make install should install both? | |||
| masak | Alias: make; cd languages/perl6; make perl6 | 17:04 | |
| Alias: that's what I do, at least | |||
| Alias | hrm | ||
| Can you make install from the perl6 directory? | |||
| lathos | make perl6 works from top level. (chromatic++) | ||
| masak | Alias: I would advise against doing make install at all. | 17:05 | |
| Alias | Why? | ||
| masak | lathos: oh, cool. | ||
| Alias | I'm doing it inside the Strawberry builder, it's a fairly sterile environment | ||
| masak | Alias: hm, superstition, I guess. or maybe just because I build it a lot, often several times a day. | 17:06 | |
| Alias | I flush everything properly each time | ||
| particle | alias: make all perl6 install | ||
| actually, make world perl6 install | |||
| Alias | why world? | ||
| particle | that gets you the debugger and other utils | ||
| Alias | OK, but not all the other languages or anything? | 17:07 | |
| particle | pdb, pbc_merge, etc | ||
| no | |||
| Alias | Tools modified to build world perl6 and install (separately) | 17:13 | |
| Building now | |||
| I'm hoping to present Larry with the first working Perl 6 distribution while he's in Sydney | 17:14 | ||
| Assuming I can get it working :) | |||
| particle | that would be a lovely gift | ||
| Alias | But shhh | ||
| It's a Sekrit | |||
| Or sorts | |||
| particle | sure, just between you and me ;) | 17:15 | |
| masak | yes, I didn't even hear what you guys just said. | ||
| Alias | Oh crap :) | 17:16 | |
|
17:27
Lorn joined
17:36
Andy joined
17:37
jan joined
17:42
alvar joined
|
|||
| moritz | pmichaud, jonathan, particle (and all others who haven an opion): we have a volunteer for creating a Rakudo logo. Now the question arises: where should we discuss this? p6u? | 17:51 | |
| Tene | particle: I leave tomorrow afternoon. Are you wanting to get together tonight? | 17:52 | |
|
17:56
M8YCjC56g joined
17:59
diakopter joined
18:03
chromatic joined
18:04
diakopter joined
|
|||
| Coke | Alias: aha! | 18:05 | |
| Alias | Damn | ||
| ORRRR, I'm just saying that too distract you all | |||
|
18:05
particle joined
|
|||
| Alias | to | 18:05 | |
| Coke | now I'm distracted by your crazy australian accent. | 18:06 | |
| Coke actually built in support to allow an en_AU translation of his app recently. | |||
| sadly, 'mate' doesn't appear in the corpus. | |||
| Alias | Padre will come with English ( New Britstralian ) as the default font | ||
| American will be an optional plugin | |||
| szabgab | I thought we agreed on Hunglish as the default ? | 18:07 | |
| Alias | Well, it's certainly the initial IMPLEMENTATION | ||
| :) | |||
| szabgab | :) | ||
| Coke | I assume he's just giving us americans a hard time. | ||
| Alias | Not at all | 18:08 | |
| We're just using the dominant form of English as the default | |||
| Coke | :P | ||
| y'all're crazy. | |||
| Alias | It's also good for laughs in presentations :) | 18:09 | |
| Current default language right this second is English (London.pm) | |||
| Coke | anyway, go make yer sekrit work. =-) | ||
| Alias | It's compiling, I can only but wait | ||
| Coke | xkcd.com/303/ | 18:10 | |
| Alias | Indeed | ||
|
18:11
gmansi joined
|
|||
| Coke | ubuntu? | 18:12 | |
| purl | GROUP HUG, EVERYBODY!!!! | ||
| Alias | hmm? | ||
| me? | |||
| purl | alias is a crackhead with dreams of world domination, and unfortunately they seem to be working or daddy or obsessed with SMS or Alvin or Zune lover or not a half-ton animal or the dude who broke BinGOs's hot-rod. or using UE and I need to get him over to start using Padre,so I need to implement his favorite features :-) or a Cewebrity | ||
| particle | tene: i'm not sure i can, but what time are you free? | 18:13 | |
| Tene | particle: 6:00, probably. | 18:14 | |
| Alias | make world ok | 18:17 | |
|
18:19
particle1 joined
18:20
barney joined
18:21
apeiron joined
18:22
particle joined
|
|||
| tewk | what are some common uses for begin and end in perl5, someone asked me. | 18:25 | |
| Alias | I like to use BEGIN to pre-generated static data structures at compile time, to free up the code early and so that the debugger doesn't get stuck in it when loading the module | 18:27 | |
| tewk | also what is the perl5 technique to change syntax, often reguarded as hackish? | 18:28 | |
| Alias | END can be used to deal with custom destruction in caches and singletons and such | ||
| moritz | tewk: are you referring to source filters? | ||
| tewk | yes. thanks | ||
| moritz | tewk: they are enabled at compile time, obviously | ||
| Alias | Yep, that | ||
| purl | somebody said Yep, that was leolo under there | ||
|
18:28
diakopter joined
|
|||
| chromatic embeds Ruby in his Perl 5 programs, because you can write DSLs in Ruby but not Perl 5. | 18:29 | ||
| tewk | lol | ||
| chromatic | I suppose I should put in a tighter shirt, tear the knee of my jeans, and make my hair pointy in the middle to say that. | 18:30 | |
| Alias | hmm | ||
| davidfetter | chromatic, you'd have to act like a know-it-all, to | ||
| too* | |||
| Alias | Installing Parrot may interfere with developing Parrot on the same machine. | 18:31 | |
| I assume I can ignore that and just to reallinstall? | |||
| (Because I'm not developing Parrot) | |||
| pmichaud | "developing Parrot" can also mean "subsequent compiles" | ||
| Alias | Why would installing to a temp directory I'm going to destroy cause a problem? | ||
| pmichaud | it probably wouldn't | 18:32 | |
| Alias | oh, ok then | ||
| pmichaud | in the general case, "make install" goes to system directories, and then later attempts to build parrot end up grabbing the wrong libraries and headers. | ||
| Alias | It goes to system directories? erk | ||
| dtg | pmichaud: fwiw, everything Just Worked when I used BigInts everywhere I previously had ints, ta | 18:33 | |
| Alias | So how do I install into a directory I want | ||
| pmichaud | Alias: I don't know if that's supported yet. | ||
| Alias | How does it know where to install? | ||
| dtg | perl Configure.pl --prefix=/some/path/ | ||
| pmichaud | I think it gets that from information determined during the Configure step. | ||
| I'm not at all expert with how 'make install' does or doesn't do its thing, I only know the problems that arise from using it. | 18:34 | ||
| (in the typical case.) | |||
| Alias | dtg: OK, will try that | ||
| chromatic | "act like"? | ||
| particle | Alias: can i assume you've run make test? i didn't specify that earlier | 18:36 | |
| Alias | make test fails for a known reason | ||
| So I'm skipping it for now | |||
| particle | ah, ok | ||
| Alias | At least in 0.8.1 | ||
| I'll run make test again for the next release | |||
|
18:42
MariachiElf joined
|
|||
| particle | g.ho.st/ looks promising | 18:44 | |
| bacek | good morning | 18:45 | |
| nopaste | "bacek" at 123.243.38.218 pasted "Pmichaud, why second version differ even with 'token ws'?" (5 lines) at nopaste.snit.ch/14808 | 18:46 | |
| pmichaud | bacek: <ws> isn't working in Rakudo grammars at the moment. | 18:47 | |
| We don't yet have the proper syntax for invoking a rule in a grammar. | |||
| (it's not specced) | |||
| bacek | pmichaud: ouch... | ||
| chromatic knows Alias's Sekrit. | 18:49 | ||
| He's a time-traveling alien, sent from the future to steal our water. Or our attractive members of the appropriate gender. Or maybe their water. I can't remember which. | |||
| bacek | Although the default <.ws> subrule recognizes no comment construct, any grammar is free to override the rule. The <.ws> rule is not intended to mean the same thing everywhere. | 18:51 | |
| pmichaud: this is from S05. | |||
| pmichaud | bacek: you didn't read what I wrote. | ||
| 18:47 <pmichaud> We don't yet have the proper syntax for invoking a rule in a grammar. | |||
|
18:51
ambs joined,
ambs left
|
|||
| bacek needs morning coffee... | 18:51 | ||
| pmichaud | 'foo WWW bar' ~~ Foo::Tokens # not correct | 18:52 | |
| PGE handles custom <.ws> rules just fine -- that's how the parsers all work (and why we're able to parse Perl 6 comments in source code). | |||
| Rakudo doesn't yet handle custom <.ws> rules, because it's not able to invoke the grammar properly. | 18:53 | ||
| ...and the spec doesn't yet indicate what that syntax is. | |||
| Coke stares at subversion, and wonders if the git people aren't right. | |||
| Alias | Coke: They're more right for big projects than small | 18:54 | |
| PerlJam | Coke: they are! | ||
| Alias | Especially big public projects | ||
| Say, 1m lines or more | |||
| Coke | I'm getting a merge conflict with our work's svn project. there's nothing to conflict. it's insane. | ||
| Alias | Ah | ||
| I see the problem | |||
| You need a better merge tool | 18:55 | ||
| PerlJam | Alias: are you a time traveling alien? | ||
| Alias | That solved many of my problems | ||
| Coke | I'm using the out of the box tsvn one. | ||
| Alias | PerlJam: I can neither confirm nor deny I an a time travelling Alien | ||
| bacek | pmichaud: ermm... I don't quite understand "because it's not able to invoke the grammar properly". Why? | ||
| pmichaud | bacek: what's the syntax? | ||
| purl | the syntax is probably a nightmare | ||
| pmichaud | what's the correct syntax for invoking a rule from a grammar? | 18:56 | |
| bacek | pmichaud: you mean 'invoke single rule' from external world? | 18:57 | |
| jonathan | pmichaud: To clarify - you mean invoking it from within Perl, not just another rule within the grammar, right? | ||
| bacek | bacek@icering:~/src/pugs$ perl6 -e 'grammar Foo { rule Token { \\w+ }; rule TOP { <Token>+ }; }; say "foo bar" ~~ Foo;' | ||
| foo bar | |||
| bacek@icering:~/src/pugs$ perl6 -e 'grammar Foo { rule Token { \\w+ }; token ws { \\s+ }; rule TOP { <Token>+ }; }; say "foo bar" ~~ Foo;' | |||
| pmichaud | jonathan: yes | ||
| bacek | second statement produces empty result | ||
| pmichaud | bacek: what rakudo implements now is incorrect. | ||
| Alias | Josh McAdams is the Perl Foundation PR person? | ||
| Really? | 18:58 | ||
| purl | Really is it bad? | ||
| pmichaud | bacek: the synopses don't indicate how to invoke a rule from within a grammar. | ||
| Coke | Alias: sfaik. | ||
| PerlJam | pm: you mean unspecced, don't you? It may be correct as soon as Larry specs that as the way to do it :) | ||
| (unless you can think of a reason why that won't work in the general case) | |||
| pmichaud | pj: Larry has explicitly said that ~~ Foo::rule and ~~ Foo will *not* be the way to do it. | ||
| PerlJam | oh. | 18:59 | |
| bacek stares at 'MAINTAINER' in S05. | |||
| Alias | Man the Perl Foundation website has some big holes | ||
| pmichaud | the reason why is that $x ~~ Foo means "$x does Foo" | ||
| Alias | Archived News is missing the year 2007 | ||
| and the link to current year goes to nowhere | |||
| and the last press release was in 2004 | |||
| pmichaud | and Foo::rule is a listop, thus $x ~~ Foo::rule would mean "invoke Foo:rule with no arguments" and smart match $x against the result | ||
| the closest we could get at this point is $x ~~ &Foo::rule .... but the invocant is all wrong for grammar inheritance if we do that. | 19:00 | ||
| dalek | r33483 | bernhard++ | trunk: | 19:01 | |
| : [codingstd] Fix some glitches: c_parens, tabs and trailing_space | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33483 | |||
| PerlJam | $x ~~ / <Foo:rule> / # ? | 19:02 | |
| er, :: | |||
| pmichaud | that would actually work. It probably works in Rakudo today. | ||
| and then the <.ws> rule would likely work also. | |||
| Coke | Alias: ah. it was combination of changing svn:eol-style and then editing the fiile. the merge freaked out. | 19:03 | |
| if I tell the merge to ignore line endings, it works. | |||
| Alias | ah | ||
| bacek | pmichaud: it doesn't... | ||
| chromatic wants to meet aliens, espers, and time travelers. | 19:04 | ||
| Coke introduces chromatic to spider robinson. | |||
| bacek waves from future to chromatic | |||
| pmichaud | bacek: nopaste? | ||
| purl | somebody said nopaste was at nopaste.snit.ch/ (ask TonyC for new channels) or rafb.net/paste or poundperl.pastebin.com/ 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) | ||
| chromatic was thinking Haruhi Suzumiya | |||
| bacek | bacek@icering:~/src/xquery$ perl6 -e 'grammar Foo { rule Token { \\w+ }; token ws { \\s+ }; rule TOP { <Token>+ }; }; say "foo" ~~ / <Foo::Token> /; say $/' | ||
| two empty lines in output | |||
| pmichaud | your ws rule requires whitespace | 19:05 | |
| I bet " foo " matches. | |||
| bacek | but I match Foo::Token rule. | ||
| pmichaud | which has two calls to <.ws> in it | 19:06 | |
| both of those require at least one space. | |||
| bacek | pmichaud: ah! | ||
| pmichaud++ # explaining thing to dumb idiots... | 19:07 | ||
| Coke | pmichaud++ # usually that idiot is me. | ||
| PerlJam | pm: is <.ws> as smart as S05 requires? | 19:08 | |
| (i.e. it knows when to do \\s* and when to do \\s+) | 19:09 | ||
| pmichaud | PerlJam: the default <ws> rule is, yes. | ||
| PerlJam | okay. | ||
| pmichaud | but if you override <ws>, then it uses whatever you specify. | ||
| PCT provides a <ww> rule that matches between two word characters | 19:10 | ||
| so grammars (but not rakudo grammars) can generally do: token ws { <!ww> \\s* } | 19:11 | ||
| which is a lot easier and faster than trying to do it with <before ...> and <after ...> | 19:12 | ||
| dalek | r33484 | bernhard++ | trunk: | 19:13 | |
| : [codingstd] add a svn-id line | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33484 | |||
| cotto | kj, ping | 19:27 | |
| dalek | r33485 | bernhard++ | trunk: | 19:30 | |
| : [Pipp] Simplify actions by using the nifty 'loadinit' node | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33485 | |||
| Alias | ok, working through new build | ||
| Into make perl6 | |||
| PerlJam | Alias: so ... what was your sekrit? you're bundling perl6 with strawberry now? ;) | 19:31 | |
| Alias | Not bunlding | ||
| I continue to maintain the integrity of the product line | |||
| But it should be something like a seperate "Vanilla Perl 6 Beta" :) | |||
| cotto | msg kj Is there any reason that squaak avoids using a Past::Op with pasttype of 'for' for for loops? | 19:32 | |
| purl | Message for kj stored. | ||
| Alias | ok, running make reallyinstall | ||
| And hoping for the best | 19:33 | ||
| davidfetter | anybody at OSDC? | ||
| Alias | Seems to be gringing away, which I take as good news | ||
| davidfetter: Does running it count? | |||
| davidfetter | (apart from timtoady and yours truly) | ||
| heh | |||
| Alias | hrm | ||
| make reallyinstall ok! | |||
| davidfetter looks for parrot talks | |||
| dalek | r33486 | bernhard++ | trunk: | 19:34 | |
| : [docs] added news about Pipp | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33486 | |||
| Alias | davidfetter: Nothing apart from Larry's methinks | ||
| woohoo! | |||
| PerlJam | Alias: installing parrot hasn't ever been a problem unless and until you want to also do development I believe. | ||
| Alias | The image directory now has image/c, image/perl and image/parrot installed | ||
| And parrot/bin has perl6.exe in it | 19:35 | ||
| So NOW, I guess I just need to set the Windows PATH settings to only add the parrot directory? | |||
| Will perl6.exe have any dependencies on dlls etc that are in the Perl distro? | 19:36 | ||
| Or just the C stuff? | |||
| chromatic | It should only need libparrot.dll | ||
| Alias | It statically builds or something?" | 19:37 | |
| chromatic | By "etc" do you mean PBCs? | ||
| Alias | I mean I have no idea what I'm talking about | ||
| But I'm thinking things like libgmp.dll... | |||
| Or other low level libraries | 19:38 | ||
| ld.exe... | |||
| I find I sometimes I ask questions and people assume I know the obvious stuff already | |||
| chromatic | Alias, *this is a football*. | 19:39 | |
| Alias | So that's no? | ||
| chromatic | libgmp.dll would be useful. | ||
|
19:39
particle1 joined
|
|||
| Alias | Oddly, I can't find that in the build for some reason | 19:39 | |
| chromatic | Maybe libreadline.dll. | ||
| Alias | But I'll get back to you :) | 19:40 | |
| hrm | |||
| chromatic | We don't include code. It's a configuration-time dependency. | ||
| Alias | Got a quick P6 hello world I can cut/paste somewhere? | 19:41 | |
| I gotta get moving to the conference shortly | |||
| chromatic | 'say "Hello, world!"' | ||
| bacek | "Hello, world!".say | 19:42 | |
| Alias | So perl6.exe -e 'say "Hello... etc | ||
| moritz | ./perl6 -e 'say "Hello, World"' | ||
| Alias | Single quotes fail | 19:43 | |
| chromatic | Dear Microsoft, Please buy a real keyboard. Love, Perl 6. | ||
| moritz | on windows probably, yes | ||
| Alias | But perl6.exe -e "say \\"Hello, world!\\n\\"" works fine | ||
| moritz | Alias: no need for the \\n, say() adds that | ||
| chromatic | You don't need \\n with say. That's why say exists. | 19:44 | |
| Alias | ah, oops | ||
| chromatic | perl6.exe -e "say 'Hello, world!'" | ||
| Alias | Alt====woot | ||
| er | |||
| whatever :) | |||
| OK, now I need to finish the last packaging crap, and I should have a working distro | |||
| chromatic | Don't try to be hip. We know you're just as nerdy as the rest of us, even if you do have that nifty accent. | ||
| Coke | I am so hip I have difficulty seeing over my pelvis. | 19:45 | |
| Alias | And it appears that Hello World works even without anything in the PATH at all | ||
| For future reference | |||
| So looks like for my first attempt, I'll just blow away the Strawberry settings and add only the parrot/bin to PATH | 19:46 | ||
| Now I just need to get this both building the final version, and find a way to get it burned onto a CD in the next 6 hours | 19:48 | ||
| Which should be doable, hopefully | |||
| My plan ATM, private alpha for Larry as symbolic gift, plus private release of alpha to you guys | 19:49 | ||
| pmichaud | outstanding. | ||
| Alias | Then public release Christmas | ||
| For maximum symbolicness :) | |||
| pmichaud | I expect to be doing official numbered Rakudo releases in Feb, fwiw. | ||
| Alias | ya | 19:50 | |
| I plan to just keep my current month pattern I use for Perl 5 | |||
| pmichaud | that should work. Do you have a specific date when you do Perl 5 releases? | ||
| Alias | Vanilla Perl 6 (or Rakudo) Beta January 2009 | ||
| Perl 5 is once a season | |||
| pmichaud | okay | ||
| Alias | Jan/Apr/Jul/Oct, second Monday of the month | 19:51 | |
| pmichaud | rakudo will be doing monthly releases, seasonal Vanilla Rakudo should work fine with that | ||
| Alias | But there's no real reason I can't (or you can't) just build on the day of the parrot release | ||
| pmichaud | I expect to be doing rakudo releases shortly (~ 3-7 days) after each parrot release. | ||
| Alias | It's all going to be in Perl::Dist::Parrot | ||
| Coke | alias++ | ||
| pmichaud | well, rakudo is going to be moving out of the parrot repo | ||
| Alias | You can just install that and then run "perldist Parrot" and it should grind for two hours and then spit out a distro | ||
| pmichaud: Well, whatever it is... just have the dist class | 19:52 | ||
| hack | |||
| pmichaud | sure. | ||
| Alias | It's all pretty sub-classable these days | ||
| moritz | pmichaud: and then 'make spectest' will check out the appropriate version of t/spec/ from pugs to have real regression tests? | ||
| Alias | The Perl 6 dist builder is under 200 lines of code | ||
| pmichaud | moritz: probably. | ||
| purl | Really? Probably? Are you Certain it's not certain? Are you sure it's unsure? I think you need to look harder. | ||
| Alias | (and falling) | ||
| Coke | probability factor of 2 to the 400 to 1 against and falling. | 19:53 | |
| Alias | Dammit, gotta leave shortly | 19:57 | |
| Alias madly installs deps onto laptop and sync svn with desktop machine | |||
| Hopefully this build still works on my laptop | |||
| Last time I had some NTFS vs FAT issues | 19:58 | ||
|
19:59
gmansi joined
|
|||
| dalek | r33487 | pmichaud++ | trunk: | 20:04 | |
| : [rakudo]: Add inline PIR to Perl 6 subroutines. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33487 | |||
| jonathan | pmichaud: One step closer to prelude. ;-) | 20:06 | |
| pmichaud | jonathan: yes. As I'm working through the assignment/slicing stuff I'm thinking I might want to start writing it in Perl 6. | 20:07 | |
| but there are still a number of issues to work out there, alas. | |||
| bacek | pmichaud: perl6 -e "token ws { 'blah' }; say 'blah' ~~ / <ws> /"; produces empty result... | 20:12 | |
| pmichaud | bacek: it's probably still using the default <ws> rule instead of the local one. We don't have namespaces and lexicals completely worked out there yet. | 20:13 | |
| It's also not clear that a "token ws" declared in the local scope would override the <ws> rule that is built-in to the default Grammar. | |||
| bacek | pmichaud: :(... | ||
| <bacek> Although the default <.ws> subrule recognizes no comment construct, any grammar is free to override the rule. The <.ws> rule is not intended to mean the same thing everywhere. | 20:14 | ||
| looks like it should override default <ws> | |||
| dalek | r33488 | moritz++ | trunk: | 20:15 | |
| : [cage] trailing whitespace | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33488 | |||
| moritz | wtf is compilers/ncigen/compreg.pir? | 20:16 | |
|
20:16
nopaste joined
|
|||
| dalek | r33489 | moritz++ | trunk: | 20:18 | |
| : [cage] copyright statement for sqlite_interface_generator.pl | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33489 | |||
| pmichaud | the -e example you just gave doesn't have "token ws" in a grammar. | ||
| The synopsis says "any grammar is free to override the rule". It doesn't say it's overridable outside of a grammar. | 20:19 | ||
| (it doesn't say it isn't, either... which is why I said it's "not clear") | |||
| bacek | pmichaud: sigh... | ||
| pmichaud | use.perl.org/~pmichaud/journal/38022 # inline PIR in Perl 6 | 20:20 | |
| PerlJam | pm: so, you can't use $S10 ? | 20:22 | |
| pmichaud | you can, but you run the risk that PCT will have also used $S10 for something else. | ||
| PCT reserves registers 10 and higher for its own use | |||
| PerlJam | gotcha | ||
| given that we have a really large number of registers now, couldn't PCT start the set of reserved registers as 100 (for instance)? | 20:26 | ||
| pmichaud | sure, but how many people will need more than ten registers? | ||
| (at the same time) | |||
| even PGE only needs nine. | |||
| if a piece of code needs that many registers, they likely should be using symbolic registers anyway. | 20:27 | ||
| PerlJam | okay. I was just thinking of some of the crazy stuff that Dan used to do with code generation. | ||
| pmichaud | generate PIR to be evaled in a Perl 6 program? Scary. | ||
| Better would be to eval it directly using the PIR compiler anyway :-) | 20:28 | ||
| (updated article to indicate reason for 0..9, tnx) PerlJam++ | |||
| Coke | ... C | 20:34 | |
| Coke gets a big unsolicited patch to APL. | |||
| (YAY) | |||
| (really. yay. this is awesome.) | |||
|
20:37
tak joined
|
|||
| Coke | holy crap do I need to find some place to test this out. | 20:38 | |
| Coke does a little APL dance of joy. | |||
| jonathan | pmichaud: Don't forget rakudo.org too ;-) | 20:39 | |
| pmichaud | rakudo.org is a bit of a pain to update (but I just did that too) | 20:40 | |
| now I have to get ready for my presentation tonight (that wasn't planned as of 24 hours ago) | |||
| Alias | righto | ||
| Coke | cla? | ||
| purl | cla is, like, Contributor License Agreement or www.perlfoundation.org/contributor_..._agreement or www.parrot.org/foundation/legal | ||
| Alias | Laptop prepped for generating final Vanilla Perl 6 package at OSDC, time to run | ||
| Later all | 20:41 | ||
| pmichaud | Alias++ # vanilla Perl 6 | ||
| moritz | Coke: most developers like me have only sent a cla to TPF, not to parrot foundation - is that a problem, in the long run? | ||
| pmichaud | I think that we need new cla's for Parrot eventually. OTOH, I think they have it set up that they no longer _have_ to have paper copies. | 20:42 | |
| Coke | either we'll hunt you down and force you to resign, or work out some clever legal avoidance. | ||
| pmichaud | I know we all signed new CLAs at PDS. | ||
| Coke | er, re-sign, not resign. | ||
| pmichaud: wow, that's TWO cla's I've not signed now. =-) | |||
| pmichaud wonders if he should've resigned instead of re-signed. | |||
| Tene | Coke: but I already re-signed. Can I still opt-in to the hunt-me-down plan? | ||
| Coke | tene: only you, though. | 20:43 | |
| Tene | sweet | ||
| Coke loads his hunting gear. | |||
| Tene prepares the island with death traps. | |||
| dalek | r33490 | kjs++ | trunk: | ||
| : [pirc] Start generating bytecode. Note that these are preliminary, hacky steps. | |||
| : + parser now counts number of parameters; only generate get_params_pc if #params > 0 | |||
| : + This works: .sub main :main \\n print 42 \\n .end\\n --> ../../parrot a.pbc --> 42 | |||
| : + update tests. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33490 | |||
| pmichaud | jonathan: any ideas for how we might get "class Object is also { ... }" to put its methods into the correct "Perl6Object" namespace? | 20:45 | |
| I'm guessing we'll have to hackish-look-things-up or work something out through the protoobject. | |||
| Tene | pmichaud: is this about object->perl6object specifically? | 20:46 | |
| Coke arnolds, "if it bleeds, we can kill it." | |||
| pmichaud | Tene: all of the rakudo mis-named classes. | ||
| Perl6Object, Perl6Array, Perl6Hash, Perl6Complex | |||
| Tene | pmichaud: these will go away after we get the type registry fixed or whatever, right? | ||
| pmichaud | Tene: sure, they'll go away then. I don't know that will happen soon, though. | ||
| jonathan | pmichaud: Can't think of anything easy right off... | ||
| Tene | Then I'd just make a hash and check at compile time | ||
| jonathan | As in, easy and not an epic hack. | ||
| pmichaud | hash and check at compile time might work good enough. | 20:47 | |
| Tene | that's what cardinal does. | ||
|
20:50
ruoso joined
|
|||
| Tene | pmichaud: anything you want me to work on today? | 20:53 | |
| pmichaud | Tene: I'm a bit distracted today because of the last-minute presentation I'm now giving | ||
| Tene nods. | 20:54 | ||
| I work a lot better when someone asks me for something specific, and there's a lot that needs to get done for this release. | |||
| pmichaud | yeah | ||
| Tene | I won't harass you for details, don't worry. | ||
| pmichaud | most of the specific stuff I have right now I prefer to wait on a couple of other cleanups first | ||
| Tene | And cleanups require explanation. | 20:55 | |
| pmichaud | right. I really want to get assignment fixed "once and for all" | ||
| (including slices). But that's a messy cleanup at the moment. | |||
| Tene | Rather. I'm likely not up to it right now. | 20:56 | |
| pmichaud | I'd be interested to see if we can get the try { ... } semantics working properly. I know there are some failing tests there. | ||
| Tene | Any objections to me prototyping the pct loops refactor? Or should I do PDD review instead? | ||
| Try. Okay. I can do that. | |||
| pmichaud | you can prototype loop refactor if you want, but what I'm planning at the moment is a fairly major restructuring of block handling in PCT (internally) | ||
| Tene | Ah. I'll leave that to you, then. | 20:57 | |
| pmichaud | I suspect the 'try' issues were due to improper lexical handling, which should now be fixed. | 20:58 | |
| Also, Failure needs to move from being a class to being a role. | |||
| but I'm not sure what is involved there, since it needs to override some vtable functions to work. | 20:59 | ||
|
21:05
bacek joined
|
|||
| tewk | moritz: compreg.pir is used by sqlite_interface_generator.pl to get the NCIGEN compiler, is there a better perl6 way of doing that? | 21:06 | |
| I saw inline pir just hit, I'll have to try that. | |||
| moritz | tewk: uhm, that file doesn't look like PIR to me | 21:07 | |
| pmichaud | I'm a little frightened at what I've just unleashed. :-) | ||
| Tene | :) | ||
|
21:07
apeiron joined
|
|||
| bacek | pmichaud: what the difference between PGE::Grammar and PCT::Grammar? | 21:07 | |
| chromatic | Two letters. | ||
| pmichaud | PGE::Grammar is the base class for all PGE grammars | 21:08 | |
| PCT::Grammar is PGE::Grammar with some extra built-in rules thrown in to make it more useful for compiler writers | |||
| Tene | pmichaud: you were referring to return() inside try{}-blocks, the tests for which are marked as TODO lexicals bug, right? | 21:09 | |
| Or were you wanting CATCH blocks? | |||
| pmichaud | return() inside try blocks, or just getting the general $! handling correct | ||
| I wasn't referring to CATCH blocks. | |||
| bacek | pmichaud: thanks. | ||
| bacek still don't understand why <ws> works as expected in Rakudo implementation, but not in Grammar... | 21:10 | ||
| pmichaud | bacek: do you really want the gory details? Because they are gory. | 21:11 | |
| bacek | pmichaud: heh :) | ||
| I'm still believe that is possible to implement XQuery-on-Perl6 | |||
| tewk | moritz: opps | 21:12 | |
| pmichaud | tewk: did you catch my note about the failing subid test I added to subflags.t ? | ||
| cognominal | pmichaud++ # too bad you are a singleton | ||
| ... for the PIR in Perl 6 | 21:13 | ||
| tewk | pmichaud: yeah I saw it, thats going to require separating the 'foo'() logic from the .const logic. | ||
| it shouldn't be too bad. | |||
| pmichaud | okay. I don't know if that blocks me from the other PCT changes I want to make. | ||
| probably doesn't. But I was surprised when it didn't work earlier. | |||
| tewk | your talking about the fact that subids fall through to find_name_not_null right. | 21:14 | |
| Tene | pmichaud: try {} should catch *all* exceptions? Even return()? Or no? | 21:16 | |
| tewk | wait I read the test wrong looking again. | ||
| Tene | pmichaud: if try {} shouldn't catch return exceptions, can you tell me what exceptions it should catch? | 21:18 | |
| PerlJam | Tene: non-control exceptions I would imagine | 21:20 | |
| "real" exceptions | |||
| bacek | Tene: !~~ CONTROL_EXCEPTION | ||
| Tene | So we need to be able to give EHs a list of exception types to NOT catch. | 21:21 | |
| PerlJam | next, last, redo, goto, return, take (assuming that generates an exception), yield (assuming that exists), etc. should not be caught by try{} | 21:22 | |
| Tene | Or we need to redesign exceptions and EHs to use a class hierarchy instead of a flat list of types. | ||
| I'll just do the former for now. | 21:23 | ||
| tewk | pmichaud: i would expect tst 25 to work, I'll fix it tonight. | ||
| pmichaud | we either give EHs a list of exception types not to catch, *or* we simply have a handler that catches everything and rethrows things it shouldn't have caught. | 21:28 | |
| I would go with the latter for now. | |||
| moritz | pmichaud: S04 seems to imply that try { } by default catches everything, there's no exception for control exceptions | 21:29 | |
| pmichaud | moritz: that wouldn't surprise me. | ||
| I haven't looked closely, which is why I'm having Tene take a look :-P | |||
| Coke | pmichaud: rethrowing doesn't work like you'd expect. | 21:30 | |
| Tene | pmichaud: it's easier to add a "don't catch these" list. | ||
| Coke | (presuming you're me.) | ||
| Tene | That also avoids the "rethrow doesn't preserve the backtrace" problem. | ||
| Also, I've already done it. | |||
| Coke | so it's probably a decent first cut, but what tene said. | ||
| dalek | r33491 | tewk++ | trunk: | 21:31 | |
| : [ncigen] fix wrong file contents | |||
| pmichaud | fair enough. | ||
| dalek | diff: www.parrotvm.org/svn/parrot/revision?rev=33491 | ||
| Tene | I'll add it to PCT's try after this lecture. | ||
| I've tested it and it works. | |||
| bbl; lecture. | |||
| pmichaud | ...PCT's try? | ||
| I would think that PCT's try would catch everything. | |||
| Tene | erm, you know what I mean. | ||
| Make it work with rakudo. | |||
| pmichaud | ah. | ||
| okay. | |||
| Tene | I'm sketching here. | ||
| pmichaud | but double-check what moritz mentioned -- perhaps it should catch everything. | ||
| since we expect it to catch 'die', I'd think it would also catch 'return' | 21:32 | ||
| (being that die is even more forceful than return) | |||
| moritz | in p5 eval { ... } also catches return() | ||
| pmichaud | so yes, catch everything :-) | 21:33 | |
| moritz | ah, but things get more complicated in a the presence of CATCH blocks | ||
| "A CATCH block handles only "bad" exceptions, and lets control exceptions pass unhindered." | |||
| PerlJam | interesting. | ||
| pmichaud | sure, but I think 'try' traps them all. | ||
| we only pass the control exceptions to the CATCH block. | |||
| er, non-control exceptions | 21:34 | ||
| moritz | and in the presence of CATCH blocks, try {} only catches those exceptions for which there are handlers | ||
| pmichaud | ah | ||
| definitely becomes more interesting then. | |||
| moritz | (but I think there should be a way of handling control exceptions too, right?) | 21:35 | |
| pmichaud | I'm not looking for a complete implementation (unless it's convenient) -- I just wanted to resolve the tickets that note that $! isn't working. | ||
| CONTROL { ... } # handles control exceptions | |||
| moritz | ah | ||
| moritz didn't get this far yet | |||
|
21:40
apeiron joined
|
|||
| dalek | r33492 | tewk++ | trunk: | 21:42 | |
| : [ncigen] uses inline pir in perl6 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33492 | |||
| PerlJam | you know ... parrot may make all of this "perl is dying" stuff come to fruition. Once @other_languages have access to CPAN, perl will have lost a small advantage :) | 21:56 | |
| pmichaud | nah, because everyone will be writing their languages in Perl. :-P | 21:57 | |
| cotto | either that or everyone will use libraries converted from their native languages via --target=otherlang | 21:59 | |
| tewk | pmichaud: I might have asked this before but, can I iterate over a PCT::Node from perl6? | ||
|
22:00
Whiteknight joined
|
|||
| tewk | a PCT::Node isa Hash | 22:01 | |
| Coke | PerlJam: good luck getting other languages to run CPAN. =-) | 22:02 | |
| Coke would be vaguely interested in rewriting bits of tcl in NQP or perl6. | 22:03 | ||
| GeJ | Good morning everyone | 22:05 | |
| Whiteknight | good morning GeJ | 22:07 | |
| Coke | -> | ||
| PerlJam | Coke: I imagine a future where "gem install foo" will ask which foo would you like to install? 1) ruby foo 2) perl foo 3) python foo 4) other foo | ||
| cpan foo will, of course, install perl foo because it's the best :-) | 22:08 | ||
| pmichaud | tewk: for @($node) { ... } | 22:09 | |
| tewk | ahh, I'll try that | 22:10 | |
| pmichaud | or $node.list() | ||
| tewk | $_ still, sorry my perl6 is bad. | ||
| cotto | I wonder what perl -> ruby -> php - | ||
| > perl would look like | |||
| moritz | ugly. | 22:11 | |
| pmichaud | disappearing for a while so I can finish my presentation. bbl. | 22:22 | |
|
22:27
mfredrickson joined
22:30
Limbic_Region joined
|
|||
| cognominal | "Python 3.0 is out now. The latest version makes some major changes to the popular programming language, and it's incompatible with version 2.x releases." sayz theregister | 22:33 | |
| qui ne peut résister à une blague ouroborisique : regmedia.co.uk/2008/12/04/pythonouroboros.jpg | 22:34 | ||
|
22:34
Whiteknight joined
|
|||
| cognominal | oops | 22:34 | |
| wrong channel | |||
|
22:35
davidfetter joined
22:41
TiMBuS joined
|
|||
| jonathan | MANIFEST FAIL (compilers/ncigen/compreg.pir) | 22:46 | |
| tewk | I hate manifest | ||
| Tene | pmichaud: any suggestions on how to pass the exception types we want to catch / avoid catching to PCT? | 22:47 | |
| Limbic_Region | chromatic ping | ||
| Tene | pmichaud: right now the first child of a PAST::Op with a pasttype of 'try' is the code to be surrounded by the exception handler, and the second child is the code ot process the handler | ||
| jonathan | Tene: Me too. | ||
| s/Tene/tewk/ | |||
| Tene | Ah. | 22:48 | |
| tewk | fixing | ||
| dalek | r33493 | tewk++ | trunk: | 22:49 | |
| : [ncigen] MANIFEST | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33493 | |||
| Tene | ah, scrollback | ||
| Tene reads | |||
|
22:50
bacek_ joined
|
|||
| Limbic_Region | chromatic disregard ping - apparently TimToady has decided not to publish the 2008 State Of The Onion - too bad | 22:51 | |
| Tene | :( | 22:52 | |
| chromatic | It's pretty technical. | 22:53 | |
| Two results in the latest Coverity scan! | |||
| Tene | pmichaud: $! is getting set. try { return 42; say 'omglol' }; ; say $!.WHAT(); | 22:54 | |
| rakudo: try { return 42; say 'omglol' }; ; say $!.WHAT(); | |||
| chromatic | Hm, one of them came back. | ||
| polyglotbot | No output (you need to produce output to STDOUT) | ||
| particle1 | chromatic++ # it'll be nice to get to tier 2 | ||
| Limbic_Region | chromatic - on another note, I did email you reference your use.perl recent journal entry | ||
| chromatic | I saw, thank you. | 22:55 | |
| Limbic_Region | 4523 | 22:56 | |
| *+ | |||
| Alyssa says hello | |||
| Whiteknight | I have a friend named alyssa | 22:59 | |
| and she never says hello | |||
| Tene | not much of a friend, then | 23:00 | |
| PerlJam | chromatic++ for publishing stuff on perl.com, but that's more speaking to the echo chamber isn't it? | ||
| Limbic_Region | Whiteknight - my Alyssa turned 1 on Tuesday | 23:02 | |
| chromatic | Definitely it is. | ||
| Whiteknight | turned 1? Congratulations! | 23:03 | |
| moritz | Alyssa++, so to say ;-) | ||
| Whiteknight | Or Alyssa = 1; | ||
| chromatic | Hopefully she doesn't know Python, because that's two unary plus operators. | ||
| Whiteknight | Python3000 came out today, dont know if anybody saw the headlines | 23:04 | |
| now we just need them to port it to parrot, and we all win | |||
| Limbic_Region | she is more of a line noise kinda girl right now - watch out for the next dancing camel obfu | ||
| dalek | r33494 | tene++ | trunk: | 23:28 | |
| : [exception.pmc] | |||
| : * Initial draft of get_bool vtable | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33494 | |||
| cotto | That certainly follows KISS. | 23:34 | |
|
23:36
nopaste joined
|
|||
| davidfetter waves to nopaste | 23:38 | ||
|
23:40
Hadi joined
|
|||
| Tene | cotto: unless someone can think of a use case for a "false exception"... | 23:41 | |
| cotto | Is there any use for an exception evaluating to true? | 23:43 | |
| dalek | r33495 | jonathan++ | trunk: | 23:58 | |
| : [rakudo] When we see a proto routine, mark it :multi() so it ends up in the Perl6MultiSub and set a proto property on it. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=33495 | |||