»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo:, alpha:, pugs:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by lichtkind on 5 March 2010.
lue well, I guess that shows what a fool() I am :D 00:00
eternaleye rakudo: package Blarg { role xyzzy { INIT { our @x = 1,2,3;}; method fool($a) { say @x[$a]; }; }; xyzzy.fool(1); }
lue is convinced BrowserUk has a script for his IRC that randomly outputs ?
p6eval rakudo 0aed40: OUTPUT«Symbol '@x' not predeclared in fool␤current instr.: 'perl6;PCT;HLLCompiler;panic' pc 152 (compilers/pct/src/PCT/HLLCompiler.pir:108)␤»
eternaleye lue: He uses '?' to see if phenny has any messages for him. 00:01
lue ah, that makes sense.
rakudo: say e**(log(16,e)/2)
p6eval rakudo 0aed40: OUTPUT«4␤»
00:02 exodist_ is now known as Exodist
eternaleye rakudo: say 2**(log(16,2)/2) # eliminate approximated irrational 00:03
p6eval rakudo 0aed40: OUTPUT«4␤»
lue rakudo: say e**(log(42,e)/2) 00:04
p6eval rakudo 0aed40: OUTPUT«6.48074069840786␤»
lue rakudo: say sqrt(42) 00:05
p6eval rakudo 0aed40: OUTPUT«6.48074069840786␤»
lue rakudo: say 2**(log(42,2)/2)
p6eval rakudo 0aed40: OUTPUT«6.48074069840786␤»
lue well, wikipedia used e, so I use e! :) 00:06
It's only natural :)
00:14 yinyin joined
lue rakudo: say sin(89) 00:15
p6eval rakudo 0aed40: OUTPUT«0.860069405812453␤»
lue will go insane and attempt to implement.......CORDIC 00:18
00:19 eternaleye left 00:21 eternaleye joined
lue ...maybe 00:23
rakudo: multi sub infix:<+>($a is rw, $b){$a++ for ^$b;}; multi sub postfix:<++>($a is rw){$a + 1;}; my $z = 3; $z++; $z + 3; say $z 00:30
p6eval rakudo 0aed40: OUTPUT«maximum recursion depth exceeded␤current instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:97)␤»
lue I thought I could get away with that :P
I'll leave reimplementing sine for later, that's looking to be bloody difficult. 00:32
snarkyboojum g'day #perl6 00:35
noone has knocked off advent day 20 I take it?
00:36 lest_away is now known as lestrrat
lue Probably not, but I could. 00:36
The worst part about the CORDIC method to compute trig functions is you need trig functions to do it! [seemingly] 00:37
Which is why I hoped the recursive code I ran (look up) would work.
snarkyboojum lue: I started it last night, but just checking no-one demolished overnight (for me)
lue I feel like writing another advent test. It may be long, but it's easy in comparison to trying to calculate sine w/o actual measurements, tables, or taylor series 00:42
snarkyboojum lue: pick one of masak's - they're long and hard to convert into tests :) 00:44
lue OK. :D If you ll (or ls -l for the deprived) the t/spec/integration directory, any advent test ~80B has no tests. 00:45
tedv jnthn: What windows subversion client do you use? 00:47
lue Too bad the one-liners aren't part of the day [and that they output something, which is NGP for tests].
snarkyboojum lue: I think day 10, 12, 13, 18, 21, 24 are still free 00:48
00:52 synth left
lue day 10 already looks nightmare-ish, mainly because it will end up probably needing an external file 00:54
snarkyboojum this REPL segfault'ing bug is certainly going to encourage me get my syntax right first time :)
00:54 seatek left
lue what segfault? 00:55
00:57 seatek joined
lue afk 00:59
snarkyboojum lue: start the REPL and type anything which throws an exception, e.g. 'abc'
should segfault the REPL 01:00
colomon does the same thing happen with p6eval now? 01:05
rakudo: 3 + 67
p6eval rakudo 9a7fc8: ( no output )
snarkyboojum colomon: nope - just via REPL
colomon guess not.
snarkyboojum -e is fine
I thought it may be related to the autoprinting change, but who knows 01:06
colomon snarkyboojum: I suspect you're right.
I was mostly checking to see if autoprinting worked on p6eval now.
snarkyboojum colomon: oic
should autoprinting work on p6eval? 01:07
as that's run via -e
colomon darned if I know.
snarkyboojum I suspect not, as it's not run via the REPL, would be cool though :)
01:09 BrowserUk left 01:13 jaldhar left, jaldhar joined 01:30 masonkramer_ left
snarkyboojum help needed on day 20 advent tests (esp the last few which are commented out) gist.github.com/411425 01:34
01:35 meppl left
snarkyboojum any suggestions appreciated :) 01:37
colomon snarkyboojum: help needed in what sense?
snarkyboojum colomon: the last few crash rakudo - I guess advice on what to do there, are the tests Just Wrong, should I leave the commented out... not sure what to do with them 01:38
I should say 'raise exceptions' not crash Rakudo :)
colomon crash is fine by me. :)
I've never seen that +.karma ~.karma syntax before.
snarkyboojum e.g. "Null PMC access in find_method('params')"
ok - I should do some more tinkering with those few tests.. I don't know if I can get it working on alpha either 01:40
colomon I don't know if they are supposed to work -- they're really in the Advent calendar that way? 01:41
snarkyboojum well @people.sort: { ~.karma } actually works
but yeah, unless I've stuffed up, they're in the advent calendar like that 01:42
.say for @people.sort: { +.karma }; works
say @people.min: { +.karma }; doesn't
and some of the other sorts using Whatever don't
colomon oh, min and max definitely don't work with that form yet. 01:43
snarkyboojum but Whatever doesn't seem to work 100% correctly yet
colomon they should be skips for now.
snarkyboojum colomon: ok.. cool
Tene that shouldn't be hard to fix though, right?
colomon Whatever doesn't work very well yet, just hacked in a few very common cases.
Tene: good question 01:44
Tene should be just another multi method, yes?
colomon seems like I had a good reason not to do it, but I might have just been lazy
Tene: hmmm. never thought of that approach.
Tene what had you thought it would be? 01:45
snarkyboojum colomon++ # for reviewing my tests :)
colomon something like "if &code.arity == 1" ...
Tene Oh, I thought that it didn't take a sub form at all yet. 01:47
colomon Tene: no, it does, but it takes a two argument sub instead of a one.
Tene Should be able to: multi ... ( ... Code &bl where *.arity > 1 ) ...
yes? 01:48
colomon Tene: yes
Tene nice
snarkyboojum also, is 'is &foo.signature.perl, ':(Int $i, @stuff, Any $blah = { ... })' the best way to test check the signature?
Tene snarkyboojum: are you trying to test signature stringification there, or some contents of the sig? 01:49
colomon snarkyboojum: I have not the faintest idea. :)
snarkyboojum Tene: not stringification per se, but trying to write a test for example code in the advent calendar where the example is '&foo.signature.perl' 01:50
Tene: that's what I'm worried about.. the implicit stringification in the test
Tene snarkyboojum: I'd see what you can actually inspect on the returned signature instead. 01:51
I think the ideal would be comparing it to a constructed sig object, if possible
is &foo.signature, :(Int $i, @stuff, Any $blah) 01:52
oslt
I don't expect that would work perfectly, though.
snarkyboojum Tene: cool idea.. will try
colomon was not planning on stopping to think about how to implement another version of min and max tonight...
Tene colomon: you could cheat and have the one-arity version redispatch to the two-arity version. 01:53
;)
colomon Tene: yes, that would be easy but less efficient. :)
Tene self.sort: { &bl($^a) cmd &bl($^b) }
colomon sort can already do that, I think, it's just that min and max can't yet. 01:54
Tene colomon: depends on your priorities for the night.
colomon I was planning on focusing on music tonight. 01:55
Tene Heh.
:)
I'm off to start on dinner, then reinstalling my laptop tonight.
I meant to chat with masak this weekend, but then drama happened. 01:56
We need to get that Web.pm work finished.
01:56 [mark] joined
snarkyboojum rakudo: sub foo (Int $i, @stuff, $blah = 5) { ... }; say &foo.signature.^methods(:local).join(' ') 01:59
p6eval rakudo 9a7fc8: OUTPUT«perl ACCEPTS params␤»
snarkyboojum rakudo: sub foo (Int $i, @stuff, $blah = 5) { ... }; say &foo.signature.params[0].^methods(:local).join(' ') 02:00
p6eval rakudo 9a7fc8: OUTPUT«parcel constraints named_names copy ref readonly name type invocant named default optional type_captures rw multi_invocant slurpy signature capture␤»
eternaleye Tene: snarkyboojum: re comparing sigs, what about 'ok &foo.signature eqv :( Int $i, @stuff, Any $blah = { ... })' or 'is_deeply' to tests structure 02:16
s/tests/test/ 02:17
snarkyboojum I had a go doing this, but it's a little messy - gist.github.com/411425
just to test name and type
not sure if I should be creating @sig-info that way either :)
02:18 JimmyZ joined
snarkyboojum it's introducing a bit more code than is in the advent calendar as well, which isn't ideal 02:19
*isn't in
eternaleye snarkyboojum: I think you typoed twice and it came out correct - orig "than is" == "that isn't", but you corrected to "than isn't" 02:22
snarkyboojum I did :)
eternaleye english++
snarkyboojum I corrected it incorrectly, correct
:)
eternaleye Any language where messing up twice makes it correct has some serious golf potential. 02:23
snarkyboojum seems most of the examples in the spec test suite where .signature is used (e.g. is &both.signature, :(Mu *@_, Mu *%_),) are skipped 02:26
found some examples, but not clear which approach is better :) 02:30
02:37 masonkramer_ joined
snarkyboojum std: my @people; @people.min: { +.karma } 02:39
p6eval std 30768: OUTPUT«ok 00:01 115m␤»
snarkyboojum std: my @people; @people.min: +*.karma; @people.max: ~*.name; @people.max: { ~.name }; @people.sort: *.karma 02:40
p6eval std 30768: OUTPUT«ok 00:01 112m␤»
02:40 agentzh joined
pugssvn r30769 | snarkyboojum++ | [t/spec] Added initial tests for Perl 6 Advent Calendar Day 20: Little big things 02:42
02:46 masonkramer_ left 02:54 tedv left 03:04 dduncan joined 03:06 dduncan left
jnthn phenny: tell tedv I just use the command line svn client, e.g. from subversion.apache.org/packages.html#windows 03:07
phenny jnthn: I'll pass that on when tedv is around.
jnthn couldn't sleep, so gave up.
03:41 alester joined 03:49 masonkramer left, masonkramer joined
lue OHAI sleepy #perl6 03:51
04:00 JimmyZ left
lue jnthn: still giving up? 04:02
jnthn lue: Aye. :-) 04:04
I'm so not Rick Astley about my sleep today.
04:06 Khisanth left 04:15 snarkyboojum left
lue meme == sleep # for you ? :) 04:16
04:17 JimmyZ joined 04:34 Khisanth joined 04:37 snarkyboojum joined 04:38 snarkyboojum left 04:49 Lorn joined
cognominal reads S12, and the parts "Calling Set of methods" deserve a Lou Redd quotes "I said, honey , WALK in the wild side, and And the coloured girls say, 04:50
Doo do doo do doo do do doo"
*Lou Redd
lue "It's okay, we're from the Internet" --XKCD fans geohashing 04:51
I have to work that into daily conversation :)
cognominal lue, I often forget to let my mouse hover to get the popup where the punch like in : www.xkcd.com/742/ 04:55
lue Is that the most recent one? 04:57
cognominal nope 04:58
lue I love the most recent one though
"See this? It's the world's smallest open source violin" :D 04:59
cognominal that's not the last one any more :)
lue Well, then, 2nd to last :) 05:00
[can't wait for D* at the end of summer.]
Polymorphism is where one thing can be used as many, right? 05:01
many *different things* 05:02
cognominal I like when he jokes on the wikipiedia : www.xkcd.com/739/
lue Malamanteau has caused quite a stir 05:03
jnthn It spawned a whole talk page of incredible stupidity. 05:06
cognominal in french, it sound just like "malades mentaux" which means "mentally deranged people". So appropriate.
lue I think 1) Come up with malamanteaus, so malamanteau becomes a proper neologism 05:09
2) Create wiki(pedia&tionary&....) pages
3).....
4)Profit! :) 05:10
(Anywell.... [ :) ] ) 05:11
cognominal segfaulting rakudo is getting harder but this one odes it : 05:24
rakudo: say keys %( ::GLOBAL )
p6eval rakudo 9a7fc8: OUTPUT«Method 'hash' not found for invocant of class 'Failure'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
cognominal well it crash here on the most recent rakudo 05:25
hum, it crashes only in the perl6 shell 05:26
lue REPL is a lot more fragile 05:27
[how I understand it]
cognominal that's a garbage collecting bug according to the trace 05:28
jnthn, we have so little talk in Calais, that I will probably end-up doing half a day of a Perl6 workshop 05:31
now, I _really_ regret you will not be to help me :)
CharLingua++ 05:40
05:46 hercynium joined 06:06 kel__ joined 06:14 XaeroOne joined
lue afk and goodnight! 06:30
06:48 Lorn left
mathw Morning 07:19
07:40 christine left, christine joined 07:49 seatek left 07:59 proller joined, sundar joined 08:04 sundar_ joined 08:06 sundar left 08:08 Jedai left 08:10 sundar joined 08:11 sundar_ left 08:12 sundar left
moritz_ good morning 08:15
08:27 dakkar joined 08:48 mberends joined 08:56 lestrrat is now known as lest_away 09:03 Su-Shee joined 09:05 masak joined
masak oh hai, #perl6! 09:05
jnthn o/
masak jnthn: Ste nespali? 09:06
jnthn Ne dost. 09:07
*Trosku.* :-/
masak :-/ 09:08
jnthn je teraz unaveny...a skoro ma stretnutie.
masak Oh nie! 09:09
jnthn No dobre...v Malme tiez!
masak :(
jnthn Malmo je blizko...mohol by horsie. :-) 09:10
masak heh. 'blizko' :)
jnthn (ano, viem..."Malmö" ;-)
masak Ani som vidieť, ze. 09:11
hejki omfg 09:12
jätkät puhuu sujuvaa karvarannetta
masak :)
09:12 Jedai joined
hejki 'stretnutie' sounds like a word for 'prostitute' :P 09:12
masak it's 'meeting', I think.
jnthn lol 09:13
Yes, it's a meeting
Far more boring :-)
It actually falls straight out of the general verb nouning rules.
stretnut = to meet
hejki ok
jnthn Though I was using the word long before I knew how to noun verbs. :-) 09:14
Wow. If you accidentally the binary literal in C# (0b1000), the compiler gives you no less than four useless error messages. :-) 09:17
jnthn is getting too used to the awesome Perl 6 errors. 09:18
mberends oh hai jnthn, could you spend a bit of time on zavolaj ? 09:24
09:25 slavik left
cognominal zavolaJ? 09:27
I forgot what it was
mberends cognominal: native call interface from Rakudo
cognominal: currently attempting to expand the mysql client functionality 09:28
jnthn mberends: Yes, but not immediately - I need to head to Malmö shortly for some meeting.
mberends: What are you after, so I can ponder how to do it? 09:29
mberends jnthn: how to distinguish between a returned pointer and a NULL value
lisppaste3 mberends pasted "non working UnManagedStruct to Bool method" at paste.lisp.org/display/100342
09:30 slavik joined
jnthn mberends: In what way does it not work? 09:30
isnull doesn't return what you'd expect? 09:31
mberends jnthn: the mysqlclient function mysql_fetch_row() signals that there are no more rows by returning a NULL pointer
jnthn *nod*
I meant what is non-working in the thingy you pasted. :-)
mberends jnthn: isnull always returns the same value regardless of what the pointer contains 09:32
jnthn Aha.
Yeah...thing is that it's asking if $P0 contains a null
mberends always false, in this example
jnthn When actually it has an UnmanagedStruct PMC always, which may reference something null.
mberends indeed 09:33
:-(
so, something to gnaw at you brain whilst you travel ;-) 09:34
09:36 [mark] left
jnthn Having my brain nommed somehow sounds unappealing. :-) 09:36
mberends: Change 09:38
$I0 = isnull $P0
to
$I0 = defined $P0
mberends thanks jnthn, will try 09:39
jnthn (see line 916 of src/pmc/unmanagedstruct.pmc)
mberends jnthn++ # it works! 09:42
09:50 meppl joined
jnthn mberends: Yay! \o/ 09:57
Well, that was easier helping than I expected. :-)
mberends jnthn: SELECT is almost running in generic form :)
jnthn \o/ 09:59
moritz_ o//
10:00 kaare joined, kaare is now known as Guest34912 10:02 Guest34912 left 10:03 agentzh left
masak mberends++ jnthn++ # wow, Perl 6 and mysql! 10:08
jnthn thinks it's kinda cool that this will be installable via proto - without the need for a C compiler :-) 10:16
jnthn orka till Malmö 10:18
er
jnthn åker till Malmö
masak orka! :P 10:19
mberends updated github.com/jnthn/zavolaj 10:20
10:22 buu is now known as uub 10:32 ruoso left 10:33 uub is now known as buu
mberends It would be a really useful Rakudo challenge result, to find which other native libraries can now be called using zavolaj. 10:35
masak phenny: tell mathw that in trying to compile Form.pm, I'm getting "Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 26". you mentioned being able to compile From.pm -- do you have some local unpushed changes? 10:39
phenny masak: I'll pass that on when mathw is around.
10:41 jaffa4 joined
masak jaffa4: \o 10:41
jaffa4 hi 10:42
masak there's something called GnomeLove that looks a lot like the Rakudo challenge, only larger-scale and older: live.gnome.org/GnomeLove
so it seems we're on the right track. :) 10:43
10:43 plobsing left 10:44 FreeStorm joined
moritz_ while discussing the challenge with my girlfriend today I came up with an idea to extend it 10:46
a todo.perl6.org with lots of challenges tagged by effort, difficutly, involved systems, required knowledge, mentor etc. 10:47
and then the weekly challenge would just be "featured" challenge
though calling it 'love' instead of 'todo' is much sweeter :-) 10:48
ugh, having a full home directory does bad things to a running thunderbird :( 10:49
like re-downloading year old messages
masak love++ 10:50
moritz_ so we just need to find somebody to give that idea some love :-)
10:50 JimmyZ left
mberends so the next challenge is to design love.perl6.org 10:51
moritz_ it might be a bit large for a challenge 10:52
10:54 BrowserUk joined
masak probably something that will have to grow over time... 10:55
I hope I'll be able to position Emmentaler (the nightly app cheese testing project) such that it can get a web page through a weekly challenge. 10:58
moritz_ it would be great to re-use some kind of software for that
and not write one on our own complete (for the love.perl6.org thing) 10:59
writing websites seems like a topic that's gladly accepted
masak aye. 11:00
&
pugssvn r30770 | moritz++ | [S05] clarify how :x and :nth interact 11:01
r30771 | moritz++ | [t/spec] tests for RT #75234, using a metaop in one class hides it from a second class 11:02
11:02 pmurias joined
pmurias hi 11:02
moritz_ hi pmurias
11:04 ejs joined
pmurias today is the start of the gsoc coding period :) 11:04
moritz_ \o/
today is a publich holliday 11:05
pmurias which one? 11:06
moritz_ Pentecost 11:07
11:07 moritz_ sets mode: +o pmurias 11:09 ejs left
colomon \o/ # gsoc, Pentecost is not a public holiday here. 11:09
11:09 ejs joined 11:10 ive joined
colomon moritz_: the thing is, :nth and :x also make sense together if :nth is a single integer. It's just that it makes a completely *different* sort of sense then. 11:10
11:10 alester left
moritz_ ... which would be inconsistent with the rest of the semantics 11:10
colomon moritz_: yes 11:11
moritz_ if it were :every-nth I'd allow it
we have 13 public holidays in Bavaria, Germany (3 of which are on a Sunday this year, 2 on a Saturday) 11:12
Juerd How many private holidays do you have? 11:13
colomon as many as we can
moritz_ as many as I dare take 11:22
11:34 Amshu joined 11:35 Amshu left
pmichaud good morning, #perl6 11:54
mberends good day, pmichaud 11:55
pmichaud I finally figured out this morning how to get the REPL to work cleanly with code generation 11:56
mberends excellent! 11:57
pmichaud so, we should have a working repl shortly after I take the kids to school (i.e., in about 2-3 hours from now)
11:57 TiMBuS joined
mberends that is terrific news 11:58
12:00 ejs left, envi^home joined
pugssvn r30772 | pmurias++ | [mildew] my and named arguments in the m0ld replacement 12:01
r30773 | pmurias++ | [mildew] ? and ¢ support in the perl5 m0ld version 12:03
12:08 FreeStorm left
masak pmichaud: \o/ 12:08
pugssvn r30774 | pmurias++ | [mildew] fix submolds in the p5 m0ld 12:09
12:16 mberends left, skangas left, xinming left, Sarten-X left, mikehh left, PZt left, japhb left, astinus left, wolverian left, p6eval left
mathw masak: I do have some local unpushed changes. I also never had that error message! 12:17
phenny mathw: 10:39Z <masak> tell mathw that in trying to compile Form.pm, I'm getting "Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 26". you mentioned being able to compile From.pm -- do you have some local unpushed changes?
dalek kudo: a4d3266 | moritz++ | build/PARROT_REVISION:
bump PARROT_REVISION to get some testing after the ops_pct branch merge
masak mathw: all I did was make sure I had the latest version, run Makefile.PL, modify the Makefile to point to my global 'perl6', and run 'make'.
mathw yeah that definitely won't work at the moment 12:18
however, I found the problems I've got now very confusing
12:18 mathw sets mode: +o masak, mberends joined, skangas joined, xinming joined, Sarten-X joined, mikehh joined, PZt joined, japhb joined, astinus joined, wolverian joined, p6eval joined, card.freenode.net sets mode: +v p6eval
masak mathw: oh; I thought you said it compiled. 12:18
mathw yes
but I'm having trouble actually using it
masak mathw: if you share the nature of your current problem, maybe I can help.
mathw I would, but I've got work to do now 12:19
and I am unfortunately out all evening
12:19 JimmyZ joined
mathw So I can't do any more until tomorrow, when I'll be trying to boil down a test case for jnthn++ as I think it's a Rakudobug 12:20
possibly two
actually, probably two
I'm curious about your compile error though
as I got various other parse errors, but not that one
masak I can nopaste it. 12:21
mathw they were seriously LTA messages too, as they were quite misleading
please
masak mathw: gist.github.com/411797 12:22
the error message doesn't make any sense. 12:23
but I could try to golf it, if that helps.
mberends try a rough cut Rakudo DBI: github.com/mberends/fakedbi 12:24
mathw masak: yeah it doesn't
and it's different to the errors I got
so I can't help straight off
this whole thing is quite bizarre
and I think it might help shake out a few bugs 12:25
at least some LTA errors
there are some weird things going on around nested namespaces, qualifed and unqualified class names and the like
masak mathw: so far, attempting to port GGE has shaken out quite a few bugs.
mathw there are places I've seen fully-qualified class names not working and causing all sorts of parse crap
masak it's a lot of work, though :/
mathw while unqualified ones work when they shouldn't as those things weren't exported...
masak we've seen a surge in the number of modules/projects in the past year, but we're still too few actual Perl 6 coders... 12:26
mathw yes
well I'm gradually getting the time to get back into Form 12:27
masak \o/
mathw and now master can support it again, I intend to shake out bugs until it works
no problems at all with the enums, by the way
some stuff that uses them has even run correctly on my local box :D
12:27 hercynium left 12:28 hercynium joined
mathw of course I only use the most basic part of named enums 12:28
12:32 ruoso joined
masak mathw: do you have a recent Parrot/Rakudo? 12:33
mathw It was current as of Sunday morning 12:34
I will be updating again before continuing work on this of course
masak it's quite mysterious why we're getting different results. 12:36
mathw yes
masak mathw: mind if I add a .gitignore file to your repo?
mathw so I'm hoping that's explained by something that went in since I updated 12:37
masak: go ahead, do you have push access? I think you do
masak I think so too.
mathw well try it and find out :)
12:37 ive left
ruoso bom dia #perl6 12:37
mathw just don't put lib/Form.pm in it :)
phenny ruoso: 22 May 13:13Z <BrowserUk> tell ruoso In your vision, can coderefs be passed between kthreads? Eg. my $x=123; sub ($a) thing{ return $a * $x } ...; my @a <== map{ thing( $_ ) }, 1 .. 10; That is, the piped map is run in a kthread, it uses thing() which is a first class function, defined in the current kthreads as a closure over $x, which is a lexical defined in the spawning kthread.
ruoso: 22 May 13:15Z <BrowserUk> tell ruoso If closures are done by CPS keeping around stack frames, how does the spawned thread get to see the value of $x?
12:37 ive joined
masak mathw: :) I put the Makefile, lib/Test.pm and *.pir in it. 12:38
mathw brilliant
masak pushed.
mathw masak++
12:40 mberends left
ruoso phenny, tell BrowserUk that's where the shared values framework needs to be rounded up. Ideally, it would be detected that $x is shared amongst different kthreads... The other option is doing it via message-passing, so when a thread tries to read a value that belongs to other thread, it would send a message to that thread instead of reading the value directly... 12:40
phenny ruoso: I'll pass that on when BrowserUk is around.
12:43 Lorn joined
pmurias ruoso: is it ok if SMOP depends on mildew? 12:45
12:45 skangas left
ruoso pmurias, I guess... 12:46
moritz_ thought it would be the other way round
ruoso unless mildew depends on smop too :) that would make it a bit awckward :)
but I assume you're building the m0ld compiler in mildew 12:47
pmurias yes
ruoso so yes, it's pretty sane
12:47 tedv joined
pmurias i'm converting the m0ld into mildew's AST 12:47
ruoso I see...
that makes sense... 12:48
mathw masak: If you come up with any good fixes for Form.pm that work well for you, feel free to push those as well. 12:49
masak will do.
pmurias ruoso: v6/mildew-old/m0ld is the start of that
masak right now I'm occupied by $work, but will look at it later.
mathw However, I think jnthn might prefer bug-revealing test cases :)
pugssvn r30775 | pmurias++ | [mildew] remove old code 12:51
12:52 ejs joined 12:57 ejs left 12:59 yinyin left 13:01 ejs joined
pmichaud ....is there a way that I can easily see what got changed as a result of bkeeler++'s merge? 13:07
I never got a chance to review the last set of proposed changes
13:08 JimmyZ left
masak pmichaud: what about 'git show b9f260'? seems to work here. 13:10
13:10 ejs left 13:12 JimmyZ joined 13:14 perlygatekeeper joined
colomon pmichaud: I usually look at the list of commits at github.com/rakudo/rakudo/commits/master and click on ones that look interesting to see the diffs. 13:15
ooo, but if it was a proper merge of two branches, that might be LTA. 13:16
pmichaud it was a merge
so github only shows me the changes that went from master into the branch, not vice-versa
and I'm trying to see the nqp-rx changes, not the rakudo ones (but will need to look at those next)
13:17 clintongormley joined, sahadev joined
pmichaud crap. this is not how I intended to be spending this morning. 13:18
sahadev hello 13:21
[Coke] ~~ 13:22
sahadev i am getting the error "Could not find sub &infix:<~~>
current instr.: '' pc 289070 (src/gen/perl6-actions.pir:0)" when compiling rakudo.
how do i fix this?
slavik so, what the new syntax for iterating the iterator?
colomon moritz_: --gen-parrot doesn't seem to be working for me with your latest patch? 13:23
[Coke] does a new build with a fresh parrot. 13:24
colomon is trying the same now.
yup, just needed to blow away the old parrot before doing perl Configure.pl --gen-parrot 13:28
Can't remember seeing that particular failure before, though.
pmichaud *sigh*
[Coke] colomon: rakudo just does an 'svn up' in place when updating parrot. that is not guaranteed to work.
pmichaud okay, repl may be a bit delayed :-(
what needs to happen is that build/gen_parrot needs to be updated to do the realclean before the 'svn up' 13:29
[Coke] pmichaud: even that wouldn't have helped in this case.
pmichaud currently it's doing the realclean after the svn up, which no longer works
[Coke] you really need an svnclobber, or whatever it's called.
13:29 viklund left
[Coke] (yup, works for me here on a fresh parrot and rakudo.) 13:30
13:31 am0c joined 13:37 ejs joined 13:41 dju left
masak sahadev: when are you getting this error? 13:43
sahadev masak: .../rakudo/parrot_install/bin/parrot perl6.pbc --target=pir --output=Test.pir Test.pm 13:44
JimmyZ .... > $a = 3;
segfault
sahadev starting with a brand new parrot doesn't help either.
masak sahadev: odd. haven't heard other similar reports.
sahadev fwiw, i have seen it on my home laptop and work desktop. both running ubuntu jaunty. 13:45
masak and you're installing Rakudo throught git? 13:46
moritz_ JimmyZ: known problem
colomon: you need to remove parrot/, or do some serious cleaning in there
colomon moritz_: yes, I figured that out. 13:47
sahadev masak: yes
masak: i have the git source + one patch (rt.perl.org/rt3/Public/Bug/Display....id=75246). that was causing the problem. removing the patch fixed the problem. 13:49
masak huh. 13:50
13:51 patspam joined
masak sahadev: my best guess, without looking at that patch, is that the patch runs into some of the known troubles with the core/setting/circumlude. 13:54
13:56 alester joined, pmurias left 13:59 ejs left 14:09 gbacon joined, pnu left, ejs joined 14:11 AndroUser joined
jnthn back from meeting 14:11
masak \o/ 14:12
14:12 pnu joined
AndroUser who am i? 14:12
bother
masak AndroUser: welcome :) 14:13
AndroUser (colomon trying out irc from phone.)
;)
14:14 PacoLinux joined
AndroUser did that work? 14:15
:(
14:15 AndroUser left
masak AndroUser: I liked you better as colomon. you seemed happier. 14:15
14:16 colomon_phone joined, pmurias joined
colomon_phone there we go 14:16
jnthn
.oO( is that like banana phone? )
14:17
eternaleye colomon_phone: Maybe colomandroid?
pmurias diakopter: hi
14:17 pmichaud-ph joined
pmichaud-ph I can do this too. :-) 14:18
jnthn gets phone envy
colomon_phone eternaleye: colomonbot would be shorter. ;)
pmichaud jnthn: you got an HTC also? ;-)
14:19 dakkar_ joined, dakkar left
pmichaud oh, wait, that's an LG phone 14:19
jnthn pmichaud: :-P
I don't have any phone that you might class as "smart"
pmichaud (www.lgmobilephones.com/phone.aspx?id=298 for those missing the reference)
jnthn pmichaud: Did I hear something about repl? :-) 14:20
pmichaud I'm eagerly awaiting the new os update for my phone :-)
jnthn: yes, but I'm going to hold off on the repl so I can fix the interpolation changes that got pushed in over thew eekend
jnthn Interpolation changes?
Oh, regex ones.
pmichaud right
14:20 mikehh left
jnthn :-) 14:20
pmichaud they're.... still not right. 14:21
jnthn Ah.
Don't do the right thing, or do the right thing wrongly?
[Coke] pmichaud: you get my yapc-related message?
pmichaud a little of both
mostly it adds way too many dependencies between things
[Coke]: no, not yet 14:22
[Coke]: I haven't decided yet on yapc, and no, I don't have anyone covering my talks yet.
14:23 rgrau` left
[Coke] hokay. 14:23
I thought you had decided in the negative. if I can convince you to go, lemme know. =-)
pmichaud it's still dependent on travel expenses 14:24
sahadev masak: changing '$l ~~ Iterable' form to 'Iterable.ACCEPTS($_)' form in the patch doesn't fail compilation. 14:25
pmichaud
.oO( wouldn't that be Iterable.ACCEPTS($l) ?)
14:26
masak sahadev: cool. what pmichaud said.
or thought.
sahadev pmichaud: yes. that was a typo. 14:27
colomon_phone pmichaud: I was looking forward to meeting you...
14:28 pmichaud-ph left
masak rakudo: sub foo(Str $x) #`{LOL IMA COMMENT} { ... } 14:28
p6eval rakudo a4d326: OUTPUT«Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 11␤current instr.: 'perl6;Regex;Cursor;FAILGOAL' pc 1812 (ext/nqp-rx/src/stage0/Regex-s0.pir:1008)␤»
masak mathw: there's the error. a comment in that place.
std: sub foo(Str $x) #`{LOL IMA COMMENT} { ... }
p6eval std 30775: OUTPUT«ok 00:01 116m␤»
masak submits rakudobug
there are variants, too.
rakudo: sub foo($x) #`{LOL IMA COMMENT} { ... } 14:29
p6eval rakudo a4d326: OUTPUT«Symbol '$ss_SS_S_S__S_S_s' not predeclared in <anonymous>␤current instr.: 'perl6;PCT;HLLCompiler;panic' pc 152 (compilers/pct/src/PCT/HLLCompiler.pir:108)␤»
PerlJam colomon_phone: pay his travel expenses :)
masak er.
locally, that gives "Lexical '$x' not found"
mathw masak: aaaaaaah
masak mathw: now, how come that doesn't blow up for you?
pmichaud I don't think that Rakudo ng knows #`{....} comments yet. I could be wrong about that. 14:30
(alpha did.)
masak hence the rakudobug.
mathw masak: I don't know
sahadev rakudo: my @a = 0..2; for @a { $_++ if $_ } say @a.perl
p6eval rakudo a4d326: OUTPUT«Confused at line 11, near "for @a { $"␤current instr.: 'perl6;HLL;Grammar;panic' pc 501 (ext/nqp-rx/src/stage0/HLL-s0.pir:327)␤»
sahadev rakudo: my @a = 0..2; for @a { $_++ if $_ }; say @a.perl
pmichaud rakudo: 3+4 # just curious
p6eval rakudo a4d326: OUTPUT«[0, 2, 3]␤»
rakudo a4d326: ( no output )
colomon_phone PerlJam: alas, only reason I can go is it is dirt cheap for me.
masak sahadev: semicolon after block.
PerlJam colomon_phone: yeah, I know the feeling. 14:31
sahadev rakudo: my @a = 0..2; for @a { if $_ { $_++ } }; say @a.perl
p6eval rakudo a4d326: OUTPUT«[0, 1, 2]␤»
masak sahadev: ah, you did that. sorry :)
sahadev masak: no problem.
is this a known bug?
the second form (for @a { if $_ { $_++ } }) fails. 14:32
for @a { $_++ if $_ } # works
pmichaud sahadev: I don't think it's in RT, no.
sahadev: (yes, I was aware of the potential bug there.)
14:32 pyrimidine joined
sahadev cool 14:32
14:34 dakkar_ is now known as dakkar
sahadev pmichaud: should i go ahead and submit a bug? 14:34
[Coke] sure.
pmichaud sahadev: +1
cognominal I want to do some write dumping alernative to --target=parse somehow I can't find how it is done in rakudo :( 14:35
any clue?
I found a __dump method, but that's for nqp
pmichaud cognominal: it's the same method
cognominal: it's just using Data::Dumper from Parrot. 14:36
(and dumping the match tree using that)
cognominal strange, I added a fake function call to get a stack trace and it did not go thru that. Thx, with your reassurance I will find it 14:37
pmichaud the code that handles the parse tree dump is in github.com/perl6/nqp-rx/blob/master...Dumper.pir
dalek kudo: 49b2c13 | Shrivatsan++ | src/core/Iterator.pm:
added .fmt method to Iterator.pm so that fmt can take Iterators of any form.
14:38
pugssvn r30776 | moritz++ | [t/spec] unfudge .fmt tests for rakudo 14:43
dalek kudo: 10a3218 | moritz++ | CREDITS:
add isBEKaml to CREDITS
14:44
pugssvn r30777 | moritz++ | [t/spec] tests for RT #67278, non-awesome error message for class Foo does NonRole 14:46
14:47 mj41_ joined
cognominal masak, if you want to train in "modern shakespeare", read the two gentlemen of lebowski :) 14:50
14:50 mj41 left
masak cognominal: I read it; it's wonderful :) 14:50
14:50 mj41_ is now known as mj41 14:51 iblechbot joined
jnthn rakudo: class Foo does NonRole { } 14:52
p6eval rakudo a4d326: OUTPUT«Typename NonRole must be pre-declared to use it with does at line 11, near "{ }"␤current instr.: 'perl6;HLL;Grammar;panic' pc 501 (ext/nqp-rx/src/stage0/HLL-s0.pir:327)␤»
jnthn rakudo: class NonRole { }; class Foo does NonRole { }
p6eval rakudo a4d326: OUTPUT«Can only use does with a role, but NonRole is not one␤current instr.: '&die' pc 18143 (src/builtins/Junction.pir:381)␤»
jnthn rakudo++
moritz_ jnthn++
14:54 rv2733 joined
ajs Well, I wanted to get further, but need to run. tiny.cc/x9i6x now passes 7/12 of its tests. (URI.pm) I need to fix some additional issues and eventually need to figure out the solution to that character range issue I sent out mail about, but it's starting to shape up! 14:55
Now if I could just get my firewall to play ball with git :-/ 14:56
moritz_ ajs: can't you just push to github? 14:57
ajs I could... I was trying to be all independet, like, but yeah, that'll probably be tonight
moritz_ with git you're not so dependent on the repo hoster 14:58
if you don't like github anymore, you can just push to $any_other_location
masak rakudo: enum A <a b c>; class Foo does A {} 14:59
moritz_ it's not like extracting all history was difficult :-)
p6eval rakudo a4d326: OUTPUT«Can only use does with a role, but {"b" => 1, "c" => 2, "a" => 0} is not one␤current instr.: '&die' pc 18143 (src/builtins/Junction.pir:381)␤»
jnthn lol
masak: Yeah, it just .perl's the thing...which for a typename usually works out great. :P
masak jnthn: I'll not submit that one, because the cause of it was submitted yesterday. 15:01
(A being an EnumMap) 15:02
jnthn It shouldn't be? 15:03
masak an anonymous enum should, yes. 15:05
a named one should wrap an EnumMap.
jnthn ah
Patches welcome.
masak (retreivable through .enums)
jnthn: I might attempt it. in my copious spare time.
jnthn I just did the minimum implementation that might work.
masak jnthn++
jnthn Which, by the way, I've not heard feedback about as to whether it's useful for the cheese - is it?
pyrimidine rakudo: rakudo: my @list = '&nbsp;', '&nbsp;&lt;', '&lt;', '&gt;', '&amp;'; say "&nbsp;&lt;&gt;&amp;".match(/ @list /, :g).join("\n");
p6eval rakudo a4d326: OUTPUT«Confused at line 11, near "rakudo: my"␤current instr.: 'perl6;HLL;Grammar;panic' pc 501 (ext/nqp-rx/src/stage0/HLL-s0.pir:327)␤»
masak the type of A must be something that implements .pick correctly, too.
pyrimidine rakudo: my @list = '&nbsp;', '&nbsp;&lt;', '&lt;', '&gt;', '&amp;'; say "&nbsp;&lt;&gt;&amp;".match(/ @list /, :g).join("\n");
masak rakudo: enum A <a b c>; say A.pick
p6eval rakudo a4d326: OUTPUT«&nbsp;␤&lt;␤&gt;␤&amp;␤» 15:06
rakudo a4d326: OUTPUT«c 2␤a 0␤b 1␤␤»
pyrimidine sorry 'bout mangling that :(
Is LTM working with var interpolation in nqp-rx? 15:07
I would think that should pick '&nbsp;&lt;', not the two smaller matches 15:08
masak doesn't think LTM works there yet
pyrimidine ok. 15:09
jnthn No, I think not.
pmichaud no, I don't think it works there
it can be made to work there after I finish my fixes to the regex interpolator
(working on that now)
15:09 colomon_phone left
pyrimidine ok. working on .trans, and have it working with a few exceptions 15:09
like that one
BrowserUk ? 15:10
phenny BrowserUk: 12:40Z <ruoso> tell BrowserUk that's where the shared values framework needs to be rounded up. Ideally, it would be detected that $x is shared amongst different kthreads... The other option is doing it via message-passing, so when a thread tries to read a value that belongs to other thread, it would send a message to that thread instead of reading the value directly...
15:10 orafu left
pyrimidine rakudo: my @list = '&nbsp;&lt;', '&lt;', '&gt;', '&amp;'; say "&nbsp;&lt;&gt;&amp;".match(/ @list /, :g).join("\n"); 15:10
p6eval rakudo a4d326: OUTPUT«&nbsp;&lt;␤&gt;␤&amp;␤»
pyrimidine rakudo: my @list = '&nbsp;', '&nbsp;&lt;', '&gt;', '&amp;'; say "&nbsp;&lt;&gt;&amp;".match(/ @list /, :g).join("\n"); 15:11
p6eval rakudo a4d326: OUTPUT«&nbsp;␤&gt;␤&amp;␤»
pyrimidine leftmost
15:11 JimmyZ left
pyrimidine *leftmost first 15:11
15:12 orafu joined 15:13 skangas joined
BrowserUk phenny: tell ruoso, I think that message-passing is a red-herring here. a) Sending a message to another thread, implies that the other thread has a message loop (that is polled regularly). b) How does the calling thread identify the variable (in the callee's context) that it needs the value of? c) If the operation in the calling thread is <read $x; do some things; update $x> then you have the liveness/locking problem. 15:26
phenny BrowserUk: I'll pass that on when ruoso is around.
[Coke] any perl6's who are going to yapc::na for sure? 15:30
colomon [Coke]: me
[Coke] sixperlers? (is that better?)
colomon perlsixers? 15:31
[Coke] colomon: woot. are you running the rosa BOF room? =-)
colomon errr.... no? what's a "rosa BOF room"?
[Coke] yapc2010.com/yn2010/schedule?day=2010-06-21 15:32
ah, even better: yapc2010.com/yn2010/event/671 15:33
colomon This is the first I've actually seen the schedule. There's an all day Perl 6 / Parrot workshop both days!?!
pmichaud there's a room reserved for Perl 6 / Parrot stuff
it's not really an organized "workshop" (yet?)
[Coke] pmichaud: I don't see it turning into one. 15:34
pmichaud [Coke]: me either
we should probably get that title changed
colomon what is it intended to be? 15:35
BrowserUk phenny: tell ruoso, I see 4 possilble solutions: 1) whenever a variable is closed over, it is lifted into a global pad at compile-time; Not good because it imposes locking on all closed-over vars regardless of whether then ever transend threads. 2) They only get lifted to the global pad at runtime when they are used cross-kthread; How easy is it to distinguish closed-overs from normal lexicals from within a sub?
phenny BrowserUk: I'll pass that on when ruoso is around.
[Coke] good idea. (allison has already indicated the focus should be more sixy than parrot), and we should remove "workshop".
colomon: an excellent question. 15:36
pmichaud at YAPC::NA last year, there was a 2-day Parrot workshop before the conference
[Coke] (which we're not doing this year!)
pmichaud this year, no such thing was schedule. particle++ contacted the conference organizers and said "we'd like some space to hold some parrot / rakudo workshops" and that's what we got.
*scheduled
colomon oooo, Conway workshops.
BrowserUk phenny: tell ruoso, 3) Lift the entire closure into the global pad at compile time; Not good for the same reasons as 1), but more so. 4) Lift the entire closure to the global pad at runtime. Can closures be distinguished from non-closures at runtime? I favour 1), but 4 might be better in a CPS environment? 15:37
phenny BrowserUk: I'll pass that on when ruoso is around.
[Coke] asks in #yapc. 15:38
BrowserUk phenny: tell ruoso, Correction: I favour 2), but 4) ...
phenny BrowserUk: I'll pass that on when ruoso is around.
15:38 TiMBuS left
colomon I see day 2 has four really exciting sounding panels, sweet! 15:39
and I think [Coke] is already signed up for all of them... :)
pmichaud argggh... The Perl 6 talk is scheduled opposite of the IronMan forfeit talk?!? 15:42
jnthn :/ 15:44
pmichaud I think I'll switch my talks around :) 15:45
(assuming I end up going, of course )
masak swimming &
15:45 masak left 15:49 masonkramer left
ruoso BrowserUk, the problem is, every block is a closure... 15:49
phenny ruoso: 15:26Z <BrowserUk> tell ruoso I think that message-passing is a red-herring here. a) Sending a message to another thread, implies that the other thread has a message loop (that is polled regularly). b) How does the calling thread identify the variable (in the callee's context) that it needs the value of? c) If the operation in the calling thread is <read $x; do some things; update $x> then you have the liveness/locking problem.
ruoso: 15:35Z <BrowserUk> tell ruoso I see 4 possilble solutions: 1) whenever a variable is closed over, it is lifted into a global pad at compile-time; Not good because it imposes locking on all closed-over vars regardless of whether then ever transend threads. 2) They only get lifted to the global pad at runtime when they are used cross-kthread; How easy is it to distinguish closed-overs from normal lexicals from within a sub?
ruoso: 15:37Z <BrowserUk> tell ruoso 3) Lift the entire closure into the global pad at compile time; Not good for the same reasons as 1), but more so. 4) Lift the entire closure to the global pad at runtime. Can closures be distinguished from non-closures at runtime? I favour 1), but 4 might be better in a CPS environment?
15:50 masonkramer joined
phenny ruoso: 15:38Z <BrowserUk> tell ruoso Correction: I favour 2), but 4) ... 15:50
15:50 jotr^afk left
[Coke] I am happy about yapc2010.com/yn2010/talk/2765 but sad it's friday and I can't stay. 15:54
pmichaud weird, looking at that page one cannot see the title of the talk
(or, at least, I can't) 15:55
[Coke] Damian - Hands-on Perl 6 with Rakudo 15:56
pmichaud I mean in the text of the page itself
jnthn Nice!
pmichaud first thing I see is "By Damian Conway..." 15:57
jnthn wonders if Damian will do such a course at YAPC::EU
15:57 Ross joined
colomon that's cool, but I will be long gone by friday too. :( 15:57
15:58 pyrimidine left
jnthn pmichaud: I see the same, fwiw. 15:59
16:01 pyrimidine joined
ruoso phenny, tell BrowserUk assuming the other kthread is reading an input is already a given by the "every kthread has a cooperative scheduler for coroutines". We would just enqueue a new coroutine in the target kthread. About closure/non-closure... every block is a closure in Perl 6... In my head... the alternative to shared-values (if it gets too expensive or too hard) is going to the actor model... 16:01
phenny ruoso: I'll pass that on when BrowserUk is around.
jnthn notices there's a talk about Blizkost too
16:05 justatheory joined 16:09 cdarroch joined, cdarroch left, cdarroch joined
[Coke] pmichaud: to add to your pile: 16:14
12:13 <@robkinyon> Coke: that name was at pmichaud's request
12:13 <@robkinyon> so, take it up with him. :)
so if /you/ could request the name change for the ``workshop'', that'd cut through some red tape. 16:15
[particle] i'm sure i could do it as well 16:16
[Coke] very likely.
I don't think they even know for sure who asked for it. 16:17
[particle] no, i asked for it. they don't know, for sure :)
what do you want to nam eit?
[Coke] so far all I have is "not a workshop"
BrowserUk ruoso: BrowserUk, the problem is, every block is a closure...even blocks that do not use any variables from outside the current scope? If so, why? 16:18
phenny BrowserUk: 16:01Z <ruoso> tell BrowserUk assuming the other kthread is reading an input is already a given by the "every kthread has a cooperative scheduler for coroutines". We would just enqueue a new coroutine in the target kthread. About closure/non-closure... every block is a closure in Perl 6... In my head... the alternative to shared-values (if it gets too expensive or too hard) is going to the actor model...
bkeeler pmichaud: Sorry to hear I messed up, I thought I had it pretty much they way we talked about. What did I get wrong?
[Coke] "Perl 6 (and parrot) BOF" seems better. I'd shop it around though.
pmichaud bkeeler: the regex code shouldn't be calling methods to convert values to strings/regexes 16:19
that should be set up by the HLL
also, there would be recursion problems with something like [ $a ] *
er
[ $a ]*
[Coke] also be nice if there was a description that mentioned something about a hackathon, a BOF, and that the room isn't necessarily going to be manned the whole day, as we're attending the conference too.
pmichaud because the iterator register would get clobbered on the repetition
or, more clearly: [ @a ]* 16:20
bkeeler pmichaud: Hmmm, sounds nasty 16:21
pmichaud I have some updated regex code -- just bring NQP along to match now
BrowserUk Ruoso: "We would just enqueue a new coroutine in the target kthread." Okay, but how long before the coroutine that is currently running there will yield so that the new one will run? And that doesn't deal with the <read $x; do things; update $x;> scenario: Eg, the classic bank account withdrawal if fund available. You need to queue a second trans-kthread coroutine to do the update. And liveness is gone. 16:23
pmichaud *bringing
16:24 am0c left
colomon [Coke]: "hackathon, a BOF, and that the room isn't necessarily going to be manned the whole day, as we're attending the conference too" -- I'd definitely be interested in helping out with something like that. heck, outright excited about hackathoning... 16:28
pyrimidine if I were to do something like / @alts /, where @alts is a mix of strings, ranges, regexes, is it possible to look up the type in the Match object?
I would think $($/).keys, but it's not working 16:29
[Coke] colomon: I plan on being there when not attending talks. 16:30
colomon [Coke]: bad news on that front is I think you and I want to attend the same talks. :) 16:31
(ie we can't be trading off shifts there.)
Though I'd be surprised if many people interested in Perl 6 didn't want to hear Pm or Damian talk. 16:32
bbkr rakudo: say 1...1..0 # this one kills Rakudo, should it be check for valid type on right side of ... operator?
p6eval rakudo a4d326: ( no output )
colomon bbkr: it should work
it's a ... bug
bbkr reports 16:33
colomon bbkr: actually, what error does it get? 16:34
(and looking at it again, it shouldn't work, exactly.)
(oh, I see, no output)
bbkr no error, looks like infinite loop 16:35
colomon rakudo: say 1..0
p6eval rakudo a4d326: OUTPUT«␤»
colomon rakudo: say 1...()
p6eval rakudo a4d326: ( no output )
colomon yeah, okay, that won't ever do anything useful.
16:36 isBEKaml joined
isBEKaml hello, #perl6! 16:36
colomon o/
16:37 proller left
bbkr colomon: so is it bug or not (despite code being pointless)? 16:37
colomon btw, I don't see any obvious way to type \ on my phone, which means if I irc from it one hand will get worn out.
bbkr: definite bug, I'd say. 16:38
but it should just give an error message of some sort.
you're supposed to be able to pass an array on the RHS of ...
but I don't think there is spec for the array being empty. 16:39
bbkr colomon: thanks, bug submitted
colomon bbkr++
16:41 dju joined, dju left 16:42 constant left, dju joined
TimToady more precisely, the RHS is supposed to be a list, not an array 16:43
colomon TimToady++ # for saying it clearly.
so, what if the RHS is the empty list? 16:44
TimToady then the first value is not terribly useful 16:45
if the .get on that list returns EMPTY, probably the ... returns EMPTY as well
or possibly the list on the left 16:46
but that kinda goes against the part of the spec that says 1,2,3...2 returns 1,2
colomon rakudo: say 1, 2, 3...2 16:47
p6eval rakudo 10a321: ( no output )
colomon apparently need to add that test too....
isBEKaml rakudo: say 1...1,2,3,4;
p6eval rakudo 10a321: OUTPUT«1␤»
TimToady the rationale is that people will write subscripts like .[2,4,6...$max] 16:48
colomon isBEKaml: that one should return 1, 2, 3, 4
16:48 proller joined, envi^home left
isBEKaml colomon: known bug? 16:48
colomon yes
more NYI than bug. ;)
isBEKaml :)
16:48 constant joined, constant left, constant joined
[Coke] wishes for "perldoc -f ..." 16:49
TimToady but interestingly, by the above policy, 1...1,2,3,4...2 should return 1,2
16:49 pmurias left, ruoso left
TimToady it's hard to know what the best default is on that 16:50
either way will surprise people
depends on whether they are thinking of 2,4,6 as abstract or concrete, and we can't know
isBEKaml rakudo: my @list=<a b c d>; say 1...@list; ## is this right usage? my local rakudo goes into a spin.... 16:51
TimToady but I think taking it as abstract is probably better
p6eval rakudo 10a321: ( no output )
colomon particularly when 1...1,2,3,4,5...2 should return 1, 2, 3, 4, 5, 6, 7, 8...
isBEKaml: no
isBEKaml: what are you trying to do?
isBEKaml colomon: I just looked at RHS of ... should be a list. Curious what that would take, so put that in.. ;) 16:52
colomon isBEKaml: ah. well, first, the list elements should be roughly the same type as the start element. Mixing 1 and 'a' is weird. 16:53
isBEKaml: second, lists on the RHS is NYI.
isBEKaml right.
[particle] the other way to say NYI is DIY ;) 16:56
bbkr std: 1, * ... 1
p6eval std 30777: OUTPUT«ok 00:01 114m␤»
bbkr rakudo: 1, * ... 1
p6eval rakudo 10a321: OUTPUT«Method 'Num' not found for invocant of class 'Block'␤current instr.: 'perl6;Mu;' pc -1 ((unknown file):-1)␤»
bbkr hmm, example abowe - NYI or a bug?
above*
colomon TimToady: any idea what 1, * ... 1 should do?
bbkr: I think that one might be a "bug" in STD. 16:57
[Coke] I would expect that to be (1) 16:58
colomon [Coke]: but what does the * mean in this context?
16:58 Ross left
[Coke] colomon: does it matter, we never get there? 16:58
bbkr why? according to S03 it's legal syntax. 1,*...4 should be 4x '4'
4x '1'
isBEKaml wait, why does it say "Block" there?
colomon [Coke]: it does matter, because we look to the * to figure out what the pattern for the series is. 16:59
and we're looking for a closure, not a loose Whatever.
[Coke] (do you need the pattern if you don't have to get by the first element?)
colomon bbkr: errr... if the spec says that, it's wrong, IMO.
16:59 Ross joined
colomon [Coke]: figuring out the pattern is done first. 16:59
bbkr there is example in S03, which also crashes on Rakudo: 1, -* ... * # 1, -1, 1, -1, 1, -1... 17:00
[Coke] colomon: no, by my reading of the spec.
you get the limit (first element of the RHS), then you evaluate the list on the left one at a time, until you are eqv to the limit.
so, you'd get the 1 from the RHS, then pull the 1 from the LHS, and then you're done. 17:01
but, I iz not a larry.
bbkr Coke: indeed, i understood it the same way
colomon rakudo: (1, { -$_ } ... *).perl.say 17:02
p6eval rakudo 10a321: OUTPUT«(1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, {???} ... ???)␤»
colomon rakudo: (1, -* ... *).perl.say
p6eval rakudo 10a321: OUTPUT«Method 'Num' not found for invocant of class 'Block'␤current instr.: 'perl6;Mu;' pc -1 ((unknown file):-1)␤»
colomon bbkr: that one is just an example of Whatever closures not fully working yet.
bbkr colomon: ok, then i won't report it if it's just NYI 17:03
17:04 ruoso joined
colomon [Coke]: I think you're right. 17:07
pugssvn r30778 | lwall++ | [S03] typo noticed by markjreed++
17:08 dakkar left
colomon [Coke]: maybe. it's a really perverse case. 17:08
17:12 SmokeMachine joined
ruoso BrowserUk, around? 17:12
colomon
.oO(We could probably use dozens of additional test cases in the series test files....)
17:21 SmokeMachine left 17:22 skangas left, ash__ joined
bbkr rakudo: say Inf.Int !% Inf.Int + 1 # bug? according to S03 it should return true or false, why it returns "2" ? 17:28
p6eval rakudo 10a321: OUTPUT«2␤»
pmichaud because false == 0 in a numeric context?
or true == 1 in a numeric context?
rakudo: say +(Inf.Int !% Inf.Int)
p6eval rakudo 10a321: OUTPUT«1␤»
pmichaud rakudo: say (Inf.Int !% Inf.Int).WHAT
p6eval rakudo 10a321: OUTPUT«Bool()␤» 17:29
bbkr rakudo: say (Inf.Int !% Inf.Int + 1).WHAT
p6eval rakudo 10a321: OUTPUT«Num()␤»
17:29 skangas joined
pmichaud the infix:<+> coerces its arguments into numbers 17:30
TimToady rakudo: say (Inf.Int % Inf.Int).WHAT
p6eval rakudo 10a321: OUTPUT«Int()␤»
TimToady rakudo: say (Inf % Inf).WHAT 17:31
p6eval rakudo 10a321: OUTPUT«Num()␤»
TimToady though, arguably, $x % Inf is the identify function :) 17:32
rakudo: say Inf % Inf
bbkr still - if "Inf.Int + 2" is "Int" then I expect Bool from !% operator, not Num, right?
p6eval rakudo 10a321: OUTPUT«NaN␤»
pmichaud bbkr: precedence 17:33
% has higher precedence than +
TimToady sure, ! always forces Bool
pmichaud rakudo: say Inf.Int !% (Inf.Int + 1)
p6eval rakudo 10a321: OUTPUT«1␤»
bbkr indeed, thanks, not a bug. 17:34
colomon and Bool::True == 1
(and I think bbkr figured out what was going on before I did. should have stayed quiet. :)
TimToady rakudo: say 42.0 % Inf
p6eval rakudo 10a321: OUTPUT«NaN␤»
TimToady does IEEE require that? or is it a guess? 17:35
bbkr it was tricky, because there is no !% operator in S03 "precedence" section
pmichaud ! is a meta-operator
TimToady seems like you ought to preserve the identity that $x % $y is always $x if $y is larger 17:36
even if $y is Inf
I can see that Inf % Inf is indeterminate, though 17:37
jaffa4 rakudo: m:g/g/; 17:41
p6eval rakudo 10a321: OUTPUT«Confused at line 11, near "m:g/g/;"␤current instr.: 'perl6;HLL;Grammar;panic' pc 501 (ext/nqp-rx/src/stage0/HLL-s0.pir:327)␤»
jaffa4 std: m:g/g/;
p6eval std 30778: OUTPUT«ok 00:01 114m␤»
TimToady and Perl 5 agrees with me that 42 % Inf should be 42, not NaN
masak: ^^^ 17:42
jaffa4 Is there Inf in Perl 5?
TimToady masak: also, you are correct that there are 7 sets :)
BrowserUk Hey ruoso? 17:43
isBEKaml ops2c.pl is deprecated. Use ops2c$(EXE) instead at ..../parrot/lib/2.4.0-devel/tools/build/ops2c.pl line 13 ## DAE see this? 17:44
I got that when building the latest Rakudo..
17:44 SmokeMachine joined
isBEKaml I don't remember seeing this before.. 17:44
[Coke] yup. it's a warning, that's all. 17:45
parrot changed how it converts dynamic opcode source to C and is letting us know we might want to switch it over (but it's doing the new thing under the covers for us)
isBEKaml oh, I see.. I got some of unversioned file clashes when svn upping it. So, I removed them and svn upped again. 17:46
BrowserUk ruoso: If I'm on the list, I'm around, probably just on another tab or screen. A /msg should get my attention.
17:51 dual left 17:55 dual joined 18:00 jaffa4 left
colomon TimToady: is 1 ... 10, 20 ... 100 really (1 ... 10, 20) ... 100 ? 18:02
18:05 kaare joined, kaare is now known as Guest62023 18:07 ejs left 18:12 Guest62023 left 18:15 lisppaste3 left, lisppaste3 joined
Tene phenny: tell masak ping 18:16
phenny Tene: I'll pass that on when masak is around.
18:17 patrickas joined
patrickas hello perlsixers 18:17
TimToady colomon: I suspect it's more like 1 ... ( 10, 20 ... 100 ) 18:27
colomon TimToady: I ask because it seems like it's very important for some degenerate-ish cases. 18:29
TimToady yes, like what would ... do with 9, 10, 20 on the left?
colomon 1 ... 10 ... 1, for instance.
TimToady: good one too. 18:30
18:30 plobsing joined, ash__ left
colomon (1 ... 10) ... 1 is just 1, right? 18:31
TimToady I think the right associative is a bit more dwimmy, and you can always parenthesize the left to get around it
yes, whereas the clear intent of 1 ... 10 ... 1 is 1 ... (10 ... 1)
PerlJam "clear intent"? 18:32
a confused programmer's intent is never clear :)
colomon PerlJam: 1 ... 10 ... 1 could be a lot of work to go through to get the list (1)
TimToady I cannot imagine even a confused programmer writing that expecting to get (1) 18:33
18:33 XaeroOne left
TimToady rakudo: say ~( 1 ... ( 10 ... 1 ) ) 18:34
p6eval rakudo 10a321: OUTPUT«Cannot resume dead coroutine.␤current instr.: 'perl6;GatherIterator;get' pc 582331 (src/gen/core.pir:102521)␤»
TimToady oh, right :)
colomon gather / take bug. :(
rakudo: say ~( 1 ... ( 10 ... 1 ).eager )
p6eval rakudo 10a321: OUTPUT«1␤»
colomon still doesn't work because .... interesting.
and amusing.
TimToady rakudo: say ( 10 ... 1 ).eager.Str 18:35
p6eval rakudo 10a321: OUTPUT«10 9 8 7 6 5 4 3 2 1␤»
colomon RHS has to be a single scalar atm
so I really don't know how you get "1" as a answer for ~( 1 ... ( 10 ... 1 ).eager
TimToady well, it's a list, and is evaluated first, so that pretty much asks for right associative right there 18:36
rakudo: say +( 10 ... 1 )
p6eval rakudo 10a321: OUTPUT«10␤»
colomon seems like list infix precedence isn't right for what we're talking about? 18:37
TimToady list infixes are list associative, which means the operator gets to decide the semantics 18:40
colomon oh, cool! 18:42
TimToady multi infix:<...> (**@lists) can evaluate @lists in any order
PerlJam ponders a listfix ... that can't make up its mind.
colomon oh, bother. it's just a variation on that. 18:43
I was thinking that somehow ... could specify that it was right associative and then be implemented in terms of just pairs of lists.
this actually gets at the differences. I was originally thinking that each pair of @lists would be evaluated. 18:44
I mean, you'd do @lists[0] ... @lists[1]
@lists[1] ... @lists[2]
et
etc
and then the results would be pasted together.
but that will get you radically different answers than @lists[0] ... (@lists[1] ... @lists[2]) would 18:45
18:46 cognominal left
TimToady multi infix:<...> ($x,*@y) { $x ... ( infix:<...>(|@y) ) }; multi infix:<...> ($x,$y) { #`{your ad here} } or some such, modulo slicing sigs 18:48
18:49 cognominal joined 18:54 perlygatekeeper left 18:59 SmokeMachine left 19:02 ShaneC joined, ShaneC left
TimToady masak: if we ever get quantum computers, Complex will be very much a part of the core. :) 19:03
in any case, Complex is much more fundamental to how the universe works than DateTime is, regardless of how often it is used.
moritz_ so is group theory :/ 19:04
but I'd be OK with moving DateTime to a module
and Date
and keep only Instant in core 19:05
TimToady I'm okay if gregorian is in core, or out, can argue both ways...
bbiab & 19:06
pyrimidine so, if we have '@list = <a b c d>' and we wanted to get the Match keys for something like 'abc' ~~ / @list/, would the keys be $<a> to $<c>? 19:10
moritz_ interpolation doesn't capture
rakudo: my @list = <a b c d>; say 'abc' ~~ / @list /
p6eval rakudo 10a321: OUTPUT«a␤»
moritz_ rakudo: my @list = <a b c d>; say 'abc' ~~ / @list+ / 19:11
p6eval rakudo 10a321: OUTPUT«abc␤»
pmichaud okay, question (mainly for moritz_ and bkeeler)
I've found a much simpler solution to the regex interpolation thing, but trying to patch it in to what has already been applied is a bit tricky. 19:12
should I simply revert the nqp merge and start from there, or ... ?
pyrimidine maybe branch just prior to the merge, then add in?
bkeeler If it makes sense to start over, feel free.
pmichaud turns out we really don't need the new nodetype 19:13
moritz_ pmichaud: sure... if you don't want to cause regressions, do it in a branch
pmichaud well, cleaning up the rakudo side is going to take a little work too :(
moritz_ :(
pmichaud but the new form I discovered also handles things like named captures of <xyz=@foo> and <?@foo> and the like. 19:14
moritz_ cool
pmichaud it's definitely a fair bit simpler
bkeeler Simpler is usually better 19:15
moritz_ sorry to cause you more work; I thought bkeeler's patch was what you had had in mind
pmichaud pyrimidine: in nqp I can branch prior to the merge -- in Rakudo it's a bit tougher because a fair bit has been added to trunk since the merge
the patch is definitely far closer to what I had in mind and what we discussed a month or so ago (more)
pyrimidine can you switch out the branches, a'la the alpha<->master for rakudo? 19:16
pmichaud but it still puts method calls into the regex generation that should really be left up to the HLL to supply
and it'll run into trouble backtracking on arrays 19:17
(the iterator gets clobbered when used in a quantifier)
bkeeler I did try to account for quantifiers in my mental model, but I'm willing to believe I got it wrong 19:19
pmichaud the problem is that $Pxx = iter $P10 clobbers $Pxx if it's inside of a quantifier
because the $Pxx isn't saved anywhere
anyway, forgiveness > permission so I'm not really upset or anything.... just need to clean it up quick-ish now or it'll get harder as more patches land on top 19:21
19:21 SmokeMachine joined
bkeeler Well, I certainly feel bad about putting a drain on your severely limited tuit supply... 19:21
pmichaud no problem -- I'm sad you had to wait so long for me to get a chance to look at it 19:22
I had expected to be able to do it over the weekend, but $wife changed plans on me on Saturday morning
19:23 iblechbot left
pmichaud so, what's the best way to revert everything back to an earlier commit? 19:24
(in this case, 3ad311)
bkeeler rakudo: say '1abc2' ~~ / 1 <{ [ 'ab', 'a', 'bc' ]}> 2 /
p6eval rakudo 10a321: OUTPUT«␤»
bkeeler rakudo: say '1abc2' ~~ / 1 <{ [ 'ab', 'a', 'bc' ]}> ** 2 2 / 19:25
p6eval rakudo 10a321: OUTPUT«␤»
bkeeler rakudo: say '1abc2' ~~ / 1 <{ [ 'ab', 'a', 'bc' ]}>+ 2 /
p6eval rakudo 10a321: OUTPUT«␤»
bkeeler rakudo: say '1abc2' ~~ / 1 <{ [ 'a', 'bc' ]}>+ 2 /
p6eval rakudo 10a321: OUTPUT«1abc2␤»
bkeeler Boom 19:26
I see what you mean
pmichaud rakudo: my @x = <ab a bc>; say '1abc2' ~~ / 1 @x+ 2/
p6eval rakudo 10a321: OUTPUT«␤»
pmichaud rakudo: my @x = <a bc>; say '1abc2' ~~ / 1 @x+ 2/
p6eval rakudo 10a321: OUTPUT«1abc2␤»
bkeeler Yep, same bug
pyrimidine was seeing the same thing here
pmichaud: Maybe branch at that point, pull in any other commits unrelated to the merge, switch branches? 19:27
pmichaud pyrimidine: well, in nqp there aren't any other commits that need saving
bkeeler Or maybe branch from head and just reverse the patches in your branch
pmichaud I'm not sure how to reverse the merge patches
do I have to track them all down, or ...?
pyrimidine that sounds better
bkeeler Is it different from reversing a regular commit? 19:28
pmichaud I think so, because a merge isn't a single commit
I could probably do
git checkout 3ad311 -- src
and that would put all of the files back the way they were as of 3ad311 19:29
PerlJam "a merge isn't a single commit"?
pmichaud PerlJam: yeah, I said that wrong. A merge has multiple parents
I could try reverting just the merge commit... just a sec
PerlJam yes, git revert should work.
pmichaud pmichaud@orange:~/nqp-rx$ git revert bbaab4 19:30
fatal: Commit bbaab497291b31bb7f0d3ccbdb021cff2b4afd6b is a merge but no -m option was given.
See the revert-a-faulty-merge How-To[1] for more details.
seems not-trivial. 19:31
pyrimidine Maybe: www.kernel.org/pub/software/scm/git...-merge.txt
PerlJam ah, then resetting to just before the merge is probably best.
pyrimidine reading that link gives me a headache 19:32
19:32 stepnem left
pmichaud same here 19:32
bkeeler Who was it who was volunteering as a git mentor? dukeleto? 19:33
[particle] #git is just down the hall
pmichaud I'll just do the "git checkout" approach
and see how far I get
[particle] though my last question there was warnocked
PerlJam [particle]: what was it? 19:34
[particle] if 'git rev-parse --is-bare-repository' is true, should i 'git config core.worktree /some/dir' then 'git checkout -f' ?
i think the answer is no, because it did not work. 19:35
instead, it checked out over my current directory, which had the 600 line script i was running
of course, i hadn't committed that script. 19:36
[particle] gets more silence... which is more appropriate here ;) 19:37
PerlJam I've found that I tend not to commit with git simply because of my past experience with other SCMs. However, with git, you should almost always commit
pmichaud yes, frequent commits is a big plus for me :-) 19:38
[particle] yes, i should have vim commit on save
pmichaud time to pick up kids... bbiab
pyrimidine I have my .trans work on a fork on github, so i can just merge in changes from upstream later 19:39
19:40 stepnem joined
jnthn pyrimidine: How's the trans going? :-) 19:40
19:48 chitragupt left
pyrimidine jnthn: well, actually 19:50
things not working are converting string ranges to char ranges
'a..z' -> 'a'..'z' 19:51
but that was supposedly added to STD at some point
(for tr///)
"Whfg nabgure Crey unpxre".trans('a'..'z' => ['n'..'z','a'..'m'], 'A'..'Z' => ['N'..'Z','A'..'M']); 19:52
Just another Perl hacker 19:53
jnthn wonders how hard it is to make tr/// work ones .trans is in
19:54 spinclad left, hercynium left 20:01 rv2733 left, pyrimidine left 20:02 Ross left 20:06 jferrero joined 20:08 hercynium joined 20:15 Sarten-X left
cosimo szabgab: ping 20:17
20:29 ruoso left 20:34 rgrau joined 20:38 ethel joined 20:43 rokoteko joined, Su-Shee left 20:46 ash__ joined 20:48 Ross joined 20:50 ash__ left, chitragupt joined 21:05 cdarroch left 21:10 whiteknight joined 21:18 ive left, ive joined 21:19 clintongormley left 21:20 Ross left 21:27 whiteknight left 21:34 SmokeMachine left 21:41 lichtkind joined
lichtkind TimToady: is it true that the original Test.pm is your design? 21:42
21:46 sakib joined 21:51 spinclad joined 21:57 gbacon left 22:02 hercynium left 22:06 ive left 22:16 ruoso joined 22:17 patrickas left 22:20 japhb left
TimToady lichtkind: yes, and no. There was no such thing as Test.pm before there were pm files. However, t/TEST in early Perl used the beginnings of TAP ("test anything protocol") 22:25
lichtkind TimToady: thanks, and the design with tests =>, todo=>, onfail =>, ok();, skip();, plan(); was similiar to the old TEST? 22:27
TimToady the old TEST merely expected the .t file to emit "1..5" followed by "ok 1", "ok 2", ... "ok 5" 22:34
but that is core of TAP
at some point I think comments were allowed, and eventually someone wrote Test.pm to support the typical operations 22:35
but that was after Perl 5 came out 22:41
in Perl 4 the .t files were still on their own to produce output, but comments were allowed by then
22:45 kel__ left
lichtkind TimToady: thanks a lot im currently writing a talk about some advanced perl testing but didnt know that :) 22:45
TimToady I don't wish to take credit for more than I actually did. :) 22:46
I get plenty of that already....
22:46 Sarten-X joined
lichtkind TimToady: dont woryy i show schwerns face most of the time, also alias and gabor a bit and Test.pm is by Joshua Nathaniel Pritikin 22:49
TimToady: your face only pops up at tht 5ths slide or so ... in the beginning there was perl 1.0 and so 22:50
TimToady: so TEST was a early TAP reader? 22:52
TimToady essentially, though no one called it TAP then :)
and I didn't name it either, I just invented it :)
lichtkind haha 22:53
Juerd The first tests for pugs were mostly just ports from Perl 5's suite. Many of those just keep a counter and build the output themselves. 22:55
22:59 Psyche^ joined
lichtkind Juerd: almost like in the early perl days :) 22:59
Juerd I would believe you if you told me that many of those tests have survived since the first perls :) 23:01
But I haven't checked.
23:03 Patterner left, Psyche^ is now known as Patterner 23:07 whiteknight joined 23:10 japhb joined 23:17 alester left 23:34 christine left 23:35 jferrero left
TimToady perhaps some LHF, or at least MHF, would be to implement pseudo packages UNIT, MY, OUR, SETTING, etc so that we can test that, for instance, imports are done into lexical scopes and not into namespaces 23:36
std: use Test; MY::Test;
p6eval std 30778: OUTPUT«ok 00:01 112m ./lib/Test.pm6␤ok 00:01 114m␤»
TimToady std: use Test; MY::Toast; 23:37
p6eval std 30778: OUTPUT«===SORRY!===␤Undeclared name:␤ 'MY::Toast' used at line 1␤Check failed␤FAILED 00:01 111m␤»
TimToady rakudo: use Test; MY::Test;
p6eval rakudo 10a321: OUTPUT«Can not find sub MY::Test␤current instr.: 'perl6;Perl6Exception;throw' pc 15629 (src/builtins/Associative.pir:32)␤»
TimToady std: use Test; { OUTER::Test; } 23:39
p6eval std 30778: OUTPUT«ok 00:01 111m␤»
TimToady rakudo: use Test; { OUTER::Test; }
p6eval rakudo 10a321: OUTPUT«Can not find sub OUTER::Test␤current instr.: 'perl6;Perl6Exception;throw' pc 15629 (src/builtins/Associative.pir:32)␤»
23:43 dju left, dju joined 23:44 christine joined 23:53 lest_away is now known as lestrrat
lichtkind good night 23:56
23:56 lichtkind left, sahadev left