|
»ö« | 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 argumentsin 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 valueUse 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
|
|||