pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, elf: etc.) (or perl6: for all) | irclog: irc.pugscode.org/
Set by Tene on 29 July 2008.
pugs_svn r22135 | ruoso++ | [smop] updating test/30_array_map to reflect the fact that "map" receives and returns an iterator 00:35
pugs_svn r22136 | ruoso++ | [smop] starting to implement "map" 01:00
ruoso pugs: my @@a = map { $_, 0 - $_ }, 1..5; say @@a.perl(); 02:03
p6eval pugs: OUTPUT[\(1, -1, 2, -2, 3, -3, 4, -4, 5, -5)␤]
ruoso pugs: my @@a = map { $_, 0 - $_ }, 1..5; say @a[0;0] 02:04
p6eval pugs: OUTPUT[*** ␤ Unexpected "["␤ expecting "::"␤ Variable "@a" requires predeclaration or explicit package name␤ at /tmp/MEWNYIenWL line 1, column 42␤]
ruoso pugs: my @@a = map { $_, 0 - $_ }, 1..5; say @@a[0;0]
p6eval pugs: OUTPUT[*** ␤ Unexpected ";"␤ expecting "x", octal digit, "o", "b", fraction, exponent, term postfix, operator or "]"␤ at /tmp/kZyL475VEt line 1, column 45␤]
ruoso pugs: my @@a = map { $_, 0 - $_ }, 1..5; say @@a[00]
p6eval pugs: OUTPUT[1␤]
ruoso it looks like pugs doen't have slice context yet... :(
rakudo: my @@a = map { $_, 0 - $_ }, 1..5; say @@a[0;0]
p6eval rakudo 30744: OUTPUT[Statement not terminated properly at line 1, near "@@a = map "␤␤current instr.: 'parrot;PGE::Util;die' pc 119 (runtime/parrot/library/PGE/Util.pir:82)␤]
ruoso elf: my @@a = map { $_, 0 - $_ }, 1..5; say @@a[0;0] 02:05
p6eval elf 22136: OUTPUT[Use of uninitialized value $_ in subtraction (-) at (eval 121) line 3.␤Use of uninitialized value $_ in anonymous hash ({}) at (eval 121) line 3.␤Undefined subroutine &GLOBAL::map called at (eval 121) line 3.␤ at ./elf_f line 3861␤]
ruoso elf: my @@a = map { $_, $_ }, 1..5; say @@a[0;0]
p6eval elf 22136: OUTPUT[Use of uninitialized value $_ in anonymous hash ({}) at (eval 121) line 3.␤Undefined subroutine &GLOBAL::map called at (eval 121) line 3.␤ at ./elf_f line 3861␤]
ruoso sanity check: iterators should return the capture for that iteration, which may contain more than one item. it's then up to the calling code to define how to use that... 02:18
for instance... when "map" consumes the input iterator, it stores the capture returned by the input iterator and consumes the elements in there before asking for another round... 02:19
but most of the time this is a non-issue, because the generic lazy list and lazy slice implementations will take care of hiding that complexity... 02:20
since an iterator in slice context returns a bidimensional array, while in list context flattens the slice to a single dimension... 02:21
the problem with that is when you want to use that in item context... 02:23
hmm 02:24
actually...
it's not a problem
we have to define the context first...
map receives an iterator *in item context*... which means that in low-level "map { ... } (1,2,3)" makes something like "map((1,2,3).Iterator.Item, {...})"" 02:26
and that iterator in item context knows that it should flatten the return for each iteration to a single value (including re-trying when that step returned an empty capture... which is something "grep" will do a lot) 02:27
pugs_svn r22137 | ruoso++ | [smop] "map" receives "Iterator in item context" (updating test code)... 02:30
ruoso sleep & (it's always good to know that the reality fits in the model you're working on) 02:41
ruoso . o O ( for some concepts of reality )
ruoso z Z z
s1n anyone around with knowledge of List.pir? 02:45
s1n anyone remotely familiar with List.pir? 03:24
s1n is it better to skip a test or mark it as todo<bug>? 03:37
literal roughly, you skip a test on a platform where it is irrelevant, you mark it todo when it is to test functionality that has not been implemented fully 03:42
PerlJam s1n: What about List.pir? 03:46
s1n PerlJam: have you messed with flatten?
PerlJam briefly 03:47
s1n does that flatten array references?
PerlJam it flattens Lists :) 03:48
s1n i've been playing with it and i dont think it does, but there are comments that the impending lazylist effort will radically change it
does it flatten Lists of references to Lists though?
PerlJam it doesn't recurse or anything. It's just one level deep flattening. 03:49
s1n okay, that answers my question 03:50
PerlJam there are some hacks for flattening a Range or Array. These hacks will be what are radically altered once we get true lazy lists (I'd imagine) 03:51
s1n yeah i'll probably just write a ticket and leave it at that
s1n PerlJam: does slicing depend on the lazylist effort? 03:55
PerlJam dunno
pugs_svn r22138 | s1n++ | [spec] fudged array_mmd.t and array_ref.t for rakudo 04:01
pugs_svn r22139 | moritz++ | [t/spec] minor fudging nits 06:36
rakudo_svn r30747 | moritz++ | [rakudo] one more test for spectest_regression, s1n++ 06:41
moritz_ 343 files in spec/, 428 test files outside of spec/ 08:00
makes me think it's a never ending task 08:01
moritz_ is slightly frustrated
pugs_svn r22140 | moritz++ | [t] moved loopscope.t to spec/, simplfied a bit 08:04
pugs_svn r22141 | moritz++ | [t] move pugs specific tests to pugs/ 09:12
pugs_svn r22142 | moritz++ | [t] moved tests around, merged single test into another file 09:18
r22143 | moritz++ | [t] delete merged test; should have been done in r22142 already. 09:19
pugs_svn r22144 | moritz++ | [t] moved operators/hyper.t to spec/ 13:16
pugs_svn r22145 | moritz++ | [t] moved config.t to spec/, deleted redundant tests 13:22
r22146 | moritz++ | [t] moved goto.t to spec/ 13:24
r22147 | moritz++ | [t] move blocks/splat_rw.t to spec/ 13:30
r22148 | moritz++ | [t] merged blocks/splatty_with_type.t into spec/ 13:34
r22149 | moritz++ | [t] merged blocks/slurpy_param.t into spec/ 13:42
moritz_ uhm, I merge some tests into spec/S06-signature/slurpy-params.t, and now it dies while running the first ones 13:50
how do I revert a commit?
pugs_svn r22150 | moritz++ | [t/spec] partially reverted r22149 because it borked rakudo's 13:59
r22150 | moritz++ | spectest_regression
pmichaud any suggestions how to fix t/spec/S04-declarations/my.t:37 ? 14:00
moritz_ what's wrong with it? 14:01
pmichaud sub foo is declared later in the test
moritz_ uhm
pmichaud so it's not dying properly because sub 'foo' exists.
moritz_ I'll rename the second sub foo 14:02
pmichaud (yes, we can argue that there's a signature mismatch there and so it should die anyway, but ...)
pugs_svn r22151 | moritz++ | [t/spec] fixed name clash, pmichaud++ 14:03
rakudo_svn r30750 | pmichaud++ | [rakudo]: Eliminate :immediate subs from generated output. 14:04
r30750 | pmichaud++ | * Now use .loadinit() attribute of PAST::Block.
pugs_svn r22152 | moritz++ | [t] move sub_return_values.t to spec, corrected isa_ok calls to use type names 14:25
pugs_svn r22153 | moritz++ | [t/spec] fudged return.t for rakudo 14:31
rakudo_svn r30751 | moritz++ | [rakudo] two more tests for spectest_regression 14:36
rakudo_svn r30753 | pmichaud++ | [rakudo]: spectest-progress.csv update: 153 files, 2707 passing tests 15:24
pugs_svn r22154 | moritz++ | [t/TASKS] smore more overall TASKS 15:48
ruoso Howdy! 16:25
moritz_ !ydwoH 16:27
ruoso still digesting the amount of concepts around the implementation of "map"! 16:28
ruoso . o O ( I just hope all the conceptual torture saves us a lot of code in the future ) 16:29
pmurias ruoso: hi 17:33
ruoso hi pmichaud 17:34
hi pmurias
ruoso pmurias, did you follow my last thoughts on map? 17:46
pmurias ruoso: yes 17:55
seems ok 17:57
i'm pretty muddled now, so i might me wrong ;) 18:01
pim Hi, everybody. 18:02
moritz_ hi pim 18:03
pugs_svn r22155 | moritz++ | [t/spec] allow rakudo to run most of pge's regex tests 18:17
r22156 | moritz++ | [t/spec] test files should end with .t, stupid me. 18:18
rakudo_svn r30761 | moritz++ | [rakudo] add pge-tests.t to spectest_regression 18:34
r30761 | moritz++ | The immense number of skips is mostly explained by the fact that if we
r30761 | moritz++ | wouldn't skip > 240 tests, the test segfaults.
r30761 | moritz++ | +307 skip, 105 todo, 333 pass
rakudo_svn r30764 | pmichaud++ | [rakudo]: code generated by --target=pir now runs from parrot (RT #53040) 18:54
moritz_ pmichaud++ # r30764 19:07
rakudo_svn r30769 | jonathan++ | [rakudo] Free allocated memory in Perl6MultiSub, so we don't leak. 21:27
r30770 | jonathan++ | [rakudo] Fix trailing whitespace. 21:28
rjbs Hi, totally random drop-in question from someone who doesn't follow p6 21:36
does this dwiw:
moritz_ go right ahead
rjbs with ($obj) { .some_method_obj_provides } 21:37
moritz_ yes
rjbs fantastic, thank you
rjbs is trying to write up an explanation about why sigils are so nice, mostly for his .pm group
as long as I'm asking: is $self implicit in its own method bodies? 21:38
method foo { .some_other_method }
s/implicit/default invocant/
moritz_ no, it's not
rjbs Ok. Is that planned but not implemented, or not planned but likely to change?
moritz_ you'd have to write method my_method ($_:, $stuff) { ... }
it's not planned
rjbs thanks
moritz_ but there's the 'self' keyword/builtiin/whatever 21:39
rjbs sure
moritz_ and you can call $.method for example (which is an evil hack, but should work) 21:40
if it returns a scalar
or @.method if it returns a list
TimToady s/with/given/ 21:44
and the parens aren't necessary, so: given $obj { .some_method_obj_provides } 21:45
raiph hi 22:36
moritz_ hi
raiph i've read your recent perl5-6 posts. great stuff. 22:37
moritz_ thanks
literal me too, keep up the good work
raiph moritz: are you involved with november? 22:38
moritz_ I'm slowly running out of tuits/topics/motivation for the blog...
raiph: yes, a bit
I wrote a grammar for HTML::Template, and a few tests
raiph moritz: aha.
moritz_ and I discuss bugs that masak finds in rakudo ;) 22:39
rjbs TimToady: thanks 22:44
s1n moritz_: S02-builtin_data_types/array-mmd.t is fudged for rakudo as well, but doesn't have any tests that pass unfudged, just fyi 22:51
moritz_ s1n: yes, I noticed
s1n: I added the other (array-ref.t iirc) to spectest_regression 22:52
I should teach autounfudge.pl to also look at files outside of spectest_regression
so that they'll get unfudged when the tests start passing, but don't waste CPU cycles as long as no test is run 22:53
anyway, good work, s1n++ 22:54
s1n moritz_: there's a big problem with me running autounfudge, there's a bug in parrot that i'm working on that prevents me from doing any IO 22:57
moritz_ but IO isn't used very much in the tests, is it? 22:58
s1n the ones in spectest_regression will crash my system 22:59
moritz_ that's bad
what OS do you use?
parrot shouldn't even be able to crash your system
doesn't matter how buggy it is
s1n gentoo, 64bit 23:01
i reported rt#57776 along the same lines 23:02
i think they're related, but haven't been able to get a segfault, just flat out consumes everything
raiph juerd: ping
s1n looks like addresses bonked, they're doing IO in a kinda wonky way, relying on addresses to be in a certain order 23:03
they obviously aren't on my system
s1n that bug is on my todo list, just hadn't gotten to it, i'm working with chromatic on ironing out a few 64bit bugs, i'll eventually get to this 23:05
Juerd raiph: Sorry, not available any time soon; email me please
afk
s1n anyways, gotta go to class
moritz_ got to go to bed 23:06
raiph juerd: yay! I sent several emails a week or two back, incl. at least one to [email@hidden.address] from raiph.mellor atsign g mail dot com. I can repeat or use a diff email addy if you like. 23:09
Juerd Ah, I see them
raiph :) 23:10
Juerd I have not yet come around to the administation involved, sorry
afk && good night
raiph understand. no probs. you've always done a fab job in the years I've been lurking. no hurry. 23:11
StephenPollei maybe the tests should run with some setrlimit used to control resource overconsumption negatively affecting others and puting some sanity into test performance 23:14
rjbs Do I need parens around the cond in if? 23:26
if $bool { ... }
Myoma no
pugs_svn r22157 | moritz++ | [t/spec] some unfudging
rjbs Thnks. 23:28
literal rjbs: If you haven't seen it, here are some short introductions to various Perl 6 features -> perlgeek.de/blog-en/perl-5-to-6/ 23:30
lambdabot Title: blog | Perlgeek.de Blog :: Category Perl-5-to-6
rjbs literal: thanks; I just had a few direct questions for now apropos a journal entry i'm writing 23:44
ruoso moritz_, did you change the CSS of the 5-to-6 blog? or is it my browser that is rendering weird fonts? 23:46
literal looks fine here
then again, I have firefox set to use my fonts regardless of CSS :)
ruoso yeah... it looks better that way 23:49