»ö« 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:00
jferrero left
|
|||
sorear | niecza can now build itself again... | 00:00 | |
lichtkind | shhh blogs.perl is broken | 00:01 | |
00:01
cdarroch left
|
|||
TimToady | colomon: typo: [&&} | 00:15 | |
colomon | ? | 00:17 | |
oh, right | |||
(at this distance, both brackets look the same. stupid eyes.) | |||
TimToady | also, how does your solution compare with [lcm] 2..20 | ||
colomon | very poorly | 00:18 | |
though I haven't timed them carefully | |||
well... [lcm] is twice as fast as my fastest, I think | 00:21 | ||
sorear | Bollman's solution works by considering each prime separately | 00:23 | |
log(20, 7).floor is the highest power of 7 that fits in 20 | |||
therefore, it is the highest power of 7 that fits in any number less than 20 | 00:24 | ||
therefore, it is the power of 7 in [lcm] 1..20 | |||
00:29
cotto left
00:31
icwiener left
00:32
daniel-s left
|
|||
lichtkind | good night | 00:42 | |
00:42
wamba left,
beekar left,
lichtkind left
|
|||
colomon | sorear: ...... damn, that's slick. | 00:44 | |
thanks for the explanation. sorear++ | |||
00:49
jaldhar left
00:50
jaldhar joined
|
|||
colomon | niecza: say 232 gcd 16 | 00:51 | |
p6eval | niecza v6-184-g55ff541: OUTPUT«Unhandled exception: System.Exception: Unable to find lexical &infix:<gcd> in mainlineServer stack trace:  at Niecza.CLRBackend.NamProcessor.ResolveLex (System.String name, Boolean upf, System.Int32& uplevel, Boolean core) [0x00000] in <filename unknow… | ||
colomon | bother | 00:52 | |
sorear | rakudo: say "ff" ~~ /ff/i | 00:53 | |
p6eval | rakudo b2bc99: OUTPUT«===SORRY!===Unsupported use of /i; in Perl 6 please use :i at line 22, near ""» | ||
sorear | rakudo: say "ff" ~~ m:i/ff/ | 00:54 | |
p6eval | rakudo b2bc99: OUTPUT«» | ||
sorear | rakudo: say "ß" ~~ m:i/SS/ | ||
p6eval | rakudo b2bc99: OUTPUT«» | ||
sorear | rakudo: say "ß" ~~ m:i/ss/ | ||
p6eval | rakudo b2bc99: OUTPUT«» | ||
sorear | rakudo: say "Σ" ~~ m:i/σ/ | 00:55 | |
p6eval | rakudo b2bc99: OUTPUT«Σ» | ||
00:55
Garda joined,
Garda left
00:57
takadonet left
01:01
noganex_ joined
01:04
noganex left
01:06
thou left
01:20
cotto joined
01:27
daniel-s joined
|
|||
daniel-s | \o | 01:28 | |
sorear | o/ | ||
colomon | \oo/ | 01:32 | |
daniel-s | this is kinda more general than perl6 | 01:45 | |
but after learning the basic parts of the syntax of a language, what should I do to become a better programmer | |||
I never studied computer science | 01:46 | ||
colomon | daniel-s: program! :) | ||
daniel-s | is that all? | ||
colomon | seriously, actually trying to do stuff with a programming language is huge | ||
I don't know if it's all, but it's probably 80-90% of it, anyway. | 01:47 | ||
there's more to learn, but it's hard to appreciate it without getting your hands dirty, IMO. | |||
(there's always more to learn.) | |||
sorear | the hard part is finding something to do. | 01:48 | |
colomon | sorear: you think? for me, the hard part is usually finding time to do it. | 01:50 | |
sorear needs a direction suggestion | 01:51 | ||
colomon | for niecza, or in general? | ||
daniel-s | well, I have been looking at stuff on github or sourceforge | 01:52 | |
sorear | niecza... I have trouble prioritizing | ||
daniel-s | but almost all of them look to daunting | ||
the longest thing I've created has been about 30 lines | |||
sorear | start small. | 01:53 | |
if you can't find something useful to do, do something useless | |||
make something useless, because if it's useful you might be tempted to keep it | 01:54 | ||
01:54
cognominal_ joined
|
|||
sorear | rule of thumb: anything that you make in your first few months will be a maintance nightmare | 01:55 | |
alternatively, contribute to someone else's project; then they can clean stuff up | |||
niecza has a nice long TODO list :D | |||
01:57
cognominal left,
whiteknight left
02:00
cotto left,
cotto joined
02:04
krakan left
|
|||
colomon | niecza: macros? module compatibility? | 02:07 | |
p6eval | niecza v6-184-g55ff541: OUTPUT«===SORRY!===Any()Confused at /tmp/Mcl2bt4FhT line 1:------> macros⏏? module compatibility?Undeclared routine: 'macros' used at line 1Parse failed» | ||
colomon | *sorear: | ||
(sigh) | |||
sorear | confused eh. apt. | 02:09 | |
right, macros and tests and stuff | 02:10 | ||
colomon | macros are sort of a crazy wish | ||
but tests and modules would be really nic | |||
nice. | |||
and automatically would create additional test code to run, additional issues to fix, etc.... | 02:11 | ||
sorear | daniel-s: could I interest you in the Get Niecza Passing More Tests project? lots of pieces big and small | 02:12 | |
colomon is hoping YAPC::NA week means more time for him to hack on Rakudo and Niecza. | 02:13 | ||
sorear | daniel-s: rosettacode might also be fun, although it has fewer big tasks | 02:16 | |
colomon: Did anything ever become of your attempt at **? | 02:28 | ||
daniel-s: still here? | |||
colomon | sorear: It's sitting around halfway done. Maybe further, hard to know what I'm missing. :) | ||
daniel-s | hey | 02:29 | |
sorry, I'm at work atm | |||
sorear: I wouldn't mind helping with niecza | |||
do you mean implement some of the things on rosettacode that haven't been done in perl6 yet? | 02:35 | ||
TimToady | or you could turn some of the rosettacode entries into Tests | 02:41 | |
sorear | that's what I meant by "rosettacode might also be fun", yes. | 02:43 | |
02:50
cotto left
02:52
takadonet joined
03:08
Chillance left
03:19
zby_home__ left
03:22
cotto joined
03:23
Su-Shee_ joined
|
|||
mikemol | (On converting RC entries into unit tests) TimToady++ | 03:24 | |
Hm. That gives me an idea. | 03:25 | ||
03:27
Su-Shee left
|
|||
daniel-s | yea, what does that mean exactly? | 03:28 | |
write code implementing something from RC, using parts of perl6 that may or may not have been implemented yet | |||
so that when they are an implementation passes the test? | 03:29 | ||
mikemol | daniel-s: I take it to possibly mean two different things. | ||
TimToady | more like, set up tests that one of the implementations passes already, such that other implementations do the same thing | ||
mikemol | One, you might take the output of an existing snippet, and test that future versions of compilers give the same result. | 03:30 | |
TimToady | plus check for regressions in the implementations that do it already | ||
mikemol | The other is to test that the language behaves nicely for the problem space, but I think TimToady covers most of that ground. | ||
04:02
Bzek joined
04:03
thou joined
04:12
molaf_ left
04:18
lue joined
|
|||
dalek | kudo/nom: ca7573c | pmichaud++ | src/core/ (2 files): Add infix:<~~> and things needed for given/when to work. |
04:22 | |
kudo/nom: 134f52e | pmichaud++ | src/ (5 files): jnthn++ recommends "istype" instead of "p6isa". |
|||
kudo/nom: 7233ca4 | pmichaud++ | src/core/ (5 files): Initial infix:<...> sequencing operator. |
|||
04:23
satyavvd joined
|
|||
TimToady | rosettacode.org/wiki/Vigen%C3%A8re_cipher#Perl_6 <-- massive use of hypers | 04:39 | |
only 3 more and we'll have 300 | 04:41 | ||
jdhore1 | THIS! IS! PERL! 6! | 04:45 | |
Nope, doesn't work. | |||
sorear | TimToady++ # I finally understand soundex | 04:46 | |
benabik_ | "This is line noise!" "No. This is PERL!!!" | ||
04:47
benabik_ is now known as benabik
|
|||
jdhore1 | benabik, that works fairly well | 04:48 | |
pmichaud | good evening, #perl6 | 04:55 | |
TimToady | howdees | ||
pmichaud | nom: my @a = 1,1,{$^a + $^b} ... * ; say @a[^10]; # checking | ||
p6eval | nom: OUTPUT«This type cannot unbox to a native integercurrent instr.: 'exists' pc 213673 (src/gen/CORE.setting.pir:0) (:1413)» | ||
pmichaud | grrr | 04:56 | |
nom: my @a = 1,1,{$^a + $^b} ... * ; say @a[(^10,)]; # checking | |||
p6eval | nom: OUTPUT«This type cannot unbox to a native integercurrent instr.: 'exists' pc 213673 (src/gen/CORE.setting.pir:0) (:1413)» | ||
pmichaud | nom: my @a = 1,1,{$^a + $^b} ... * ; say @a[0,1,2,3,4,5]; # checking | ||
p6eval | nom: OUTPUT«Any()Any()Any()Any()Any()Any()» | ||
pmichaud | *sigh* | ||
not yet, I guess. | |||
sorear | helloes pmichaud | ||
needs a rebuild? | |||
pmichaud | no, looks like a bugger. | 04:57 | |
oh, probably a problem with array assignment. | |||
sorear is afraid to start culling the LHF because daniel-s might come back | 04:59 | ||
pmichaud | nom: my $x := 1,1,{$^a+$^b} ... *; say $x[20]; # testing | ||
p6eval | nom: OUTPUT«Method 'at_pos' not found for invocant of class 'Parcel'current instr.: 'postcircumfix:<[ ]>' pc 202892 (src/gen/CORE.setting.pir:0) (:248)» | ||
pmichaud | bah | 05:00 | |
nom: my $x := (1,1,{$^a+$^b} ... *).flat; say $x[20]; # testing | |||
p6eval | nom: OUTPUT«10946» | ||
TimToady | .oO(It's a good thing there's more than one way to do it, because most of them don't work...) |
05:01 | |
pmichaud | lol | ||
TimToady | sorear: pity you had to learn this jaw-cracker of a language first in order to understand soundex :) | 05:03 | |
pmichaud | TimToady: got a keynote yet? ;-) | 05:05 | |
TimToady | I've got about six lines in my ideas file so far... :/ | ||
but since they want me to talk about "community", I can always just open it up for questions :) | 05:06 | ||
daniel-s | hey | ||
daniel-s is back | |||
sorear | Hi! | ||
TimToady | Lo! | ||
daniel-s | [13:00] * sorear is afraid to start culling the LHF because daniel-s might come back | 05:07 | |
were you looking for me? | |||
sorear | daniel-s: We never finished talking earlier. But work is more important | ||
daniel-s | well, I'm supposed to finish at 4:30 | 05:08 | |
it's just after 1 at the moment | |||
but since it's my last friday, my boss hinted she might let me go earlier | 05:09 | ||
i'll PM you when I'm home | |||
sorear | Your last friday? | ||
sorear had planned to sleep in 2h... but there are other #perl6ers | |||
daniel-s | yea, my contract finishes on 30th of June | 05:10 | |
sorear | TimToady: do you remember how fudge works? | 05:19 | |
benabik | Fudge works in a tasty way. | ||
TimToady | sorear: vaguely | 05:20 | |
sorear | I don't really follow the $PENDING and block logic | ||
it bears a certain superficial similarity to gimme5. perhaps if I had ever bothered to study that this would make more sense :) | 05:21 | ||
I was hoping maybe I could have the globals explained to me... | 05:22 | ||
TimToady | $PENDING lets you say how many tests the # directive covers; a block is counted as one test for that purpose | 05:24 | |
sorear wants to add #?if #?elsif #?endif to fudger | 05:25 | ||
mainly because of the module tests, which do BEGIN { @*INC.push(...) } | |||
05:25
birdwindupbird joined
|
|||
sorear | I can have "use lib" working in niecza within an hour probably, but BEGIN and @*INC will take a lot longer | 05:26 | |
05:27
woosley joined
|
|||
pmichaud | just put them in a block and #?niecza skip it ? | 05:28 | |
or am I misremembering how that works? | |||
(probably.) | 05:29 | ||
sorear | maybe it would work together with #?DOES 0 | ||
and I'd have to skip the use lib for all other implementations | |||
pmichaud | you could do #?niecza emit for the use lib lines | 05:30 | |
sorear | #?niecza emit screws up line numbers | 05:32 | |
TimToady | how so? wouldn't it just replace the #? line? | 05:33 | |
05:34
bakedb joined
|
|||
TimToady | or s/would/should/ | 05:34 | |
sorear | not quite | ||
although, fixable | 05:35 | ||
TimToady | the original design of fudge was that it never changed line numbers | ||
sorear | #?niecza emit foo\n becomes foo | ||
TimToady | we may have broken that | ||
sorear | I wonder if I would break anything by fixing that | 05:36 | |
oh | |||
yes, roast depends on the line gluing | |||
S01-perl-5-integration/modify_inside_p5_p6.t lines 15 and 17 for instance | 05:37 | ||
TimToady | maybe we could leave the comment there as well | ||
that would work in that case | 05:39 | ||
05:51
TOGoS joined
05:55
TOGoS left
|
|||
sorear | std: "foo" ~~ m/o{1,3}/ | 06:06 | |
p6eval | std 37a0cdd: OUTPUT«===SORRY!===Unsupported use of {1,3} as general quantifier; in Perl 6 please use X**1..3 at /tmp/WuHMWHbxKy line 1:------> "foo" ~~ m/o{1,3}⏏/Check failedFAILED 00:01 121m» | ||
06:06
wamba joined
|
|||
dalek | ast: 448f109 | sorear++ | S05-metasyntax/repeat.t: [S05-metasyntax/repeat] Fix syntax in an eval_dies_ok |
06:07 | |
06:08
Su-Shee_ is now known as Su-Shee
|
|||
pmichaud | .u infinity | 06:09 | |
phenny | U+221E INFINITY (∞) | ||
06:10
bakedb left
06:11
Tedd1 left
|
|||
sorear | pmichaud: is it just me, or is quantifier compilation actually really annoying? | 06:22 | |
pmichaud | it was annoying the first time I did it :) | ||
06:23
koban joined
|
|||
sorear | I'm revisiting it to add a couple features, and the explosion of combinations is hurting my head | 06:23 | |
06:24
donri joined
|
|||
daniel-s | .u a hat | 06:24 | |
phenny | daniel-s: Sorry, no results for 'a hat'. | ||
daniel-s | .u a | 06:25 | |
phenny | U+0061 LATIN SMALL LETTER A (a) | ||
benabik | .u â | ||
phenny | U+00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX (â) | ||
daniel-s | .u a with circumflex | ||
phenny | U+00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX (â) | ||
benabik | Did I guess the right one? | ||
daniel-s | yep | ||
benabik | I knew how to type it, but not what it was called. :-D | 06:26 | |
pmichaud was looking for an actual head covering. | |||
benabik | .u hat | ||
phenny | U+A271 YI SYLLABLE HAT (ꉱ) | ||
benabik | Ah, well. | ||
daniel-s | .u circumflex | ||
phenny | U+005E CIRCUMFLEX ACCENT (^) | ||
sorear | heh, C# thinks (int) double.PositiveInfinity is -2147483648 | 06:34 | |
NOT POLS | |||
pmichaud | bedtime here... may not be around much on fri due to all-day-travel | 06:37 | |
dalek | kudo/nom: ead83d4 | pmichaud++ | src/core/Parcel.pm: Let Parcels participate in postcircumfix:<[ ]>. |
06:38 | |
kudo/nom: eed7142 | pmichaud++ | src/core/List (2 files): ListIter should not discard its infinite sublists when it doesn't |
|||
06:43
wamba left
06:50
Tedd1 joined
06:58
ttxyr joined
|
|||
dalek | ecza: fa199e9 | sorear++ | / (3 files): Implement x ** {3} syntax |
07:02 | |
07:03
mj41 joined
|
|||
dalek | ecza: 9c59f52 | sorear++ | / (2 files): Implement "spaces bordering **" rule |
07:11 | |
sorear | +1 spectest | 07:13 | |
(well, +22, +1 file) | |||
sorear sleep | 07:16 | ||
07:24
daxim joined
07:33
hanekomu joined
07:45
mj41 left
07:46
thou left
07:50
bakedb joined
07:59
jferrero joined
|
|||
ttxyr | sleep | 08:05 | |
08:06
daniel-s left
08:08
woosley left
08:10
Pathin joined
08:26
molaf joined
|
|||
mathw | Dear C++, please let me declare two variables of different types in the initialisation part of my for loop. Pretty please! | 08:28 | |
08:29
molaf left
08:34
ttxyr left
08:35
Mowah joined
08:41
cbk left
|
|||
jdhore1 | Dear mathw, No. Love C++. | 08:44 | |
08:44
wamba joined,
satyavvd left
08:45
icwiener joined
|
|||
mathw | bah | 08:50 | |
mathw goes looking for a job as a Lisp programmer | |||
jdhore1 | Have any of y'all ever taken a look at the Pike programming language, out of curiousity? | ||
mathw | I've heard of it, but that's about it | ||
moritz | same here | 08:51 | |
08:51
satyavvd joined
|
|||
jdhore1 | It feels to me like if it wasn't so damn obscure, it's like the perfect cross between C and Perl IMO | 08:52 | |
mathw | I just read the Wikipedia entry | 08:53 | |
it looks quite interesting | |||
tadzik | yeah, it looks like Haskell of systems programming :) | ||
mathw | nonsense, Haskell is the Haskell of systems programming | ||
tadzik | pardon | ||
moritz likes the composite types | 08:54 | ||
int|float number; | |||
08:54
cbk joined
|
|||
mathw | yeah | 08:54 | |
tadzik | it's number int|float;, no? | ||
mathw waves his magic code-manipulation wand and eliminates 14 warnings by changing one line. | 08:55 | ||
sometimes this 'make it compile cleanly' business is very satisfying... | |||
although then I stop to thinka bout it and get cross that somebody used an int instead of a size_t | |||
08:58
Transformer joined
09:01
Transformer left
09:03
cbk left,
daniel-s joined,
cbk joined,
slavik left
|
|||
daniel-s | ahh, home :) | 09:04 | |
09:19
cbk left
09:24
awoodland joined
09:26
mj41 joined
10:08
jerome_ joined,
jerome_ left
10:20
wamba left
10:22
[particle] left
10:27
MayDaniel joined
10:30
REPLeffect left
10:31
MayDaniel left
10:33
REPLeffect joined
10:48
pernatiy joined
10:49
[particle] joined
10:55
HarryS joined
11:01
mj41 left
|
|||
jnthn | ohai :) | 11:05 | |
11:08
Teedev joined
11:10
hanekomu left
|
|||
moritz | \o | 11:15 | |
11:18
daniel-s left
11:24
ab5tract joined
11:31
satyavvd left
11:33
Grrrr left
11:37
Grrrr joined
11:38
Teedev left
11:44
awoodland left
11:48
JimmyZ joined
11:51
Teedev joined
11:57
Mowah left
11:58
lichtkind joined
|
|||
lichtkind | moritz: what perl 6 topic you want to talk about in GPW? | 12:00 | |
moritz | lichtkind: I probably won't attend any perl-related conferences/workshops this year | 12:01 | |
lichtkind | moritz: allright because i want to speak about lists in perl 6 ans wanted be shure there is no overlap | 12:02 | |
moritz | lichtkind: does that mean you understand lists? | ||
lichtkind | i hope so | ||
moritz | lichtkind: then you're a step ahead of me | 12:03 | |
lichtkind | moritz: whats so difficult on lazy lists? | 12:04 | |
moritz | to know when/if they flatten, when/if they reify or stay lazy, how they deal with infinity | ||
just to name the three most obvious problems | 12:05 | ||
lichtkind | moritz: you propably know more about that and yes there are some tricky cornercases | ||
moritz | my @a = 1...10; # layz? | 12:06 | |
erm, lazy | |||
lichtkind | i would think so | ||
moritz | my @a = 1...*; # lazy? or loops? | ||
and if those cases are lazy, what about | |||
my @a = 1 ... 10; my @b = @a; push @a, 20; # does that affect @b? | 12:07 | ||
lichtkind | it doesnt :) | ||
moritz | why not? | ||
lichtkind | because its a copy | ||
12:08
orafu left
|
|||
lichtkind | not a reference to the same array | 12:08 | |
moritz | but if it's lazy, it must use the same generator internally, no? | ||
12:08
orafu joined,
fhelmberger left
|
|||
lichtkind | only when bound or as long optimzation would aloow | 12:09 | |
allow | |||
moritz | what about my $x = 5; my @a = gather { take $x for ^5 }; $x = 6; my @b = @a; # what's in @b? | 12:11 | |
lichtkind | mom | 12:13 | |
moritz | perl6: my $x = 5; my @a = gather { take $x for ^5 }; $x = 'NEW'; say ~@a | 12:14 | |
p6eval | pugs, rakudo b2bc99, niecza v6-186-g9c59f52: OUTPUT«5 5 5 5 5» | ||
moritz | perl6: my $x = 5; my @a := gather { take $x for ^5 }; $x = 'NEW'; say ~@a | ||
p6eval | rakudo b2bc99, niecza v6-186-g9c59f52: OUTPUT«NEW NEW NEW NEW NEW» | ||
..pugs: OUTPUT«5 5 5 5 5» | |||
moritz | ah, the default pugs backend isn't lazy, it seems | 12:15 | |
lichtkind | why dont let me think for a min | 12:16 | |
moritz | you can think however long you want :-) | ||
lichtkind | i think rakudo is right | ||
moritz | it gets more interesting if you put an infinite loop inside the gather | ||
perl6: my $x = 5; my @a := gather { loop { take $x } }; $x = 'NEW'; say ~@a[^5] | 12:18 | ||
perl6: my $x = 5; my @a = gather { loop { take $x } }; $x = 'NEW'; say ~@a[^5] | |||
p6eval | pugs: OUTPUT«(timeout)» | ||
..rakudo b2bc99: OUTPUT«NEW NEW NEW NEW NEW» | |||
..niecza v6-186-g9c59f52: OUTPUT«===SORRY!===Any()Confused at /tmp/Zrk2lABym2 line 1:------> = 5; my @a := gather { loop { take $x }⏏ }; $x = 'NEW'; say ~@a[^5]Parse failed» | |||
pugs, rakudo b2bc99: OUTPUT«(timeout)» | |||
..niecza v6-186-g9c59f52: OUTPUT«===SORRY!===Any()Confused at /tmp/nZeh4KVVHk line 1:------> x = 5; my @a = gather { loop { take $x }⏏ }; $x = 'NEW'; say ~@a[^5]Parse failed» | |||
moritz | std: my $x = 5; my @a = gather { loop { take $x } }; $x = 'NEW'; say ~@a[^5] | 12:19 | |
p6eval | std 37a0cdd: OUTPUT«===SORRY!===Confused at /tmp/MzMTG6VHYv line 1:------> x = 5; my @a = gather { loop { take $x }⏏ }; $x = 'NEW'; say ~@a[^5] expecting horizontal whitespaceParse failedFAILED 00:01 123m» | ||
moritz | what's confusing there? | ||
moritz confused at the confusion | |||
lichtkind | they dont do it like spec demands it | 12:20 | |
jnthn | moritz: Confuses me also. | 12:26 | |
moritz: STD bug maybe...odd one though. | |||
moritz | std: my $x = 5; my @a = loop { take $x }; $x = 'NEW'; say ~@a[^5] | 12:27 | |
p6eval | std 37a0cdd: OUTPUT«===SORRY!===Undeclared routine: 'loop' used at line 1Check failedFAILED 00:01 123m» | ||
moritz | std: my $x = 5; my @a = gather loop () { take $x }; $x = 'NEW'; say ~@a[^5] | ||
p6eval | std 37a0cdd: OUTPUT«===SORRY!===Malformed loop spec at /tmp/2TsfaMS8Dj line 1:------> my $x = 5; my @a = gather loop (⏏) { take $x }; $x = 'NEW'; say ~@a[^5] expecting termParse failedFAILED 00:01 122m» | ||
12:28
wamba joined
|
|||
moritz | STD.pm6 even uses loop { } itself | 12:29 | |
std: loop { } | 12:30 | ||
p6eval | std 37a0cdd: OUTPUT«ok 00:01 117m» | ||
moritz | std: loop { take my $x } | ||
p6eval | std 37a0cdd: OUTPUT«ok 00:01 120m» | ||
moritz | std: gather loop { } | ||
p6eval | std 37a0cdd: OUTPUT«ok 00:01 118m» | ||
moritz | std: my @a = gather loop { } | ||
p6eval | std 37a0cdd: OUTPUT«ok 00:01 122m» | ||
moritz | std: my @a = gather loop { take my $x } | ||
p6eval | std 37a0cdd: OUTPUT«ok 00:01 122m» | ||
moritz | std: my @a = gather loop { take my $x }; 1 | ||
p6eval | std 37a0cdd: OUTPUT«ok 00:01 122m» | ||
moritz | all the simpler variants of the same thing seem to work | 12:31 | |
12:33
Teedev left
12:37
bluescreen10 joined
12:44
molaf joined
12:47
Holy_Cow joined,
Holy_Cow left
12:50
Mowah joined
12:55
kanishka joined
12:56
karupanerura joined
12:57
skangas left,
Chillance joined
12:59
mtk left
|
|||
PerlJam wonders why people still feel the need to express their opinion that "Perl 6 is a bad name" | 13:03 | ||
13:04
wamba left
13:05
mtk joined
|
|||
lichtkind | camelia is much worse name | 13:14 | |
its something here have woman between their legs :) | |||
moritz | (there's a German sanitary towel which is called "Camelia") | 13:15 | |
jnthn | oh...lichtkind made me think it was worse than that :) | ||
moritz | ... which is why I tried to explain :-) | 13:16 | |
jnthn | :) | ||
13:22
kanishka left
|
|||
pmichaud | good morning, #perl6 | 13:23 | |
13:23
wamba joined
|
|||
pmichaud | (on the road) | 13:23 | |
lichtkind | pmichaud: moinsen | 13:25 | |
PerlJam | pmichaud: good morning (and watch out for traffic! :) | 13:27 | |
pmichaud | it's probably better if I don't watch. :) | 13:29 | |
moritz | depends on who does the driving :-) | 13:30 | |
13:30
Mowah left
|
|||
jnthn | o/ pmichaud | 13:31 | |
moritz | pmichaud: 10 of the files in src/core/ already have ACCEPTS methods - should I remove adding ACCEPTS methods from LHF.markdown? | ||
pmichaud | moritz: sure thing | 13:32 | |
13:33
estrabd joined
|
|||
jnthn | pmichaud: Have we any Nil support? | 13:34 | |
moritz | nom: fail(3) | ||
p6eval | nom: OUTPUT«3current instr.: 'fail' pc 186280 (src/gen/CORE.setting.pir:0) (:124)» | ||
jnthn | pmichaud: Or, what is Nil? | 13:35 | |
moritz | nom: say "foo\n".chomp | ||
p6eval | nom: OUTPUT«Method 'chomp' not found for invocant of class 'Str'current instr.: '_block1002' pc 78 ((file unknown):101) (:1)» | ||
pmichaud | nom: say (1, 2, Nil, 3, 4, Nil, Nil, <eggs and>, Nil) | ||
p6eval | nom: OUTPUT«12Nil34NilNileggsandNil» | ||
moritz | nom: say "foo\n".substr(-1) | ||
p6eval | nom: OUTPUT«» | ||
pmichaud | oops | ||
jnthn | nom: Nil | ||
p6eval | nom: ( no output ) | ||
pmichaud | nom: say Nil ~~ Iterable | ||
p6eval | nom: OUTPUT«Bool::True» | 13:36 | |
pmichaud | hmmmmmm | ||
oh, I know what's wrong | |||
anyway, we have Nil defined, yes. | |||
jnthn | pmichaud: OK...I worked out what's going on | ||
pmichaud | (it's currently an Iterator) | ||
jnthn | We were getting away with looking up lexicals that weren't declared before. | 13:37 | |
I twiddled Perl 6's lexpad to complain loudly about that...maybe I shouldn't do that :) | |||
dalek | kudo/nom: b03bf28 | moritz++ | LHF.markdown: ACCEPTS is not a LHF anymore |
||
pmichaud | maybe it should complain not loudly :) | 13:38 | |
13:38
grandmoun joined
|
|||
grandmoun | Hi guys! | 13:38 | |
pmichaud | btw, I may lose my connection at any time :) | ||
moritz | hello grandmoun | 13:39 | |
grandmoun | I'm a bit confused! I'm searching for a way to parse google result using perl | ||
hi moritz! | |||
13:39
pernatiy left
|
|||
jnthn | pmichaud: Initial patches for natively typed leixcals not far off. :) | 13:39 | |
pmichaud | jnthn: coool | 13:40 | |
13:40
pernatiy joined
|
|||
moritz | that would make some parts of the setting much faster, I hope | 13:40 | |
grandmoun | I found those perl module HTML::TreeBuilder and HTML::TreeBuilder::Xpath | ||
jnthn | moritz: hm, maybe :) | ||
PerlJam | grandmoun: first, a sanity check. when you say "using perl" do you mean Perl 5 or Perl 6 ? | 13:41 | |
jnthn | moritz: Maybe a smaller win until we get handling of them in more places, and big win will be when we can inline ops. | ||
moritz | jnthn: hm right, the ops still (un)box all over the place | ||
grandmoun | perl 5.8 for the moment | ||
pmichaud | ...we can get a win from nested blocks, perhaps? | ||
moritz | grandmoun: then this is not the right channel for you | 13:42 | |
PerlJam | grandmoun: then you probably want #perl or #perlhelp | ||
grandmoun | ok! | ||
thanks | |||
PerlJam | grandmoun: good luck! | ||
moritz wonder why people join #perl6 when they want to talk about Perl 5 problems | 13:44 | ||
jnthn | pmichaud: Perhaps so. If we use nqp::add_i and such with them, it'll be a nice win. | ||
13:45
grandmoun left
|
|||
moritz | do they just think this is the 6th perl channel? | 13:45 | |
jnthn | moritz: Becasue they don't know that Perl 6 is sufficiently different from Perl 5 to think it'd matter, perhaps. | ||
pmichaud | jnthn: yes. we might be able to inline the register cases fairly quickly -- not as much analysis required there (and the type of the variable is explicitly declared) | 13:46 | |
jnthn | pmichaud: Well, it's kinda the same amount of analysis in a sense - but we do have the type info, yes :) | ||
PerlJam | moritz: perhaps they search for "perl", get a list of channels, then randomly choose one because they have no way to distinguish the relative merits of each. | 13:47 | |
13:47
jaldhar left
13:48
ab5tract left,
pernatiy left
|
|||
moritz | PerlJam: sounds plausible | 13:51 | |
nom: my Str $x = 4; | 13:52 | ||
p6eval | nom: OUTPUT«Rebuild in progress» | ||
moritz | sorear++ I assume :-) | ||
13:55
pernatiy joined
|
|||
JimmyZ just saw a website: rakurakupress.com, which looks like rakudo.org | 13:56 | ||
13:58
frew joined,
cogno joined
|
|||
jnthn | nom: my Str $x = 4; | 13:59 | |
p6eval | nom: OUTPUT«Type check failed in assignment to '$x'; expected 'Str' but got 'Int'current instr.: '_block1002' pc 28 ((file unknown):0) (:1)» | ||
jnthn | nom: my str $x = 4; | ||
p6eval | nom: OUTPUT«Type check failed in assignment to '$x'; expected 'str' but got 'Int'current instr.: '_block1002' pc 28 ((file unknown):0) (:1)» | 14:00 | |
jnthn | heh :) | ||
moritz | nqp: say(pir::open('nonexistent').error) | 14:01 | |
p6eval | nqp: OUTPUT«error:imcc:The opcode 'open_p' (open<1>) was not found. Check the type and number of the arguments in file '(file unknown)' line 34» | ||
moritz | nqp: say(pir::open__ps('nonexistent').error) | ||
p6eval | nqp: OUTPUT«Unable to open filehandle from path 'nonexistent'current instr.: '_block1000' pc 0 ((file unknown):1)» | ||
moritz | nqp: say(pir::open__ps('nonexistent')) | ||
p6eval | nqp: OUTPUT«Unable to open filehandle from path 'nonexistent'current instr.: '_block1000' pc 0 ((file unknown):1)» | ||
moritz | nqp: try { say(pir::open__ps('nonexistent')) } | 14:02 | |
p6eval | nqp: ( no output ) | ||
moritz | nqp: try { say(pir::open__ps('nonexistent')); say "Error: $!" } | ||
p6eval | nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 1current instr.: 'nqp;Regex;Cursor;FAILGOAL' pc 3863 (src/Regex/Cursor.pir:239)» | ||
pmichaud | does try { } work in nqp eyt? | 14:03 | |
*yet? | |||
jnthn | Think so | ||
But that say needs parens. | |||
pmichaud | oh, nqp | ||
I was thinking "nom" | |||
ETOOSIMILAR | |||
jnthn | ah, no idea :) | ||
moritz | nqp: try { say(pir::open__ps('nonexistent')); say("Error: $!") } | ||
p6eval | nqp: OUTPUT«Symbol '$!' not predeclared in <anonymous>current instr.: 'parrot;PCT;HLLCompiler;panic' pc 146 (compilers/pct/src/PCT/HLLCompiler.pir:107)» | ||
jnthn | Similar? Only one letter in common :P | ||
14:03
molaf left
|
|||
moritz | nqp: try { say(pir::open__ps('nonexistent')); say("Error: $_") } | 14:04 | |
p6eval | nqp: OUTPUT«Symbol '$_' not predeclared in <anonymous>current instr.: 'parrot;PCT;HLLCompiler;panic' pc 146 (compilers/pct/src/PCT/HLLCompiler.pir:107)» | ||
moritz | nqp: try { say(pir::open__ps('nonexistent')); CATCH { say("Error: $_") } } | ||
p6eval | nqp: OUTPUT«Error: Unable to open filehandle from path 'nonexistent'» | ||
pmichaud | they're all ascii characters. both a 3 letters long. I can find plenty of similarities :) | ||
moritz | \o/ | ||
jnthn | Try saying "om nqp nqp" out loud. :P | ||
moritz | nom: try { die "foo"; CATCH { say $! } } | ||
p6eval | nom: OUTPUT«Method 'blocktype' not found for invocant of class 'PAST;Op'current instr.: 'nqp;Perl6;Actions;push_block_handler' pc 22073 (src/gen/perl6-actions.pir:7210)» | ||
pmichaud | nom: say "om nqp nqp" <out loud>; | 14:08 | |
p6eval | nom: OUTPUT«Confused at line 1, near "say \"om nq"current instr.: 'nqp;HLL;Grammar;panic' pc 23569 (src/stage2/gen/NQPHLL.pir:6311)» | ||
jnthn | :P | 14:09 | |
jnthn tries to add lexical_6model to go with our attribute_6model scope in PAST::Var. | 14:10 | ||
pmichaud | yes, redeveloping past into nqp is moving higher on my priority list :) | ||
14:10
mantovani left
|
|||
moritz | JimmyZ: fwiw I see no similarity to rakudo.org at all | 14:11 | |
jnthn | pmichaud: Yes, then I can write an optimizer... :) | 14:12 | |
14:13
spq1 joined
14:14
cogno left
14:16
pernatiy left,
cogno joined
|
|||
JimmyZ | moritz: the site is called 楽楽钥匙, which is a bit similar with 楽土, | 14:16 | |
14:18
wamba left
14:19
pernatiy joined
|
|||
TimToady | that's a strange mix of japanese and chinese characters... | 14:23 | |
JimmyZ saw it today morning, from a journal | 14:24 | ||
TimToady | 楽 is 樂 or 乐 in chinese, normally | 14:25 | |
JimmyZ | yes | ||
TimToady | and 钥匙 is simplified | ||
well, the first one | |||
JimmyZ | I don't know why, that journal is written in japanese | 14:27 | |
TimToady | the japanese like to think that all chinese characters are part of japanese too :) | ||
even if they only use 2000 or so of them for most things | |||
JimmyZ | I guess that journal was written by chinese people, who may be not good enogh at japanese | 14:29 | |
14:29
PacoLinux left
|
|||
TimToady | I can see why that notion is attractive; I've been having enormous fun going through the Unicode CJK extension B and classifying all the characters | 14:29 | |
JimmyZ | *enough | ||
14:29
cogno left,
PacoLinux joined
|
|||
JimmyZ | and Korean? | 14:30 | |
TimToady | some of them are pretty easy to classify, like 𪚥 | ||
don't do much korean yet | |||
just know a few phrases | |||
though I should learn the syllabary someday | |||
jnthn looked at the syllabary a while ago and found it awesome :) | 14:31 | ||
Suspect I forget a most of it again by now though. | |||
s/a// | |||
TimToady | it's pretty well designed, by the standards of "philosophical languages" | ||
otoh, sometimes you want a language in which similar things look different | 14:32 | ||
JimmyZ | Korean is a good language, it learned advantage from chinese and japanese | ||
yes, it's very pretty well designed | 14:33 | ||
TimToady | an English syllabary would have to do something similar to account for all the consonant clusters | 14:34 | |
you can get away with an arbitrary syllabary in Japanese only because it's a CV language | |||
as it is, syllable-final n is thought of as a separate syllable | |||
well, mora | 14:35 | ||
same for doubled vowels and consonants | 14:36 | ||
but the structure is easy enough to to a simple syllabary | |||
in English you'd have to account for words like strengths | |||
pmichaud | losing network signal soon | 14:37 | |
bbl | |||
TimToady | peddle hard | ||
14:37
masak joined
|
|||
masak | oh hai from FPW | 14:37 | |
pmichaud | bonjour | 14:38 | |
masak | I have a mystery question. | ||
for the old-timers around here. | |||
what's "skip" and how did it work? | |||
TimToady looks around for old-timers... | |||
masak | specifically, how did it differ from "next"? | ||
it's documented as implemented in github.com/parrot/parrot/blob/RELE...rl6/README | |||
I looked around in the source code, but can't find anything substantial besides the fact that it's being parsed. | 14:39 | ||
jnthn | o/ masak | ||
masak | jnthn: \o | ||
jnthn | masak: How's FPW? | ||
masak | it's very French :) | ||
TimToady | masak: I suspect it was what we now call "succeed" | 14:40 | |
jnthn | masak: Ой ля ля! | ||
masak | I'm enjoying myself. but I can't get my brain to parse everything. | ||
TimToady: oh! | |||
TimToady: that congrues with it being used in a 'when' statement. | |||
so it was 'skip' -> 'break' -> 'succeed'? | |||
TimToady | yeah, and p5 picked it up at the 'break' point | 14:41 | |
14:41
mj41 joined
|
|||
masak | :P | 14:41 | |
TimToady | alas | ||
masak | well, they can't wait around forever for us to find the right word... | ||
Perl 5 needs to snapshot our progress on the way to our eventual goal. | |||
anyway, thanks for clearing up that mystery. | 14:42 | ||
other news: BooK gave a talk at a .nl PM meeting where he showed how to build Sierpinski triangles using git commits and their "parent" relation. he then said that it couldn't be done recursively. | 14:44 | ||
this morning when I saw him again, I sat down and figgered out how to do it recursively. :) | |||
now the only thing that remains is to implement it. | |||
14:45
koban left
|
|||
TimToady | niecza: constant @foo = 1,@foo; say @foo[3] | 14:47 | |
p6eval | niecza v6-186-g9c59f52: OUTPUT«Any()» | ||
TimToady | aw | ||
masak | isn't that correct? | 14:48 | |
I mean, wouldn't the assignment happen only once? | |||
TimToady | it's not really assignment | ||
it's initialization | |||
masak | it's not a binding, and there's no delayed evaluation. | ||
TimToady | it is a binding, really... | ||
masak | ok. | ||
TimToady | most initializers are more like binding | 14:49 | |
masak | so the 'constant' imposes binding semantics? | ||
what about the delayed evaluation? I don't see any curly braces or whatevers... | |||
TimToady | if it's binding, it's not eager | 14:50 | |
masak | does 'constant' impose a thunk on the RHS? | ||
ooh. | |||
right, so the binding semantics imposes (mostly?) lazy semantics on the RHS. | |||
TimToady | niecza: constant @integers = 0..*; say @integers[42] | 14:51 | |
p6eval | niecza v6-186-g9c59f52: OUTPUT«42» | ||
TimToady | otoh, I think pseudoassignment = borrows flat from assignment | ||
flat and lazy, like a slime mold | 14:52 | ||
masak | :P | ||
TimToady | rakudo: my @foo; @foo.plan: 1, @foo; say @foo[3] | 14:53 | |
p6eval | rakudo b2bc99: OUTPUT«Method 'plan' not found for invocant of class 'Array' in main program body at line 22:/tmp/lSS6Jex4NC» | ||
TimToady | niecza: my @foo; @foo.plan: 1, @foo; say @foo[3] | 14:54 | |
p6eval | niecza v6-186-g9c59f52: OUTPUT«Any()» | ||
TimToady | um... | ||
niecza: my @foo; @foo.plan: 1..5; say @foo[3] | |||
p6eval | niecza v6-186-g9c59f52: OUTPUT«4» | ||
TimToady | niecza: my @foo; @foo.plan: 1..5, @foo; say @foo[3] | 14:55 | |
p6eval | niecza v6-186-g9c59f52: OUTPUT«4» | ||
TimToady | niecza: my @foo; @foo.plan: 1, |@foo; say @foo[3] | 14:56 | |
p6eval | niecza v6-186-g9c59f52: OUTPUT«Any()» | ||
TimToady | looks like .plan is clobbering the identity of the array somehow | ||
or somethin' | |||
14:57
cogno joined,
daxim left
14:59
mj41 left,
woosley joined
|
|||
Util | TimToady++ # for rosettacode.org/wiki/Vigenère_cipher#Perl_6 | 15:00 | |
TimToady | I just wish we had a .nfkd so I could use the accented name as the key... | 15:03 | |
15:05
mkramer joined,
mkramer left
|
|||
masak | sorry, .nfkd ? | 15:06 | |
TimToady | canonical decomposition | 15:07 | |
er, compatible | |||
if .nfkd does that... | 15:08 | ||
15:08
ab5tract joined
|
|||
TimToady | anyway, I can't think of a good way to look up the base char | 15:08 | |
masak | somewhere in Perl 6 that functionality has to exist. | 15:09 | |
even if it's in a module or other. | |||
moritz | maybe .normalize(Normalization::NKFD) | ||
moritz doesn't want another 4 methods in Str or Cool | |||
masak | no, indeed. | 15:10 | |
15:10
cogno left
|
|||
TimToady | well, it would be less of an issue if .^methods worked as specced | 15:10 | |
at least for Cool | |||
masak | @quietfanatic on Twitter asked the other day "How many primitives are too many, and how will you know when to stop?" or something in that vein. | ||
moritz | TimToady: only less of an issue for introspection | 15:11 | |
TimToady | how many words are there in English? | ||
masak | then he an @luqui got into a discussion about modularization. | ||
TimToady | we are primarily designing a human language here, not an axiomatic system, despite the computer's sincere desire for such... | 15:13 | |
masak | fwiw, I personally can accept that the setting is quite big. having things like 'max' and 'lcm' in there is very good, I think. | ||
it not only helps when writing one-liners, but also to prevent redesigning of wheels, etc. | |||
TimToady | if a concept is universal, it should have a universal-ish word, is one approach | ||
it's when 20 different concepts compete for the same slot that we get phpitis. | 15:14 | ||
masak | or 20 different slots competing for variations of the same concept... :) | ||
TimToady | when you can't express the universal concept generically enough, it causes a name explosion | ||
we'd certainly like to avoid that | 15:15 | ||
15:15
PhatEddy joined
|
|||
TimToady | but uni-code is going to be pretty uni-versal | 15:15 | |
so one should avoid knee-jerk reactions on both sides of the issue | 15:16 | ||
masak | TimToady: did you read tchrist's recent StackOverflow rant? anything in there which applies to how we're doing things in Perl 6? | ||
TimToady | doubtless, which I will consider when I'm revising that chapter of the Camel. :) | 15:17 | |
masak | mathw's reaction was "Unicode is hard", which I guess was tchrist's intent. | 15:18 | |
TimToady | at the moment I'm stuck in the middle of chapter 4 | ||
masak | control structures? | ||
TimToady | Unicode, like Perl 6, is trying to do something impossible, and largely succeeding. | ||
masak | :P | ||
TimToady | yes | ||
mathw | yes but unicode is inevitably going to be hard | ||
masak | hah, I know the chapters of the Camel thanks to Sxx. | ||
how backward. | 15:19 | ||
mathw: right. as will computing in general, up to accidental complexity. | |||
mathw | right | ||
TimToady | "For one so backward, you're far too forward." --TROTGTSOTC | ||
15:19
jimmy1980 left
|
|||
mathw | but a single encoding system for every script on the planet... that's head-bending | 15:19 | |
huf | what's this crazy acronym? | 15:20 | |
ah | |||
PhatEddy | Since we seem to have a good crowd I would like to announce that I am getting close to preparing a new version of the Perl6 URI module from the github branch here github.com/ihrd/uri/tree/uri_iface_01a | 15:21 | |
huf | google found the channel logs | ||
TimToady | .oO(a single computer language for every script on the planet... that's head-bendinger) |
||
PhatEddy | I am interested in any feedback I can get before merging with master. | ||
masak | wow, I could actually decipher that acronym. haven't seen the musical, tho'. | 15:22 | |
TimToady | I've played it (in the orchestra) | ||
15:22
mkramer joined
|
|||
masak | TimToady: drums? | 15:22 | |
15:22
mkramer left
|
|||
TimToady | no, concertmaster | 15:22 | |
masak | ah; maestro. | ||
TimToady | only when the director hands me the baton | 15:23 | |
which never happened in that musical | |||
masak | oh. | ||
TimToady | I've conducted several others though | ||
masak | in a way a task very analogous to your job here in the Perl 6 community :) | 15:24 | |
TimToady | Oklahoma, My Fair Lady for instance | ||
15:24
jimmy1980 joined,
slavik joined
|
|||
PhatEddy | The new URI module version has a description of what's new here in the ChangeLog - github.com/ihrd/uri/blob/uri_iface.../ChangeLog | 15:25 | |
15:25
kaare_ joined
|
|||
TimToady | looks sane, but I'm not a URI expert... | 15:26 | |
masak | PhatEddy: nice. | ||
PhatEddy: what do you mean by "parsing constructor"? | |||
does it simply mean that all the computations are done at object creation? | |||
TimToady | as an orchestra conductor I only know how to speak loudly and carry a small stick... | 15:27 | |
PhatEddy | masak: just my URI $x .= new('www.perl.com') as opposed to the old way where you would "new" and then "init" | ||
masak | TimToady: I would laugh out loud, but I'm in BooK's audience... :) | ||
PhatEddy: ah. tres bien. | 15:28 | ||
PhatEddy | Thanks to all for looking and if you have any suggestions I can be reached from github or (ocassionally) here ... | 15:29 | |
masak | #perl6 early, #perl6 often... | ||
Su-Shee | ouch :) | 15:31 | |
masak | maybe I need to work on the precise wording of that. | 15:32 | |
15:32
bakedb left
15:35
karupas joined
15:37
karupanerura left
15:38
cognominal_ left
15:42
pernatiy left
15:45
noganex_ left
15:48
cotto left
15:52
bakedb joined
15:54
Mowah joined
|
|||
colomon | TimToady: You've conducted My Fair Lady?! | 15:55 | |
TimToady | the 2nd chair violist did not like the Hungarian Rhapsody solo sprung on her suddenly. :) | 15:56 | |
*violinist | |||
I guess I did No, No, Nanette too | 15:57 | ||
colomon | I've played in the pit for about twenty shows, but certainly never conducted.\ | 15:59 | |
15:59
noganex joined
|
|||
masak | oh crap. BooK just promised everyone that I will do a lightning talk to show off my yet-to-be-written mutually recursive Sierpinski-DAG-creating functions... :) | 16:00 | |
I shouldn't have said anything to him. | 16:01 | ||
TimToady | the first time I did the dream sequence in Oklahoma, I made the ballet dancers go too fast :) | ||
slavik | lol | ||
16:01
skangas joined,
thou joined
|
|||
masak | maybe someone in here would like to write the functions? I have to write a talk until tomorrow... | 16:01 | |
TimToady had better clean up brush before the sun gets too hot | |||
masak | I can give specific instructions. I've already worked it out on paper. | 16:02 | |
masak prepares a gist | |||
tadzik | colomon: played what? | 16:07 | |
or: on what | |||
colomon | tadzik: bassoon is my normal instrument, and I've also frequently been tasked with covering bari sax and (bass?) clarinet parts on it. I've also played a little bit of keyboard, whistles, and misc trivial percussion instruments in the pit. | 16:08 | |
16:10
buubot_backup left
|
|||
tadzik | I got back to playing the piano for the last few days | 16:11 | |
wondering if it will last, or will I stop again | |||
16:15
mkramer joined,
mkramer left
|
|||
Util | masak: oh crap indeed. RosettaCode has lots of different solutions for Sierpinski triangle and Sierpinski carpet, if you need inspiration. | 16:17 | |
16:17
karupas left
|
|||
Util is still writing talk for YAPC::NA Monday :( | 16:18 | ||
masak | Util: is any of them recursive and DAG-based? | 16:19 | |
colomon hasn't even started writing his talk for YAPC::NA Wednesday. | 16:20 | ||
16:20
zby_home_ joined
|
|||
Util | masak: recursive: rosettacode.org/wiki/Sierpinski_triangle#BASIC | 16:21 | |
16:22
wolfman2000 left
|
|||
masak | here are my loose thoughts on the subject: gist.github.com/1045125 | 16:23 | |
masak looks at Util's link | |||
Util: yes, but no :) | |||
Util: BooK is using Git, so the basic assumption is that we're using DAGs. :) | |||
tadzik | better dags than kgs | 16:24 | |
masak | doing it recursively with coordinates is arguably a simpler problem. | ||
Util looks at masak's Gist | |||
masak | the interesting thing with the DAG problem is that the subtriangles have nontrivial interdependencies. | 16:25 | |
oh, and I should be clear: if you help me solve this before tomorrow afternoon, you'll most likely be in a lightning talk at FPW. :) | 16:26 | ||
the gist contains all I know about the solution, and I think it completely outlines an actual implementation. | 16:27 | ||
optional parameters in Perl 6 come in handy with all the nodes needing to be passed around. | |||
Util | Would it be simpler to rotate the diagram/conceptual-model 90deg counter-clockwise? | ||
Reminder: Merges have two parents. | 16:28 | ||
Util might have no idea what he is taking about :( | |||
masak | Util: in my pictures, parents point upwards. so we might be meaning the same thing. | 16:29 | |
sometimes Git commit diagrams are drawn top-down, sometimes left-to-right. | |||
16:29
buubot_backup joined,
kaare_ left
|
|||
masak | buubot_backup: eval say "hooray!" | 16:29 | |
buubot_backup | masak: ERROR: syntax error at (eval 28) line 1, near "say "hooray!"" | ||
Util | I wish I had more time; The coding group at Atlanta.pm has been hacking on Tree::DAG_Node module for over a year | ||
16:29
ab5tract left
|
|||
moritz | buubot_backup: eval: use 5.010; say 'hooray'; | 16:30 | |
buubot_backup | moritz: hooray 1 | ||
Util | so I am rather steeped in DAGs by now. | ||
masak | moritz++ | ||
moritz | buubot_backup: eval: use 5.010; say 'hooray '; | ||
buubot_backup | moritz: hooray 1 | ||
moritz | buubot_backup: eval: use 5.010; print 'hooray'; | ||
buubot_backup | moritz: hooray1 | ||
masak | Util: the Node class in this case can be simple: it just needs to do .new(:@parents) | ||
moritz | buubot_backup: eval: use 5.010; print 'hooray '; | ||
buubot_backup | moritz: hooray 1 | ||
masak | buubot_backup: eval: use 5.010; print "I will always end my utterances with the number "; | 16:33 | |
buubot_backup | masak: I will always end my utterances with the number 1 | ||
masak | buubot_backup: eval: use 5.010; say "for me, you are the only " | 16:34 | |
buubot_backup | masak: for me, you are the only 1 | ||
masak | awww | ||
dalek | p: abb69d9 | jonathan++ | / (3 files): Bump to latest Parrot version to get natively typed lexical support and update NQPLexInfo/NQPLexPad to cope with that. |
16:36 | |
p: 97315f3 | jonathan++ | src/PAST/SixModelPASTExtensions.pir: Add lexical_6model scope that knows how to look at the type and pick the correct register type when fetching/storing lexicals. |
|||
masak | natively typed lexicals! \o/ | ||
tadzik | o-ho | ||
masak | World Domination grows ever closer. | ||
jnthn | Calm down, there's still plenty of work to do yet before they're useful :P | 16:37 | |
masak | I'm sorely tempted to attack the Sierpinski problem myself, mind. but I need to dedicate tuits towards getting my talk done for tomorrow. | 16:38 | |
jnthn | Sleep is overrated ;) | 16:39 | |
masak | point. | ||
colomon | really, it's not overrated. in the least. | ||
jnthn | hehe :) | ||
jnthn spent this morning catching up on sleep lost over the past week and a half :) | |||
masak | time to disappear. see y'all later. | 16:40 | |
colomon is catching a 6:30 AM flight to YAPC::NA, mind you, so he's apparently not practicing what he preaches. | |||
16:40
masak left,
sivoais left
|
|||
jnthn | colomon: ugh, early | 16:40 | |
dalek | kudo/nom: b697a48 | jnthn++ | src/pmc/perl6lexpad.pmc: Update Perl6LexPad to know about natively typed lexicals. Note, this doesn't mean they work yet, just that the underlying storage support is updated. |
16:42 | |
kudo/nom: fd11858 | jnthn++ | tools/build/NQP_REVISION: Bump NQP revision to get bits needed for native lexicals support. |
|||
colomon | jnthn: I've at least gotten a hotel near the airport, so I only have to get up silly-early rather than insanely early. | 16:43 | |
jnthn | colomon: Oh, that's not so bad. | 16:44 | |
jnthn needs to remember to book travel to YAPC. | |||
tadzik | oh, thanks | ||
a travel and a hotel | 16:45 | ||
jnthn | Ah, the hotel bit I did :) | ||
colomon | jnthn: yeah, I only very briefly considered waking up at 2:30 am to drive to the airport. ;) | ||
tadzik | jnthn: any hints? | ||
jnthn | Waking up at 2:30am sounds so odd. That's the time I often go to sleep :P | ||
tadzik | I wouldn't go to sleep then :) | ||
jnthn | tadzik: Some of us are staying at www.booking.com/hotel/lv/konventasetariga.html | 16:46 | |
tadzik | Free! Wi-fi is available in the entire hotel and is free of charge | 16:47 | |
like | |||
colomon | but does it actually work? I've had lots of bad experiences with hotel wi-fi (free or not)... | ||
tadzik | I guess I'll go for 13-17 | 16:48 | |
jnthn | colomon: It depends on the hotel, and also on the country and what laws they have. | 16:53 | |
colomon | also on how many geeks are using their laptops at once. | 16:54 | |
jnthn | colomon: I've seen all sorts. Open wifi network, places where it's free and reception gives you access tokens, places where they carefully make a copy of your passport when giving you the tokens for wifi access so they know who did what... | 16:55 | |
(not because the hotel cares, but because that's the law in some silly countries) | |||
tadzik | "Pets are allowed on request. No extra charges". Funny, I thought about zebras... | 16:58 | |
jnthn | I'm...er...not sure they'd consider that a pet :) | ||
17:00
woosley left
17:01
cotto joined,
cdarroch joined,
cdarroch left,
cdarroch joined
17:03
birdwindupbird left
|
|||
PerlJam | pmichaud: ping | 17:05 | |
TimToady | nom: say (1, 2, Nil, 3, 4, Nil, Nil, <eggs and>, Nil).gist | ||
p6eval | nom: OUTPUT«1 2 Nil 3 4 Nil Nil eggs and Nil» | ||
TimToady | nom: say (1, 2, Nil, 3, 4, Nil, Nil, <eggs and>, Nil) | 17:06 | |
p6eval | nom: OUTPUT«12Nil34NilNileggsandNil» | ||
TimToady wonders why that arg to say isn't .gisting | |||
jnthn | nom: Nil.gist.say | ||
p6eval | nom: OUTPUT«Nil» | ||
PerlJam | pmichaud: a minor thing ... your document on "relationship mangagers" still has <person1> and <person2> further down in the text from where you added your and moritz's names | 17:07 | |
17:08
JimmyZ_ joined
|
|||
TimToady | pm is in travel mode | 17:08 | |
17:09
bakedb left
17:10
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
PerlJam | he'll back log at some point | 17:12 | |
17:13
kanishka joined
17:17
cotto left
|
|||
sorear | good * #perl6 | 17:18 | |
slavik | sorear: likewise | ||
dalek | kudo/nom: 90aa408 | jnthn++ | src/Perl6/ (3 files): Start to more properly support natively typed lexicals, including assignment to them. This also fixes assignment to natively typed attributes. An assignment from a natively typed attribute to a natively typed lexical, or an assignment with int and num literals on the RHS, never boxes along the way and always works in terms of natives. Boxing is done in many situations as needed, including calls (so you don't tend to want to use natives yet unless |
17:19 | |
17:21
hanekomu joined
|
|||
jnthn | pmichaud: (for when you backog) See 90aa408. Note that for now if you want to use these and do ops, I advise using nqp::add_i and so forth. We need to build the inliner before we get infix:<+> really working there. | 17:21 | |
pmichaud: It works now but boxes on demand, which is a bunch of waste. | |||
sorear | moritz: what is confusing is the } } | 17:22 | |
jnthn | pmichaud: BTW, PAST::Want is a wonderful thing. pmichaud++ | ||
o/ sorear | 17:23 | ||
17:29
cotto joined
17:34
PhatEddy left
17:36
awoodland joined
17:43
mj41 joined,
wamba joined
|
|||
felher | std: my @array = 1,2,3,4; sub change(@array) { @array.pop(); } ; change(@array); | 17:53 | |
p6eval | std 37a0cdd: OUTPUT«ok 00:01 124m» | ||
felher | Hm... How is that 'ok'? Aren't containers also immutable by default according to S06? | 17:55 | |
sorear | felher: STD is just a parser | 17:58 | |
17:59
mkramer1 joined
18:00
mkramer1 left
|
|||
felher | sorear: Ah, okay. And niecza, rakudo and pugs just don't implement immutable containers at the moment? | 18:02 | |
jnthn | felher: If all the implementations agree, it may also be that your expectations are wrong. :) | 18:03 | |
sorear | felher: we consider S06 dubious there; passing arrays needs to be cheap and it's not at all obvious how to cheaply make an array readonly | 18:04 | |
18:05
mantovani joined
|
|||
flussence | can't you just swap out all the mutator methods for "{ !!! }" bits? | 18:05 | |
felher | jnthn: Yeah, sure, and most of the time they indeed are :) But i thought sorear implied my expectations to be correct :) | ||
18:05
mantovani left
|
|||
felher | sorear: Ah, okay, thnx. | 18:05 | |
TimToady | rosettacode.org/wiki/First-class_fu...sly#Perl_6 | 18:11 | |
18:16
JimmyZ left,
mkramer joined,
mkramer left
|
|||
TimToady | rakudo: say *.sin === &sin | 18:18 | |
p6eval | rakudo b2bc99: OUTPUT«_block1092» | ||
TimToady | o_O | ||
colomon | ha! | ||
TimToady | how do I do that? | 18:19 | |
rakudo: say [===] *.sin, &sin | |||
p6eval | rakudo b2bc99: OUTPUT«Bool::False» | ||
sorear | rakudo: say &infix:<===>(*.sin, &sin) | ||
p6eval | rakudo b2bc99: OUTPUT«Bool::False» | ||
TimToady | seems like that could be optimized | ||
well, maybe not so easily | 18:20 | ||
colomon | &sin / *.sin could be optimized, you mean? | 18:21 | |
TimToady | with enough knowledge, yeah | ||
colomon | sure, with enough knowledge and power. :) | ||
sorear | problem 1: WhateverCode adds an additional binder, which changes the semantics by disallowing extra arguments (you can't pass :base() to the WhateverCode) | ||
TimToady | in the typical program they'd be identical | ||
hmm | 18:22 | ||
sorear | problem 2: &sin is statically bound to the current $?TRIGBASE setting, while *.sin uses CALLER::<$?TRIGBASE> | ||
TimToady | well, maybe the mythical method inliner will save the day | ||
jnthn | TimToady: I think === is turning into a curried block there. | ||
TimToady | yes, we figgered | 18:23 | |
colomon | jnthn: right. | ||
jnthn | (because the LHS is a WhateverCode) | ||
sorear | problem 3: What if somebody defines a sin method that doesn't behave the same as the sin multi? | ||
jnthn | Dunno if it belongs on the exclusion list or not ;) | ||
TimToady | that's the "enough knowledge" part | ||
perl6: say [===] (sin *), &sin | 18:24 | ||
p6eval | niecza v6-186-g9c59f52: OUTPUT«===SORRY!===Undeclared routine: 'sin' used at line 1,1Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 469 (CORE die @ 2)  at /home/p6eval/niecza/src/STD.pm6 line 1133 (STD P6.comp_unit @ 30) … | ||
..rakudo b2bc99: OUTPUT«Method 'sin' not found for invocant of class 'Whatever' in 'sin' at line 2137:src/gen/core.pm in main program body at line 22:/tmp/F3w5803Mgq» | |||
..pugs: OUTPUT«» | |||
colomon | :\ | 18:25 | |
oh, I see | |||
TimToady | the Q is whether prefix:<sin> is considered a unary operator | ||
I guess it's not | 18:26 | ||
18:26
snarkyboojum left
|
|||
sorear | there are only a handful of unary operators in Rakudo and STD | 18:27 | |
colomon | rakudo: say [===] (abs *), &abs | ||
p6eval | rakudo b2bc99: OUTPUT«Bool::False» | ||
sorear | I think this is a bug; I wonder if it would cause problems if I went through perlop/perlsyn and made unary all the operators that were unary in Perl5 (and haven't changed in an invalidating way) | 18:28 | |
rakudo: say [===] *.&sin, &sin | |||
p6eval | rakudo b2bc99: OUTPUT«Method 'sin' not found for invocant of class 'Whatever' in 'sin' at line 2137:src/gen/core.pm in main program body at line 22:/tmp/A8DXyz3Q61» | ||
colomon | sorear: Just so we're on the same wavelength, you think sin not being a unary operator is a bug? | ||
TimToady | I've been trying to get rid of named unaries, except for traditional math ops | ||
PerlJam | sorear: you think it's a bug that there aren't more unaries? | ||
sorear | PerlJam: the only unaries in STD are abs, sleep, so, and not IIRC | 18:29 | |
this list makes no sense | |||
PerlJam | ah. | ||
you don't want more unaries as much as you wan a conceptual hook to hang them on. | 18:30 | ||
TimToady | there is no list that actually does make sense, in the sense of not being rather arbitrary | ||
colomon | defined is a unary in rakudo, it appears... | 18:31 | |
TimToady | and I'd like the user not to have to memorize a long list of unaries | ||
quick, is mkdir a unary? | |||
18:31
snarkyboojum joined
|
|||
PerlJam | no! | 18:31 | |
:) | |||
TimToady | is sin a unary? | ||
if it has a :base? | 18:32 | ||
sorear | TimToady: adverb | ||
TimToady | nevertheless, it's a second arg | ||
sorear | niecza: say abs 1 :foo | 18:33 | |
p6eval | niecza v6-186-g9c59f52: OUTPUT«Unhandled exception: Excess arguments to CORE prefix:<abs>, unused named foo at /home/p6eval/niecza/lib/CORE.setting line 0 (CORE prefix:<abs> @ 0)  at /tmp/m8CRXhIbu6 line 1 (MAIN mainline @ 1)  at /home/p6eval/niecza/lib/CORE.setting line 1780 (COR… | ||
sorear | perl6: say defined 1 && 0 # I really do not like this inconsistency | ||
p6eval | niecza v6-186-g9c59f52: OUTPUT«Bool::True» | ||
..pugs, rakudo b2bc99: OUTPUT«0» | |||
18:34
Bzek left
|
|||
TimToady | and if we drive it merely off of having one positional argument, you get many accidental unaries | 18:35 | |
18:35
mj41 left
|
|||
TimToady | which are suddenly no longer unary if you add another arg | 18:35 | |
PerlJam | TimToady: so, for clarity, a short list of named unaries to memorize is okay? | 18:36 | |
(a *really* short list I would hope) | |||
TimToady | druther not have to memorize any list, but if there's a natural place to cut it, I'm all ears | 18:37 | |
sorear | Why are abs, sleep, so, and not unaries? | ||
TimToady | note the comment: ## named unary examples | 18:38 | |
the intent is that most all such operators be defined in the setting eventually, not the grammar | |||
I'm not opposed to having named unaries, but I'd like a rule I can tell people so they can at least guess right most of the time | 18:39 | ||
I guess if we have too many, and they guess wrong, they'll just get a "useless use of" warning | |||
or a misplaced arg | 18:40 | ||
PerlJam | so and not feel like they should be unary | ||
TimToady | define "feel" | ||
PerlJam | I wish I could. :) | ||
It just seems like those would get used in contexts where "unariness" would be appropriate | |||
18:41
mj41 joined
|
|||
TimToady | people are always carping about the ($) proto in p5 changing the syntax | 18:41 | |
so unaries really need to be put explicitly into the prefix category | |||
not just rely on the sig | |||
but we do have the named unary category, carried over from P5, and we should either grow it to the boundaries of "feely" unaries, or turn 'em all into listops | 18:43 | ||
I'd also like to understand the failure modes a bit more | |||
and are there any current "feely" listops "foo" that could use to be foo« instead | 18:45 | ||
iow, do a similar analysis of mappy operations into scalar ops like we did with min LIST vs [min] LIST | 18:48 | ||
only instead of foo LIST becoming [foo] LIST it becomes foo« LIST | 18:49 | ||
we won't do this, but suppose for the sake of argument that print was a unary | |||
current print would become print« | |||
PerlJam | or print(...) | 18:50 | |
TimToady | well, only if there was a multi to handle it | ||
PerlJam | for things like abs or sleep, that seems like a "natural" way to write it in absense of unary | 18:51 | |
TimToady | the natural unaries are close to the natural "argumentless" *.foo | ||
but the fact that you can unambigously write 42.sin takes some pressure off of getting sin 42 right | 18:52 | ||
PerlJam | yeah, but it looks weird ;) | ||
makes me suddenly think I'm writing ruby | 18:53 | ||
tadzik | I'd prefer Math.sin(42) to 42.sin any time | ||
TimToady | bletch | ||
PerlJam | what TimToady said | ||
tadzik | 42.sin just doesn't feel right to me | 18:54 | |
TimToady | there's that "feel" thing again... | ||
you'd be fine with it if mathematicians had been writing it that way for donkey's years | |||
colomon | not only is 42.sin right, it's more likely to work on weird types, and it is (at the moment) more efficient, at least in rakudo. | ||
tadzik | probably, yes | ||
but that makes me feel that Int, Num or whatever should be capable of calling any common math function on itself | 18:55 | ||
colomon | also -- we've got sin(42), too. It's just sin 42 that's at question. | 18:56 | |
tadzik: errr... Int, Num or whatever (if whatever is Real) is capable of calling any common math function on itself. | |||
TimToady | "common math function" means it's already in the language, and hence should be in the language :) | ||
colomon | TimToady: actually, I've been meaning to add a few new ones at some point. ;) | 18:57 | |
TimToady | I really don't like importing universal concepts from Math | ||
sure, if you want to use OEIS-582, that's worth importing | 18:58 | ||
but not things they teach in high school | |||
they should just be there | |||
rakudo: say i.sin | 19:00 | ||
p6eval | rakudo b2bc99: OUTPUT«0 + 1.1752011936438i» | ||
PerlJam wanders off to a "web design" meetings | |||
er, meeting | |||
TimToady | o/ | ||
huh, Figurate numbers based on 9-dimensional regular simplex | 19:04 | ||
oeis.org/A000582 | 19:05 | ||
moritz | "interesting" | ||
19:06
mkramer1 joined
|
|||
colomon hopes TimToady isn't getting ideas about having the sequence operator look up sequences from OEIS... | 19:06 | ||
moritz | sounds like a nice module. | 19:07 | |
TimToady | oeis-42 is cute | 19:08 | |
perl6: .say for [\~] 1 xx * | |||
tadzik | colomon: yeah, I know, that bothers me a bit to. But I'm not the one who is to complain | 19:09 | |
p6eval | rakudo b2bc99: OUTPUT«(timeout)1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111… | ||
..pugs: OUTPUT«(timeout)» | |||
..niecza v6-186-g9c59f52: OUTPUT«(timeout)11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111… | |||
TimToady | funny, niecza blows up with I run that in the repl | 19:11 | |
System.NullReferenceException: Object reference not set to an instance of an object | 19:12 | ||
sorear: ^^ | |||
All Systems Are Go For Lunch | |||
19:13
kanishka left
19:16
mkramer1 left
|
|||
TimToady | not to be confused with Gopher Lunch... | 19:17 | |
diakopter | Argot 4 Lunch | ||
19:19
birdwindupbird joined
|
|||
diakopter | TimToady: which version of mono do you have these days | 19:19 | |
not to be confused with nucleosis | 19:20 | ||
TimToady | 2.8.2 | 19:26 | |
19:28
mtk left
19:29
mtk joined
19:30
jdhore1 left
19:34
mj41 left
|
|||
sorear | TimToady: yeah, the repl doesn't like code that uses $_ | 19:39 | |
moritz | nom: say "foo" if 1 | ||
p6eval | nom: OUTPUT«foo» | ||
sorear | I think what's going on is that the repl isn't correctly binding to the setting, so "is dynamic" outer variables follow a null pointer | ||
19:43
jdhore1 joined
|
|||
TimToady | sorear: your hyper function has a funny argument order | 19:48 | |
any particular reason? | |||
sorear | TimToady: consistency with .assuming, I think | 19:51 | |
TimToady | jnthn: and what is the :path arg in rakudo's hyper function? | ||
jnthn | TimToady: No idea, I didn't write it. Lemme see if I can work out how it's used... | ||
TimToady thinks we should agree on the general hyper api, y'see | 19:52 | ||
sorear | if the user writes [»+«], hyper(False, False, &infix:<+>, ...) needs to be wrapped in a function | ||
TimToady: Rakudo's :path is just used for error messages | |||
jnthn | Ah | ||
sorear++ # knows Rakudo better than me :) | |||
TimToady | let's you and him fight about the API then :) | ||
moritz | rakudo: { a => [1, 2] } >>+<< { a => [1,] } | 19:53 | |
p6eval | rakudo b2bc99: OUTPUT«Sorry, lists on both sides of non-dwimmy hyperop are not of same length: left: 2 elements right: 1 elementsAt .{"a"} in 'hyper' at line 192:src/gen/core.pm in <anon> at line 264:src/gen/core.pm in 'hyper' at line 1:src/metamodel/RoleToInstanceApplie… | ||
TimToady | 'cause I'd sure like to mention hyper() on RC | ||
sorear | more generally, I think it would be cool if there were a standard API for metaops | ||
because then I could make infix_prefix_meta_operator and all that work in add_categorical | 19:54 | ||
which would be awesome | |||
TimToady | and there should be a standard meta-API for that too... :P | ||
19:54
mtk left
|
|||
TimToady | what's the opposite of turtles all the way down? | 19:54 | |
jnthn | Cheetahs all the way up? | 19:55 | |
moritz | turtles all the way up? | ||
19:55
mtk joined
|
|||
colomon | butterflies all the way up | 19:55 | |
TimToady | obviously, turtles only halfway down | ||
19:55
mtk left
19:56
mtk joined
19:58
pernatiy joined
20:00
bluescreen10 left
|
|||
dalek | ecza: ad86d69 | sorear++ | / (7 files): Remove content-free "bif_" prefix, reduce requirement for explicit _cgop use |
20:04 | |
colomon | bif means built-in function, right? | ||
colomon figured that out just a day before it got removed | |||
moritz | nom: my $x; $x++; say $x | 20:06 | |
p6eval | nom: OUTPUT«Method 'succ' not found for invocant of class 'Any'current instr.: 'postfix:<++>' pc 187091 (src/gen/CORE.setting.pir:47015) (:278)» | ||
20:06
wolfman2000 joined
|
|||
moritz | nom: my $x = Mu; $x++; say $x | 20:07 | |
p6eval | nom: OUTPUT«No applicable candidates found to dispatch to for 'postfix:<++>'. Available candidates are::(Int $a):(Num $a):(Any $a)current instr.: 'postfix:<++>' pc 187047 (src/gen/CORE.setting.pir:46995) (:275)» | ||
moritz | rakudo: say Any.succ | ||
p6eval | rakudo b2bc99: OUTPUT«Method 'succ' not found for invocant of class '' in main program body at line 22:/tmp/pbHp7kqRYt» | ||
moritz | niecza: say Any.succ | ||
p6eval | niecza v6-186-g9c59f52: OUTPUT«1» | ||
20:13
Mowah left
20:18
MayDaniel joined
|
|||
dalek | kudo/nom: 6565c9a | moritz++ | / (3 files): implement .chomp, note .chop as LHF |
20:19 | |
kudo/nom: 0b1bea7 | moritz++ | / (5 files): Merge branch 'nom' of github.com:rakudo/rakudo into nom |
|||
kudo/nom: 6db95e2 | moritz++ | src/core/ (3 files): make "my $x; $x++" work. I am not so sure this is the right approach, so pmichaud++ or jnthn++ please review it |
|||
20:20
birdwindupbird left
|
|||
sorear | colomon: your asking me about it was the clue that made me realize it was useless | 20:22 | |
TimToady | rosettacode.org/wiki/Element-wise_o...ons#Perl_6 <-- more hypers | 20:23 | |
dalek | kudo/nom: 07f2abd | jnthn++ | src/ (4 files): Start to put BEGIN/CHECK/INIT/END back together. They run at the right times, though BEGIN and CHECK don't yet see the lexical environment (will be fixed when those issues are dealt with generally). Also need to twiddle a bit more with END in pre-compilation mode, but it's fine for the Test.pm case that we immediatley need it for. |
20:24 | |
kudo/nom: bb4567a | jnthn++ | src/Perl6/Actions.pm: Fix binding to natives error. |
|||
kudo/nom: 47daf70 | jnthn++ | Test.pm: Use my instead of our variables in Test.pm; they were likely at least partly workarounds for END blocks not seeing the lexical environment, which they do now. |
|||
jnthn | moritz: Seems sane | ||
moritz: Like that we end up with less protos too ;) | 20:25 | ||
sorear | token infix:sym<` `> { '`' ~ '`' <EXPR> <O(%additive)> } # Discuss. | 20:26 | |
mikemol | The image processing tasks ought to be very good demonstrations of hypers with measurable differences in performance between different implementations of Perl 6. | ||
moritz | you mean slow-ish and "awefully slow"? | ||
sorear | niecza's hypers are probably very slow atm | ||
mikemol | More, "processes single-threaded" vs "passes to a thread pool" vs "passed to some OpenCL-like backend" | 20:27 | |
Since one of the suggested uses of hypers is automatic parallelization of operations. | |||
sorear | OpenCL hypers: now *that* is funny... | ||
mikemol | I really don't see how you'd do the cross-compile yet, but TimToday's the one who suggested it might get run on a GPU... | 20:28 | |
sorear | At this time it looks pretty unlikely that hypers will be parallel *by default*, since most real-world use of hypers is on small data sets and I don't want to pessimize the common case | 20:29 | |
OpenCL hypers will probably make more sense once we have understood typed compact arrays | |||
moritz | you can still decide based on the size of the already-reified parts | ||
sorear | but the cutoff needs to depend on the operator | 20:31 | |
jnthn | moritz: Think main think we're missing for Test.pm to be vaguely usable is "is export" now | ||
sorear | «+» shouldn't parallelize below (quite a few) items, ».&mandel should start parallelizing sooner because each call is more expensive | ||
20:32
Moukeddar joined
|
|||
Moukeddar | Hello o/ | 20:32 | |
TimToady | sorear: obviously you just start it both ways and see who wins :) | 20:33 | |
and certainly machines can generate some rules of thumb for various signatures | 20:34 | ||
jnthn | o/ Moukeddar | 20:35 | |
Moukeddar | how are you all doing ? | ||
TimToady | much like the old configurators that would run several different sort routines to see which one was faster | ||
moritz | nom: sub f($x = 5) { say $x } | ||
p6eval | nom: ( no output ) | ||
moritz | nom: sub f($x = 5) { say $x }; f | ||
p6eval | nom: OUTPUT«5» | ||
TimToady | or the first time you try to call such a routine, you start it in the CPU, and if it returns quickly, you leave it there | 20:37 | |
20:37
masak joined
|
|||
masak | y0 #perl6 | 20:37 | |
TimToady | if it's been N milliseconds and you haven't got an answer, then start up the GPU | ||
masak | I vote for no named unaries. | ||
20:37
MayDaniel left
|
|||
masak | mostly just to see what happens. :) | 20:37 | |
TimToady | you might or might not still beat the GPU | ||
CPU | |||
okay, that's one vote for named unaries...anyone else | 20:38 | ||
masak | no, against. :P | ||
TimToady | if you're against it, it counts as a vote for | ||
masak | dang. | ||
jnthn | :) | ||
masak | still haven't figured out this voting system. | ||
jnthn | o/ masak | ||
masak | \o | ||
moritz votes exactly oposite to masak++'s vote | |||
just 'cause | |||
masak | moritz: it's a trap! :) | 20:39 | |
TimToady | are you a cretan? | ||
masak | we're all a bit epimedic sometimes. | ||
sorear | TimToady: I'm wary of starting races. seems like a waste of joules | ||
moritz | pmichaud: btw statement-modifying for doesn't seem to work (properly?) in nom | ||
nom: .say for 1, 2, 3 | |||
p6eval | nom: OUTPUT«Null PMC access in find_method('new')current instr.: 'nqp;Perl6;Actions;_block1837' pc 30162 (src/gen/perl6-actions.pir:10118)» | 20:40 | |
TimToady | you only start it if it looks like the CPU is being slow, and you only try the race once | ||
then you remember | |||
20:40
prammer left
|
|||
masak | is pmichaud still in transit? I wanted to ask him about the exact reason perl6-on-parrot was canceled in 2004. | 20:40 | |
TimToady | but hopefully the switchover points can be precalculated for most common operators and types | ||
20:41
prammer joined
|
|||
jnthn | moritz: Looks like Actions just didn't get updated there yet. | 20:41 | |
sorear | masak: I think Perl6 on Parrot is still actively developed | ||
20:41
alester joined
|
|||
TimToady | you're thinking of Perl6 *over* Parrot :) | 20:42 | |
masak | :P | ||
TimToady | there's some interturtles... | ||
masak | sorear: sure, but alpha is not genealogically related to 2004's perl6-on-parrot. | ||
moritz | btw I'm working on IO in nom now | 20:43 | |
TimToady | IO is good | ||
moritz | IO is necessary | ||
masak | sorear: and pmichaud was actually "hired" because the Parrot people realized that this Perl 6 bit was too much to chew off while also making Parrot. or sump'n. | 20:44 | |
Moukeddar | Hello masak | ||
masak | Moukeddar: hi. | ||
jnthn | moritz: Excellent, thanks. | ||
masak | Moukeddar: I'm closer to Morocco than usual :) I'm in Paris. | ||
TimToady | Gay Paris, not to be confused with Pairs... | 20:45 | |
Moukeddar | nice :) | ||
not gay :@ | |||
masak | this place looks fairly gay to me. | ||
huf | is it full of scotsmen? | ||
Moukeddar | the kisses? | ||
masak | phenny: "c'est une ville gaie"? | ||
phenny | masak: "is a gay city" (fr to en, translate.google.com) | 20:46 | |
tadzik | for some meaning of gay, yes | ||
masak | huh :) | ||
jnthn | rakudo: { say 'lol' } for 1..5 | ||
p6eval | rakudo b2bc99: OUTPUT«lollollollollol» | ||
jnthn | Is this correct? | ||
niecza: { say 'lol' } for 1..5 | |||
p6eval | niecza v6-187-gad86d69: ( no output ) | ||
jnthn | pugs: { say 'lol' } for 1..5 | ||
Moukeddar | it's a nice city | ||
p6eval | pugs: ( no output ) | ||
tadzik | why shouldn't it be? | ||
masak | phenny: "est-ce que tu connais la difference entre 'gai' et 'hereux'?"? | ||
phenny | masak: "est-ce que la difference between your connais 'gai' et 'hereux'?" (es to en, translate.google.com) | ||
moritz | jnthn: I don't think it should execute the block... at least not according to the spec I remember | ||
TimToady | it's in there somewhere | 20:47 | |
jnthn | moritz: Yeah, that was my feeling too | ||
Moukeddar | enjoy it | ||
masak | thanks. | ||
jnthn | Rakudo master actually goes to some effort to make sure it executes it... | ||
nom: .say given 42; | |||
p6eval | nom: OUTPUT«42» | ||
TimToady | it's considered a bare block | ||
jnthn | TimToady: Which'd mean it's executed? | ||
masak | jnthn: there's a spectest against that somewhere. | ||
tadzik | rakudo: { say 'lol' }.() for 1..5 | 20:48 | |
masak | or for. | ||
p6eval | rakudo b2bc99: OUTPUT«lollollollollol» | ||
masak | it's changed a few times. :) | ||
jnthn | heh ;) | ||
tadzik | niecza: { say 'lol' }.() for 1..5 | ||
p6eval | niecza v6-187-gad86d69: OUTPUT«lollollollollol» | ||
masak | but there's a test is the important message. | ||
outlining the latest decision, methinks. | |||
20:49
PacoLinux left
|
|||
jnthn | github.com/perl6/roast/blob/master.../for.t#L62 | 20:49 | |
20:49
PacoLinux joined
|
|||
TimToady | mostly as a degenerate case of S04:691 | 20:49 | |
jnthn | OK, current Rakudo does what the test wants. I'll preserve that. | ||
20:50
daemon left
|
|||
tadzik | a-ha | 20:50 | |
Moukeddar | masak, you should drop by :) | ||
20:50
tomize left
|
|||
dalek | kudo/nom: fd62049 | moritz++ | src/core/IO.pm: implement open() |
20:50 | |
masak | I "almost" managed to implement gist.github.com/1045125 | ||
kudo/nom: 5307d26 | moritz++ | src/core/IO.pm: start with implementing basic IO |
|||
Moukeddar | El-Massira Airport :| | ||
masak | so anyone who wants to beat me to it has to hurry :) | ||
Moukeddar: already have tickets home... :) | 20:51 | ||
Moukeddar | you miss Moma ? | ||
20:51
PacoLinux left
|
|||
masak | Moukeddar: well, 'home' means 'where I live', not 'where Moma lives' :P | 20:51 | |
Moukeddar | i thought they were the same , they're here :p | 20:52 | |
20:52
PacoLinux joined
|
|||
masak | depends on your age and stuff, I guess. | 20:52 | |
Moukeddar | could be | ||
20:52
tomize joined
|
|||
Moukeddar | so, did you enjoy your Parisien ? | 20:52 | |
croissant? | |||
masak | hm, no croissant yet. | 20:53 | |
but I am enjoying it. | |||
now I understand what all the fuss about l'arc de triomphe is about. it's massive. | |||
I mean, wow. | |||
moritz | nom: sub f($x, :$named = 1.Bool) { say $named }; f('foo', :!named); | ||
p6eval | nom: OUTPUT«Rebuild in progress» | ||
masak | p6eval++ | ||
Moukeddar | just a big block of Marbel i guess , or regular stone, nothing fancy | 20:54 | |
moritz | Unexpected named parameter 'named' passed | ||
masak | nom: say "Rebuild in progress" | ||
p6eval | nom: OUTPUT«Rebuild in progress» | ||
tadzik | touche | ||
masak | Moukeddar: you say that after you've made one yourself :) | ||
Moukeddar | they didn't made it :) | 20:55 | |
make* | |||
masak | I maintain they did, fsvo "they". :) | ||
tadzik | moritz: why 1.Bool rather than True? | ||
jnthn | ENOTrue | ||
masak | True NYI? | ||
right. | |||
Moukeddar | Oh! they Di-Idnt :p | ||
moritz | tadzik: because True doesn't work in the setting | 20:56 | |
tadzik | oh, I see | 20:57 | |
Moukeddar | anyway masak have a nice flight :) | ||
thanks for using le herp de la Derp airlines | 20:58 | ||
masak | :) | 21:00 | |
Niecza appears to have been born on 2010-06-22. oh right, sorear was talking about an anniversary a few days ago... | 21:01 | ||
Niecza truly has come a long way in a year. | 21:02 | ||
people, could you help me enumerate large-scale Perl 6 features? then I/we can check if Pugs/Rakudo/Niecza have them. | 21:03 | ||
I'll start. classes. :) | |||
all three have them, as far as I know. | |||
jnthn | roles :) | 21:04 | |
masak | what about heredocs? | ||
ooh | |||
jnthn | multis | ||
masak | perl6: role A } | ||
argh | |||
p6eval | niecza v6-187-gad86d69: OUTPUT«===SORRY!===Any()Unable to parse role definition at /tmp/awN0DherMZ line 1:------> role A ⏏}Parse failed» | ||
..rakudo b2bc99: OUTPUT«===SORRY!===Malformed package declaration at line 22, near "}"» | |||
..pugs: OUTPUT«***  Unexpected "}" expecting trait at /tmp/a_ofCFe2r7 line 1, column 8» | |||
masak | perl6: role A {}; class C does A {}; say "alive" | ||
p6eval | niecza v6-187-gad86d69: OUTPUT«===SORRY!===Action method trait_mod:does not yet implemented at /tmp/Qu0IruJI5H line 1:------> role A {}; class C does A ⏏{}; say "alive"Cannot use hash access on an object of type Str at /tmp/Qu0IruJI5H line 1:--… | ||
..pugs, rakudo b2bc99: OUTPUT«alive» | |||
masak | jnthn++ # nice | 21:05 | |
21:05
Moukeddar left
|
|||
masak | pugs: say q:to:"EOF" | 21:06 | |
p6eval | pugs: OUTPUT«*** No such subroutine: "&q" at /tmp/PCqIkbt_Cb line 1, column 5-9» | ||
masak | no heredocs. | ||
but Niecza has 'em, ISTR. | |||
TimToady | niecza: say q:to:"EOF"aliveEOF | 21:07 | |
p6eval | niecza v6-187-gad86d69: OUTPUT«===SORRY!===Any()Colons may not be used to delimit quoting constructs at /tmp/ezXxGbBEG7 line 1:------> say q:to⏏:"EOF"Parse failed» | ||
masak | oops | ||
TimToady | niecza: say q :to "EOF"aliveEOF | ||
p6eval | niecza v6-187-gad86d69: OUTPUT«alive» | ||
masak | \o/ | ||
sorear++ | |||
macros. none of the implementations have that. | 21:08 | ||
jnthn | nom: sub f($x, :$named = 1.Bool) { say $named }; f('foo', :!named); | ||
p6eval | nom: OUTPUT«Unexpected named parameter 'named' passedcurrent instr.: 'f' pc 281 ((file unknown):195) (:1)» | ||
jnthn | nom: sub f($x, :$named) { say $named }; f('foo', :!named); | ||
p6eval | nom: OUTPUT«Unexpected named parameter 'named' passedcurrent instr.: 'f' pc 255 ((file unknown):153) (:1)» | ||
sorear | pugs: macro foo($x) { say $x; $x }; foo(2) | ||
p6eval | pugs: OUTPUT«2***  Unexpected end of input expecting ":" Macro did not return an AST, a Str or a Code! at /tmp/WhcDvL5hnF line 1, column 37» | ||
jnthn | nom: sub f($x, :$named) { say $named }; f('foo', :named(1)); | ||
p6eval | nom: OUTPUT«1» | ||
TimToady | pugs: macro foo { "bar" }; foo | ||
p6eval | pugs: OUTPUT«*** No such subroutine: "&bar" at MACRO { "/tmp/QMKw01QiXm" (line 2, column 1) } line 1, column 1 - line 2, column 1» | ||
TimToady | ^^ | 21:09 | |
jnthn | nom: sub f($x, :$named) { say $named }; f('foo', :named); | ||
p6eval | nom: OUTPUT«Unexpected named parameter 'named' passedcurrent instr.: 'f' pc 255 ((file unknown):153) (:1)» | ||
jnthn | er, hm. | ||
moritz | so :foo doesn't work? | ||
jnthn | looks like | ||
sorear | nom: sub f(:$named) { say $named }; f(|{ '$named' => 5 }) | ||
p6eval | nom: OUTPUT«Could not find sub &prefix:<|>current instr.: '_block1002' pc 112 ((file unknown):57542892) (:1)» | ||
moritz | ./perl6 -e 'say open("README", :chomp(0.Bool)).lines' | 21:10 | |
works in nom | |||
masak | sorear: I remember at least one big Niecza refactor; the one that made Niecza bootstrap. have there been others? | ||
tadzik | oh, chromatic responded to the naming story | ||
TimToady | "big" is a fractal | ||
masak | ooh | ||
tadzik: url? | 21:11 | ||
sorear | ==TimToady | ||
it's more of a power-law thing | |||
like big earthquakes | |||
masak | oki, so it's not three distinct phases like with Rakudo? fair enough. | 21:12 | |
tadzik | masak: www.modernperlbooks.com/mt/2011/06/...names.html | ||
sorear | I've had a couple of refactors big enough that I had to split them between commits with non-working states in between | ||
the bootstrappification was the biggest one, it required translating the entire compiler to Perl 6... | 21:13 | ||
recently I remember /mm (which did away with most automatic INIT blocks, moving them into a Begin compiler phase) and /immediate (which combined Begin with the parse) | 21:14 | ||
masak | tadzik: thanks. I found it by logging into Twitter :) | 21:15 | |
tadzik | :) | ||
masak | ergh. truly, I dislike the name "Perl++" and its connotations a bit extra. | 21:16 | |
tadzik | let's name it Zebra | ||
moritz | "Just as bad as C++"? | ||
masak | sorear: ok, so either zero big refactors, or one, or lots of them? | 21:17 | |
tadzik | we could also use the 'package Foo;' syntax again | ||
TimToady | Obviously Perl++ would be Perm, then Pern, Pero, Perp, Perq, Perr, Pers, Pert, Peru, Perv, Perw, Perx, Pery, and Perz | ||
sorear | can't use Pern | ||
TimToady | sure we can, different domain | 21:18 | |
and Pero is a roasted-grain drink | |||
I hear Peru is available | |||
but actually it's Perl--, so Perk | |||
tadzik | Peru++ would be Perv | ||
TimToady | perk would be the JVM one, obviously | 21:19 | |
tadzik | wasn't there something on Parrot called Perk? | 21:20 | |
TimToady | Perk should be the real name of nqp | ||
masak | :P | ||
tadzik | github.com/chrisdolan/perk | 21:21 | |
masak | I'll add "real LTM" as a point in favor of Niecza. | 21:23 | |
sorear: github.com/sorear/niecza/blob/mast...DIRECTIONS -- on line 47, you can strike <.SUPER::name>; it's no longer spec. | 21:24 | ||
21:24
daemon joined
|
|||
sorear | uh... that file is so out of date, I forgot it existed :| | 21:25 | |
masak | I'm slowly realizing that :) | ||
things further down look out of date too. | 21:26 | ||
where can I find more current information? the release announcements? | |||
sorear | yes | ||
masak goes through them | 21:28 | ||
21:30
masak` joined
21:33
masak left
21:37
masak` left
|
|||
dalek | kudo/nom: 067b038 | jnthn++ | src/Perl6/Actions.pm: Fix statement modifying for, make way statement modifying given is done more consistent with that way. |
21:38 | |
kudo/nom: 6f054ba | jnthn++ | src/Perl6/Actions.pm: Fix old-think lookup. |
|||
kudo/nom: 7963293 | jnthn++ | src/Perl6/Actions.pm: Fix :foo and :!foo breakage spotted by moritz++. |
|||
21:39
cotto left
21:42
Patterner left,
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
tadzik | AAAAAAAAAAAAAAAA search.cpan.org/~mschwern/AAAAAAAAA-1.00/ | 21:44 | |
we need to have this ported to Perl6 | 21:46 | ||
jnthn | AAA?! | ||
tadzik | AAAAAAAAAA! | ||
hopefully he will have a yapc talk about this module | 21:48 | ||
slavik | lol | 21:51 | |
tadzik resists the temptation to Rate this distribution | 21:53 | ||
thou | "works as advertised" | 21:54 | |
21:58
Holy_Cow joined
|
|||
lichtkind | thou: hai | 21:58 | |
thou | hello! | ||
21:58
Holy_Cow left
22:03
wamba left
|
|||
lichtkind | thou: please not remove the spam i need it show the problem :) | 22:05 | |
22:08
cotto joined
|
|||
dalek | ecza: 4c4f12a | sorear++ | / (7 files): Move most builtin definitions into the setting |
22:15 | |
22:16
sjn left
22:19
sjn joined,
alester left
|
|||
felher just found the '...' operator ( big thnx to all rosettacode writers) and _really_ likes it :) | 22:29 | ||
22:36
hanekomu left
22:41
neaer joined
22:42
masak joined
|
|||
masak | g'ah. not even deadlines instill the right kind of industrious fear in me anymore... :) | 22:43 | |
sorear | hello masak! | ||
what kind of deadlines? | |||
masak | well, I have this talk tomorrow. | ||
jnthn | masak: You have TWO. :P | ||
masak | actually two, but jnthn++'s slides were easy enough to adapt. | ||
sorear | is YAPC::EU started yet? I noticed an anomalous spike in my github new-follower rate | ||
masak | sorear: no no, that's in August. | 22:44 | |
sorear: but we had NPW last weekend and I'm at FPW this weekend. | |||
lichtkind | thou: next there will be action | ||
masak | I propose we kill off infix:<max>. together, &max and List.max already the same semantic space, and are less confusing. ditto infix:<min>, of course. | 22:46 | |
s/already/already cover/ | |||
22:46
cotto left
|
|||
jnthn | masak: [max] | 22:46 | |
masak | jnthn: .max | ||
jnthn | inte så söt :P | 22:47 | |
masak | I beg to differ. | ||
jnthn | :) | ||
jnthn isn't sure if he prefers the op or the meth. | |||
masak | oh, and if you want the listop behavior, there's &max. | ||
having all three is nonsensical. | |||
or at least highly redundant. | 22:48 | ||
more so than is common in Perl. :P | |||
jnthn | hm, true. | ||
masak | and truthfully, 'max' never felt like an infix operator to me. | ||
4 max 5? hmmm? | 22:49 | ||
what do you want me to do? max out 4 so it becomes 5? :) | |||
jnthn | Yeah, it's a stretch. | ||
masak | though... oh | ||
I do like '$a max= 4' | |||
TimToady | @a Zmax @b | ||
masak | yeah. | ||
jnthn | And that. :) | 22:50 | |
masak | I'd like to have all the metaop behavior, but not the ops themselves :P | ||
TimToady | and [\max] | ||
jnthn | :P | ||
masak | ooh | ||
TimToady | I think you're just not used to it | ||
masak | I'll give it three more years, then. | 22:51 | |
TimToady | heheh | ||
is that three years max? | |||
masak | :P | ||
why do we have minmax, but not divmod? :P | |||
TimToady | round tuits | ||
masak | o.O | 22:52 | |
I was *joking*! | |||
sorear | I accidentally added divmod, quot, rem, and quotrem to the niecza runtime | ||
but they're not bound to any names in the setting | 22:53 | ||
TimToady | it does seem like seriously wrong to force the programmer to do two divisions when one would do | ||
sorear volunteers to read masak's report | |||
22:53
masak` joined
|
|||
sorear | TimToady: I suspect it would only be a win for bignums | 22:54 | |
TimToady | and it's a bit of a stretch to say that the optimizer will figure it out | ||
masak` | yes, probably. | ||
22:54
donri left
|
|||
masak` | though it would be fun to try :) | 22:55 | |
TimToady | well, we could just memoize all divisions :P | ||
masak` | all of them? all 447 of them? :) | ||
hrm, les parisiens are howling to the moon outside of my window... | 22:56 | ||
dalek | kudo/nom: 4566436 | jnthn++ | src/Perl6/Actions.pm: Start to refactor the various funky dispatches. |
||
kudo/nom: 3ceb232 | jnthn++ | src/ (3 files): First cut implementation of |@foo, |%bar. |
|||
kudo/nom: d9abccf | jnthn++ | src/core/Mu.pm: $foo.&bar(), $foo.^bar and $foo.?bar. |
|||
kudo/nom: 067831f | jnthn++ | NOMMAP.markdown: Update nommap. |
|||
22:56
masak left
|
|||
sorear volunteers to read masak`'s report | |||
masak` | sorear: thanks. I doubt I will publish any slides before giving my talk, though. | 22:57 | |
22:57
masak` is now known as masak
|
|||
masak | hm, didn't rakudo.org/status previously contain lots of good stuff about implemented features? | 22:58 | |
masak hits the internet archive | |||
TimToady | lessee, what shall we do for #300 on RC.. | 22:59 | |
masak | Sparta! | ||
TimToady | well, I was just looking at "Program termination", which is kinda about everyone dying... | 23:00 | |
masak | :) | 23:01 | |
two things in life are guaranteed: GC and taxes... | 23:02 | ||
timely GC, however... | |||
found it. web.archive.org/web/20090322092459/...org/status | 23:04 | ||
ISTR a nice pastel-colored slide with all those listed. don't know from whose presentation, though. | |||
was thinking of making my own, similar, slide. | |||
it brings the point home quite nicely: Rakudo has features. | |||
23:06
masak left
23:07
masak joined
|
|||
TimToady | rosettacode.org/wiki/Program_termination#Perl_6 <-- #300 | 23:09 | |
23:11
cooper left
|
|||
masak | \o/ | 23:12 | |
dalek | ecs: cdb1b72 | larry++ | S29-functions.pod: spec exit at least as well as rosettacode does :) |
23:14 | |
TimToady | okay, you guys can do the next 300 :) | ||
23:15
cotto joined
|
|||
TimToady | well, okay, I had help with the first 300 :) | 23:15 | |
well, okay, I *helped* with the first 300... | |||
Util: ^^ | 23:16 | ||
colomon: you still owe us a pi :) | 23:17 | ||
masak | ...and I had better go to bed. | 23:19 | |
'night, #perl6. | |||
TimToady | o/ | ||
23:20
cotto left,
masak left
|
|||
lichtkind | good night | 23:20 | |
lichtkind submits another wxperl bug | 23:37 | ||
jnthn | sleep & | 23:51 | |
23:53
cooper joined
|
|||
dalek | kudo/nom: ef1aecf | jnthn++ | src/Perl6/SymbolTable.pm: Cache literals that we build at compile time, so we don't build the same thing twice. Shaves ~65K off the setting PBC. |
23:53 | |
23:53
s1n left
23:54
s1n joined
23:57
whiteknight joined
|