»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:14 gfldex left 00:16 arlinius left 00:17 gfldex joined, arlinius joined, sivoais left
cognominal_ jnthn++ 00:27
00:32 betterworld left 00:33 betterworld joined, ascent__ left, arlinius left 00:36 arlinius joined
djanatyn okay, I've been incredibly lazy 00:39
let's get to work on faq.perl6.org 00:40
00:41 ascent_ joined 00:45 jaldhar joined 00:58 Trashlord left 00:59 tokuhirom left 01:00 tokuhirom joined 01:04 tokuhirom left 01:08 plutoid joined, benabik joined 01:10 woosley joined 01:12 mkramer left, mkramer joined 01:14 mkramer1 joined, mkramer left 01:19 mkramer1 left 01:25 sivoais joined, mkramer joined 01:31 wolfman2000 left, mkramer left, fridim_ left 01:38 mkramer joined 01:39 mkramer left 01:40 mkramer joined 01:45 whiteknight joined, whiteknight is now known as Guest83607 01:46 mkramer left 01:50 am0c left 01:51 am0c joined 01:52 donri left 02:00 mkramer joined
djanatyn moritz: mowyw is cool :D 02:10
02:16 mkramer left, wolfman2000 joined 02:17 mkramer joined 02:33 mkramer left 02:36 felher left, felher joined, mkramer joined 02:40 ethndbst left 02:49 satyavvd joined, envi_ left 02:50 mkramer left 02:51 mkramer joined 03:10 ChanServ sets mode: +v ilogger2 03:13 ethndbst joined 03:20 alvis joined 03:39 mkramer joined 03:41 molaf joined 03:49 ethndbst left 03:53 mkramer left 04:10 lestrrat joined 04:14 mkramer joined 04:17 mkramer left 04:18 mkramer joined 04:21 mkramer1 joined, mkramer left
sorear good * #perl6 04:25
TimToady: +1 to correctness first and having + not do overflowing stuff by default 04:27
04:27 mkramer1 left 04:28 mkramer joined 04:32 kaleem joined 04:39 mkramer left 04:48 mkramer joined 04:58 mkramer left 05:01 mkramer joined 05:10 mkramer left
sorear wants talk (with TimToady or anyone) about w and XID_{Start,Continue} 05:11
PerlJam sorear: I'd talk but I have no idea what you're talking about :) 05:12
What's XID_{Start,Continue}
05:13 molaf left 05:18 lestrrat left 05:19 lestrrat joined
sorear PerlJam: www.unicode.org/reports/tr31/ 05:26
05:27 mkramer1 joined 05:28 woosley joined
PerlJam Ah, I see. 05:28
sorear basically, I want $spin̈al to parse
currently STD is using approximately <alpha> \w* 05:29
moritz djanatyn: glad you like it
good morning
sorear o/ djanatyn
o/ moritz I mean
the problem is the U+0308 COMBINING DIAERESIS in the middle 05:30
PerlJam \w doesn't match it but you think it should
sorear the Official Unicode Solution, as described in tr31, is to consider (most) combining characters to be \p{XID_Continue}
XID_Continue fills the same role as \w 05:31
however it seems ... slightly wrong ... to have "\u0308" ~~ /\w/ be true
moritz .u U+0308
phenny moritz: Sorry, no results
djanatyn trying to get faq.perl6.org looking nice >_> 05:32
been experimenting for quite a while
sorear another option would be to change STD to use XID_Start and XID_Continue and leave alpha and \w exactly as they are
djanatyn also realized I'm horrible at CSS :)
sorear which is _probably_ better
I really need to talk to TimToady on this one I think 05:33
PerlJam yeah, probably.
sorear .u 0308
phenny U+0308 COMBINING DIAERESIS (◌̈)
sorear oh wow, I even spelled it right \o/
PerlJam but what you've said so far makes sense and I agree and the change to STD you just mentioned is what I would probably do :)
Is there a way to make is match \w but only if it's combined? 05:34
s/is/it/
moritz sorear: in p5, it does match \w
PerlJam really? 05:35
PerlJam tries
moritz perl -wE 'say "\x{0308}" ~~ /\w/'
05:36 Chillance joined
PerlJam That does seem weird and slightly wrong though 05:36
dalek ok: 7ffba6e | moritz++ | src/operators.pod:
fix typo, (David Romano)++
05:37
moritz finds that it DWIMs
PerlJam I'd never want an isolated combining to match \w 05:38
combining char
moritz but you want to match words as \w+, no? 05:39
sorear a related question is whether we want STD.pm6 to be running in grapheme mode
PerlJam moritz: ah yes, I see your point.
TimToady it's not clear that \w can operate correctly in codepoint mode, which is why we want to be in grapheme mode most of the time 05:40
sorear TimToady: it is unclear to me what \w means in grapheme mode 05:42
djanatyn i.imgur.com/dlGHL.png -- any suggestions for how to improve this?
TimToady it means the base char matches \w, and you ignore marks
djanatyn (faq.perl6.org/)
trying to make it prettier! :D 05:43
TimToady but \w matches the whole grapheme, so you don't have to skip the combining codepoints explicitly
PerlJam djanatyn: that looks pretty enough for me :) 05:44
sorear TimToady: what if there is no base char? 05:45
PerlJam djanatyn: though now that I think about it for another second or two, I'd like to see the code sections boxed off and syntax highlighted 05:46
sorear TimToady: I'm thinking especially of Hangul
"obviously", Hangul grapheme clusters should be \w and CRLF grapheme clusters should be \W
but I'd like to have something more formal
djanatyn PerlJam: okay, I'll work on that 05:47
dunno about syntax highlighting, but I can certainly box them off
sorear on a more meta level I'm worried about reinventing TR31 badly. Square wheels and all that. 05:48
PerlJam djanatyn++
djanatyn :D
TimToady well, there's also the possibility of reinventing TR31 goodly... 05:49
sometimes the tail wags the dog
correctness first, then standards compliance :) 05:50
sorear I maintain that the concept of a "base character of a grapheme" is ill-defined. 05:59
djanatyn boxing was too tricky, because the answers use <code> tags all over the place and I don't want to edit them 06:00
so I tried to make the code stand out like this: i.imgur.com/mAIoH.png 06:01
PerlJam djanatyn: nice
djanatyn also, looks like the shadows work on firefox
okay, I'm tired
and I have school in a few hours
PerlJam djanatyn: when will this new look be rolling out?
djanatyn PerlJam: in a few minutes, if you guys help me :D 06:02
PerlJam djanatyn++
djanatyn yeah, all I need to do is, uhh, submit one file to github.com/perl6/faq and get them to run the script again 06:03
the hard work was done before I even started
06:05 mkramer1 left 06:07 mkramer joined 06:09 mkramer left 06:10 mkramer joined 06:12 mkramer left 06:14 Chillance left 06:16 Chillance joined
djanatyn okay, I'm sorry, but I'm not that familiar with git >_> 06:26
could someone walk me through how to make a pull request with this modified file? 06:27
Woodi hmm, clone repository, modify file, git add <file>, git commit, git push ? 06:29
djanatyn oh, maybe.
Woodi assuming you have rights to push to remote repo 06:30
djanatyn oh, I don't think I can push
Woodi and yes, maybe :)
djanatyn it says I need to make a pull request
Woodi you have user on github ?
djanatyn Yep. 06:31
Woodi then clone repo on github, clone into your box, modify, push to your repo and someone with right rights will know what to do
06:35 koban joined 06:40 yath left, tadzik joined 06:41 masak joined 06:42 felher joined, yath joined
djanatyn okay, pull request sent 06:45
PerlJam: I lied, it won't be done in a few minutes, sorry 06:46
there's another process I didn't think about - the pull request has to either be approved or denied, and then somebody has to run that perl script again 06:47
but if accepted, it should be live pretty soon
moritz looks
06:48 nebuchadnezzar joined
djanatyn moritz: :D 06:48
nebuchadnezzar yo
cognominal_ nom: how(class A {}); my $last; sub how(Mu $class) { exit if (my $nm = $class.HOW.name("")) eq $last; say $nm; $last = $nm; how($class.HOW) } 06:49
p6eval nom b9aa5b: OUTPUT«Use of uninitialized value in string context␤A␤Perl6::Metamodel::ClassHOW␤NQPClassHOW␤KnowHOW␤»
06:52 agentzh joined
dalek q: b17e9b3 | Jonathan++ | web/ (2 files):
added css for gci
06:52
q: 5e66efc | moritz++ | web/ (2 files):
Merge pull request #1 from djanatyn/master

have style!
djanatyn :D :D :D 06:53
that was my first pull request :)
and my first fork
and my first contribution to...open source!
now to sleep :)
moritz \o/ 06:55
dalek q: e4ee5f6 | moritz++ | answers.md:
grammar
06:56
djanatyn oh, wait. I really need to fix that list >_> 06:58
that's not a good thing
moritz djanatyn: yes, I think so too, but it was good enough to close the GCI task 06:59
djanatyn okay
moritz: what's next? :D
moritz I also don't really like that the headlines with round corners are indented, but the h3 aren't
djanatyn I want to do some actual programming
oh yeah, that should be fixed too
moritz djanatyn: www.google-melange.com/gci/task/vie...11/7174240 and www.google-melange.com/gci/task/vie...11/7177376 are about writing code, which I consider "actual programming" 07:01
djanatyn okay, writing tests seems both fun and productive 07:03
djanatyn claims the first one
07:32 icwiener joined
sorear sleeps, will try to get more info out of w tomorrow 07:35
07:38 hundskatt joined 07:44 icwiener left 07:46 am0c joined 08:27 Trashlord joined 08:33 tzhs joined
moritz nom: multi f(&a, *@b) { }; multi f(*@b) { }; f { $^a }, 1, 2, 3, 08:39
p6eval nom b9aa5b: OUTPUT«Ambiguous dispatch to multi 'f'. Ambiguous candidates had signatures:␤:(Callable &a, Positional @b)␤:(Positional @b)␤␤ in block <anon> at /tmp/IpkWqhNM_W:1␤ in <anon> at /tmp/IpkWqhNM_W:1␤»
moritz jnthn: that one blocks sort() from working properly 08:40
the sub form, that is
08:45 mj41 joined
moritz niecza: say sort { $^a[0] <=> $^b[0] }, ['a', 0], ['foo', 5], ['z', 3] 08:54
p6eval niecza v12-2-geb42dfa: OUTPUT«Use of uninitialized value in string context␤ at /home/p6eval/niecza/lib/CORE.setting line 773 (warn @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 168 (Mu.Str @ 9) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /home/p6eval/niecza/lib/CORE.setting l…
moritz sorear: that looks broken, it seems to try to sort by string somehow 08:55
08:59 orafu joined 09:06 odoacre joined 09:11 Trashlord left 09:13 am0c left
moritz nom: say &join.^does(Callable) 09:18
p6eval nom b9aa5b: OUTPUT«Bool::True␤»
moritz nom: multi f(&a, *@b) is default { }; multi f(*@b) { }; f { $^a }, 1, 2, 3, 09:23
p6eval nom b9aa5b: ( no output )
moritz let's see if that trait works in the setting... 09:24
nope :( 09:31
bootstrapping nastinesses all over
09:43 flussence joined 09:58 woosley left
jnthn morning 09:58
moritz \o jnthn
jnthn nom: multi f($a, *@b) { }; multi f(*@b) { }; f { $^a }, 1, 2 09:59
p6eval nom b9aa5b: OUTPUT«Ambiguous dispatch to multi 'f'. Ambiguous candidates had signatures:␤:(Any $a, Positional @b)␤:(Positional @b)␤␤ in block <anon> at /tmp/P192VoriDT:1␤ in <anon> at /tmp/P192VoriDT:1␤»
jnthn hm...was sure that one worked.
moritz it did, in b
b: multi f($a, *@b) { }; multi f(*@b) { }; f { $^a }, 1, 2
p6eval b 1b7dd1: OUTPUT«Ambiguous dispatch to multi 'f'. Ambiguous candidates had signatures:␤:(Any $a, *@b)␤:(*@b)␤␤ in main program body at line 22:/tmp/krakiEkVCh␤»
moritz huh. 10:00
b: multi f(&a, *@b) { }; multi f(*@b) { }; f { $^a }, 1, 2
p6eval b 1b7dd1: OUTPUT«Ambiguous dispatch to multi 'f'. Ambiguous candidates had signatures:␤:(&a, *@b)␤:(*@b)␤␤ in main program body at line 22:/tmp/kbGHzOVY9U␤»
moritz hm
jnthn Apparently not... 10:01
Will have a look, though should work on advent calendar first. 10:02
moritz I was pretty sure I had copied the lines for &sort from src/old/, but I might have been mistaken
10:03 alvis left
moritz I have a workaround now, which fixes many tests in sort.t 10:03
just waiting for the spectest to finish 10:04
jnthn TimToady: Pondered the native op/overflow thing. How about if the native ops throw *immediately* if the result will overflow? That way we catch overflows, don't have to do some nasty trickery with the return type, and "no strict :overflow" just imports a set of multi candidates that don't do the overflow check. 10:05
moritz but how do you catch overflow? 10:06
by doing the calculation in Int space, and then trying to unbox? 10:07
jnthn moritz: I was thinking a set of opcodes that do the checking, CLR style. 10:11
moritz wishes the carry flag from the CPU was easily available in parrot 10:12
10:12 mkramer joined
dalek kudo/nom: 3c862ba | moritz++ | src/core/Any.pm:
fix &sort with a closure

works around a multi dispatch limitation
10:13
kudo/nom: 4c311bf | moritz++ | t/spectest.data:
run a test file that had regressed on &sort with closure
ast: 336ec16 | moritz++ | S32-list/sort.t:
unfudge &sort tests for rakudo
10:18 alvis joined
moritz nom: sub f() { my $a := pir::find_caller_lex__Ps('$/'); $a = 5; }; f; say $/ 10:20
p6eval nom b9aa5b: OUTPUT«5␤»
jnthn pir::find_caller_lex__Ps('$/') = 5 # should also work 10:22
moritz I know it does :-)
nom: augment class Sub { method my_invoke { self() } }; &join.my_invoke 10:26
p6eval nom b9aa5b: OUTPUT«===SORRY!===␤augment not allowed without 'use MONKEY_TYPING' at line 1, near "{ method m"␤»
moritz nom: use MONKEY_TYPING; augment class Sub { method my_invoke { self() } }; &join.my_invoke
p6eval nom b9aa5b: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&self' called (line 1)␤»
moritz jnthn: that seems to be a false positive 10:27
10:28 wk_ joined
jnthn moritz: Yes and no. If the optimizer is saying that, I bet it actually fails at runtime too, rightly or wrongly. 10:46
...and in a dwim sense, almost certainly wrongly :) 10:47
moritz nom: use MONKEY_TYPING; augment class Sub { method my_invoke($self:) { $self() } }; &join.my_invoke
p6eval nom 4c311b: ( no output )
jnthn It's safe as
nom: Int()
p6eval nom 4c311b: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&Int' called (line 1)␤»
jnthn *same 10:48
moritz seems to be no problem when applied to a Callable:D
jnthn moritz: Right, it's the term:name case
moritz erm
jnthn The self() one is
moritz we're talking past each other, I think
jnthn no, term:identifier. But anyway... 10:49
moritz: The reason $self() works is because it parses as a variable and a postcircumfix.
moritz hm, even with --optimize=0, the CHECK is done 10:50
jnthn --optimize=off
will completely disable it. 10:51
0 means "don't transform anything"
moritz ah right, Could not find sub &self
I now see what you mean.
jnthn :) 10:52
So, mis-compile rather than optimizer bug. 10:53
dalek kudo/nom: 676b356 | moritz++ | src/core/Regex.pm:
Regex.ACCEPTS for arrays and hashes
10:54
jnthn moritz: File a ticket for it if you didn't already. 10:55
jnthn plans to have a crack at some ticket queue items during the weekend.
dalek ast: 827e592 | moritz++ | S (2 files):
rakudo un/refudges
moritz jnthn: I'd find a stab at autovivification much more useful :-)
jnthn moritz: Let's see if pmichaud++'s next-week tuits materialize, then I can ask what he thinks that stab should look like, which will probably be more efficient than trying to figure it from what's done so far. :) 10:58
moritz jnthn: sounds good
jnthn I really want to get arrays in native call back in place by the end of the weekend too, so the mysql stuff can work again. 10:59
moritz that would be really cool 11:00
11:01 wk joined
moritz will it invove Array[int] working too? :-) 11:01
11:03 wk__ joined
jnthn moritz: I'm not sure it *will* be Array[int] (more) 11:03
11:03 wk_ left
moritz right 11:03
jnthn I asked a while ago it native arrays wanted to be lazy and the answer was "probably not"
Or some such :)
Since Array *is* lazy, we probably really want some kind of PackedArray[int]
moritz also I wonder how Array can be both an array and a parametric role at the same time 11:04
jnthn Then we find a way to make "my int @foo;" use that
moritz: Yes, that's also a fun issue.
11:05 wk left
dalek ast: a850bf0 | moritz++ | S32-scalar/undef.t:
simplify tests
11:12
moritz nom: say ''<foo>.WHAT 11:13
p6eval nom 4c311b: OUTPUT«Method 'at_key' not found for invocant of class 'Str'␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:1066␤ in block <anon> at /tmp/pCJpob7AFP:1␤ in <anon> at /tmp/pCJpob7AFP:1␤»
moritz pugs: say ''<foo>.WHAT 11:14
p6eval pugs b927740: OUTPUT«*** Odd number of elements found where hash expected: VStr ""␤ at /tmp/nooRK1Nq0C line 1, column 5 - line 2, column 1␤»
moritz niecza: say ''<foo>.WHAT
p6eval niecza v12-2-geb42dfa: OUTPUT«Unhandled exception: Cannot use hash access on an object of type Str␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /home/p6eval/niecza/lib/CORE.setting line 248 (Any.at_key @ 6) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /tmp/J0HwqlN7ly line 1 (mainline…
moritz hm, all three implementations agree
then I'll change the test
dalek ast: 5fbb323 | moritz++ | S02-literals/listquote.t:
update a test to fit current understanding
11:16
moritz perl6: say :foo < 3 11:18
p6eval niecza v12-2-geb42dfa: OUTPUT«Unhandled exception: Cannot use value like Pair as a number␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /home/p6eval/niecza/lib/CORE.setting line 190 (Any.Numeric @ 4) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /tmp/XujAJMDKPy line 1 (mainline @ 1) ␤ …
..rakudo 4c311b: OUTPUT«No applicable candidates found to dispatch to for 'Real'. Available candidates are:␤:(Mu, Mu %_)␤␤ in method Real at src/gen/CORE.setting:639␤ in sub infix:<<> at src/gen/CORE.setting:2110␤ in block <anon> at /tmp/lXu_zbyPQA:1␤ in <anon> at /tmp/lXu_zbyPQA:1␤»…
..pugs b927740: OUTPUT«*** ␤ Unexpected end of input␤ expecting "\\", variable name, ">" or "<"␤ at /tmp/WSIuo2qt5_ line 2, column 1␤»
moritz there was an old spec item that a List in scalar context becomes a Capture (or so) 11:21
is that still current thinking?
I guess not... 11:23
dalek ast: 56fb51b | moritz++ | S02-literals/listquote.t:
correct and re-fudge list and Parcel tests
11:24
11:24 daxim joined
moritz nom: role A::B { }; say A::B.gist 11:34
p6eval nom 676b35: OUTPUT«A::B()␤»
moritz nom: package A { role B { } }; say A::B.gist
p6eval nom 676b35: OUTPUT«B()␤»
11:34 cognominal___ joined
moritz there's a test in S14-roles/namespaced.t that expects the first one to be just B() too 11:35
is that still right?
nom: use fatal; fail(); say 'alive' 11:37
p6eval nom 676b35: OUTPUT«alive␤»
moritz nom: use fatal; say $*FATAL; 11:38
p6eval nom 676b35: OUTPUT«Bool::True␤»
moritz nom: say $*FATAL;
p6eval nom 676b35: OUTPUT«Failure.new()␤»
jnthn moritz: Not sure, I could argue it both ways. It's trivial to change it to just be B() if that's what is wanted.
oh 11:39
11:39 am0c joined
jnthn Well, the sepc I think said what .WHAT gives stringifies to the short name. 11:39
jnthn tries to find 11:40
moritz I vaguely recall that too, but I always found that a bit weird
jnthn WHAT the type object of the type, .gist returns MyClass()
WHICH the object's identity value
WHO the package supporting the object, stringifies to long name
It calls out WHO as giving the long name.
moritz so we should really be debugging with WHO instead of WHAT? 11:41
11:41 cognominal_ joined
moritz wonders if cultural pressure can change the spec here 11:41
jnthn moritz: Maybe the short name is often enough :)
.WHAT strinfigies to whatever is in .^name, anyway
er, gistifies
:)
And that's just a decision taken when creating the meta-object, so it's easy to change. 11:42
11:44 cognominal___ left
cognominal_ I dont understand why the &name methods in *HOW roles expect an argument and ignore it 11:47
jnthn cognominal_: In class-based OO it's kinda boring. 11:48
cognominal_: It's more for prototype based OO
cognominal_ concistency is necessary here? 11:49
*consistency 11:51
12:06 wk__ left 12:08 cognominal_ left 12:09 mkramer1 joined 12:10 mkramer left, cognominal_ joined 12:13 kaleem left, Psyche^ joined 12:14 koban left 12:17 Psyche^ is now known as Patterner
cognominal_ my $a; say $a eq '' 12:17
nom: my $a; say $a eq ''
p6eval nom 676b35: OUTPUT«Use of uninitialized value in string context␤Bool::True␤»
cognominal_ is this normal that it complains? 12:18
jnthn believe it's correct, yes 12:22
12:35 odoacre left
jnthn perl6advent.wordpress.com/2011/12/0...rdebugger/ 12:37
12:37 cosimo joined
jnthn lemme know if any typos or thinkos slipped in, but I think I caught 'em all :) 12:37
moritz jnthn++ 12:39
jnthn: you might want to turn the first mention of these modules into links to their github repos 12:42
or to the common repo, dunno if they share one
jnthn moritz: they share 1; I linked to it later 12:43
12:51 cognominal_ left, cognominal_ joined 12:59 xinming joined 13:01 bluescreen10 joined
moritz nom: my %h = c => 1; say %h ~~ .{'c'} 13:05
p6eval nom 676b35: OUTPUT«Bool::True␤»
moritz nom: my %h = c => 0; say %h ~~ .{'c'}
p6eval nom 676b35: OUTPUT«Bool::False␤»
moritz S03-smarmatch/any-hash-slice.t seems rather out of date 13:09
13:20 bluescreen10 left 13:22 cognominal___ joined
colomon jnthn++ 13:22
13:24 cognominal_ left 13:25 bluescreen10 joined
moritz colomon: dunno if you've seen it yet, here is my draft for tomorrow's advent post: moritz.faui2k3.org/tmp/03-binary-io-buf.pod 13:26
colomon moritz++ 13:30
moritz wow, we've got 890 visits yesterday 13:31
jnthn wow 13:32
colomon !!!!! 13:33
13:36 sftp joined
moritz I've just posted my post for tomorrow, will be automatically published at 0630 UTC 13:36
colomon \o/ 13:48
do we have a day four yet? there's nothing on the schedule
jnthn Seems not yet 13:49
13:59 wk joined 14:03 am0c left 14:10 Sarten-X joined
moritz moritz.faui2k3.org/tmp/traits.txt # example script to start explaining traits 14:15
[Coke] moritz: ow. 14:17
moritz [Coke]: please be more verbose 14:19
jnthn I thought Elvis only left the building? :)
moritz well, he need to enter first, no?
but I can make him leave too
jnthn :)
moritz but OTOH we already have a leave function... erm, should have 14:20
jnthn moritz: Another way to do this for something more practical could be to use HTTP::Server::Simple and make something like what you did, but for URL dispatch. 14:21
moritz jnthn: I wanted to mention that, but didn't want to explain the whole code that would be necessary for that
jnthn moritz: ah, ok 14:22
moritz any nice puns on 'traits'? 14:23
jnthn
.oO( character traits )
14:24
moritz traits -- meta data with character
jnthn :D
PerlJam moritz++ nice but if you can come up with a less contrived example, that woudl be better IMHO :) 14:32
14:32 sayu joined
[Coke] moritz: without comments, I find that code very hard to follow. 14:33
moritz [Coke]: I've already added comments to my local copy 14:34
[Coke] *more* comments, I guess I should said. it's not obvious what you're trying to tell me, especially since I don't know anything about traits in perl6 just yet.
14:34 kaleem joined
PerlJam Is there some simple Moose module that uses traits that would be instructive if ported to Perl 6? 14:35
(it doesn't have to be Moose, but that and Catalyst are where I tend to see traits used) 14:36
14:37 toebu joined
colomon jnthn: any progress on the guts that would be needed to make 'is symmetric' work? 14:42
colomon is wondering about 'is cached' as well...
PerlJam Is "is cached" memoization? that would be a nice example. 14:43
moritz hm, that would be nice indeed
toebu rakudo: my @x = :yes,:!no;.perl.say for @x; 14:44
p6eval rakudo 676b35: OUTPUT«"yes" => Bool::True␤"no" => Bool::False␤»
colomon PerlJam: yes
moritz nom: say sub f { }
p6eval nom 676b35: OUTPUT«Sub.new()␤»
colomon PerlJam: I think it might even be spec. ;)
moritz nom: say (sub f { }).Str
p6eval nom 676b35: OUTPUT«f␤»
toebu nom: my @x = :yes,:!no;.perl.say for @x;
p6eval nom 676b35: OUTPUT«"yes" => Bool::True␤"no" => Bool::False␤»
PerlJam colomon: the spec has too many words for my puny brain :) 14:45
colomon PerlJam: yeah, I might be dreaming, too. ;)
colomon had a dream this morning which amounted to about the first four chapters of a Tim Powers-style modern fantasy... 14:46
"sub fib is cached" appears in the S06. 14:48
PerlJam aye, I didn't think you were dreaming as I vaguely recalled it was specced too 14:49
jnthn quick and dirty is cached implementation: gist.github.com/1423496 14:50
colomon and there's an entire "is cached" description a bit later. colomon is not delusional in this case!
moritz I'm sure the postcircumfix args needs a |
jnthn I'm pretty sure it doesn't :)
PerlJam jnthn: traits *and* roles! :)
colomon jnthn: that works now?! \o/
jnthn colomon: yes 14:51
colomon \o/
moritz jnthn: I'm working on one that uses .wrap
colomon jnthn++
etc, etc, etc
moritz for demonstration purposes, that is
colomon much joy
jnthn oh yeah, wrap! 14:52
colomon jnthn: why $r.clone?
[Coke] jnthn++
jnthn gist.github.com/1423496 now as a working wrap version too
colomon had been meaning to check and see if wrap was implemented in nom 14:53
jnthn *has
moritz colomon: you need to grab a hold of the original routine to be able to invoke it
jnthn colomon: Because we want to be able to call the original routines without the role mixed in.
In theory we should be able to nextsame from postcircumfix:<( )>
colomon I think we've got another Advent post here. ;)
jnthn Though I didn't get that to work just yet
(It should be easy enough to...) 14:54
The wrap one saves having to explain roles etc though
[Coke] someone ping mjd have have him harden that. ;)
PerlJam colomon: by my count there are 3 potential posts in this one conversation
14:54 Radvendii joined
Radvendii hello? 14:54
[Coke] I wonder if we could get Damian to write something for the calendar.
PerlJam Radvendii: hi there!
[Coke] Radvendii: good day.
moritz moritz.faui2k3.org/tmp/cached.txt # independently developed version with wrap
Radvendii hey. what eactly is this for? 14:55
PerlJam [Coke]: that could be interesting
moritz but not so nice as jnthn++'s
PerlJam Radvendii: Perl 6 (a programming languages)
er, language
jnthn moritz: yeah, should the routine being cached get GC'd we leak its cache storage that way.
Radvendii right, i got that much. but what within that? any kind of help?
colomon recursive fib is the perfect example, because you can see a huge speed improvement with is cached
moritz jnthn: yes, it also avoids conflicts 14:56
jnthn: (with closures, that is)
jnthn yeah
PerlJam Radvendii: do you have Perl 6 questions?
jnthn that too
Radvendii about panda specifically (the perl 6 module installer)
moritz jnthn: like, in the cae of sub f() is cached { }; { sub f() is cached {} } 14:57
jnthn moritz: *nod*
Radvendii im getting weird errors trying to install it
PerlJam Radvendii: what version of Rakudo are you running?
moritz Radvendii: I don't think it works on nom yet... tadzik should be able to tell you
colomon afk # playdate
Radvendii how do i find that out? perl6 -v?
PerlJam Radvendii: perl6 --version 14:58
jnthn It basically works on "nom", it won't bootstrap though
Due to test failure in at least Test::Mock
Radvendii PerlJam: "version 2011.11-80-gaa15f3a built on parrot 3.10.0 revision RELEASE_3_10_0-77-g6081fbd"
jnthn moritz: Did you get the 4th test file of JSON::Tiny running?
toebu rakudo: { sub x { say 1} } ;x;
p6eval rakudo 676b35: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&x' called (line 1)␤»
toebu rakudo: { our sub x { say 1} } ;x;
p6eval rakudo 676b35: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&x' called (line 1)␤»
PerlJam Radvendii: so ... what jnthn said probably. 14:59
toebu nom: { our sub x { say 1} } ;x;
p6eval nom 676b35: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&x' called (line 1)␤»
moritz jnthn: well... emitting of escaped strings is still broken, but the tests were TODOed before already
Radvendii i dont know abou JSON::Tiny but Test::Mock wont work
toebu how can I make the sub visible outside the local block ?
moritz so the tests pass, even though the module is broken-ish :/
toebu: our sub foo() { ... }
Radvendii so is there a way of installing panda?
toebu moritz so rakudo is broken ? see above 15:00
moritz toebu: no, you need to call it differently
nom: package A { { our sub x { say 1 }; A::x }
p6eval nom 676b35: OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 1␤»
moritz nom: package A { { our sub x { say 1 } }; A::x } 15:01
p6eval nom 676b35: OUTPUT«1␤»
15:01 mkramer1 left
moritz toebu: you can also do something like 15:01
nom: my &x; { &x := sub { say 1 } }; x
p6eval nom 676b35: OUTPUT«1␤»
Radvendii Is there a solution to the panda installation fail?
moritz maybe try copying the module files to ~/.perl6/lib yourself 15:02
jnthn Radvendii: What moritz said probably works; also, if you wait a bit, tadzik (panda author) will probably be about and will know the answer.
toebu moritz: ok to the my &x ... what if there is no package ? ::x ? what is x referring to then ?
moritz toebu: I don't think there's an implicit package in Perl 6
jnthn nom: { our sub foo() { say 1 } }; GLOBAL::foo() 15:03
p6eval nom 676b35: OUTPUT«1␤»
moritz toebu: but... are you sure you can't find a better solution? It's usually design smell if you need that
jnthn wonders back to $dayjob-tasks for a bit :) 15:04
toebu moritz: just trying out edge cases
jnthn *wanders
moritz toebu: ok
toebu jnthn: thanks
in rakudo * 11.07 foo with out GLOBAL worked
moritz does anybody want to do the advent post on traits, with the 'is cached' example? 15:05
I can it, but I've already written one for tomorrow...
toebu: yes, spec changed
Radvendii i also had a question about substitution regex in perl 6: is there an option (s:opt///) that makes it return the modified string rather than modifying the string itself?
jnthn toebu: Yeah...it wrongly worked, I'm afraid. Rakudo was out of line with the spec.
toebu grin
[Coke] ARRRGH. typed "rm *" instead of "rm *~"
toebu got to update my p6 tutorial then ...
moritz Radvendii: you can do $str.subst(/regex/, 'substitution') 15:06
jnthn moritz: If nobody else takes it on, I can. :)
moritz or you a closure as the substitution
jnthn: that's nice, but you also had one already; I try not to overwork all of us :-)
jnthn moritz: Sure, I'd be happy for somebody else to take the idea and do it :) 15:07
Cconsider me a backup option :)
Radvendii yeah, but that looks clunky and with options it's even more annoying, is there no way to get it of the form "string" ~~ s:opt/regex/substitution/?
closure as the substituion?
what's that? 15:08
moritz a piece of code that is executed for each substitution
Radvendii how would that look?
moritz sub double($x) { $x.subst(:g, /\d+/, { 2 * $/ }) } 15:09
Radvendii but that still requires .subst syntax. . ? 15:10
moritz yes.
I never said otherwise :-)
Radvendii dang.
is there a syntax for adding regex options? 15:12
moritz Radvendii: you mean besides convincing TimToady that it belongs into core? :-)
Radvendii yes, isn't perl 6 supposed to be extendable without changing the core? 15:13
moritz it is, and there is a syntax for that, but it's not yet implemented in any compiler
jnthn It boils down to creating a Perl 6 sub language. 15:14
Radvendii ah, shucks. alright, thanks guys
jnthn It will be possible...though in this case, perhaps not necesarily easy.
toebu rakudo: for 1 ..^ <a b c> -> $n { say $n; } 15:17
p6eval rakudo 676b35: OUTPUT«(timeout)» 15:18
toebu nom: for 1 ..^ <a b c> -> $n { say $n; }
p6eval nom 676b35: OUTPUT«(timeout)»
15:18 slavik1 joined
moritz toebu: 'rakudo' and 'nom' are aliases here 15:18
15:18 Radvendii left
toebu niecza: for 1 ..^ <a b c> -> $n { say $n; } 15:18
p6eval niecza v12-2-geb42dfa: ( no output )
toebu nom: for 1 ..^ <a b c> .elems-> $n { say $n; } 15:20
p6eval nom 676b35: OUTPUT«===SORRY!===␤Missing block at line 1, near ".elems-> $"␤»
toebu nom: for 1 ..^[ <a b c> ].elems-> $n { say $n; }
p6eval nom 676b35: OUTPUT«===SORRY!===␤Unsupported use of -> as postfix; in Perl 6 please use either . to call a method, or whitespace to delimit a pointy block at line 1, near " $n { say "␤»
toebu nom: for 1 ..^ [ <a b c> ].elems-> $n { say $n; }
p6eval nom 676b35: OUTPUT«===SORRY!===␤Unsupported use of -> as postfix; in Perl 6 please use either . to call a method, or whitespace to delimit a pointy block at line 1, near " $n { say "␤»
moritz toebu: need whitespace before -> 15:21
toebu nom: for 1 ..^ [ <a b c> ].elems -> $n { say $n; }
p6eval nom 676b35: OUTPUT«1␤2␤»
toebu nom: for 1 ..^ [ <a b c> ] -> $n { say $n; }
moritz that one should be easy-ish to fix
p6eval nom 676b35: OUTPUT«(timeout)»
moritz probably just needs a coercion to .Numeric somewhere
toebu fly away 15:27
15:27 toebu left
moritz hm 15:29
15:29 Trashlord joined, agentzh left
moritz I know that prefix:<^> needs to coerce to .Numeric 15:30
but I'm not sure about infix ..^
which allows Str ranges too, iirc
jnthn I guess it'd follow the same rule as for ranges normally...but I forget exactly what that is.
moritz I guess it would DWIM to coerce the second argument to Numeric if the first one is numeric too, and the second is neither Whatever nor WhateverCode 15:31
moritz calls it a day, decommute & 15:35
jnthn o/ 15:38
15:43 tzhs left 15:50 kaleem left 15:59 tokuhirom joined 16:12 MayDaniel joined 16:34 wk left 16:35 mj41 left
itz I'm getting an SSL cert issue with git pull from github? 16:38
flussence what URL are you pulling from? 16:41
(fwiw, the website is giving me no errors here and its SSL cert's SHA1 begins "CE 67 99 25") 16:43
mathw was excited to see the Advent Calendar back 16:45
itz github.com/rakudo/rakudo.git
PerlJam mathw: want to contribute an article or two?
flussence hm, "git clone github.com/rakudo/rakudo.git" works for me... 16:46
itz odd 16:47
16:47 PartyJ joined
itz maybe I broke my openssl libs or something weird 16:47
16:47 PartyJ left
TimToady maybe you've been haxored 16:47
mathw PerlJam: I would, but I've not touched Perl 6 for ages, I've been very busy with my new job which has required me to become very good at C# in a very short space of time 16:48
flussence itz: if all else fails, just clone using git:// and verify the last commit SHA1 is the same as on the webpage :) 16:50
itz I ain't afraid of no MIM 16:53
MITM even
TimToady jnthn: re throwing on detecting overflow, that's what I was suggesting at irclog.perlgeek.de/perl6/2011-12-01#i_4780387 17:02
jnthn TimToady: Oh, I thought you still meant "on storage" at that point :) 17:03
TimToady: It's the (int, int) --> Int thing that I'd really prefer to avoid. 17:04
TimToady and I agree with moritz++ that it'd be nice if we could get the carry flag
jnthn Well, it's machine specific, afaik.
I suspect it's best hidden behind a set of ops. The CLR already has this stuff...on x86 it emits a "jno" or something.
TimToady C doesn't help us much here though 17:05
jnthn No, sadly not :( 17:07
jnthn googles and instead manages to get "How to Carry the U.S. Flag" 17:08
17:09 Trashlord left 17:17 kaare_ joined 17:21 tokuhirom left, tokuhirom joined 17:26 tokuhirom left 17:43 fsergot joined 17:45 sayu left 17:47 donri joined 17:49 Trashlord joined 17:54 birdwindupbird joined, birdwindupbird left, fsergot left 17:55 Trashlord left 17:56 Trashlord joined
mathw how... useful 17:58
18:05 _twitch joined
[Coke] aloha, seen TimToady? 18:10
aloha [Coke]: TimToady was last seen in #perl6 1 hours 5 mins ago saying "C doesn't help us much here though".
moritz [Coke]: moritz.faui2k3.org/tmp/traits.pod is that understandable for somebody who doesn't know much about traits? 18:16
donri is this for advent? 18:17
18:17 Kharec joined
moritz yes 18:18
donri moritz++
moritz I'm still hoping that soembody signs up for day 4, but I keep that as a backup (and post it later if not needed now) 18:19
sorear good * #perl6
[Coke] moritz++ # sehr güt. 18:20
moritz \o/ 18:21
18:21 daxim left
sorear [Coke]: once I did rm -rf * in $HOME by mistake. I think it happens to everytbody at least once. 18:21
donri moritz: how come it matches for ":$cached!"; shouldn't "cache" be a role or something?
I have alias rm=trash-put 18:22
sorear mathw: if you're a C# expert who wants to contribute, how about Niecza instead of Advent-Calendar? :D
donri like github.com/masak/web/blob/master/l...ispatch.pm 18:25
flussence (speaking of disasters, I've done some horrible things at $dayjob... like accidentally wiping a partition table)
sorear std: method () { self } 18:26
p6eval std be1f10e: OUTPUT«ok 00:01 120m␤»
sorear std: method () { self() }
p6eval std be1f10e: OUTPUT«===SORRY!===␤Undeclared routine:␤ 'self' used at line 1␤Check failed␤FAILED 00:01 120m␤»
sorear How do I post comments on bugs? Just reply to the mail?
donri oh i see, it's the difference between trait_mod and trait_auxilliary?
[Coke] flussence: my worst was nuking the NIS+ master server and then making it replicate to all the remote servers. that was fun. 18:27
sorear: with RT?
sorear [Coke]: yes
#105186
[Coke] (if so, yes, or you can login to the website and comment there; but if you do that, be sure to hit the cc the list button)
sorear what address do I need to send the reply to? does RT read p6c? 18:28
PerlJam moritz: you have the %cache scoped poorly 18:29
sorear is thinking perl6-bugs-followup@ needs to get the mail 18:30
dalek ast: 15f65f0 | coke++ | integration/99problems-41-to-50.t:
Update blocker description
18:31
ast: 5e5122b | coke++ | S05-match/arrayhash.t:
unfudge for rakudo/nom
18:31 Kharec left
sorear pokes [Coke] 18:32
[Coke] sorear: yes, that one. but if you email it and don't cc the list, it's just a comment on the ticket, and only RT viewers will see it. (I think.)
[Coke] would just reply all at that point.
sorear [Coke]: I tried reply all, mutt set To: p6c, Cc: empty
I think I need to change one or the other
[Coke] I can't fix your mail client. ;) 18:33
let me see what gmail does.
sorear [Coke]: I'm not asking you to fix mutt
[Coke]: I'm just asking what I need to have in To: and Cc:
[Coke] sorear: that was not a serious statement. see the smiley.
All I can tell you is what /my/ mail client does. which I'm about to do . 18:34
to: [email@hidden.address] [email@hidden.address]
sorear ah.
[Coke] cc: [email@hidden.address]
why gmail dups it, I have no idea. Enjoy.
18:34 tyatpi joined
sorear thanks 18:35
18:43 Trashlord left 18:45 Trashlord joined 18:47 _twitch left 19:05 Trashlord left 19:06 Trashlord joined 19:10 Trashlord left 19:12 Trashlord joined 19:17 kmwallio joined 19:21 mkramer joined, mkramer left 19:23 lab7 joined 19:27 lab7 left 19:31 lab7 joined 19:41 wolfman2000 joined 19:49 bluescreen10 left, bluescreen10 joined 20:02 ksi joined 20:03 xinming left 20:11 xinming joined
[Coke] nom: my @array = 1,2,3; say @array.exists(-1); 20:16
p6eval nom 676b35: OUTPUT«Bool::False␤»
[Coke] nom: my @array = 1,2,3; say @array.exists(*-1);
p6eval nom 676b35: OUTPUT«No applicable candidates found to dispatch to for 'Numeric'. Available candidates are:␤:(Mu, Mu %_)␤␤ in method Numeric at src/gen/CORE.setting:634␤ in sub infix:<+> at src/gen/CORE.setting:2054␤ in method exists at src/gen/CORE.setting:4465␤ in block <anon> at /t…
[Coke] looking at perlcabal.org/syn/S32/Containers.html, it seems like both of those constructs are wrong. yes? 20:18
20:18 leprevost joined
[Coke] niecza: my @array = 1,2,3; say @array.exists(-1); 20:19
p6eval niecza v12-2-geb42dfa: OUTPUT«Unhandled exception: Unable to resolve method exists in class Array␤ at /tmp/PyMgW0L0oO line 1 (mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2224 (ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2225 (module-CORE @ 58) ␤ at /hom…
20:19 lab7 left
colomon moritz: I like your "is cached" post. moritz++ jnthn++ 20:20
moritz: btw, I just tested it on jnthn's wrap version, and it calculates fib(100) almost instantly, so the caching clearly works, even on self-recursive functions. \o/ 20:22
hmmm... wonder if is symmetric can also be implemented this way right now.... 20:23
20:24 leprevost left
jnthn oh 20:24
colomon: Do you just need to handle binary functions? 20:25
colomon jnthn: seems like
jnthn (arity 2)
colomon right
jnthn Yeah, you can likely do it.
colomon at least, that would be a fantastic start
jnthn Here's why it's hard
colomon you need to be able to extract the signature types from the original sub somehow
jnthn You need to get a sub that actually has - in terms the multi-dispatcher will understand - the right signature. 20:26
Well
That bit is easy
The hard part is building the new one.
PerlJam jnthn: eval :) 20:27
jnthn ewwwww.
colomon oh, you can't just say wrap( -> Type1 $a, Type2 $b { blah } )
jnthn colomon: How would it work with wrap?
colomon: You need to add an extra multi candidate.
colomon oh, right, wrap replaces the original
jnthn colomon: Here's what I guess a solution will look like... 20:28
You will get an individual candidate. To get back to the actual proto, which holds the candidates, you'll can call .dispatcher.
That gives you the proto.
You can then .add_dispatchee (I think that's what it's called)
Generating the thing to add is the hard part. Because if you just do 20:29
sub ($a, $b) { $orig($b, $a) }
It'll invoke BUT miss the types of course :)
sorear ello colomon
colomon o/ sorear
jnthn You can either make a generator, which you pass the two types in...it has a (::T1, ::T2) signature which I guess you can then use 20:30
But that probably still doesn't reify them soon enough for the multi-dispatcher.
So you probably need to do a trick with a parametric role.
Which do ensure signature reification of type vars.
colomon: oh, there's a simpler way. 20:33
moritz can't you simply .clone the signature, and use it for the wrapper block 20:34
20:34 icwiener joined
moritz but use the opcode that gives the argument list for processing it 20:34
colomon you've got to reverse the signature
[Coke] kills some spec tests. 20:35
dalek ast: 7eadbcb | coke++ | S32-array/exists.t:
remove invalid "exists" tests

S32 says:
our Bool method exists (@array: Int $index) True if the specified Array element has been assigned to
so the -1 would fail (nothing at -1 index) and *-1 is invalid.
jnthn nom: sub gen(::T1, ::T2) { (sub (T1 $a, T2 $b) { }).instantiate_generic(nqp::hash('T1', T1, 'T2', T2)); }; gen(Int, Int).signature.say 20:37
p6eval nom 676b35: OUTPUT«:(Int $a, Int $b)␤»
20:37 localhost joined
jnthn Should just be able to pass a Perl 6 hash in there really... 20:37
But anyway, that just uses the mechanism that parametric roles use under the hood. 20:38
colomon nom: sub gen(::T1, ::T2) { (sub (T1 $a, T2 $b) { }).instantiate_generic(nqp::hash('T1', T1, 'T2', T2)); }; gen(Int, Rat).signature.say
p6eval nom 676b35: OUTPUT«:(Int $a, Rat $b)␤»
jnthn colomon: Nest that inside your trait aod inside that inner sub (yeah, we're gonna be 3 subs deep here :)) you can do a call to the original thing 20:39
So anyway, looks like we potentially have "is symmetric" in like, five lines of code or so... :)
colomon Not sure I understand that, but I'll give it a try when I get back from the barbershop. :)
jnthn oh come on, the code wasn't *that* hairy P 20:40
*:P
moritz nom: sub wrapper() { nextsame(|pir::perl6_current_args_rpa__P()) }; nqp::bindattr(&wrapper, Code, '$!signature', &join.signature); say &wrapper.signature.perl
p6eval nom 676b35: OUTPUT«:(Any)␤»
moritz nom: say &join.signature.perl 20:41
p6eval nom 676b35: OUTPUT«:(Any)␤»
jnthn |pir::perl6_current_args_rpa__P()) is not going to end well, I suspect :) 20:42
But yeah, you can do signature games like that above. I'm not sure I'd say it's especially a good idea though.
20:50 cooper joined
sorear I still do not understand the advent idea well enough to pick a topic, but if someone has an idea for me, I'll donate time. 20:54
PerlJam sorear: the idea is to write "something cool about Perl 6" for each day of advent. 20:57
sorear is not convinced there have been 25 days worth of cool changes in Perl 6 this year 20:58
jnthn A lot of people reading probably won't know Perl 6 well. So it's fine to have some about cool but not especially new.
(Or know it at all in some cases.)
20:58 icwiener left
jnthn Doesn't just ahve to be about stuff in the last year. 20:58
PerlJam sorear: you could write anything you want, but if you look at github.com/perl6/mu/blob/master/mi...instorming you can see there's some niecza-specific ideas :) 20:59
moritz sorear: nice perl 6 idioms are also good blog post material, doesn't need to be a new feature 21:02
jnthn ...when wondering why "git stash apply" is taking forever, make sure you didn't type "git apply" 21:03
arnsholt Heh =) 21:05
21:05 icwiener joined, icwiener left, icwiener joined
japhb There are some rumblings about possibly using (Perl 5) Mojolicious at $day-job, which made me of course instantly wonder about what has already been written for Perl 6 ... has someone already started work on a Mojolicious (or Dancer, or what have you) port to Perl 6? 21:07
PerlJam japhb: github.com/tadzik/Bailador 21:08
21:12 xinming left 21:18 donri left, felher left 21:19 kmwallio left 21:20 simcop2387 joined, snearch joined, bluescreen10 left, donri joined
dalek p: 0fce58c | jnthn++ | src/6model/reprs/CStruct.c:
Fix a typo.
21:20
p: a298ab3 | jnthn++ | / (3 files):
Start to sketch out CArray representation.
p: 721f08d | jnthn++ | tools/build/Makefile.in:
Actually link in the CArray object file!
p: ad94412 | jnthn++ | src/ops/nqp_dyncall.ops:
Teach the call engine how to handle a CArray representation (though we can't do anything much useful with it yet).
japhb PerlJam, thank you. I can't believe I forgot Bailador. 21:22
21:24 simcop2387 left, simcop2387 joined 21:25 felher joined 21:30 snearch left 21:32 tadzik left 21:41 kaare_ left, orafu left 21:42 orafu joined 21:46 wolfman2000 left
[Coke] nom: (v) (;,,;) (v) 21:46
p6eval nom 676b35: OUTPUT«===SORRY!===␤Confused at line 1, near "(v) (;,,;)"␤»
jnthn tries to work that smiley out 21:48
[Coke] squirts ink all over jnthn and scuttles away. 21:51
jnthn ...it's a squid? 21:52
21:53 apejens left, lab7 joined 21:54 apejens joined, ethndbst joined
[Coke] why not zoidberg? 21:55
21:55 ethndbst left, ethndbst joined
jnthn oh! 21:56
22:06 lab7 left
japhb phenny, ask tadzik Why did you choose to clone Dancer, as opposed to Mojolicious or one of the other Perl 5 frameworks? Just the one you were most familiar with, or was there a deeper reason? 22:17
phenny japhb: I'll pass that on when tadzik is around.
japhb seen mberends 22:19
aloha mberends was last seen in #perl6 15 days 4 hours ago joining the channel.
jnthn whoa, I saw mberends IRL just a bit longer than that ago... 22:21
japhb @production-ready-definitions.push: 'When I can teach my 8-year-old programming using one of the Perl 6 implementations, and not be surprised by something seemingly simple that is broken or out of spec.' 22:31
dalek p: b2d7aa2 | jnthn++ | tools/build/Makefile.in:
Add missing deps.
p: 945817d | jnthn++ | src/6model/reprs/CArray.c:
Sketch out a bit more of CArray representation.
jnthn Grr, getting tired. 22:32
Will get this basically working tomorrow.
japhb Get some good rest, jnthn++! :-) 22:33
22:38 orafu left 22:39 orafu joined
jnthn Hopefully. I've felt oddly tired the whole week...hope next week I've more energy, given I'm eatching. 22:40
grr...teaching :)
I don't nom my students :)
anyway, night &
22:44 donri left
japhb phenny, ask jnthn OOC, what do you teach? 22:45
phenny japhb: I'll pass that on when jnthn is around.
22:54 donri joined 23:00 ascent_ joined 23:03 MayDaniel left 23:20 tyatpi left 23:21 tyatpi joined 23:33 tadzik joined, hundskatt left 23:45 donri left 23:48 ksi left 23:51 tyatpi left 23:56 Chillance left