»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by moderator on 10 October 2009.
diakopter looks around for masak 00:00
jnthn Q:PIR 00:01
quietfanatic: ['Some';'Place']
quietfanatic Yeah, I figured it out. 00:02
jnthn ah
I was still catching up :-)
quietfanatic :)
jnthn OK, sleeeeep is needed.
diakopter rakudo: say (Q:PIR{}).WHAT
jnthn o/
p6eval rakudo 27d9f1: OUTPUT«ResizablePMCArray: Can't shift from an empty array!␤in Main (file src/gen_setting.pm, line 206)␤»
diakopter rakudo: say (Q:PIR{say 3}).WHAT
p6eval rakudo 27d9f1: OUTPUT«The opcode 'descalarref_p' (descalarref<1>) was not found. Check the type and number of the arguments␤in Main (file src/gen_setting.pm, line 206)␤»
diakopter \\o 00:03
quietfanatic o hi thar
diakopter refrigerator cat awaketh
00:04 TiMBuS joined
diakopter [OT] 'A woman introduced as a law school student called the incidents "gross violations of basic human rights."' - CNN The woman said she studies law schools? 00:05
TimToady Please sign and return the spring law school summer quarter curriculum coordination committee meeting agenda addenda sheet enclosure. 00:08
00:09 xinming_ joined
pugs_svn r28738 | lwall++ | [gimme5] remove some unnecessary LazyMapping 00:14
00:24 eternaleye joined 00:27 xinming joined 00:29 lumi joined 00:55 eternaleye joined
pugs_svn r28739 | lwall++ | [STD] move \\w lookahead from param_var to placeholder twigils 01:00
01:12 eternaleye_ joined 01:17 orafu joined 01:31 eternaleye joined 01:50 eternaleye joined 01:51 nbrown joined
pugs_svn r28740 | colomon++ | [t/spec] More used-defined ops, more hyper tests, one fresh failure. 01:55
02:04 eternaleye joined
pugs_svn r28741 | colomon++ | [t/spec] Few more hyper tests. 02:11
02:13 dalek joined, eternaleye joined 02:17 envi^home joined
pugs_svn r28742 | colomon++ | [t/spec] Add power operator. 02:25
02:25 JimmyZ joined 02:36 nbrown joined 02:45 eternaleye_ joined
pugs_svn r28743 | colomon++ | [t/spec] Another test. 02:58
03:13 diakopter_ joined 03:20 drbean joined 03:23 Confield left
pugs_svn r28744 | kyle++ | [t/spec] fix filename typo 03:25
r28745 | kyle++ | [t/spec] Test for RT #69044 03:27
r28746 | kyle++ | [t/spec] Tests on Rat.new
colomon eval Rat.new.perl ? 03:30
rakudo: say Rat.new.perl 03:32
p6eval rakudo 27d9f1: OUTPUT«Null PMC access in can()␤in Main (file src/gen_setting.pm, line 206)␤»
colomon woah
dalek kudo: 7ec926f | (Kyle Hasselbacher)++ | t/spectest.data:
[spectest.data] fix filename typo
pugs_svn r28747 | kyle++ | [t/spec] Test for RT #65324 03:34
KyleHa I don't know what Rat.new.Str should do either, but if Rat.new works, Rat.new.perl ought to work too. 8-)
colomon say Rat.new; 03:39
03:40 drbean_ joined
colomon rakudo: say Rat.new.nude.perl 03:40
p6eval rakudo 27d9f1: OUTPUT«[undef, undef]␤»
colomon ooooooh.
Odd, I don't see why Rat.new.perl doesn't work. Any idea if the bug has been submitted? 03:41
colomon stumbles off to bed... 03:42
03:43 envi^office joined
KyleHa I haven't seen a bug submitted, but I'm not all over the bugs database like I used to be either. 03:47
03:51 drbean joined 03:55 eternaleye joined 04:03 mberends joined
pugs_svn r28748 | kyle++ | [t/spec] Test for RT #65348 04:09
KyleHa Another satisfied test condition! 04:14
04:24 eternaleye joined 04:26 kidd` joined 04:29 synth joined
KyleHa I just cleaned a bunch of comment spam off of rakudo.org. I mention it here primarily so that you, gentle reader, may know that adding a captcha to it wouldn't be a total waste of time. 04:33
04:52 drbean joined 04:57 eternaleye joined 05:01 drbean joined 05:21 Util joined 05:24 eternaleye_ joined 05:27 tak11 joined 05:39 msmatsko joined
spinclad (now that i'm back to scrollback.now(), and before i toddle off to bed:) 05:43
S04 now says: 05:45
+Note that the closure in a C<map> will never be interpreted as a hash,
+since such a closure always takes arguments, and use of placeholders
+(including underscore variables) is taken as evidence of arguments.
This turns out not to be entirely the case: 05:46
consider
perl6: map { :a; }, ^3 05:47
p6eval rakudo 7ec926: OUTPUT«No applicable candidates found to dispatch to for 'map'␤in Main (file src/gen_setting.pm, line 206)␤»
..pugs: ( no output )
..elf 28748: OUTPUT«Undefined subroutine &GLOBAL::prefix__94 called at (eval 123) line 3.␤ at ./elf_h line 5881␤»
spinclad perl6: (map { :a; }, ^3).perl.say 05:49
p6eval rakudo 7ec926: OUTPUT«No applicable candidates found to dispatch to for 'map'␤in Main (file src/gen_setting.pm, line 206)␤»
..elf 28748: OUTPUT«Undefined subroutine &GLOBAL::prefix__94 called at (eval 125) line 3.␤ at ./elf_h line 5881␤»
..pugs: OUTPUT«(("a" => Bool::True), ("a" => Bool::True), ("a" => Bool::True))␤»
spinclad as compared to 05:50
perl6: (map { :a }, ^3).perl.say
p6eval rakudo 7ec926: OUTPUT«No applicable candidates found to dispatch to for 'map'␤in Main (file src/gen_setting.pm, line 206)␤»
..elf 28748: OUTPUT«Undefined subroutine &GLOBAL::prefix__94 called at (eval 125) line 3.␤ at ./elf_h line 5881␤»
..pugs: OUTPUT«*** Cannot cast from VList [VNum 0.0,VNum 1.0,VNum 2.0] to Pugs.AST.Types.VCode (VCode)␤ at /tmp/8aRsxAklXF line 1, column 2-16␤»
05:51 tak11 joined
TimToady but nobody will every write that :) 05:51
the only reason for having a map with an argumentless block is if there are side effects 05:52
and by definition a hash composer pretty much doesn't
spinclad nobody will ever fill their tictactoe boards with :x and :o ?
TimToady well, maybe
but yes, it's slightly overstated 05:53
spinclad pugs: (map { 1 }, ^3).perl.say
p6eval pugs: OUTPUT«(1, 1, 1)␤»
spinclad easy way to fill a diagonal vector...
TimToady nevertheless, most of the times people beg caught is when they're trying to map $_ somehow 05:54
*get caught
and why wouldn't you just write :x xx 3?
spinclad true, true... I have no problem with what's spec'd, just the slight overstatement on the note. fine with me to have to say map { :a; }, @whatever (or :a xx +@whatever) 05:56
endofnitpick 05:57
TimToady interestingly for some uses, { :a } and :a will mean the same thing anyway 05:58
spinclad sure, when including them in another { ... } hash composer
pugs_svn r28749 | jimmy++ | [Spec/S02] updated a bit format. 06:22
06:31 Bzek joined 07:00 drbean_ joined 07:10 drbean_ joined 07:22 drbean joined
pugs_svn r28750 | carlin++ | [Spec/S16-io] Tidied up some formatting and escaped the brackets in %*ENV<PATH> to (hopefully) fix a POD-error 07:22
07:27 drbean joined 07:39 drbean joined 07:42 rjh joined 07:43 cls_bsd joined 07:44 kolibrie joined, Helios- joined 07:49 japhb joined, jjore_ joined
JimmyZ %*ENVE<lt>PATHE<gt> ? 07:55
carlin JimmyZ: Outputs as %*ENV<PATH>
There's probably a nicer way to escape it 07:56
08:02 lumi joined 08:17 Su-Shee joined
Su-Shee good morning. 08:17
JimmyZ carlin: but ugly, maybe C<< %*ENV<PATH> >> 08:27
08:27 abra joined
JimmyZ carlin: it's unreadable 08:28
08:38 synth joined 08:43 abra_ joined 08:49 lumi joined
pugs_svn r28751 | jimmy++ | [Spec/S02-bits.pod] changed colon to comma 08:55
r28752 | jimmy++ | [zh-cn/syn/S02-bits.pod]added more translations for Built-In Data Types. 08:59
09:13 jrtayloriv joined 09:22 drbean joined 09:44 pmurias joined
carlin JimmyZ: Tried that, doesn't fix the problem 09:48
%*ENVZ<><PATH>
does though, maybe that's better
carlin thinks there is probably a nice, obvious way to do it that he's missing 09:49
JimmyZ carlin: I saw S02 uses C<< infix:</> >>
I think it's the same thing.
carlin Nope, the colon makes it not try and treat it as a formatting code block 09:50
eg, %*ENV:<PATH> would work fine
(if that's what we wanted) 09:51
JimmyZ carlin: and C<< --> >> ?
carlin: and C<< %bar<a> >> from S02 09:52
JimmyZ doesn't know whether it is the same thing. 09:53
carlin C<< --> >> works because there isn't an opening bracket 09:54
09:54 lumi joined
carlin but that one is S02 looks interesting, why can't I get that to work? :/ 09:54
JimmyZ C<< %bar<a> >> from S02, I think It should works well ;) 09:55
09:55 ejs joined
JimmyZ s/works/work/ 09:55
carlin Oh, because only an uppercase letter followed by <> is treated as a formatting code
JimmyZ :( 09:56
carlin: I think it's the parser's bug. 10:00
carlin: since C<< %*ENV<PATH> >> is wrong.
pugs_svn r28753 | jimmy++ | [zh-cn/syn/S02-bits.pod] added a bit translations 10:28
10:36 masak joined 10:37 meppl joined 10:52 integral left
pugs_svn r28754 | masak++ | Revert "[Spec/S02-bits.pod] changed colon to comma" 11:04
r28754 |
r28754 | The improvement was of the kind where things were actually more improved
r28754 | before the change than after. Reverting.
11:17 jogla joined
jnthn o/ ahojte 11:20
moritz_ \\o 11:22
jogla Hi
masak ahoj!
moritz_ jnthn: I don't understand that bind.ar business... 11:23
jnthn: things like perl6_group are just linked dynamically, and then loaded at some point 11:24
jnthn: why don't you do it the with binder.so
jnthn moritz_: It's more analogous to the way that we link the dynpmcs against libparrot 11:26
moritz_: But don't worry - I think I may just bundle them into the PMCs library and just use some magic to let the dynop find them.
11:29 abra joined 11:32 Whiteknight joined 11:33 ruoso joined 11:36 FOAD_ joined
dalek kudo: 0a5ec87 | (Solomon Foster)++ | t/spectest.data:
Turn on S06-operator-overloading/workout.t.
11:36
jnthn moritz_: The other reason I probably will put it in the PMC library is that I realized while starting to implement the algorithm yesterday that subsignature handling was going to be awkward otherwise. 11:39
jogla Does anyone of you already program in perl6 for any kind of production script/software? 11:40
jnthn jogla: I can't speak for everyone of course, but I haven't heard of anybody doing that just yet. 11:42
jogla Thanks 11:44
moritz_: Is it on purpose that the green background on your web page only covers half the height? 11:46
11:52 zloyrusskiy joined, edgar_ joined
edgar_ mask? 11:52
masak is that a misspelling of my nick? 11:53
edgar_ ok masak?
masak hai.
11:53 jrtaylor joined
edgar_ a new friend tell me that you can answer some question about perl6 11:54
masak edgar_: 你也是中人吗?
edgar_
masak :)
edgar_ More generally, a parameter can have a set of constraints, and the set of constraints defines the formal type of the parameter, as visible to the signature
masak from the spec, yes? 11:55
edgar_ this word "signature" ?
11:55 jrtaylor joined
edgar_ yeah 11:55
spec
masak edgar_: a signature is the list of parameters (and their properties) of a routine (sub, method, etc)
edgar_: conveniently, signatures are also used in the LHS of an assignment. 11:56
11:56 NorwayGeek joined
jnthn They can also be written as stand-alone literals, and bound against. 11:56
11:57 JimmyZ joined
jnthn And are fully introspectable data structures too. 11:57
masak JimmyZ: \\o
JimmyZ masak: good localtime ;)
masak likewise :)
edgar_ mm 11:58
JimmyZ edgar: It's me.
edgar_ 散花? 11:59
are you?
JimmyZ edgar_: yes
12:00 lumi joined
edgar_ mm 12:02
moritz_ forget to --sign-off the latest patch by Util++ 12:04
KyleHa++ # testing like mad
dalek kudo: e5562c9 | util++ | build/Makefile.in:
RT#69684 Fixed parallel build by adding dependency.
12:09 hirschnase joined
pmurias jrockway_: ping 12:11
12:12 Su-Shee joined 12:17 Su-Shee joined 12:36 edgar_ joined 12:38 KyleHa joined 12:40 iblechbot joined 12:43 drbean joined 12:54 lumi joined 12:56 TopoMorto joined
pugs_svn r28755 | kyle++ | [t/spec] Test for RT #65358 12:57
KyleHa On RT, what does [LHF] mean? 13:00
moritz_ Low Hanging Fruit
KyleHa Ah, thank you. 13:01
I've been changing every 'plan \\d' to 'plan *' and 'done_testing'. That's OK, right? 13:03
moritz_ yes
it sligthly deteriorates our statistics on tests which rakudo doesn't run, though
so I only do it when I add or remove tests and I'm too lazy to count them ;-) 13:04
rakudo: %*ENV<PATH>.=true; say %*ENV<PATH>.perl 13:05
p6eval rakudo e5562c: OUTPUT«Bool::True␤»
moritz_ rakudo: sub a(*%b) { %b<c>.=true; say %b.perl }; a(:c(3))
p6eval rakudo e5562c: OUTPUT«{"c" => Bool::True}␤»
13:05 slavik joined
masak it's theoretically possible to count the tests even in a planless test file. 13:05
KyleHa Yeah, I'm always adding, removing, and lazy.
moritz_ why didn't that work in the setting then...? 13:06
jnthn I'm just always lazing.
*lazy
moritz_ KyleHa: that's a very good reason
jnthn ;)
moritz_ masak: aye, we could even try to re-use the code from fudge...
jnthn moritz_: I saw your "why doesn't this work" comment
moritz_: I suspect it's 'cus I'm not passing in a Perl 6 Int or something like that.
13:07 h1rschnase joined
moritz_ jnthn: oh, that's a good reason 13:07
jnthn I didn't look particularly deeply though.
KyleHa rakudo: %*h.push: 1 => 2; %*h.perl.say 13:09
p6eval rakudo e5562c: OUTPUT«Method 'push' not found for invocant of class 'Failure'␤in Main (file src/gen_setting.pm, line 206)␤»
jnthn Hmm. What should happen if a context var is not found? 13:10
KyleHa This expects it to be there: rt.perl.org/rt3/Ticket/Display.html?id=65388 13:11
moritz_ probably % and @ sigils should autovivify that variable 13:13
KyleHa rakudo: $*PID.say 13:15
p6eval rakudo e5562c: OUTPUT«Contextual $*PID not found␤␤»
KyleHa rakudo: $*PID.perl.say
p6eval rakudo e5562c: OUTPUT«undef␤»
jnthn moritz_: But...where is the variable stored?
I mean, %*h is not a global any more.
moritz_ no idea
jnthn isn't sure he likes the idea of context vars sprining into existence. 13:16
pmurias ruoso: hi 13:17
KyleHa Needs spec, I guess.
moritz_ I think the ticket comes from a time where %* meant "global", not "contextual"
jnthn Yeah, same.
KyleHa: Yes, it does. 13:18
13:19 edgar_ left 13:28 zloyrusskiy joined
masak rakudo: BEGIN { $*a = 42 }; say $*a 13:37
p6eval rakudo e5562c: OUTPUT«Contextual $*a not found␤␤»
masak when twigil:<*> meant 'global', this worked. 13:38
13:38 nothing__ joined
masak how can I declare something in BEGIN {} which survives to the outer context? 13:38
jnthn masak: Stick it in a package.
masak jnthn: that's not really practical when I'm writing -e one-liners. 13:39
jnthn ...you write BEGIN blocks in -e one-liners? 13:40
masak oh, sure.
pun allows me to use -n and -p today.
jnthn ah, I see...
hmm
masak and for that, BEGIN {} is, used to be, kinda useful.
jnthn rakudo: say $*a 13:41
rakudo: say @*a
p6eval rakudo e5562c: OUTPUT«Contextual $*a not found␤␤»
rakudo e5562c: OUTPUT«Contextual @*a not found␤␤»
jnthn rakudo: $*a.push
p6eval rakudo e5562c: OUTPUT«Method 'push' not found for invocant of class 'Failure'␤in Main (file src/gen_setting.pm, line 206)␤»
masak in fact, one of the examples in the pun README hinges on BEGIN and globals. :/
jnthn Ah
masak too bad, it was a nice example. :/
jnthn A method call on a Failure doesn't give the message, that's all.
masak: Yes, but they aren't globals any more.
masak jnthn: that's why I'm asking what substitutes the old approach. 13:42
jnthn masak: I can see what you're looking for...but I'm not sure context vars are the mechanism...
masak I'm afraid the answer might be "don't use strict mode" and that there's no way to do this in strict mode.
i.e. no way at all in Rakudo at present.
jnthn Well, -e should not be using strict mode anyway, iirc. 13:43
masak correct.
jnthn (sure, Rakudo doesn't handle that atm)
But even in non-strict mode, we still have a problem.
Because %*h is "looking up a %h in the dynamic scope"
That means some lexpad somewhere should hold a %*h. 13:44
But lexpads can't magically start to contain new variables at runtime.
So unless there's some fallback package that we can declare these things in...
masak phenny: tell pmichaud that compilers/pge/README.pod states "It also includes the "pgc.pir" grammar compiler, which can convert an entire grammar specification into the appropriate PIR code for execution." -- sounds cool, where's that file? 13:47
phenny masak: I'll pass that on when pmichaud is around.
13:56 kidd_ joined
colomon rakudo: say Rat.new.perl 14:01
p6eval rakudo e5562c: OUTPUT«Null PMC access in can()␤in Main (file src/gen_setting.pm, line 206)␤»
14:01 Chillance joined
JimmyZ rakudo: Rat.new 14:02
p6eval rakudo e5562c: ( no output )
colomon Anyone have idea if this is a bug which has been reported before? KyleHa turned it up in the middle of the night...
JimmyZ rakudo: Rat.new.perl
p6eval rakudo e5562c: OUTPUT«Null PMC access in can()␤in Main (file src/gen_setting.pm, line 206)␤»
masak JimmyZ: please submit a bug report on that one.
colomon Rat.new (by itself) seems to create a Rat with both numerator and denominator undef.
masak oh, or colomon. 14:03
colomon I'm on it.
masak I don't recognize it as something ticketed.
colomon rakudo: say Rat.new.nude.perl 14:04
p6eval rakudo e5562c: OUTPUT«[undef, undef]␤»
colomon rakudo: my $a; say $a;
p6eval rakudo e5562c: OUTPUT«Use of uninitialized value␤␤»
masak I'd just disallow creating a Rat with no arguments to .new 14:05
jnthn lol nude!
colomon masak: But it's not like we allowed that, it's just what happens if you don't specifically disallow it. 14:06
masak colomon: sure. that's why I'd explicitly disallow it.
colomon masak: my point being that it seems like this will be a general problem for any user-defined class. 14:07
jnthn: I believe TimToady came up with Rat.nude. It's specifically designed to make testing Rat easier. :)
masak colomon: well, .perl is nowhere near well-spec'd/implemented for user-defined classes.
jnthn colomon: 'cus you can see both parts of its value laid bare? 14:08
colomon ;) 14:09
rakudo: my $a = Rat.new; say $a.numerator; 14:10
p6eval rakudo e5562c: OUTPUT«Use of uninitialized value␤␤»
pmurias rakudo: my $a = Rat.new(1,2);say $a.nude;
colomon rakudo: my $a = Rat.new; say "{$a.numerator} / {$a.denominator"";
p6eval rakudo e5562c: OUTPUT«12␤»
rakudo e5562c: OUTPUT«Confused at line 2, near "\\"\\";"␤in Main (file <unknown>, line <unknown>)␤»
colomon akudo: my $a = Rat.new; say "{$a.numerator} / {$a.denominator}" 14:11
rakudo: my $a = Rat.new; say "{$a.numerator} / {$a.denominator}"
p6eval rakudo e5562c: OUTPUT«Use of uninitialized value␤Use of uninitialized value␤ / ␤»
colomon That's what's weird about the bug. (Which is now RT #69726.) 14:12
rakudo: my $a = Rat.new; say $a.perl
p6eval rakudo e5562c: OUTPUT«Null PMC access in can()␤in Main (file src/gen_setting.pm, line 206)␤»
colomon At least that's consistent!
14:17 zloyrusskiy joined
colomon If the wise folk here could take a look at t/spec/S06-operator-overloading/workout.t and suggest how the tests could be better (different location? different filename?) or more tests, I would appreciate it. 14:17
pugs_svn r28756 | kyle++ | [t/spec] Label test for RT 69726 14:18
14:19 Psyche^ joined
moritz_ takes a look, despite not belonging to teh wise folk ;-) 14:23
masak right. a couple of us are impostors. :) 14:24
KyleHa imposts. 14:25
colomon KyleHa: good catch with the label, and finding the bug in the first place. :) 14:26
masak std: q: :p 14:27
p6eval std 28755: OUTPUT«ok 00:01 106m␤»
moritz_ colomon: it's a bit evil to assume that is_approx will work on vectors
masak this came up the other day? how -do- we know whether q is a label or a method name?
moritz_ we don't, IMHO
colomon moritz_: I specifically code the Vector so it would.
But then, that does depend on the implementation of is_approx. 14:28
moritz_ aye
and in theory it also depends on lift()
colomon lift?
moritz_ new operators are only visisble in the scope where they are defined
so is_approx() shouldn't see the infix:<-> you define in workout.t 14:29
masak moritz_: butbut, it must be either, and by some rule...
moritz_ unless it explicitly lifts infix:<-> from its calling scope
currently rakudo has two contrary "bugs" that make it work
on the one hand it doesn't have lift yet
on the other hand overloaded operators aren't properly lexical yet 14:30
so down that road is great evil, and the rquirement of rather advanced features which nobody yet implements 14:31
colomon Huh. 14:32
moritz_ otoh the tests with is_approx_array looks good
colomon is there a spec which explains what you're talking about with lift?
moritz_ S04
it has a subsection on its own 14:33
14:35 payload joined, am0c joined
pugs_svn r28757 | moritz++ | [t/spec] simplify isnt-function in workout.t. Also remove trailing ws 14:35
colomon I'm having a hard time understanding how lift can work? Does it imply that normally operator resolution is done at compile time? (In theory, if not in current practice?) 14:39
except it's not resolution, it's limiting the set of possible choices that can be used for resolution?
pugs_svn r28758 | moritz++ | [t/spec] added word of warnings to workout.t. Also export abs() in case is_approx uses the sub form 14:40
moritz_ well, usually (ie without lift) the set of multis (including operators) is known at compile time
and if the compiler sees 'lift $something;', it knows that this is not the case
if has to inspect the caller's lexical scope to find other multis of the same name 14:41
adds then to the current list
sort them by narrowness
and only then can it dispatch
it sounds very scary to me
jnthn I thought it was just a lookup as the caller would see it, ignoring any visible in the lexical scope of the thing doing the lift. But I'd have to check. 14:42
moritz_ but it's also necessary if overloaded operators aren't meant to be second class citizens
jnthn either way, yes, it's a bit fun to implement.
moritz_ jnthn: or that, yes
jnthn Where fun is like, omgwtfneedmorebeer 14:43
moritz_ it sounds like the feature you'd want to implement at a hackathon where TimToady lingers about and can be asked directly if needed :)
masak jnthn: are you implying you plan to implement 'list' while intoxicated? 14:45
s/list/lift/
colomon I guess where it trips me up as a feature is that (if I'm understanding you correctly) if I copied Rat's source exactly to my own code, calling it Rat2, is_approx (as currently implemented) would work for Rat and not for Rat2, even thought Rat and Rat2 would have identical code.
moritz_ unless is_approx uses lift on infix<-> and abs 14:46
ah
jnthn masak: Not *that* much more beer. ;-)
moritz_ didn't see the "as currently implemented"
masak jnthn: just checking. :)
moritz_ colomon: well, overall sanity is not easy to achieve 14:47
masak jnthn: though it would be kinda fun to have an effective bus number of 0 on that piece of implementation. "how did you DO that?" -- "I have no f-ing idea..."
moritz_ exporting new multis and operators into every package being compiled wouldn't exactly imply sanity either
jnthn masak: Heh, that's how lexical multis are today. ;-) 14:48
masak o.O
jnthn masak: No, they're not so bad... But we need to do them better. 14:49
masak you should mark up those pieces of Rakudo with comments: # WARNING: Drunk code ahead.
jnthn masak: I'm pretty sure I was totally sober when I wrote that piece. 14:50
Maybe that was the problem. ;-)
masak aye.
jnthn Nah, it's just that they're kinda built on top of state variables to cache the built candidate list.
moritz_ but it does mean that any piece of code that wants to work with non-builtin data types has to lift() every used operator. D'oh. 14:51
14:51 justatheory joined
masak there's always a proximal cause and a distal cause. :) 14:51
moritz_ I kinda not-like that
14:51 Confield joined
colomon moritz_: yeah, that was my objection. 14:52
jnthn Hmm, that does feel kinda odd. 14:53
colomon I would think most any piece of math code would want to lift every single operation.
14:55 jan_ joined
colomon I get the vague feeling that lift is leftover thinking from the "operator overloading is bad" crowd. :) 14:56
Or to put it a different way -- does the same sort of rule apply to subs? 14:57
moritz_ yes
operators are just subs with weird names
(+ precedence, associativity)
jnthn masak: Well, I think really we need to try and build them when we build a kind of "prototype lexpad"
masak ok. 14:58
jnthn In a similar mechanism to how we'll apply traits to variables once.
15:00 blm joined 15:01 msmatsko joined 15:03 NorwayGeek joined
colomon Do you understand how lift is used, syntax-wise? 15:10
I mean, if I have a complex equation, where do I stick the lift(s)? 15:11
I guess the example in S04 implies one lift at the start does the entire... 15:12
not sure what the right word to use is.
"lift ~$a eq ~$b" applies lift to both ~s and eq. 15:13
jnthn colomon: I think it is a kind of statement prefix. 15:15
ah yes
token statement_prefix:lift {
colomon danke. 15:16
jnthn So it applies to the whole statement after it.
actually it takes a <blorst>
colomon I think I want to encourage the creation of "use lift" which applies lift to every statement that follows. :)
15:16 zloyrusskiy joined
masak rakudo: my @a = 5 ... * 15:17
p6eval rakudo e5562c: OUTPUT«Method 'params' not found for invocant of class 'Failure'␤in Main (file src/gen_setting.pm, line 206)␤»
masak submits rakudobug
jnthn Aww. 15:18
masak can't blame a guy for trying. :)
15:21 alanhaggai joined 15:25 payload joined 15:27 kent\\n joined 15:30 ejs joined 15:32 icwiener joined
masak loliblogged: use.perl.org/~masak/journal/39740 15:36
since people liked my last blog post about frivolities, I thought I'd try another one. :)
jnthn yaymasakblogged! 15:37
masak :P
jnthn oh wow you read the ROADMAP :-) 15:38
masak I read it often, in fact. 15:39
my current view on the ROADMAP is that it's very ambitious.
moritz_ it is
jnthn expects to move one of the priority 1 items to the completed list in the next week. :-)
masak but pmichaud++ has never, as far as I know, been vastly wrong about deadlines before, so I trust him.
15:41 Su-Shee left, jaldhar joined
jnthn In the coming week I'll be having a _really_ big push to get us moved over to the new dispatcher. 15:41
It's got binding positionals to named args built in from the start.
masak \\o/
let's try it on the application cheese before you push it. :)
jnthn Yes, it's in a branch. :-)
It's going to be quite a big change. 15:42
masak I'd be happy to test-drive it before you push.
jnthn That'd be great.
masak s/push/merge/
jnthn This month and the next are going to see Rakudo getting some fairly major changes, between the stuff myself and pmichaud are working on.
masak aye. 15:43
jnthn I expect some things that were insufficiently tested will get shaken out during this.
Which will be an overall win, but there may be some short-term pain along the way.
masak such as...? 15:44
jnthn Well, if I could guess exactly where we'll see issues in advance, then we'd be able to avoid them. ;-)
I'm just saying that we're swapping out two quite serious components of Rakudo. 15:45
masak I like the sound of that.
"Madam, we're going to swap out two quite serious components. But don't worry, we're professionals." 15:46
jnthn :-)
OTOH, the method dispatcher swap went fairly smoothly.
slavik assertions in grammars?
masak slavik: that'd be the fallout of pmichaud++'s changes, yes.
jnthn Much more than the "rvar" refactor a while ago, which you may remember kicked up quite a lot of dust.
masak since the NQP rewrite can see lexicals. 15:47
slavik masak: are they soon?
:P
masak slavik: pmichaud says so. but ask him for exact estimates.
colomon masak: how is proto testing going?
slavik my goal here is to nag enough that pmichaud actually implements them so that I go away :)
colomon (I mean, automatically testing proto-based projects.)
slavik and bignum ... is that for you or parrot people?
perl6: say 2**64; 15:48
masak colomon: I dunno exactly. I should talk to mberends++ about that.
p6eval pugs: OUTPUT«18446744073709551616␤»
..elf 28758, rakudo e5562c: OUTPUT«1.84467440737096e+19␤»
jnthn slavik: No, no, that just means you'll move on to nagging about something else. ;-)
slavik like bignum
colomon masak: just thinking that could be really helpful for big changes.
jnthn slavik: Exactly. :-)
masak colomon: oh yes.
colomon: here's the status from my perspective. I already do nightly smokes of November. there's really no extra technical trick involved in setting that up for all projects. but I'd prefer to wait until the installed-projects branch lands in proto before embarking on that. 15:49
slavik btw, same code that used to work (that did grammars) doesn't work anymore ... how can I debug it? (it doesn't output anything)
masak colomon: I thought I'd call the test-all-projects project "Emmentaler" :) 15:50
colomon masak: any idea how well the projects are passing their own tests now?
masak slavik: if you find a good answer to that question, please let me know.
colomon is not sure the significance of Emmentaler, but it's making him hungry...
slavik masak: ...
masak colomon: it varies greatly. some don't have tests. a small number have, and pass all of them. many have bitrotted slightly or a lot. 15:51
colomon: clue: Emmentaler has holes. :)
en.wikipedia.org/wiki/Emmental_(cheese)
colomon Interesting... I knew Emmentaler was a swiss cheese, but didn't know it was actually what we americans call "swiss cheese" (modulo the crappiness of the typical american version) 15:53
slavik also, any ETA on an installable package? 15:54
jnthn oooh, and I think that's the one they make fondu++ out of.
masak slavik: installable proto projects? that's what the installed-projects branch is all about. 15:55
slavik I mean "installable rakudo package" as in a deb and such of the latest stuff.
would it be there?
15:56 tak11 joined
colomon usually uses gruyere 15:57
masak slavik: I thought Debian already package Rakudo. either that, or they will very soon. 15:59
slavik I think it's an old version ;) 16:00
masak here's a discussion about it all: bugs.debian.org/cgi-bin/bugreport.cgi?bug=544399 16:03
sounds promising to me.
that's the September release of Rakudo right there. 16:04
16:07 eternaleye joined 16:26 nihiliad joined
jnthn finally finishes sorting out his Japan photos... 16:30
Matt-W wWow
I've got photos from holiday last year I've not even looked at yet! 16:31
jnthn tries to keep on top of his 16:32
This time was easier - I had lots of chances to upload photos while in Japan.
masak URL? 16:33
jnthn www.jnthn.net/cgi-bin/photos.pl?albumid=48 16:35
masak pretty.
haha, 'Random huge robot' :) 16:36
I'm getting MegaTokyo vibes...
slavik mecha streisend 16:37
or w/e
jnthn masak: I wasn't quite sure what to think when I saw that thing. :-) 16:38
masak :)
16:38 pjcj left, edenc left, literal left, Caelum left 16:39 Caelum joined 16:40 am0c joined, frettled joined, FOAD joined, Bzek joined, frodwith joined, KatrinaTheLamia joined, pjcj joined, astinus joined, carlin joined, betterworld joined, spinclad joined, szbalint joined, literal joined, edenc joined 16:41 gbarr joined 16:47 FCO joined
moritz_ www.w3.org/TR/xml/ "# 16:48
Terseness in XML markup is of minimal importance."
that's why Perl and XML don't go together all that well :-) 16:49
16:50 frettled joined, FOAD joined, Bzek joined, frodwith joined, KatrinaTheLamia joined, pjcj joined, astinus joined, carlin joined, betterworld joined, spinclad joined, szbalint joined, literal joined, edenc joined
__ash__ does rakudo have a min heap yet? 16:53
masak sorry, a what? 16:54
__ash__ I was wondering if it had any data container classes that are min-heaps 16:55
16:55 araujo joined
jnthn __ash__: Not that I know of. 16:58
16:58 literal joined, frettled joined, edenc joined
__ash__ okay, if i get one working i'll put it some where someone might stumble upon 16:59
masak sounds great.
16:59 szbalint joined, frodwith joined, spinclad joined, FOAD joined 17:01 meppl joined
jnthn __ash__: You could always do a binary heap role and have it parameterized with an ordering operator. 17:02
So min-heap I guess would just be a BinaryHeap[&infix:<< < >>].new :-)
Or something.
:-)
jnthn goes nom-hunting
__ash__ i'll make a note of that, would probably be more useful that way 17:03
17:04 KatrinaTheLamia joined, pjcj joined, betterworld joined 17:07 Bzek joined 17:12 jaldhar joined
pmurias diakopter: ping 17:13
17:17 s1n joined 17:25 sonatabar joined 17:46 scion joined 17:52 araujo joined, NorwayGeek joined 17:55 jaldhar joined 17:57 frew__ joined
moritz_ \\o/ google tells me that 3x more people search for 'perl 6' than for 'perl6' ;-) 18:00
jnthn \\o/ 18:02
pmurias does google measure how many people search for Perl 6? 18:07
(with capital leter)
moritz_ no, google is case insensitive
arnsholt_ I can't think of any sane search engine that doesn't do case folding 18:08
moritz_ and displays all search statistics in lower case
jnthn narrowly avoids accidentally putting chilli powder into his garlic butter 18:17
arnsholt That might actually be a col thing to do 18:21
Chili and dairy products are a nice combo
jnthn arnsholt: I'd say it'd be a hot thing more than a cool thing. ;-) 18:22
But hmm...
Maybe this would make an interesting research project some day.
"chilli garlic bread"
arnsholt Point, point ^^
jnthn Anyway, it's cooked now. \\o/
jnthn eating
arnsholt I'd think it'd be rather nice
18:31 rhr_ joined 18:33 szabgab joined 19:07 tak11 joined
pugs_svn r28759 | moritz++ | [t/spec] unfudge passing %ENV test 19:25
19:27 frew__ joined
jrockway_ pmurias: pong 19:28
pmurias jrockway: what would it take to relase App::Persistent to CPAN? 19:29
jrockway a perl client 19:31
pugs_svn r28760 | moritz++ | [t/spec] fix submethods.t
jrockway also, signal handling is not sorted out entirely
the dependencies should all be on CPAN shortly though 19:32
i am convinced that those are ready :)
pmurias jrockway: i'm willing to help with releasing app-persistent as i want to use it with mildew 19:33
jrockway: what none CPAN things App::Persistent depends on? 19:34
jrockway Anyevent::Subprocess 19:35
that is totally ready to be released though, so i will do that later today
it should also be easy to write a perl client for app::persistent
term::readkey, write every key to the socket, print everything you get back 19:36
very easy :)
i have just been too lazy to do it
pmurias App::Persistent could use some tests too 19:37
jrockway yeah, those are always good
pmurias AnyEventX::Cancel is not on CPAN too 19:41
jrockway yeah, that is going to go away for this release of anyevent::subprocess
with the caveat "you can't call into the event loop from the child" unless you kill it yourself 19:42
dalek kudo: 1305255 | moritz++ | t/spectest.data:
we now pass S12-methods/submethods.t
jnthn moritz_: Haven't we passed that for quite a while? :-S 19:43
At least, submethods were done quite a while ago.
moritz_ I was a bit surprised too 19:44
but that test was a bit borked before
jnthn Oh, oddness. 19:45
Well, happy we pass it now.
19:47 lumi joined
dalek p-rx: 08a47f4 | pmichaud++ | src/ (3 files):
Create Match objects lazily.
19:50
pmurias jrockway: MooseX::StrictConstructor is an unmet dependency for AnyEvent::Subprocess 19:51
s/unmet/unmentioned/
19:55 KyleHa joined
KyleHa Spammers are having a field day with dev.pugscode.org 19:57
19:59 icwiener joined 20:09 zloyrusskiy joined 20:29 arthur-_ joined 20:36 SmokeMachine joined
jrockway pmurias: cool, thanks for taking a look :) 20:40
i think that might be unnecessary now... in a previous rewrite, the delegates became part of the class, making the call to "new" easy to mess up
now it is easy to not mess up :)
also, let's chat on #perl instead of #perl6 20:41
'cause this conversation is irrelevant to almost everyone here
nice to see everyone though :)
20:56 jaldhar joined 21:05 synth joined 21:10 pmurias joined, pmurias left
pmurias jrockway: you mean #perl on irc.perl.org 21:11
jrockway doesn't matter
pugs_svn r28761 | mberends++ | [sprixel] harness-fudging.pl changed todo and skip directive format to assignment (eg skip=4,12..16) instead of function call, run a single test by passing it on the command line, updated pod 21:19
dalek kudo: d749d9b | jonathan++ | src/pmc/p (2 files):
Apply patch from bacek++ to get us using documented Parrot API functions in place of some non-API ones.
21:25
21:51 icwiener_ joined 21:52 labgeek joined, nadim joined 21:53 quietfanatic joined 22:00 labgeek left 22:18 andre__ joined
pugs_svn r28762 | kyle++ | [t/spec] Label test for RT 65474 22:25
r28763 | kyle++ | [t/spec] Test for RT 65482
r28764 | kyle++ | [t/spec] Test for RT #65514 22:26
r28765 | kyle++ | [t/spec] Test for RT #65538
22:43 KyleHa joined 22:44 synth joined 22:54 andreasg_ joined 22:59 blm left 23:00 kentnl_ joined 23:04 lumi joined
pugs_svn r28766 | kyle++ | [t/spec] Test for RT #65556 23:19
23:26 tak11 joined 23:56 rhr joined