Parrot 0.6.2 "Reverse Sublimation" Released | parrotcode.org/ | 18/672 new/open tix | logged in irclog.perlgeek.de/parrot/today
Set by moderator on 24 May 2008.
tetragon japhb: Triangle still spins with the newer patch 00:04
00:05 cognominal joined
japhb tetragon: good! 00:13
I have at least one more spin to do for Win32, but again I hope that won't negatively affect any other platform. 00:14
meanwhile, I'm ruminating on some examples that make broader use of the API, now that I can.
dalek r27897 | particle++ | trunk: 00:16
: [rakudo] [perl #54988] [PATCH] enhance t/harness (again)
: ~ adds ability call fudge on a per-file basis via --configfudge option
: ~ fudging (the default) can be disabled with an eol comment matching /\\s+#\\s*pure$/ in t/*.data files
: ~ enables this behavior for the 'localtest' make target
: Courtesy Moritz Lenz (moritz++) with minor modifications
diff: www.parrotvm.org/svn/parrot/revision?rev=27897
particle is amazed at how many spectests run without fudge... committing list soon 00:26
00:31 Eevee joined
bacek_ morning... 00:36
00:39 kid51 joined
dalek r27898 | particle++ | trunk: 00:42
: [rakudo] enable per-file fudging in spectest_regression make target
: ~ thanks to moritz++ for the per-file fudging, we can disable fudge for spectests that are passing without it
: ~ of 43 passing test files (774 subtests) in spectest_regression, 23 files (225 subtests) pass without fudging!
diff: www.parrotvm.org/svn/parrot/revision?rev=27898
pmichaud 23? wow.
particle yeah. wow.
purl yeah. wow is the only way to describe it.
bacek_ pmichaud: it all my fault... But you pick wrong version of 'map'... 00:45
pmichaud feel free to send me an updated patch
bacek_ is there any easy way to delete attachement from ticket?
pmichaud you can send me the patch directly -- no need to make a new ticket 00:46
00:47 gmansi joined
nopaste "bacek_" at 211.29.157.151 pasted "List.map for pmichaud" (48 lines) at nopaste.snit.ch/13097 00:50
bacek_ pmichaud: oops..
Wrong merge
no.. merge is correct, but I think I should use self.'iterator'() now 00:52
pmichaud oh, I can fix that.
bacek_ pmichaud: diff on nopaste :) 00:53
this version works with any number of args. 00:54
pmichaud if elem goto push_elem 00:55
looks wrong.
bacek_ pmichaud: this is inspired by S29-list/map_empty_list.t 00:56
pmichaud yes, but suppose that elem is Bool::False, '', or 0
converting those to undef seems wrong.
bacek_ pmichaud: how I should check result in this case? 00:57
pmichaud I don't think you have to check the result at all.
If the elem is in the list, it should be sent as an argument.
bacek_ pmichaud: just a sec. I''l try 00:58
pmichaud in none of the cases in map_empty_list.t is @array empty (afaict) 00:59
dalek r27899 | jkeenan++ | searchdocs: 01:01
: Per suggestion by chromatic, switch to qr// from /o in one regex, thereby
: enabling consolidation of tests into single file.
diff: www.parrotvm.org/svn/parrot/revision?rev=27899
bacek_ pmichaud: I was wrong... 01:02
dalek r27900 | jkeenan++ | searchdocs:
: Simplify name of test file; regenerate MANIFEST.
diff: www.parrotvm.org/svn/parrot/revision?rev=27900
bacek_ It for '(1..2).map({$^a+$^b+$^c)'
but it works without this 'if elem..'
pmichaud correct, because in that case the "unless iter ..." will have taken care of it. 01:03
I wonder if we can actually use 'splice' here :-)
probably not worth trying.
at least, not yet.
bacek_ pmichaud: some times I'm too paranoid :)
pmichaud although, implementing push, pop, etc. in terms of splice has some definite advantages. 01:04
bacek_ pmichaud: which?
purl which is, like, more recommended IO::File or FileHandle
pmichaud splice of multiple elements can be much faster than multiple pushes of a single element
bacek_ pmichaud: ok. got the point. 01:05
bacek_ voting for implementation of 'colon syntax' in rakudo :) 01:07
pmichaud hmmm?
bacek_ it will make more tests passing
pmichaud don't we have colon syntax already?
bacek_ pmichaud: 'adverbial closure'
pmichaud oh, adverbial closures
that actually shouldn't be too difficult to create. 01:08
bacek_ I tried to grok STD.pm... Failed/
I'm failed.
STD.pm?
purl STD.pm is svn.pugscode.org/pugs/src/perl6/STD.pm
dalek r27901 | jkeenan++ | searchdocs: 01:09
: Eliminate commented-out code. Specify exact number of tests in plan.
diff: www.parrotvm.org/svn/parrot/revision?rev=27901
bacek_ 'token adverbs' referenced only in EXPR.
As '$here.expect_term()'. 01:10
nopaste "pmichaud" at 76.183.97.54 pasted "Revised 'map' for List (for bacek)" (41 lines) at nopaste.snit.ch/13098
"pmichaud" at 76.183.97.54 pasted "Revised #2 'map' for List (for bacek)" (40 lines) at nopaste.snit.ch/13099 01:11
bacek_ pmichaud: why you creates Failure?
pmichaud Perl 6 doesn't have an Undef type 01:12
(Parrot does, and we used it a fair bit before we had Failure, so there's still a lot of leftover Undefs.)
bacek_ Your version failing on is ~(1,2,3,4).map({ $^a + $^b }), "3 7", "map() works with 2-ary functions" 01:13
MMD function __add not found for types (102, 102)
it works with Undef...
pmichaud stupid mmd add 01:14
bacek_ pmichaud: agreed :)
mmd--
afk for 5 minutes 01:15
pmichaud okay, I'll commit with Undef. Any other changes?
okay, I'll be back in 15
bacek_ pmichaud: not yet. I''l going to add 'sub push' and probably List:zip 01:21
kid51 I have a question about config/gen/makefiles/root.in. There are many statements like this: $(PERL) t/harness $(EXTRA_TEST_ARGS) $(PARROT_ARGS) 01:27
I see where $EXTRA_TEST_ARGS is defined -- but I can't determine where $PARROT_ARGS is defined. 01:28
Anyone know? Thanks.
Infinoid I don't see it being defined anywhere, either. 01:34
maybe it's there to allow the user to intervene? (just a guess)
pmichaud I believe it comes from the user's shell environment 01:42
dalek r27902 | jkeenan++ | trunk: 01:45
: Add copyright, svn ID tag and coda.
diff: www.parrotvm.org/svn/parrot/revision?rev=27902
bacek_ pmichaud: it there any place where 'lazy lists' described? 01:46
is it just 'smart iterator with closure for unshifting element'?
dalek r27903 | jkeenan++ | trunk: 01:50
: Set svn keywords and eol-style attributes.
diff: www.parrotvm.org/svn/parrot/revision?rev=27903
pmichaud bacek_: more than that
purl more than that is improper.
pmichaud purl, forget more than that
purl pmichaud: I forgot more than that
pmichaud for example, the range 1..200 doesn't actually create 200 elements 01:51
dalek r27904 | jkeenan++ | trunk:
: Commit of t/run_code_tests was premature; deleting.
diff: www.parrotvm.org/svn/parrot/revision?rev=27904
bacek_ pmichaud: yes. Closure will create new element on 'shift'
'closure for shifting'
pmichaud and if you have my @a = (1..200, 3, @b); then @a isn't actually flat until we try to access the elements
bacek_ this is 'lazy flattening', yes? 01:52
pmichaud yes
but more than just shift can cause flattening 01:53
bacek_ so we actually have to lazines: for creating elements and for flattening lists
pmichaud I don't know if they're two different types... just two different aspects of the same thing perhaps
bacek_ keyed_pmc_* should matherialize list
pmichaud right
it's something I've generally saved until later in implementation 01:54
(see ROADMAP)
bacek_ deep inside :)
hmm. Looks like 'multi sub' already implemented 01:55
dalek r27905 | jkeenan++ | codetests: 01:59
: Creating codetests in svn.perl.org/parrot//branches
diff: www.parrotvm.org/svn/parrot/revision?rev=27905
r27906 | jkeenan++ | codetests-27904:
: Tagging trunk at r27904 so that the codetests can later be synched to it.
diff: www.parrotvm.org/svn/parrot/revision?rev=27906
r27907 | jkeenan++ | codetests: 02:04
: First draft of program intended to be essence of 'make codetests' (RT 54992).
diff: www.parrotvm.org/svn/parrot/revision?rev=27907
02:06 japhb joined
dalek r27908 | jkeenan++ | codetests: 02:22
: Create 'codetest' target and add to make's help list.
diff: www.parrotvm.org/svn/parrot/revision?rev=27908
pmichaud hmmm, I think I just got list assignment working in rakudo. 02:23
at least, enough to get my @a = 1; to dtrt 02:24
purl message jonathan we might not need mutables after all.
purl Message for jonathan stored.
bacek_ jonathan will be disappointed :) 02:33
pmichaud well, we're going to eventually want something like mutables, if only for speed.
bacek_ "make it, make it correct, make it fast" :) 02:34
btw, I'm going to implement first cut of lazy list. Will it be useful? 02:35
pmichaud you might want to wait until after the list assignment changes
bacek_ pmichaud: how long it will take? 02:36
pmichaud a couple of days. Feel free to prototype some stuff, though.
bacek_ pmichaud: ok.
pmichaud basically I'm saying I might wait on any submitted patch, or that you may find that what you do now won't work in a week or so. 02:37
but the experience of writing it would be helpfu.
helpful.
purl Drop your pants and prepare for boarding.
pmichaud purl, forget helpful.
purl pmichaud: I forgot helpful
bacek_ :))))
purl: good bot :) 02:38
purl :)
bacek_ pmichaud: any chances to fix pod_comment in grammar.pg? 02:39
pmichaud yes, it's on my to-do list.
I guess that's blocking a few spectests.
bacek_ as well as 'adverbial closure'... Does adverbs require 'real' EXPR rule? 02:42
pmichaud no, not at all
adverbial closures are in colonpair, I think
yes, adverbial closures are handled by the <postcircumfix> option within token colonpair 02:43
then it's just a matter of getting adverbial closures to be recognized in parameter lists
bacek_ pmichaud: digging in it 02:45
it works (probably incorrectly) with space after colon 02:47
> say ~(1,2,3,4).map: { $^a + $^b }
3 7
pmichaud that's not an adverbial closure then 02:48
that's calling the map method with a closure as the first argument.
bacek_ pmichaud: ok 02:49
pmichaud: is there any way to trace paring process? 02:50
parsing
similar to '%yydebug'
pmichaud I'm not familiar with %yydebug, unfortunately. 02:51
bacek_ it just prints current stack of tokens (and few more info) 02:52
pmichaud oh, I could probably come up with a way to do that.
(not quickly, though.)
bacek_ it will be very helpful for debugging grammars. 02:53
S02? 02:54
purl S02 is probably dev.perl.org/perl6/doc/design/syn/S02.html
dalek r27909 | tene++ | trunk: 03:45
: [cardinal]
: * to_s() for all classes
: * clean up get_string()
: * each() for hashes
: * minor grammar fix
diff: www.parrotvm.org/svn/parrot/revision?rev=27909
Tene I'm impressed with how much of ruby I've been able to easily get working. PCT is really cool.
Gah. 03:47
Ruby supports calling a nullary function just by naming it. It's syntactically identical to a variable. 03:48
Ew.
Ruby *also* has no declarations.
So now I need to move the symbol-table-building from the 'variable' method to the 'assignment' method and replace it with a nullary function lookup instead in the 'variable' call. 03:49
If it's not already in the symtable.
Debolaz Tene: And you just discovered this? :) 03:51
Tene Debolaz: I've never made a claim to knowing ruby.
Debolaz The variable vs method weirdness of ruby is one of the things that really turns me off about ruby.
Debolaz just wants consistency. :( 03:52
04:08 tetragon joined
pmichaud aiiiiie 04:18
bacek_ pmichaud: what?
pmichaud I just saw that a bunch of files in src/classes/*.pir were updated and thought "now who made a bunch of changes to rakudo?!?"
Debolaz Yay, krita finally works on win32. No more need for photoshop \\o/ 04:19
pmichaud took me a while to notice that they're in languages/cardinal/
bacek_ pmichaud: :)
Tene Heh. 04:20
dalek r27910 | pmichaud++ | trunk: 04:42
: [rakudo]:
: * Refactor the !keyword_* methods out of Object.pir and into
: src/builtins/guts.pir (as subs). If these really need to
: be methods, we should probably make them methods of a
: separate metaclass or of Class or something like that.
: * All tests and spectest_regression pass, so hopefully I didn't
: break anything.
diff: www.parrotvm.org/svn/parrot/revision?rev=27910
r27911 | chromatic++ | trunk: 05:33
: [PMC] Removed an unnecessary string_copy from Class PMC when building attribute
: index.
diff: www.parrotvm.org/svn/parrot/revision?rev=27911
r27912 | pmichaud++ | trunk: 06:05
: [rakudo]:
: * "make localtest" needs 'all' and 't/spec' as dependencies.
diff: www.parrotvm.org/svn/parrot/revision?rev=27912
06:07 uniejo joined
dalek r27913 | pmichaud++ | trunk: 06:07
: [rakudo]:
: * Clean up List '.pairs' method to return Perl6Pairs instead of the
: outdated Pair PMC.
diff: www.parrotvm.org/svn/parrot/revision?rev=27913
06:08 AndyA joined
bacek_ summon pmichaud 06:25
dalek r27914 | chromatic++ | trunk:
: [OO] Added cache for fully-qualified object attribute access, to make it less
: expensive to look up object attributes. This speeds up the Rakudo-building
: benchmark by 7.02%, and might enable further optimizations.
diff: www.parrotvm.org/svn/parrot/revision?rev=27914
pmichaud pong
bacek_ pmichaud: you forgot 'map' :) 06:26
pmichaud oh, I misunderstood something earlier. 06:27
you're right, I still need to fix map.
dalek r27915 | pmichaud++ | trunk:
: [rakudo]:
: * Remove no-longer-used perl6bool.pmc and perl6undef.pmc .
diff: www.parrotvm.org/svn/parrot/revision?rev=27915 06:28
japhb How do you specify that a PIR sub param should be read/write (or equivalently, in/out)?
pmichaud PMC params are always in/out
japhb pmichaud: I assumed so, but it's not working for me
pmichaud int and num are never in/out
string depends on what is done to it. :-) 06:29
japhb nopaste?
clunker3 pasta.test-smoke.org/ or paste.husk.org/ or nopaste.snit.ch:8001/ or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/
purl nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or rafb.net/paste or paste.husk.org/ or poundperl.pastebin.com/ or paste.scsys.co.uk/ or don't bother me while I'm eating or App::Nopaste or tools/dev/nopaste.pl
bacek_ pmichaud: dark magick! :) 06:30
nopaste "japhb" at 76.191.190.8 pasted "PMC param not r/w?" (36 lines) at nopaste.snit.ch/13100 06:35
japhb That's freehanded, but it's correct in essence
pmichaud oh 06:36
argv = .... changes the register referenc
*e 06:37
japhb So I replaced the container, rather than overwriting its contents?
pmichaud i.e., if you do argv = foo() you aren't changing the PMC that argv originally referenced, you're changing the PMC register to reference whatever value comes back from foo()
correct.
japhb bah
pmichaud try $P0 = foo(); copy argv, $P0
japhb OK, what's the right way to spell it if I want to overwrite contents?
hmmm, OK 06:38
pmichaud which says to replace the contents of argv with the PMC given in $P0
japhb is there sugar for that sequence?
pmichaud no.
'copy' itself is a relatively new opcode
japhb I can see why it's not default though -- the default behavior of the assign is the fast path 06:39
It does seem to mean that for the copy case, I have to create a GC'ed temp that I immediately throw away
pmichaud well, also because with $P0 = you're really replacing the content of the register, and not of the thing the register points to.
yes, copy is somewhat inefficient that way. But there's not really a way to tell the function to do its work directly in the target. 06:40
japhb Right. That's what I was hoping to find when I first asked the question. I have use cases that I know will deal with aggregates large enough that the extra copy will suck. 06:41
japhb wants '.param pmc foo :rw' I guess
pmichaud well, that still doesn't solve the problem. :-)
japhb Or something like that
pmichaud because the register is :rw already :-)
japhb nods and smiles 06:42
pmichaud what you really want is something like "is ref"
japhb yes, exactly.
tired brain not following each thought to correct completion. :-)
dalek r27916 | pmichaud++ | trunk: 06:43
: [rakudo]:
: * Update List .map implementation to respect arity. (bacek++)
: * Patch courtesy Vasily Chekalkin <bacek@bacek.com>
diff: www.parrotvm.org/svn/parrot/revision?rev=27916
pmichaud karma bacek
purl bacek has karma of 18
bacek_ pmichaud: not so much :) 06:44
diakopter bacek++++
bacek_ diits too much :)
diakopter karma bacek
purl bacek has karma of 19
bacek_ oops.. wrong completion
pmichaud what's really amusing is that on #perl6, rakudo_svn gives bacek one karma and me three. :-P 06:46
06:47 ejs joined
japhb pmichaud: The #perl6 svn bots were explicitly designed to encourage more detailed commit messages, weren't they? Hence, a point of karma per line .... 06:48
pmichaud works for me! I tend to do verbose commits. :-) 06:49
bacek_ printing 'CLA'... I want more karma too! :) 06:51
japhb That reminds me, I need to bug the metacommitters again tomorrow, now that chromatic has given me the standard warnings and agreed to be my mentor .... 06:55
If a have a PIR sub foo() in namespace ['Foo'], called from a sub bar() in namespace ['Bar'], how can foo() determine the namespace of the caller? 07:01
pmichaud probably using interpinfo somehow.
japhb greps source tree looking for likely hits 07:03
bacek_ t/spec/S29-array/delete........................... Failed 4/18 subtests 07:09
On MacOSX Leopard.
pmichaud yes, known failure.
bacek_ pmichaud: ok
pmichaud: your hope was wrong? :)
t/spec/S29-num/int................................ Failed 5/58 subtests 07:10
pmichaud groups.google.com/group/perl.perl6....2383597eb#
shorten pmichaud's url is at xrl.us/bk7nh
pmichaud I'm not getting the S29-num/int failures, though. 07:11
bacek_ S29? 07:12
purl S29 is probably svn.pugscode.org/pugs/docs/Perl6/Sp...ctions.pod
bacek_ Deleted elements at
the end of an Array shorten the length of the Array
pmichaud: your version is correct
bacek_ doing svn up/realclean/make for catchin int.t failure 07:13
not ok 11 - int(-0.999) is -0 07:18
I've got '0'... 07:19
pmichaud I think it was discussed on #perl6 that -0 was really 0 in ints 07:20
anyway, it's worth a ticket or a message to perl6-compiler
$ ./parrot perl6.pbc 07:21
> my @a = 1; say @a.perl;
[1]
> # works!
>
bacek_ pmichaud: Ho!
ship it! :)
pmichaud still a couple of things to fix. 07:22
bacek_ pmichaud: can you show result of @a.push([])? 07:23
pmichaud I don't have [] implemented yet.
bacek_ and @a.WHAT() :)
pmichaud > my @a = 1; say @a.WHAT;
Array
(I'm working on [] right now.)
bacek_ pmichaud++!
07:38 AndyA joined
pmichaud > my @a; @a.push([]); say @a.perl; 07:40
[[]]
bacek_ pmichaud: wow! 07:43
japhb pmichaud: found out how to get namespace of caller: '$P0 = getinterp; $P1 = $P0["namespace"; 1]' 07:45
It took me a while to figure out that interpinfo isn't what you want, it's the interpreter itself that you get that info from.
moritz pmichaud: I'd emit that as [[,],] like pugs does, it's easier to parse for a human 07:46
pmichaud running spectest_regression now. 07:47
bacek_ pmichaud: can you please patch Test.pm? It uses 'eq' in 'is'. Better to use ($got cmp $expected) == 0; 07:49
pmichaud cmp is sometimes broken.
bacek_ but (0 eq -0) is false
this causes failures in S29-num/int.t 07:50
pmichaud try changing it and let me know if spectest_regression passes :-)
bacek_ pmichaud: in progress
07:51 ejs joined
bacek_ pmichaud: it failing... 07:52
@a cmp @b doesn't work..
pmichaud probably haven't implemented @a cmp @b yet.
bacek_ mmd-- 07:53
why program aborted in mmd when operator not found? 07:54
pmichaud because "cmp" doesn't know how to compare two Arrays 07:55
bacek_ t/spec/S29-array/delete.t (Wstat: 0 Tests: 18 Failed: 4)
Failed tests: 5-6, 11-12
Files=43, Tests=774, 80 wallclock secs ( 0.17 usr 0.13 sys + 75.43 cusr 3.63 csys = 79.36 CPU)
pmichaud Parrot's MMD opcodes aren't always very smart.
08:06 AndyA joined
dalek r27917 | pmichaud++ | trunk: 08:07
: [rakudo]:
: * First pass at implementing Array types.
: * my @a = 1; now works properly.
: * Also understands [] versus (), mostly.
: * Still some list context issues to be addressed in parameters. 08:08
: * Resolves RT#52276.
diff: www.parrotvm.org/svn/parrot/revision?rev=27917
pmichaud now sleep, then breakfast, then Hash and hash composers.
japhb pmichaud++
moritz is ther a svn commit-hook that m/(resolves|closes) (RT)?#\\d{5}/ automatically closes a ticket? 08:10
bacek_ pmichaud: my $test = ($got eq $expected) || (($got cmp $expected) == 0); 08:16
this is version from Test.pm that actually works
pmichaud++ # for r27917
08:34 AndyA joined
nopaste "masak" at 130.243.202.176 pasted "This program used to work, doesn't anymore" (11 lines) at nopaste.snit.ch/13102 09:05
"bacek" at 211.29.157.151 pasted "New version of List.map for pmichaud (with Arrayref support)" (49 lines) at nopaste.snit.ch/13103
09:05 masak joined
masak maybe it's a known regression 09:05
but I thought I'd tell you
bacek_ masak: make clean; make
masak will do
bacek_ masak: will help 09:06
masak glad to hear it
why is this needed sometimes?
moritz without the 'make clean' the basic tests bail out
bacek_ see everyone in couple of hours. Time to go home
masak see you
bacek_ masak: internal refactoring.
moritz masak: probably a missing dependency in Makefile
purl internal refactoring is pretty significant, even if it's backwards compatible.
masak make now tells me "make: *** No rule to make target `src/call_list.txt', needed by `src/nci.c'. Stop." 09:07
at least before it built :P 09:08
bacek_ make veryclean; perl COnfigure.PL; make
moritz make realclean
purl make realclean is sometimes need in parrot to work against missing dependencies
japhb masak: Until my patch is accepted, you need make realclean instead of make clean
masak ah
japhb As soon as my patch is committed, that bogosity will go away
moritz masak: 'make clean' in the rakudo dir would have been enough (in this case)
masak moritz: you're telling me this now :) 09:09
I'm running on battery here :P
09:11 AndyA joined 09:16 ank joined
nopaste "masak" at 130.243.202.176 pasted "Nope, still error" (16 lines) at nopaste.snit.ch/13104 09:17
masak I have made realclean in the parrot dir
and perl6 in the rakudo dir
it's another error now, mind you
09:17 ejs joined 09:44 Zaba_ joined
japhb masak: what error? 10:04
purl japhb: Directory not empty
moritz japhb: see the nopaste
japhb ah. 10:05
That one's outside my area of expertise. :-)
10:17 TonyC joined, nopaste joined
bacek its a typo in src/classes/IO.pir 10:45
but masak already left..
moritz bacek: send patch ;-) 10:46
bacek moritz, already... But its very stupid typo...
s/I0/IO/... 10:48
10:51 Zaba joined 11:14 rdice joined 11:19 UltraDM joined
bacek karma bacek 11:20
purl bacek has karma of 19
bacek promise sign CLA on reach karma 100 :)
moritz signed and sent off CLA on tuesday 11:21
11:30 braceta joined
bacek karma moritz 11:41
purl moritz has karma of 34
bacek moritz, it's too early, isn't it? :) 11:42
O!
summon pmichaud
moritz bacek: the karma >= 100 rule either doesn't apply for me, or includes #perl6 karma
pmichaud pong
bacek pmichaud, there is small typo in src/classes/IO.pir 11:43
I0 instead of IO
(good to have font with crossed 0)
pmichaud my font has dotted 0
bacek line 23 and #55032 11:44
pmichaud, maybe it's jonathan :)
pmichaud no, I'm pretty sure it was me.
bacek and I revorked map once again
pmichaud, Yes! Its all your fault! :) 11:45
dalek r27918 | pmichaud++ | trunk:
: [rakudo]:
: * Fix typo in IO.pir (RT#55032, bacek++).
diff: www.parrotvm.org/svn/parrot/revision?rev=27918
bacek nopaste.snit.ch/13103 reworked map with handling arrayref properly 11:46
thanks for commit
pmichaud map shouldn't have to do anything special for arrayref, I don't think 11:47
bacek S29-list/map_empty_list.t
arrayref pushed as-is. List is flatten
pmichaud right, there's a problem with () in function calls at the moment. 11:48
i.e., if we try to fix map this way, we'll have to do it for grep and all of the others too 11:49
bacek pmichaud, oh.
maybe fix push?
pmichaud yes, push is broken.
bacek I'll check it
pmichaud push @array, (); should probably leave @array unchanged. 11:50
(at the moment I don't think it does)
bacek and I'll check it too 11:51
pmichaud, you right. I'll change push instead of map 11:52
and sub 'list' too. Looks like it should just create List and call list.'push'() 11:53
push(args)
bacek running spectest_regression 11:58
pmichaud no, sub 'list' is the thing that does the flattening. 12:09
nopaste "bacek" at 202.7.166.180 pasted "Refactored List.push and 'list' for pmichaud" (80 lines) at nopaste.snit.ch/13108
pmichaud backwards. :-) 12:10
bacek pmichaud, :)
pmichaud List.push should call 'list'
bacek what the difference?
purl i heard the difference was irrelevant at the stage where language acquisition is not a conscious decision.
pmichaud the difference is that there are other functions that call 'list' to do the flattening. It makes more sense for 'list' to do it. 12:11
bacek it is not visible from 'outside'. List will be flat
pmichaud I don't see why 'push' should be responsible for flattening. 12:12
as opposed to 'unshift' or some other function.
but it makes sense for 'list' to be the flatterer
(because that's what 'list' does -- it imposes list context on its arguments.) 12:13
bacek pmichaud, then we need some common function for flattening list
12:13 bacek left, bacek joined
bacek like '!list(@target, args)' 12:14
to avoid useless copying of created list
maybe '!pushflat' is better name 12:15
pmichaud, ? 12:18
purl i think pmichaud, is there an NQP test suitable for profiling?
pmichaud 'list' is the common function for flattening a list. 12:19
12:19 Zaba_ joined
bacek pmichaud, but it creates new list. 12:20
so, using it in 'push' is sub-optimal
pmichaud it's likely not going to matter when we do lazy lists anyway
bacek flattening is not lazy :) 12:21
pmichaud it can be
moritz bacek: premature optimization is the root of all evil ;)
bacek moritz, Donald? You? I can't believe! 12:22
pmichaud, hmm...
moritz bacek: then don't. I'm used to ignorancy ;)
nopaste "pmichaud" at 76.183.97.54 pasted "my version of 'push'" (6 lines) at nopaste.snit.ch/13109
pmichaud oops 12:23
nopaste "pmichaud" at 76.183.97.54 pasted "my version of 'push' #2" (6 lines) at nopaste.snit.ch/13110
moritz why does it return self.elems? 12:24
ah wait, probably specced this way ;)
bacek pmichaud, this approach will not work in 'map { 1 }, @list'
pmichaud why not? 12:25
bacek because 'mapres' is not array (in common case)
pmichaud that's not a problem. *args* is an array.
(always)
(because of :slurpy)
bacek but mapres is not! :) 12:26
wait a sec
i'm too stupid at this period of day. 12:27
pmichaud > my @a = <a b c d>; say (map { 1 }, @a).perl;
[1, 1, 1, 1]
looks like it works to me. :-)
bacek pmichaud, you right
pmichaud but it does need flattening.
so....
maybe I'll put flattening into the .list method 12:29
bacek pmichaud, it's aready there AFAIU 12:30
pmichaud .list method, not list sub
bacek so, factor common flattening into private sub :) 12:32
pmichaud I think I may just implement laziness. :-) 12:33
bacek rekon Munchkin's "Take me, take me" card :) 12:34
pmichaud, I already start working on lay list :)
lazy
12:35 Whiteknight joined 12:37 Whiteknight joined 12:45 tetragon joined 12:54 AndyA joined
pmichaud ponders making List into a PMC 13:01
moritz why? performance? 13:02
pmichaud yes
moritz did you benchmark/profile it?
pmichaud well, in some ways it's also cleaner as PMC (in C) than in PIR. 13:03
13:06 gryphon joined
moritz pmichaud: nopaste.snit.ch/13111 13:09
pmichaud I was also wondering if that should be :pure instead of #pure 13:10
moritz pmichaud: that was broken by introducing the #pure flag
pmichaud or even :fudge and :!fudge
moritz shouldn't be too hard to change
pmichaud as long as we have a colon syntax for flags, we might as well use it :-)
moritz I thought # is far more unlikly in a file name than : and whitespaces 13:11
pmichaud yes, but I doubt a file would have a leading colon. At any rate, we know that spectest files will never have colons.
it was just a thought. :-) 13:12
moritz unless we test for executability with weird filenames
pmichaud I'd still expect that test to be in a file with a normal filename :-)
moritz ok, you're probably right 13:13
btw we have plenty of new spectests passing
pmichaud I bet, since my @a = 1; is working.
13:13 rdice joined
moritz plenty being 6 ;-) 13:14
pmichaud I should have hash composers working soon also.
13:19 iblechbot joined 13:25 AndyA joined 13:32 ejs_ joined 13:33 Juerd joined, jonathan joined 13:34 dalek joined, nopaste joined 13:35 leo joined, wolverian joined 13:36 AndyA joined 13:38 PerlJam joined, pmichaud joined 13:47 AndyA joined 13:58 AndyA joined 14:03 Whiteknight joined
dalek r27919 | Whiteknight++ | gsoc_pdd09: 14:07
: [gsoc_pdd09] merging from trunk r27918
diff: www.parrotvm.org/svn/parrot/revision?rev=27919
14:10 jhorwitz joined 14:15 Zaba joined 14:22 IllvilJa joined 14:24 masak joined 14:25 Theory joined
masak bacek: I saw you found the cause of my bug -- thx 14:27
bacek++
dalek r27920 | Whiteknight++ | gsoc_pdd09: 14:48
: [gsoc_pdd09] updating GC datastructures. Borrowed some from the current GC_GMS
diff: www.parrotvm.org/svn/parrot/revision?rev=27920
NotFound DietCoke: Looks like you've losed your patience with hcf ;) 15:02
DietCoke japhb, what is your RT id? 15:06
(have you gone through the steps in metacommitter.pod?) 15:07
(easier to parse for a human) I respectfully disagree.
(easier to parse) that's [[,]] (with commas, anyway) vs. [[]] 15:10
was probably [[,],] ; I find that confusing. 15:20
15:20 AndyA joined
NotFound DietCoke: have you looked at #55012? Is the issue we talked about yesterday. 15:21
15:31 AndyA joined
DietCoke NotFound: looks good. replied, claimed the ticket, asked for comments, set a deadline. 15:32
NotFound DietCoke: about hcf, will be a solution to replace the 0 adrres dereferecing by an abort? It will preserve the educational value (if any). 15:35
particle i propose we keep hcf and remove the tests 15:40
DietCoke What is the purpose of keeping the op?
If it's merely a teaching tool (it serves NO useful functional purpose), then we can do that in documentation.
particle afaik we're the only vm or hardware chip with that instruction
like bxand 15:41
it's a unique, silly part of parrot
DietCoke also useless. 15:42
NotFound You mean, like some directors put an error on purpose in his films, just to distract the bug catchers ;)
The problem is that our bug catchers are the testers. 15:43
DietCoke I certainly agree the tests must go.
we have concensus there.
we can debate the opcode itself.
szbalint 5 15:44
err nm
particle no problem, szbalint, i forgot all about 5 :)
NotFound 5?
purl 5 is right out
szbalint purl: 5 is what you get when you forgot to specify /win in front of it 15:45
purl szbalint: no idea
particle has many failing rakudo tests today
szbalint purl: 5 is the number you get when you forgot to specify /win in front of it 15:46
purl ...but 5 is right out...
szbalint purl: 5 is also the number you get when you forgot to specify /win in front of it
purl okay, szbalint.
pmichaud iwbni "make localtest" could accept the t/spec/ in front of test names 15:47
that way I could simply copy/paste the summary results of "make spectest_regression" into localtest.data 15:48
particle pmichaud: i'm 3s behind you :)
i was just about to write the same thing
DietCoke woots at his latest blog entry. 15:49
particle DietCoke: congrats on the 50% goal
pmichaud particle: did you see that i got my @a = 1; to work? :-) 15:50
DietCoke pmichaud++
pmichaud hash composers are coming next, as soon as I refactor a few more List/Array things 15:51
particle pmichaud: i saw it here, and tried spectest_regression and got a bunch of failures
pmichaud you may need to do a top-level update and rebuild 15:52
particle i took the failed test names and stuck them in localtest.data
then got errors during make localtest
just as you were writing the above
i did rebuild parrot, but not make clean
pmichaud the makefile is substantially different. 15:53
particle the parrot makefile? 15:55
pmichaud rakudo's
particle ok, i did make Makefile
anyway, i'll rebuild, after i commit this patch to t/harness for leading t/spec/ in localtest 15:56
dalek r27921 | particle++ | trunk: 15:58
: [rakudo] allow leading 't/spec/' path in filenames specified in test list data files
particle there. rebuilding now
dalek diff: www.parrotvm.org/svn/parrot/revision?rev=27921
16:07 Zaba_ joined 16:10 Theory joined
pmichaud particle: any luck yet? 16:20
I'm going to commit my current set of (fairly significant) changes now, even though it causes spectest_regression to fail two tests. 16:21
particle i'm running spectest_regression now
pmichaud one failure I think is due to an error in the test itself.
particle go ahead and commit, i don't have any local mods atm
pmichaud I haven't had a chance to look at the second, but I need lunch.
dalek r27922 | pmichaud++ | trunk: 16:24
: [rakudo]:
: More major refactorings to Array and List. This moves many of the
: array methods out of List and into Array (per S29). It also
: causes a couple of spectest_regression tests to fail; I think
: it's due to errors in the tests and I'm seeking clarification.
: But I didn't want to hold off on the commit, so that others can
: be testing also.
diff: www.parrotvm.org/svn/parrot/revision?rev=27922
NotFound What is the reason to have -Wno-unused in the gcc default flags? 16:25
16:52 sjansen joined
moritz I don't know, but the unused warnings only work if the build is optimized 16:53
so maybe there should be no warnings during an optimized build that aren't there otherwise 16:54
16:54 jjore joined
particle pmichaud: realclean & rebuild seems to have cleared up my test failures 16:58
moritz should 'make testtest' work? 17:04
NotFound Well, it's not very important, I can enable the desired ones with -Wunused-specific 17:06
particle moritz: testtest has known failures 17:07
moritz particle: ok, thanks
particle it was intended to get pugs' Test.pm working, but i think we've backed away from that goal 17:08
might make sense to remove testtest and 02-test
moritz aye
Whiteknight what does the hcf opcode do anyway? 17:16
particle en.wikipedia.org/wiki/Halt_and_Catch_Fire
Whiteknight okay, thanks 17:17
cizra Deja Vu -- I was just reading about HCF 17:18
Hm, wait, that's not deja vu 17:19
pmichaud S29? 17:22
purl i guess S29 is svn.pugscode.org/pugs/docs/Perl6/Sp...ctions.pod
moritz > my @a = (4, 5, 3, 2, 5, 1); say sort @a 17:26
(one empty line of output)
pmichaud yes, about to look at that. I'm writing up a message about List.kv to p6c now.
moritz S29 lists only Array.kv 17:27
pmichaud yes, but t/S29-array/kv.t shows it being used on a List. 17:28
message sent.
purl Sorry, I've never seen sent before.
17:37 Sartak left
DietCoke message purl purl, you're a dolt. 17:48
purl Message for purl stored.
DietCoke seen chromatic? 17:50
purl chromatic was last seen on #parrot 1 day and 17 hours ago, saying: It'll be a PMC. [May 27 17:24:52 2008]
DietCoke summon chroamtic
summon chromatic
DietCoke wonders if that really does anything. =-)
Whiteknight probably not, but it would be nice 17:51
DietCoke I would be perfectly happy to get an email when that happens.
NotFound We can create the opcode da.
chromatic *poof* what do you need?
NotFound Do Anything.
DietCoke ... make tcl go 300 times faster.
Infinoid ...before lunchtime 17:52
dalek r27923 | particle++ | trunk:
: [rakudo] tell update_passing_test_data utility to ignore end-of-line comments in test data files
diff: www.parrotvm.org/svn/parrot/revision?rev=27923
particle oops, forgot moritz++
pmichaud (make localtest)++ 17:53
particle++ moritz++ # very handy
particle yay. i need to blog about it, but i gotta remember my rakudo.org pw
eh, i'll just use.perl it
pmichaud I have so much to blog about today. :-(
particle wonders if mk_language_shell.pl takes names with [] in them 17:54
pmichaud I wouldn't bet on it.
Whiteknight you dont like blogging? I love blogging. gives me a chance to collect my thoughts and get them straight
NotFound That freature must be in mk_esotheric_language. 17:55
dalek r27924 | pmichaud++ | trunk:
: [rakudo]:
: * Fix sort() to look for a block argument (moritz++)
particle i'd like to call my tiny turing-complete language pearl[sic]
dalek : * Resolves one more spectest_regression item.
diff: www.parrotvm.org/svn/parrot/revision?rev=27924
pmichaud I like to blog, but I usually have too much to write about.
NotFound particle: that proves my point.
Whiteknight pmichaud, when that happens to me, i open a new blog!
pmichaud oh, speaking of which....
DietCoke please don't make a directory with brackets in it in the repo. 17:56
pmichaud www.pmichaud.com/sandbox/post3.txt # soliciting comments for improvement before posting
particle coke: i won't
NotFound Next step will be to add a whitespace implementation called " "
pmichaud it should obviously be called ttcl anyway :-) 17:57
DietCoke rotfl.
poor partcl. It's soooo slow. :|
pmichaud rakudo is catching up to it :-)
DietCoke in terms of... functionality? 17:58
only took you 7 years! =-)
I hope to find a week or three to refactor the heck out of it. :| 17:59
pmichaud: your article looks strangely familiar.
did you already post a sample of it for us to read?
pmichaud in terms of .... slowness. :-) 18:00
NotFound Are the macro TO_UNICODE and the to_unicode functions in charset supposed to be used for something? Actually, they are unused.
DietCoke AH!
pmichaud: well in that case you've caught up quick! I had to write all that slowness in special! =-)
pmichaud I did post3.txt to the channel once before, and got feedback from DietCoke I think
DietCoke (last I checked i was... what, hundreds or thousands of time slower than tcl in realworld examples.
pmichaud but hadn't heard from anyone else. I'm curious if the post will make any sense to a use.perl or parrotblog reader 18:01
NotFound DietCoke: fix the real world.
Whiteknight it's making good sense to me
pmichaud when Paula read it, she wanted to know why this was important/useful
PerlJam pm: It's making sense to me, though I have a couple of random questions I think
DietCoke It was one of the more coherent things I've read from rakudo development, if that helps. =-)
I would like you to use '' instead of "" where you can, but that's just my OCD. 18:02
18:02 ejs joined
PerlJam pm: What's the purpose of this article? 18:03
pmichaud just to say "hey, here's a new P6Object library and a bit about how it works"
also maybe to explain a bit about how protoobjects and metaclasses work in perl 6 18:04
DietCoke pmichaud: does implementing your own object system instead of using parrots kill your ability to use MMD?
pmichaud also particle asked how it worked, so we decided a blog post would be more appropriate than me simply telling him.
DietCoke: no, the object system is actually layered pretty cleanly on top of parrots 18:05
purl okay, pmichaud.
PerlJam pm: One of the things that always seems underexplained is the linkage between classes named "Dog" and the "Dog" namespace for instance. (Though I don't know that there's more you can say about it :)
DietCoke but if you say "my parent is Foo", but parrot thinks your parent is "Perl6Object", how do you get MMD to work there?
pmichaud well, if you say "my parent is Foo" then there has to be a Foo somewhere. :-) 18:06
DietCoke (even if you do have an actual parrot class of Foo; if MMD is based on parrot's child/parent relationships..."
I'm not saying you have to answer that in this article, but it's something that could probably stand another blog post. =-)
pmichaud especially since I just did that in the Array stuff I just added to Rakudo :-)
PerlJam pm: in your example p6meta.'new_class'('Dog', 'attr'=>'legs tail'), what are the rules for parsing the attr parameter?
pmichaud pj: separated by spaces 18:07
PerlJam but not tabs?
pmichaud correct.
PerlJam and 'legs tail' is just as good as 'legs tail' ?
pmichaud yes.
PerlJam and that string is fully unicode? 18:08
pmichaud yes.
and if you need an attribute with a space in it, then you send 'attr' an array instead of a string.
(the string is just a shortcut to avoid having to create arrays all over the place) 18:09
DietCoke: to answer your earlier question -- if you create a class with one parrot name but aliased to a different P6object name, then yes, MMD currently has to continue to use the Parrot names. But it does work. 18:10
and we'll undoubtedly find some way to easily map a P6object name into its Parrot name.
18:11 braceta joined
DietCoke pmichaud: my point there is not the specific names, but the search up through the object hierarchy. 18:11
s/object/class/ 18:12
pmichaud well, for "my parent is Foo", one of two situations will occur
either Foo is already a subclass of Perl6Object, in which case MMD will know that 'Foo' takes priority over 'Perl6Object' 18:13
otherwise 'Foo' is not a subclass of Perl6Object, but it will be listed first in the list of parent classes (and so 'Foo' would again take priority over anything else)
PerlJam I haven't kept up too well with recent changes, so I think I don't understand get_hll_global exactly. What's its relationship with .HLL ? 18:14
pmichaud get_hll_global grabs things relative to the HLL namespace root
as opposed to get_global, which grabs things relative to the current namespace
and get_root_global, which grabs things relative to the root of all namespaces
PerlJam so, if you don't define a HLL root namespace ... ? 18:15
pmichaud then your'e in parrot's HLL root.
i.e., ['parrot'] from the root namespace
DietCoke pmichaud: I will nopaste something show my confusion. 18:16
pmichaud yes, this does mean that P6object will have to evolve to be aware of the hll of its callers.
DietCoke let me rephrase slightly first. 18:17
if you say, in class Bar, "My parent is foo" using the P6O system.... what is your parrot parent? 18:18
is it P6O or foo?
NotFound All test pass with the TO_UNICODE stuff deleted.
pmichaud depends on foo
if foo is a subclass of P6O, then bar has one parent (foo)
if foo is not a subclass of P6O, then bar has two parents (foo and P6o)
DietCoke ok. my confusion is resolved. 18:19
I thought it was -always- just p6o.
pmichaud nope.
parent really does mean "make foo my parent"
it even goes so far as to simulate the same with PMCs
for example, if I register RPA with a parent of "List", then all of List's methods get installed into the RPA class 18:20
DietCoke hurm. -that- sounds tricky as far as MMD goes.
pmichaud I obviously can't make List a parent of RPA (because it's a PMC class), but everything else in P6o will work to make it look as though RPA is really a List. Even to the point of having the '.isa' method report true for RPA.'isa'(List) 18:21
DietCoke or are you actually re-parenting at the parrot level there too?
pmichaud correct, that won't work with MMD
DietCoke ok.
AHA!
pmichaud :-)
PerlJam pm: you have a
DietCoke ^_^
pmichaud that's really intended simply for whenever a language happens to get hold of a Parrot native object and wants to do something reasonable with it.
PerlJam pm: you have a 'Hash' that should be 'MyHash' towards the end of the doc
pm: and "subclss" probably wants an "a" :) 18:22
pmichaud found the missing 'a'
which Hash should be MyHash ?
PerlJam | event_id |
oops
myhashproto = get_hll_global 'Hash' # n'est pas?
pmichaud you're correct. 18:23
in actual code I don't even do that, since 'new_class' and 'register' always return the protoobject :-)
PerlJam ah, that's good to know. I was just thinking "I wonder if there's an easier way" 18:24
pmichaud I thought about putting that into the text also but couldn't find a clean place to do it.
and in general it's more important to know where to find the protoobject.
PerlJam anyway, very clear. I feel like I could put some of this into practice (if I weren't working a horrid php app right now) 18:25
My only critique would be "needs a better ending" :) 18:26
Whiteknight ditto that
pmichaud I got tired at the end. 18:27
PerlJam oh, one of the things that makes me uncomfortable is the idea that p6meta.'new_class'('NQP::Grammar::Actions') -> $P0 = get_hll_global ['NQP';'Grammar'], 'Actions' 18:29
but, as you say, in practice you just use the return value anyway 18:30
pmichaud it also works if the first argument to new_class is an array
$P0 = split '::', 'NQP::Grammar::Actions'
p6meta.'new_class'($P0)
it's just that we often have a colon separate string, and continually writing those 'split's gets old pretty quick. 18:31
eventually even the resulting class will be ['NQP';'Grammar';'Actions'] and not ['NQP::Grammar::Actions'] 18:32
just haven't made that switch yet.
particle hrmm
pmichaud (which is also why I don't talk about that in the article)
okay, I'll put a cleaner conclusion on it and post it. 18:34
thanks everyone for the comments
PerlJam pm: maybe you could put a small, complete example at the end.
pmichaud sure, that works. 18:35
dalek r27925 | pmichaud++ | trunk: 18:38
: [rakudo]:
: * Clean up .perl for Pair objects, pair composer.
diff: www.parrotvm.org/svn/parrot/revision?rev=27925
18:40 Andy left, Andy joined 18:50 Casan joined 18:59 Theory joined
dalek r27926 | pmichaud++ | trunk: 19:02
: [rakudo]:
: * Move .keys, .kv, .pairs, .values back into List class (TimToady++).
: * All spectest_regression tests pass again.
diff: www.parrotvm.org/svn/parrot/revision?rev=27926
19:18 barney joined 19:24 AndyA joined
DietCoke stares at spinclad. 19:56
confound no idea 20:03
japhb DietCoke: yes, I've done my part of metacommitter.pod -- for simplicity I created a 'japhb' persona for both Parrot's SVN and RT. 20:07
(might as well use what everyone knows me as)
DietCoke momentito. 20:09
japhb thanks.
DietCoke just to verify, please login and tell me what it says in the "logged in as". =-)
(to rt) 20:10
(upper RHS)
20:11 Zaba joined
japhb hold 20:11
*chuckle* -- I just tried to cut and paste between the browser on my desktop and the IRC on my laptop. 20:12
It says "Logged in as japhb"
DietCoke ok. try to update CREDITS or something. ^_^ 20:13
we haven't seen vsoni in ages.
japhb vsoni? 20:14
purl vsoni is new to parrot and would like to start contributing
DietCoke he predates you by several years.
japhb Well, on this project. :-)
DietCoke Just saw his name on the list I just added you to.
20:15 braceta joined
NotFound Pod syntax check fails in: languages/perl6/src/classes/Array.pir 20:15
pmichaud okay, I'll fix it. 20:16
I'm about to commit a fairly significant change.
NotFound pmichaud: I can wait ;)
japhb pulls a clean svn co, since I'll need it for the metadata commits anyway. 20:17
NotFound Someone familiarized with Configure.pl can take a look ar #55050 ?
DietCoke familiar is such a strong word. 20:20
NotFound I was doubting to say "lover"
DietCoke NotFound: it seems vaguely reasonble to me. 20:21
NotFound Is very helpful to me to get out of my way all those warnings. 20:23
dalek r27927 | japhb++ | trunk: 20:24
: CREDITS: Add Geoff Broadwell's IRC/SVN/RT nick
diff: www.parrotvm.org/svn/parrot/revision?rev=27927
r27928 | pmichaud++ | trunk:
: [rakudo]:
: * Add first version of Hash, hashes, and the hash() composer.
: * my %a = (a=>1, b=>2); now works.
: * Still need to create {...} hash composer (but use parens in the
: meantime).
diff: www.parrotvm.org/svn/parrot/revision?rev=27928
japhb OK, commit went through -- I had to think of something *useful* to do to my CREDITS entry. :-) 20:25
... and I see the commit in git-svn
W00t!
Thank you DietCoke++ and chromatic++ and everyone else that helped me find the hoops to jump through
:-) 20:26
pmichaud welcome aboard, japhb! 20:27
DietCoke jpahb? 20:28
japhb?
purl well, japhb is Geoffrey Broadwell, mailto:geoff@broadwell.org
dalek r27929 | pmichaud++ | trunk: 20:33
: [rakudo]:
: * Change increment and decrement methods to be named 'succ' and 'pred'.
: * Resolves RT#54654.
diff: www.parrotvm.org/svn/parrot/revision?rev=27929
japhb Thanks, pmichaud 20:37
OK, got to run
pmichaud okay, time for a break. 20:42
DietCoke continue!
oh wait. 20:43
particle maybe you mean .yield
pmichaud tosses an exception at DietCoke.
DietCoke ponders the best way to play with a ground up rewrite of tcl, and guesses branch (as opposed to new language/ or new repository) is probably the best way for now. 20:44
particle branch sounds best 20:46
21:03 particl1 joined 21:04 particle1 joined 21:24 mire joined
dalek r27930 | pmichaud++ | pge: 21:39
: Remove branch so I can start over with a fresh trunk.
diff: www.parrotvm.org/svn/parrot/revision?rev=27930
21:49 smashz joined
smash hello everyone 21:49
pmichaud hello smash! 21:50
smash hey pm 21:52
so, anyone submitted any presentations for yapc::europe ?
(i'm trying to submit mine now)
pmichaud (submitted, yes.)
smash pmichaud: parrot related ?
pmichaud one on PCT, one on Rakudo. 21:53
smash nice nice
i'm submitting mine now, an introduction to parrot 21:54
that's all i got time for
nothing fancy :-)
i'm also making a presentation about parrot next week in the Portuguese Perl Workshop 21:56
davidfetter legal! 22:03
onde?
smash Universidade do Minho, YAPC in portugal venue
22:04 Theory joined 22:07 Limbic_Region joined
davidfetter spoke there, too :) 22:09
smash hehe.. cool
smash talk proposal submitted!
davidfetter heh
smash i called it "Beautiful Parrot" inspired by this year YAPC::EU conference theme 22:10
pmichaud heh 22:15
very nice title 22:16
22:16 cognominal joined 22:17 Theory_ joined
dalek r27931 | pmichaud++ | trunk: 22:19
: [rakudo]:
: * Cleaned up Mapping and Hash code a bit more.
diff: www.parrotvm.org/svn/parrot/revision?rev=27931
smash pmichaud: you can find my abstract here: nrc.homelinux.org/parrot/beautiful_parrot.pdf if you're curious in taking a glimpse ;-) 22:24
pmichaud here are mine: www.pmichaud.com/sandbox/talk-1.txt 22:29
cognominal jpn 22:30
jonathan is sleeping in the same room as me. Conference tyo 22:31
time tomorrow
22:32 ejs joined
smash pmichaud: hehe, you stole almost half of my talk (about PCT) :-D 22:32
pmichaud: nice nice, road map to a complete perl6
22:39 AndyA joined 23:11 teknomunk joined 23:16 rdice joined 23:21 Maddingue joined
smash ahh.. was able to submit another talk proposal 23:44
23:50 bacek_ joined
bacek_ morning 23:51