»ö« 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:53 tokuhirom joined 00:59 wolfman2000 left 01:00 Trashlord left 01:01 Trashlord joined
moritz felher: pong 01:02
01:03 scott___ joined 01:06 havenn joined 01:16 nif left 01:19 lichtkind left 01:27 nif joined 01:30 havenn left, mucker joined
[Coke] colomon: ping. 01:34
colomon pong
[Coke] can you please update S32-trig/cos.t to emit a specific plan? 01:35
(and whatever others there are.)
pugs doesn't like the implicit plan of 'done'.
colomon hmmmm.... let me ponder 01:36
fudging those files is going to be pretty extreme, no? 01:37
[Coke] let me ask you a different question: how many tests ARE there in that file? 01:38
01:38 tokuhirom left
[Coke] (right now I'm passing 67/67) 01:39
colomon let you know in a moment
154
[Coke] p: (-5.49778714383314).Rat(1e-9).cos 01:40
p6eval pugs: OUTPUT«*** No compatible multi variant found: "&Rat"␤ at /tmp/nf_SEA_tyd line 1, column 1 - line 2, column 1␤»
[Coke] p: -5.49778714383314.Rat(1e-9).cos
p6eval pugs: OUTPUT«*** No compatible multi variant found: "&Rat"␤ at /tmp/n1jmey2khg line 1, column 1 - line 2, column 1␤»
[Coke] p: -5.49778714383314.Ra.cos
p6eval pugs: OUTPUT«*** No such method in class Rat: "&Ra"␤ at /tmp/MOoszFcb1i line 1, column 1 - line 2, column 1␤»
[Coke] p: -5.49778714383314.Rat.cos
p6eval pugs: ( no output )
[Coke] first approximation of Rat($epsilon) is to just ignore epsilon, meh? 01:41
colomon ponders a script which runs a test file and then add a proper plan statement to the top. 01:42
[Coke]: yes
[Coke] hurm. nevermind, I'll not be able to easily add that yet.
ah well, skipping this file.
colomon: nevermind. I'm not passing all the tests anyway. 01:47
01:52 godfrey999 joined 01:53 thelazydeveloper left
dalek ast: fa12fff | coke++ | S (4 files):
pugs fudge
01:53
gs.hs: 9e709ce | coke++ | t/spectest.data:
run fudged tests
01:57
mucker hi guys ... correct me if I am wrong, but is NQP a full implementation of perl6 regex ? 01:59
moritz it's not
mucker does rakudo or n have full implementation of regex ? 02:00
moritz no, there are still a few features missing
though niecza's implementation is quite impressive
mucker ok :)
[Coke] p: say "34" ~~ /\d/ 02:01
p6eval pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤ unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.20120203/blib6/pugs/perl5/lib';␤ eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime::Match::HsBridge'␤"␤*** Can't locate P…
[Coke] Urk.
02:04 plobsing joined 02:10 orafu left 02:11 orafu joined 02:20 mucker left 02:24 cognominal_ left 02:25 cognominal joined 02:47 wolfman2000 joined 02:49 nif left 02:51 lestrrat left 02:52 cognominal left 02:53 lestrrat joined, cognominal joined 03:02 envi_ joined 03:25 clkao left, clkao joined 03:41 envi_ left 03:46 cognominal left, cognominal joined 03:48 IKARi_ left 03:59 fgomez left 04:02 alvis left 04:58 y3llow left 04:59 birdwindupbird joined 05:02 araujo left 05:06 alester joined 05:21 alester left 05:23 Trashlord left 05:24 spaceships left 05:28 Trashlord joined 05:33 mos_ joined, mos_ left 05:34 bonsaikitten left 06:01 kaleem joined 06:03 xinming left 06:06 NamelessTee joined 06:13 bonsaikitten joined 06:14 wtw joined 06:15 xinming joined 06:26 cognominal left 06:28 cognominal joined 06:50 sftp left 06:51 sftp joined, fglock left, Tedd1 joined 06:56 kaleem left 06:57 araujo joined, araujo left, araujo joined 06:58 sftp left 06:59 brrt joined 07:02 sftp joined 07:06 fhelmberger joined 07:16 darkx joined 07:18 sftp left, sftp_ joined 07:20 PZt left, kaleem joined 07:26 kaleem left, kaleem joined 07:29 ZapZ left 07:33 kaleem left 07:45 kaleem joined
masak go' mo', #perl6 07:59
jnthn hi masak 08:00
moritz \o jnthn, masak, * 08:01
tadzik \o/ 08:11
moritz r: say 'tadzik' ~~ * 08:24
p6eval rakudo 442db9: OUTPUT«True␤»
moritz good, I greeted him too :-)
masak r: say * ~~ 'tadzik' 08:26
p6eval rakudo 442db9: OUTPUT«False␤»
masak r: say * ~~ * 08:27
p6eval rakudo 442db9: OUTPUT«True␤»
masak (* ~~ *)
almost looks like one of sjohnson++'s fat faces ;)
moritz that'st he True fat face :-) 08:29
r: say (* ~~ *) 08:30
p6eval rakudo 442db9: OUTPUT«True␤»
08:32 dakkar joined 08:33 fglock joined
sorear o/ masak 08:34
masak \o sorear 08:35
fglock o/ #perl6 08:36
__sri \o peer pressure 08:37
masak :P
moritz :-)
masak I find www.modernperlbooks.com/mt/2012/04/...tests.html quite interesting, not least because it manages very well to highlight a classicist's view of tests. I've seen enough of the mockist side of the story to know that there's more to it, but I haven't come down on either side of the fence yet.
and maybe I never will. different projects have different requirements. 08:38
moritz they probably have 08:39
some months back I've written WebService::Libris
and I was happy that I found a way to avoid doing either live calls over the internet while testing, or mocking 08:40
the solution was to enable a caching mechanism, and distribute the cache files
of course that didn't test the actual fetching code, but the fetching code was just one call to Mojo::UserAgent 08:41
arnsholt I have to admit I'm easily amused by chromatic's writings 08:42
08:54 cognominal left 08:55 cognominal joined 08:59 lestrrat left 09:00 lestrrat joined
masak arnsholt: if you mean he writes in a captivating manner, I agree. he's often humorously hyperbolic. 09:05
the only drawback of excessive sarcasm is that it doesn't always end up holding a position -- just stating a lot of negatives.
s/only/big/ 09:06
arnsholt Yeah, there is that
I think the best part of his writing is that he pulls of the whole "cranky, opinionated hacker" thing without swearing every other sentence 09:07
masak aye. 09:08
it's always refreshing to read the writings of someone with obvious experience. 09:09
sorear the best part of chromatic
the best part of chromatic's writing is that most of it manages to come across as a direct response to something I said in #perl6 in the last week 09:10
moritz totally different topic, and off-topic here, but I found johncarlosbaez.wordpress.com/2012/04/15/ice/ quite interesting
sorear: he surely reads #perl6 logs, at least occasionally
09:12 alvis joined
cognominal \o 09:12
moriz, in physic terms, perl 6 implementations are slowing changing from vapour to sludge? :) 09:14
moritz cognominal: some parts are already moving from sludge to solid :-) 09:15
cognominal I guess we shoot to organic.
*slowly
sorear moritz: yeah, and it makes me feel special :p 09:17
masak you are :) 09:19
moritz was about to say the same thing, but didn't
masak moritz: mini-challenge: write succinct p6 program that generates such sequences, ababcacba, of length N from the alphabet <a b c>, but where no two adjacent positions have the same letter. 09:24
sorear mind if I try? 09:25
masak go ahead.
moritz go right ahead
masak I'm writing up one too right now.
moritz too
bbkr is ababababab valid sequence? 09:26
sorear n: say join '', <a b c>.pick, { <a b c>.grep(* != $_).pick } ...^ { @_ == 10 }
masak yes.
p6eval niecza v16-21-g1b64073: OUTPUT«␤»
sorear n: say join '', (<a b c>.pick, { <a b c>.grep(* != $_).pick } ...^ { @_ == 10 })
p6eval niecza v16-21-g1b64073: OUTPUT«Unhandled exception: Cannot parse number: a␤ at /home/p6eval/niecza/lib/CORE.setting line 1363 (die @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3402 (ANON @ 10) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3404 (NumSyntax.str2num @ 4) ␤ at /h…
sorear n: say join '', (<a b c>.pick, { <a b c>.grep(* ne $_).pick } ...^ { @_ == 10 }) 09:27
p6eval niecza v16-21-g1b64073: OUTPUT«bcabacbab␤»
shachaf masak: I always heard of a similar thing wher eyou generate a position of length N such you never have two consecutive identical substrings.
I.e., no aa, no abab, no acbcacbc, etc.
By "always" I mean once.
sorear this reminds me of the word problem for computably presented groups
Thue grammars and such 09:28
moritz p6: my %complement = a => <b c>, b => <a c>, c => <a b>; say (%complement.keys.pick, { %complement{$_}.pick } ... *)[^10].join;
p6eval pugs: OUTPUT«*** unknown parse error␤ at /tmp/rtrKdOplec line 1, column 113␤»
..niecza v16-21-g1b64073: OUTPUT«cbacabacac␤»
..rakudo 442db9: OUTPUT«ababcbcabc␤»
shachaf What is that problem?
moritz shachaf: random positioning of ice layers as described in johncarlosbaez.wordpress.com/2012/04/15/ice/ 09:29
masak <masak> moritz: mini-challenge: write succinct p6 program that generates such sequences, ababcacba, of length N from the alphabet <a b c>, but where no two adjacent positions have the same letter.
09:29 darkx left
masak ok, here's my take: 09:29
shachaf I meant the thing sorear mentioned.
masak r: my $N = 20; say (((([\+] (1, 2).pick xx $N) X+ (^3).pick) X% 3) X+ ord("a"))>>.&chr
p6eval rakudo 442db9: OUTPUT«c a c a c a b c b c a b c a b a b a b a␤»
shachaf looks at ice article.
moritz I like my solution, even if the initialization is a bit wordy
masak moritz: ours are both O(N), I think. 09:30
sorear n: say {<a b c>[$_]}>>([\+] (1,2).pick(10))
p6eval niecza v16-21-g1b64073: OUTPUT«c Any()␤»
sorear n: say {(<a b c> xx Inf)[$_]}>>([\+] (1,2).pick(10)) 09:31
p6eval niecza v16-21-g1b64073: OUTPUT«a b c a b c␤»
shachaf (There exists an infinite sequence of the form I described which can be generated very simply, but it's pretty tricky to find. An easier way of generating it is just backtracking.)
sorear n: say {(<a b c> xx Inf)[$_]}>>([\+] (1,2).roll(10))
p6eval niecza v16-21-g1b64073: OUTPUT«a b c a b c a b c a b c a b c a b c a b c a b c a b c a b c␤»
sorear n: say {(<a b c> xx Inf)[$_]}>>([\+] (1..2).roll(10))
p6eval niecza v16-21-g1b64073: OUTPUT«a b c a b c a b c a b c a b c a b c a b c a b c a b c a b c␤»
sorear n: say (1..2).roll(10)
p6eval niecza v16-21-g1b64073: OUTPUT«2 2 1 1 2 2 1 1 1 2␤»
masak oh, indeed. 09:32
sorear n: say ([\+] (1..2).roll(10))
p6eval niecza v16-21-g1b64073: OUTPUT«1 3 5 6 8 10 12 14 15 16␤»
masak r: my $N = 20; say (((([\+] (1, 2).roll($N)) X+ (^3).pick) X% 3) X+ ord("a"))>>.&chr
p6eval rakudo 442db9: OUTPUT«b c b a b a b c a c b a b c b a b a c b␤»
moritz p6: my @a = <a b c>; my %c = @a.map: -> $l { $l => @a.grep({$_ ne $l}) }; say (%c.keys.pick, { %c{$_}.pick } ... *)[^10].join;
sorear n: say map (<a b c> xx Inf)[$_]}, ([\+] (1..2).roll(10))
p6eval rakudo 442db9: OUTPUT«cababacbab␤»
..niecza v16-21-g1b64073: OUTPUT«abcacbcbcb␤»
..pugs: OUTPUT«*** unknown parse error␤ at /tmp/qCmAwhBfhf line 1, column 112␤»
niecza v16-21-g1b64073: OUTPUT«===SORRY!===␤␤Unexpected closing bracket at /tmp/sxSXqG9PoI line 1:␤------> say map (<a b c> xx Inf)[$_]⏏}, ([\+] (1..2).roll(10))␤␤Parse failed␤␤»
sorear n: say map {(<a b c> xx Inf)[$_]}, ([\+] (1..2).roll(10))
p6eval niecza v16-21-g1b64073: OUTPUT«a b c a b c a b c a b c a b c a b c a b c a b c a b c a b c␤»
sorear n: say map {(<a b c> xx Inf).flat[$_]}, ([\+] (1..2).roll(10)) 09:33
moritz still wordy, but less repetitive (my solution
p6eval niecza v16-21-g1b64073: OUTPUT«c a b a b c a b c b␤»
sorear n: say join map {(<a b c> xx Inf).flat[$_]}, ([\+] (1..2).roll(30))
p6eval niecza v16-21-g1b64073: OUTPUT«␤»
moritz n: say map {<a b c>[$_ % *]}, ([\+] (1..2).roll(10))
p6eval niecza v16-21-g1b64073: OUTPUT«c b a b c a b a b a␤»
sorear n: say join '', map {(<a b c> xx Inf).flat[$_]}, ([\+] (1..2).roll(30)) 09:34
p6eval niecza v16-21-g1b64073: OUTPUT«bacbababacabcbacbabcbabacabcbc␤»
moritz I like .[$_ % *] :-)
sorear Writing Markov chains shouldn't be this hard. 09:36
moritz p6: my @a = <a b c>; say (@a.pick, -> $l { @a.grep($l ne *).pick } ... *)[^10].join; 09:37
p6eval rakudo 442db9: OUTPUT«acacacabca␤»
..pugs: OUTPUT«*** unknown parse error␤ at /tmp/griclbNPGT line 1, column 70␤»
..niecza v16-21-g1b64073: OUTPUT«bacacacacb␤»
09:37 _jaldhar is now known as jaldhar
moritz not too hard IMHO :-) 09:37
09:37 jferrero joined
moritz p6: my @a = <a b c>; say (@a.pick, { @a.grep($_ ne *).pick } ... *)[^10].join; 09:37
p6eval rakudo 442db9: OUTPUT«cabcabacab␤»
..niecza v16-21-g1b64073: OUTPUT«ababcbcacb␤»
..pugs: OUTPUT«*** unknown parse error␤ at /tmp/dWJDs31tgE line 1, column 64␤»
sorear "Why can't r and n agree on any of this?" 09:38
09:38 envi_ joined
moritz they are just non-conformists 09:38
sorear sleep
moritz r: say 3 * 2**9
p6eval rakudo 442db9: OUTPUT«1536␤»
moritz good night sorear, dream of easy markov chains
masak r: my $m = 3; say (((^$m).roll, { ($_ + 1 + (^($m-1)).roll) % $m } ... *) Z+ ord('a'))[^10]>>.&chr.join
p6eval rakudo 442db9: OUTPUT«c␤»
masak hrm.
moritz masak: X+, not Z+ 09:39
masak r: my $m = 3; say (((^$m).roll, { ($_ + 1 + (^($m-1)).roll) % $m } ... *) X+ ord('a'))[^10]>>.&chr.join
p6eval rakudo 442db9: OUTPUT«bcbcacabab␤»
masak \o/
moritz++
moritz now somebody please make a blog post, tracing each different approach through the stages shown here :-) 09:40
masak r: my $m = 3; say ^$m
p6eval rakudo 442db9: OUTPUT«0..^3␤»
masak r: my $m = 3; say ^^$m
p6eval rakudo 442db9: OUTPUT«0..^3␤»
09:42 kresike joined
masak r: my %comp; my @v = <a b c>; for map { [@v.rotate($_)] }, ^@v { .say } 09:45
p6eval rakudo 442db9: OUTPUT«a b c␤b c a␤c a b␤»
masak r: my %comp; my @v = <a b c>; for map { [@v.rotate($_)] }, ^@v { my ($k, @vs) = @v; %comp{$k} = @vs }; say %comp.perl 09:46
p6eval rakudo 442db9: OUTPUT«("a" => ["b", "c"]).hash␤»
masak huh.
r: my %comp; my @v = <a b c>; for map { [@v.rotate($_)] }, ^@v { .say; my ($k, @vs) = @v; %comp{$k} = @vs }; say %comp.perl 09:47
p6eval rakudo 442db9: OUTPUT«a b c␤b c a␤c a b␤("a" => ["b", "c"]).hash␤»
masak where did the other two entries go?
moritz erm
@v is always the same 09:48
$_ is what's changing in the loop
09:48 birdwindupbird left
moritz and you print $_ with .say 09:48
masak er... oops.
r: my %comp; my @v = <a b c>; for map { [@v.rotate($_)] }, ^@v { .say; my ($k, @vs) = @$_; %comp{$k} = @vs }; say %comp.perl
p6eval rakudo 442db9: OUTPUT«a b c␤b c a␤c a b␤("a" => ["b", "c"], "b" => ["c", "a"], "c" => ["a", "b"]).hash␤»
masak r: my %comp; my @v = <a b c>; for map { [@v.rotate($_)] }, ^@v { my ($k, @vs) = @$_; %comp{$k} = @vs }; say %comp.perl
p6eval rakudo 442db9: OUTPUT«("a" => ["b", "c"], "b" => ["c", "a"], "c" => ["a", "b"]).hash␤»
masak \o/
moritz r: my %comp; my @v = <a b c>; for @v.keys { my ($k, @vs) = @v.rotate($_); %comp{$k} = @vs }; say %comp.perl 09:49
p6eval rakudo 442db9: OUTPUT«("a" => ["b", "c"], "b" => ["c", "a"], "c" => ["a", "b"]).hash␤»
moritz feels a bit more straight-forward IMHO
masak r: my @v = <a b c>; my %comp = map { my ($k, @vs) = @v.rotate($_); $k => @vs }, @v.keys; say %comp.perl 09:50
p6eval rakudo 442db9: OUTPUT«("a" => ["b", "c"], "b" => ["c", "a"], "c" => ["a", "b"]).hash␤»
moritz I wonder... 09:51
r: my @v = <a b c>; my %comp = map { [=>] @v.rotate($_)[0, 1..*-1] }, ^@v; say %comp.perl
p6eval rakudo 442db9: OUTPUT«("a" => "b" => "c", "b" => "c" => "a", "c" => "a" => "b").hash␤»
moritz r: my @v = <a b c>; my %comp = map { [=>] @v.rotate($_)[0, 1..*-1].tree }, ^@v; say %comp.perl 09:52
p6eval rakudo 442db9: OUTPUT«("a" => ["b", "c"], "b" => ["c", "a"], "c" => ["a", "b"]).hash␤»
arnsholt I get a Rakudo spectest failure in S11-modules/require.t on Linux. Is that a known one?
moritz \o/
masak moritz: woot
moritz arnsholt: I get that too. I kinda suspect jnthn++ is to blame
it's harder to read, but sometime I like the challenge of getting rid of variables 09:53
09:53 birdwindupbird joined
moritz I wonder if .rotate(*) should return a LoL of all rotations 09:53
(and I'm only half-kidding right now)
masak r: my @v = <a b c>; my %comp = map -> @ ($k, @vs) { $k => @vs }, map { @v.rotate($_) }, ^@v; say %comp.perl
p6eval rakudo 442db9: OUTPUT«Nominal type check failed for parameter ''; expected Positional but got Str instead␤ in block <anon> at /tmp/WltNubu86u:1␤␤»
masak r: my @v = <a b c>; my %comp = map -> @ ($k, @vs) { $k => @vs }, map { [@v.rotate($_)] }, ^@v; say %comp.perl 09:54
p6eval rakudo 442db9: OUTPUT«Nominal type check failed for parameter '@vs'; expected Positional but got Str instead in sub-signature␤ in block <anon> at /tmp/AjXTqd6X9r:1␤␤»
moritz masak: you need to feed in a list of lists or list of arrays or so
otherwise @ is never happy
masak I thought that's what I did.
putting [] in the second map
moritz oh, right
hm
r: my @v = <a b c>; say (map { [@v.rotate($_)] }, ^@v).perl 09:55
p6eval rakudo 442db9: OUTPUT«(["a", "b", "c"], ["b", "c", "a"], ["c", "a", "b"]).list␤»
moritz masak: oh
masak: it fails in the subsiganture
masak: because it needs to be *@vs, not @v
masak ah, yes.
moritz *not @vs
masak r: my @v = <a b c>; my %comp = map -> @ ($k, *@vs) { $k => @vs }, map { @v.rotate($_) }, ^@v; say %comp.perl 09:56
p6eval rakudo 442db9: OUTPUT«Nominal type check failed for parameter ''; expected Positional but got Str instead␤ in block <anon> at /tmp/pNyMOiUV1n:1␤␤»
moritz it even says "in sub-signature" :-)
cognominal do you know? mathworld.wolfram.com/deBruijnSequence.html
masak r: my @v = <a b c>; my %comp = map -> @ ($k, *@vs) { $k => @vs }, map { [@v.rotate($_)] }, ^@v; say %comp.perl
p6eval rakudo 442db9: OUTPUT«("a" => ["b", "c"], "b" => ["c", "a"], "c" => ["a", "b"]).hash␤»
masak cognominal: yes, I've come across that concept. :)
cognominal I have bought "algorithm on strings". Not read yet 09:57
this one : www.amazon.fr/Algorithms-Strings-Ma...0521848997 09:58
09:59 kaleem left
masak "Cliquez pour Feuilleter!" :D 09:59
cognominal oops, I paste the amazom.fr page.
masak cognominal: for a mo I thought you meant www.amazon.com/Algorithms-Strings-T...0521585198 10:00
which was a textbook in one of my favorite courses. 10:01
cognominal I don't know why but it is trendy to have mederval covers for books on lisp or algorithms.
moritz thinks of The Art of the Meta Object Protocol :-) 10:02
10:02 kaleem joined
cognominal I suppose that, somehow, doing algorithms or lisp is specially crafty 10:04
well not in the deceiful meaning of the word. 10:05
masak as in craftmanship, yes.
10:08 daxim joined
masak or is it "craftSmanship"? probably. 10:10
moritz phenny: "handwerk"? 10:11
phenny moritz: "craft" (de to en, translate.google.com)
moritz meh :-)
10:11 scott___ left
moritz phenny: "handwerkskunst"? 10:12
phenny moritz: "craftsmanship" (de to en, translate.google.com)
masak phenny: "slöjd"? 10:13
phenny masak: "crafts" (sv to en, translate.google.com)
tadzik phenny: "rzemiosło"? 10:14
phenny tadzik: "craft" (pl to en, translate.google.com)
tadzik phenny: "rzemieślnictwo"?
phenny tadzik: "crafts" (pl to en, translate.google.com)
masak phenny: "hantverk"?
phenny masak: "crafts" (sv to en, translate.google.com)
tadzik . o O ( is there even a word like this one? )
10:22 lestrrat left 10:23 lestrrat joined
daxim "All craftsdwarfship is of finest quality." 10:28
masak sounds like Pratchett. 10:30
moritz your pratchettship is excellent :-) 10:33
10:33 wolfman2000 left
daxim lolwhat 10:34
11:21 buubot_backup left, buubot_backup joined 11:24 Timbus left
masak daxim: 你在哪里学了汉语? 11:25
11:37 JimmyZ joined 11:41 PZt joined 11:55 godfrey999 left 11:57 lloydf joined 11:59 jaffa4 joined
moritz masak: after skimming stackoverflow.com/questions/1990464...rogramming I'm sure there must be a purely functional data structure that works way better than the "obvious" approach for calculating the frequency of characters in a string 11:59
11:59 snearch joined
masak ooh 12:01
12:01 skids left
masak clearly there are things to learn here. 12:02
12:02 mucker joined 12:03 brrt left
moritz indeed 12:04
12:05 plobsing left 12:12 plobsing joined
jaffa4 hi 12:12
Where is an example how to call functions in external libraries?
jnthn jaffa4: github.com/jnthn/zavolaj has a README with examples of what it is capable of, plus the test suite is full of examples in a sense too. 12:16
star: use NativeCall; sub fork() is native returns Int { * }; say fork(); 12:17
p6eval star 2012.02: OUTPUT«26904␤»
jnthn Hm :)
moritz star: use NativeCall; sub fork() is native returns Int { * }; say fork(); say 'oh hai'
p6eval star 2012.02: OUTPUT«26908␤oh hai␤»
jaffa4 What is { * }?
moritz jnthn: might be a limitation of p6eval, not capturing subprocesses' output or so 12:18
jnthn moritz: That's my guess
masak jaffa4: it's a special form.
jnthn jaffa4: You don't have to write the *
jaffa4: The actually body of the sub is totally unimportant.
It just means "whatever" in Perl 6
So it felt apt
sub fork() is native returns Int { "OMG A DRUNK POLAR BEAR" } is fine too :) 12:19
masak o.O
jaffa4 It does not seem to work in Niecza
masak jnthn: what kind of fork() are you using? :P
jnthn jaffa4: No, it won't. 12:20
moritz niecza can't call C code (afaict), only other CLR code
and there are examples of this both in the niecza repo and on the p6 advent calendar 2011
jaffa4 other CLR code may be enough. 12:22
jnthn masak: My head is a messy place today :P
arnsholt IIRC C# (or maybe it's just .Net) has some pretty spiffy FFI facilities
So it might be possible to create a Niecza NativeCall with those 12:23
masak .oO( TODO: get brain out of messy place where instead of "OH HAI", brain emits "OMG A DRUNK POLAR BEAR"... )
moritz wow, it's the 16th day of the month, and tomorrow is a parrot release already
jnthn huh...wow
frettled masak: OMG A DRUNK SWEDE
masak acts redlös
bbkr std: my ${a} = 5; 12:26
p6eval std 3d13d53: OUTPUT«===SORRY!===␤Unsupported use of ${a}; in Perl 6 please use $a at /tmp/WsfqeL0gUw line 1:␤------> my ${a}⏏ = 5;␤Parse failed␤FAILED 00:00 40m␤»
bbkr rakudo: my ${a} = 5;
p6eval rakudo 442db9: ( no output )
bbkr hm, it did _something_ :)
bbkr reports 12:27
jnthn nom: my $a{a} = 5 12:28
p6eval rakudo 442db9: ( no output )
jnthn Hm
masak right.
jnthn I mean, I know we support
masak it probably does '(my $){a} = 5' 12:29
jnthn nom: my %h{Int}
p6eval rakudo 442db9: ( no output )
jnthn nom: my %h{a}
p6eval rakudo 442db9: OUTPUT«===SORRY!===␤Invalid hash shape; type expected␤»
masak hm, but why isn't that a CHECK-time error?
jnthn nom: my @h{a}
p6eval rakudo 442db9: OUTPUT«===SORRY!===␤Shaped arrays not yet implemented. Sorry. ␤at /tmp/n80mZdR4Yp:1␤»
jnthn nom: my $h{a}
p6eval rakudo 442db9: ( no output )
moritz nom: my $h{a}; $h = 5; say $h
p6eval rakudo 442db9: OUTPUT«5␤»
jnthn It's parsing a shape. I wonder if it then just drops it for scalars somehow.
masak sure seems that way. 12:30
bbkr so is that a bug?
12:30 tokuhirom joined
moritz yes 12:31
parsing things but then ignoring them (except comments :-) is so mysql
masak mysql doesn't ignore comments!? :P
bbkr rt.perl.org/rt3/Ticket/Display.html?id=112470 12:32
moritz masak: no, but lots of other stuff :-)
depending on the engine foreign key contraints, CHECK, UNIQUE and all the other fun stuff
masak wow. 12:33
arnsholt masak: sql-info.de/mysql/gotchas.html =) 12:36
Apparently it's not updated for 5.0 though, so some of it might actually be history by now
12:36 brrt joined
masak yeah. mysql is no longer in the set of bits of technology I automatically reach for when I need to solve a problem. 12:38
12:38 brrt1 joined
masak postgres and sqlite are. 12:39
12:41 brrt left 12:42 brrt1 is now known as brrt
jaffa4 maybe you are forgetting firebird. 12:43
JimmyZ usually uses postgreSQL
moritz jnthn: firebird is robust and has many features, but often a bit awkward to use 12:44
erm, meant jaffa4
12:44 bluescreen10 joined
moritz in particular I see no reason to use it over postgres 12:44
which also has much better perl bindings
jaffa4 It seems to be smaller in size
It has got embedded version
12:49 bluescreen10 left 12:50 bluescreen10 joined, bluescreen10 left, bluescreen10 joined
jaffa4 moritz: clear 12:54
r: eval(:lang<perl5>,'1'); 12:56
p6eval rakudo 442db9: OUTPUT«Null PMC access in find_method('compile')␤ in sub eval at src/gen/CORE.setting:450␤ in block <anon> at /tmp/DsscnwJUe9:1␤␤»
jaffa4 s: eval(:lang<perl5>,'1');
masak submits rakudobug
jaffa4 n: eval(:lang<perl5>,'1');
p6eval niecza v16-21-g1b64073: OUTPUT«Unhandled exception: System.IO.FileNotFoundException: Could not load file or assembly 'Perl5Interpreter' or one of its dependencies. The system cannot find the file specified.␤File name: 'Perl5Interpreter'␤ at System.AppDomain.Load (System.String assembly…
jnthn Wow. First NPMCA in a while. :) 12:57
masak we're pretty good at shielding ourselves from them nowadays.
12:57 _ilbot left
masak much thanks to 6model, I guess. 12:57
6model++
12:57 _ilbot joined
jaffa4 What is NPMCA? 12:58
masak Null PMC Access.
jaffa4 internal jargon 12:59
masak yeah, there was a time when we had so many of them that we got tired of saying the full name. 13:00
moritz r: say pir::null()
masak I've heard Java peeps say NPE, too.
p6eval rakudo 442db9: OUTPUT«use of uninitialized value of type Mu in string context in method Str at src/gen/CORE.setting:667␤␤use of uninitialized value of type Mu in string context in method Str at src/gen/CORE.setting:667␤␤===SORRY!===␤error:imcc:syntax error, unexpected '\n'␤ in file '(…
moritz r: say pir::null__P() 13:01
p6eval rakudo 442db9: OUTPUT«Null PMC access in find_method('gist')␤ in sub say at src/gen/CORE.setting:6482␤ in block <anon> at /tmp/x5o7v_yi5z:1␤␤»
masak packs moritz up and sends him into RT :)
13:01 benabik left
moritz waves to everybody on the way 13:02
13:04 Timbus joined
masak I put moritz in RT #112474 13:06
moritz kannot be loaded. OH NOEZ! What have you done to me? 13:07
masak I fibbed. I didn't actually.
you were too big to fit in an email attachment ;) 13:08
moritz r: 3e9 / 8 / 1024 # size of human genome in kb 13:09
p6eval rakudo 442db9: ( no output )
moritz r: say 3e9 / 8 / 1024 # size of human genome in kb
p6eval rakudo 442db9: OUTPUT«366210.9375␤»
masak that's for *one* cell.
moritz erm, modulo some constant factors :-)
13:13 mtk left 13:15 spider-mario joined 13:21 mucker left 13:24 plobsing left
masak r: say [/] 3e9, 8, 1024 13:32
p6eval rakudo 442db9: OUTPUT«366210.9375␤»
13:32 kaleem left 13:34 bacek left 13:35 PacoAir joined
jaffa4 Is it possible to enumarate enums? 13:38
[Coke] r: say Bool.pick(*) 13:39
p6eval rakudo 442db9: OUTPUT«True False␤»
[Coke] r: say Bool.enum.perl
p6eval rakudo 442db9: OUTPUT«Method 'enum' not found for invocant of class 'Bool'␤ in block <anon> at /tmp/PYD1khAgt0:1␤␤»
13:39 JimmyZ left 13:40 dakkar left
[Coke] well, there's one way, anyway. ;) 13:40
masak r: enum A <a b c d>; say A.enums.perl 13:41
p6eval rakudo 442db9: OUTPUT«("a" => 0, "b" => 1, "c" => 2, "d" => 3).hash␤»
colomon r: say Bool.list.Num
p6eval rakudo 442db9: OUTPUT«1␤»
13:41 kaleem joined
colomon r: say +(Bool.list) 13:41
p6eval rakudo 442db9: OUTPUT«1␤»
colomon :\
[Coke] r: say Bool.list 13:42
p6eval rakudo 442db9: OUTPUT«use of uninitialized value of type Bool in string context in method Str at src/gen/CORE.setting:667␤␤␤»
jaffa4 That is printing, how to enumate?
r: enum A <a b c d>; pritn A.hash; 13:43
p6eval rakudo 442db9: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&pritn' called (line 1)␤»
jnthn r: say Bool.enums.perl
p6eval rakudo 442db9: OUTPUT«("False" => 0, "True" => 1).hash␤»
jaffa4 r: enum A <a b c d>; print A.hash;
p6eval rakudo 442db9: OUTPUT«Odd number of elements found where hash expected␤ in method STORE at src/gen/CORE.setting:5781␤ in method hash at src/gen/CORE.setting:1033␤ in block <anon> at /tmp/pnmfY_FeY3:1␤␤»
jnthn [Coke]: You got "enum", not "enums" 13:44
enum A <a b c>; for A.enums -> $val { say $val }
r: enum A <a b c>; for A.enums -> $val { say $val }
p6eval rakudo 442db9: OUTPUT«"a" => 0␤"b" => 1␤"c" => 2␤»
colomon r: say Bool.enums.Num
p6eval rakudo 442db9: OUTPUT«2␤»
colomon r: say Bool.enums.Int 13:45
p6eval rakudo 442db9: OUTPUT«2␤»
colomon r: enum A <a b c>; say A.enums.Int
p6eval rakudo 442db9: OUTPUT«3␤»
masak colomon: I think +Bool.list *should* be 1.
colomon: it's mixing up levels a bit to assume an enum type object should listify to its enums.
the type object has more "integrity" than that, if you will. 13:46
colomon r: say Bool.list.perl
p6eval rakudo 442db9: OUTPUT«(Bool,).list␤»
colomon makes sense, I gues
s
13:46 kaleem left
jnthn agrees with masak 13:46
masak there's a general principle here that I can't quite put into words. 13:47
but I find APIs where objects are polymorphic and "collapse" into arrays and hashes that are completely different from the original object... slightly tiring.
better to have explicit methods and a container/containee relation. 13:48
jaffa4 r: enum A <a b c d>; print Ac;
p6eval rakudo 442db9: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&Ac' called (line 1)␤»
jaffa4 r: enum A <a b c d>; print c;
p6eval rakudo 442db9: OUTPUT«c»
masak r: enum A <a b c d>; print A::c
p6eval rakudo 442db9: OUTPUT«c»
jaffa4 SHould not it print 2? 13:49
13:49 skids joined
jaffa4 r: enum A <a b c d>; print $A::c; 13:50
p6eval rakudo 442db9: OUTPUT«use of uninitialized variable $v of type Any in string context in method Str at src/gen/CORE.setting:667␤␤»
jaffa4 r: enum A <a b c d>; print A.c;
p6eval rakudo 442db9: OUTPUT«Method 'c' not found for invocant of class 'A'␤ in block <anon> at /tmp/gwDKzZjXzw:1␤␤»
masak it's not a class or an object.
it's a package.
as to whether it should print 2, "no". 13:51
not by spec.
jnthn r: enum A <a b c d>; print +c;
p6eval rakudo 442db9: OUTPUT«2»
masak previous versions said it should. but it changed on that point.
jnthn Just numify it if you want the numeric value.
masak which I really like, because it means Bool::True stringifies to "True" :)
jaffa4 r: enum A <a b c d>; print +A.c; 13:52
p6eval rakudo 442db9: OUTPUT«Method 'c' not found for invocant of class 'A'␤ in block <anon> at /tmp/JrcjSzxQef:1␤␤»
jaffa4 r: enum A <a b c d>; print +A::c;
p6eval rakudo 442db9: OUTPUT«2»
13:52 dakkar joined
jaffa4 n: enum A <a b c d>; print +A::c; 13:53
p6eval niecza v16-21-g1b64073: OUTPUT«2»
jaffa4 n: enum A <a b c d>; print +c;
p6eval niecza v16-21-g1b64073: OUTPUT«2»
jaffa4 n: enum A <a b c d>; print ~c; 13:57
p6eval niecza v16-21-g1b64073: OUTPUT«c»
13:59 dakkar left
masak n: enum A <a b c d>; say ?c; say ?a 13:59
p6eval niecza v16-21-g1b64073: OUTPUT«True␤False␤»
14:01 NamelessTee left, lloydf left
jaffa4 r: "a"~~ rx:P5/a/; 14:07
p6eval rakudo 442db9: OUTPUT«===SORRY!===␤Adverb P5 not allowed on rx␤at /tmp/hV040YCgV9:1␤»
jaffa4 std: "a"~~ rx:P5/a/; 14:08
p6eval std 3d13d53: OUTPUT«ok 00:00 49m␤»
jaffa4 n: "a"~~ rx:P5/a/;
p6eval niecza v16-21-g1b64073: OUTPUT«Unhandled exception: Autoloading NYI␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1366 (die @ 3) ␤ at /home/p6eval/niecza/src/STD.pm6 line 4667 (Regex.tweak @ 6) ␤ at /home/p6eval/niecza/src/STD.pm6 line 500 (ANON @ 3) ␤ at /home/p6eval/niecza/sr…
masak "Autoloading"?
14:09 fsergot joined
fsergot hi o/ 14:10
14:12 wtw left, dakkar joined 14:13 kaleem joined
masak halo, fsergocie. 14:13
jak się masz? 14:14
fsergot masak: Dobrze. A Ty? :) 14:15
14:16 snearch left
masak też dobrze :) 14:17
zajęty. ale dobrze. :) 14:19
jaffa4 everybody is alright. 14:20
jnthn
.oO( if you squint hard enough, it almost looks like Slovak )
masak .oO( if you squint hard enough, you can't see stuff ) 14:21
jnthn ETOOHARD :P 14:22
masak .oO( Perl makes easy squints easy, and hard squints possible ) 14:23
fsergot masak: Great! :)
masak grabs his Polish matura diploma and runs before the Google Translate scandal unravels 14:24
14:24 plobsing joined 14:25 PacoAir left 14:32 mucker joined
tadzik did I hear Polish? 14:32
...where did you get your Polish matura diploma? 14:33
tadzik looks for his
14:39 NamelessTee joined 14:46 tokuhirom left
masak tadzik: I don't really have one. but it's fun to pretend that I know even the basics of Polish. 14:49
tadzik :)
I had fun pretending to know German on the Datev event on GPW
"Bier, ja ja, naturlich"
naturlich, I didn't understand a single word this lady was saying :) 14:50
moritz it worked pretty well :-)
tadzik I keep telling myself she didn't notice for some time :)
until I was like "uhh, do you speak English?"
masak did she? :) 14:51
14:51 mucker left
tadzik I'll probably never know :) 14:52
14:53 simcop2387 left, fsergot left 14:55 simcop2387 joined
moritz I think she thought you were drunk :-) 14:55
masak *lol* 14:57
15:04 birdwindupbird left, kresike left 15:08 fsergot joined 15:14 mucker joined
tadzik :P 15:17
15:21 att joined 15:26 kaleem left, vlixes joined 15:30 spaceships joined, bluescreen10 left 15:31 spaceships left 15:34 zpmorgan joined 15:37 benabik joined
cognominal is looking at deserialization code and find suspicious doubletons like two push string_heap, "perl6" that appear in sequence. Apparently this is not harmful, but is it useful? jnthn? 15:38
PerlJam Have you guys seen this? www.chris-granger.com/2012/04/12/li...e-concept/ 15:41
jnthn cognominal: No, but the code that eliminates dupes was causing some people segfaults. 15:43
So that optimization was backed out for the time being. 15:44
15:47 fglock left
cognominal ok 15:47
p6: my int @a; @a = (3,2); say @a[0].perl 15:49
p6eval niecza v16-21-g1b64073: OUTPUT«===SORRY!===␤␤Malformed my at /tmp/huPPHMGrl6 line 1:␤------> my⏏ int @a; @a = (3,2); say @a[0].perl␤␤Parse failed␤␤»
..rakudo 442db9: OUTPUT«Method 'STORE' not found for invocant of class 'Integer'␤ in block <anon> at /tmp/hIXsvlnc9U:1␤␤»
..pugs: OUTPUT«\3␤»
cognominal this is not new but not sure it has ever been filed as a bug. 15:50
15:50 bluescreen10 joined 15:51 Patterner left
masak r: my int @a = (3, 2) 15:51
p6eval rakudo 442db9: OUTPUT«Method 'STORE' not found for invocant of class 'Integer'␤ in block <anon> at /tmp/tJ3mC1rBJN:1␤␤»
masak r: my int @a = (3)
p6eval rakudo 442db9: OUTPUT«Method 'STORE' not found for invocant of class 'Integer'␤ in block <anon> at /tmp/x13H9zDQer:1␤␤»
masak r: my int @a = 3
p6eval rakudo 442db9: OUTPUT«Method 'STORE' not found for invocant of class 'Integer'␤ in block <anon> at /tmp/pvcw3mffBF:1␤␤»
cognominal p6: my Int @a; my $a= 1 but False; @a = ( $a,2); say ?@a[0]
p6eval rakudo 442db9, niecza v16-21-g1b64073: OUTPUT«False␤»
..pugs: OUTPUT«*** Cannot cast from VBool False to VCode (VCode)␤ at Prelude.pm line 541, column 5-16␤»
masak r: my int @a; say "alive"
p6eval rakudo 442db9: OUTPUT«alive␤»
cognominal it works great for non native types. 15:52
15:53 Psyche^ joined, Psyche^ is now known as Patterner 15:54 kaleem joined
jnthn There's already an RT for compact arrays being NYI 15:56
cognominal ok
16:05 brrt left 16:07 thelazydeveloper joined 16:08 spaceships joined
arnsholt jnthn: In bind_boxed, any good reason accessor_call(value, "type") should return NULL? 16:11
[Coke] rakudodevs: any comments on nine's threading branch? 16:13
jnthn arnsholt: Is that not missing an interp argument?
arnsholt: What what type is value?
arnsholt: It will return NULL if there's no type method, iirc. 16:14
16:14 fhelmberger left
jnthn [Coke]: I'm curious if it's able to create a thread from within a running Rakudo program and run some code on it. 16:17
[Coke]: Looks like no Windows support yet though.
arnsholt jnthn: The interp is there in my code (omitted due to laziness) 16:19
The value should be a CArray (I think), or at least that's the RHS of the bind operator in my code 16:20
16:20 att left
jnthn arnsholt: huh, you'd only call .type on an attribute meta-object 16:22
arnsholt Oh, right. That would explain a lot =) 16:23
jnthn arnsholt: If you need the type object of the value, just STABLE(value)->WHAT
16:23 alester joined, plobsing left
arnsholt Oooh. A lot easier, that 16:24
jnthn ;)
Yes, I did try to make 6model relatively nice to interact with in C-land too :)
[Coke] jnthn: yah, I was hoping maybe you could point nine at the right API for windows. ;) 16:25
bother. I can add a Rat that takes an epsilon that is ignored (pugs), but I cannot seem to invoke it. At least it's compiling now. 16:26
pugs> 3.Rat(234) 16:32
3/1
16:34 kaleem left 16:42 estrabd joined 16:48 mucker left 16:49 att joined
dalek gs.hs: adac868 | coke++ | Pugs/src/Pugs/Prim.hs:
Add .Rat($epsilon)

just ignore $epsilon for now.
Closes #16
16:49
16:51 kaleem joined, kaleem left 16:52 kaleem joined 16:53 estrabd left 16:55 PacoAir joined 16:56 estrabd joined
[Coke] \o/ 16:57
p6: say (0+2i).WHAT 16:59
p6eval rakudo 442db9, niecza v16-21-g1b64073: OUTPUT«Complex()␤»
..pugs: OUTPUT«Complex␤»
[Coke] colomon: why are there tests that have (0+2i).Complex in S32-trig ? 17:00
what is the coercion there buying us? 17:01
geekosaur was there a Gaussian integer type at one point?
colomon simplicity for the test code generator
[Coke] colomon: arglebargle. Ok.
colomon It probably can be improved. But then, Complex.Complex should be pretty darned easy to implement. ;) 17:02
[Coke] done. now I need Rat.Str 17:07
p: say 3.Rat.Str 17:10
p6eval pugs: OUTPUT«*** No such method in class Rat: "&Str"␤ at /tmp/ZEe1p2xBAe line 1, column 5 - line 2, column 1␤»
[Coke] p: say 3.Str
p6eval pugs: OUTPUT«*** No such method in class Int: "&Str"␤ at /tmp/8YD_p3IRaS line 1, column 5 - line 2, column 1␤»
17:12 dakkar left
[Coke] (and then bless, and FatRat, and asin). 17:13
colomon [Coke]++ 17:14
17:18 flussence_ joined
[Coke] I didn't say I was DOING it. :P 17:18
17:19 flussence left 17:21 thou joined 17:23 flussence_ left 17:24 flussence joined, plobsing joined
[Coke] I think we're going to end up with some failing tests here just to get all the simple math ones passing, but I think that's ok. 17:25
(ok, I am doing it. ;)
17:34 tokuhirom joined 17:35 noam left 17:37 noam joined
spider-mario what would be an idiomatic way of getting the effect of “xx” in Perl 5? 17:37
PerlJam spider-mario: ("foo") x 5 17:38
spider-mario oh, that works on lists?
thanks a lot :D
dalek gs.hs: 1f8d97f | coke++ | Pugs/src/Pugs/Prim.hs:
add Complex.Complex
17:41
gs.hs: f7180f8 | coke++ | Pugs/src/Pugs/Prim.hs:
add acos, asin
gs.hs: 740cde8 | coke++ | Pugs/src/Pugs/Prim.hs:
add basic .Str
gs.hs: 17e95c9 | coke++ | t/update_passing_test_data.pl:
(temporary?) update to show planned # of tests.
[Coke] still need a (noop is fine) bless, and a FatRat (which I'm probably just going to make an alias for Rat for now.) 17:42
17:50 thou left, kaleem left, daxim left 17:58 leprevost joined
masak geekosaur: I don't think the spec ever had gaussian ints. 18:02
geekosaur: but it's very easy to make such a type in userland. 18:03
[Coke] masak: I assumed his question was an answer to my question.
masak or you could just restrict Complex to having integral re and im parts. :)
geekosaur vaguely recalled *something* having a distinct gaussian int type, which would explain a coercion of what looked like a gaussian int to a full complex 18:04
jaffa4 I made an on-line test for Perl 6 for people. You can test yourself if you know Perl 6 well enough or not. link: tests.equinoxbase.com/test.pl
TimToady doesn't think anyone here knows Perl 6 well enough... :) 18:05
jaffa4 You excepted I guess
18:06 benabik left, benabik_ joined, benabik_ is now known as benabik 18:09 benabik_ joined, benabik left, benabik_ is now known as benabik
masak jaffa4: there seems to be checkbox interference between questions 5 and 6. I checked a box in question 5, and it was still checked in question 6. 18:09
18:09 |newbie| joined
moritz r: print [+] 1,3,4,9; 18:10
p6eval rakudo 442db9: OUTPUT«17»
|newbie| on cheating
moritz CHEATING IS TECHNIQUE 18:11
18:11 jaffa4 left
jnthn wtf, I only got 53.85%! 18:11
spider-mario the program didn’t accept “add multi in front of both” + “add multi in front of the second one”
technically, if you need to append it before both, you need to append it before the second one 18:12
;)
|newbie| I am not getting you
moritz erm, wtf 18:13
it would be nice to see a summary of what one is supposed to have done wrong
masak japhb: I got 50.64%: gist.github.com/2400447 18:14
er, jaffa4.
oh, he left.
moritz I hope @a= <1 5 7 9 10>; isn't supposed to be a valid answer
masak that question was vague.
18:14 |newbie| is now known as jaffa5
jaffa5 it is 18:14
moritz because it's not the same as 1, 5, 7, 9, 10
jaffa5 I thought it is
moritz p6: say <1 5 7 9 10>.perl
p6eval pugs, rakudo 442db9: OUTPUT«("1", "5", "7", "9", "10")␤»
..niecza v16-21-g1b64073: OUTPUT«(val("1"), val("5"), val("7"), val("9"), val("10"))␤»
jnthn I got 0% for classes. I should learn about them. :)
spider-mario jaffa5 : I’m talking about i.imgur.com/2Y1Oe.png 18:15
moritz jaffa5: well, you're wrong
masak jnthn: *lol*
jaffa5: you should check the validity of the questions I got wrong.
jaffa5: I don't know what numbers they correspond to, but you probably do.
jaffa5 It does so
moritz it's no fun to take wrong/imprecise tests
jaffa5 I tried to make it precise 18:16
masak you're getting feedback now.
it needs more precision.
jaffa5: here's what's funny about jnthn getting 0% on classes: he is the guy who took S12 (about OO) and implemented it more or less single-handedly in Rakudo. what's your estimation that your quiz is right and he's wrong? :) 18:18
jaffa5 no, the program says that
kill the program
moritz r: say 1.WHAT.^name 18:19
p6eval rakudo 442db9: OUTPUT«Int␤»
jnthn Yeah, I ticked that as avlid
masak jaffa5: could you publish the "correct" answers somewhere? that's easier than a bunch of us reverse-engineering them. 18:20
jnthn and the 1.^name
masak jnthn: me too.
moritz jnthn: I know
jnthn goes to eat stuff, back in a bit. Probably with a tuit or two :)
18:20 jaldhar left, jaldhar joined
jaffa5 jif you publish the correct answer, it is not going to be a test anymore 18:21
masak takes some deep breaths
moritz well, if you miscredit answers it's not a test either
masak jaffa5: but we have strong reason to believe that some of the answers you put in there are wrong.
cognominal jnthn, I have refreshed blizkost. It passes tests. The diff : gist.github.com/2400493 18:22
masak jaffa5: for all the reasons stated above.
jaffa5 I will extend it , so that it will explain the right answers and the bad ones
masak jaffa5: sounds good. but that's just a complicated version of showing us the answers directly.
moritz r: constant %h = (a => 1, b => ").hash
p6eval rakudo 442db9: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix => instead at line 1, near " \").hash"␤»
moritz r: constant %h = (a => 1, b => 2).hash
p6eval rakudo 442db9: ( no output )
masak still, better than nothing.
moritz r: constant %h = (a => 1, b => 2).hash; say %h.perl
p6eval rakudo 442db9: OUTPUT«("a" => 1, "b" => 2).hash␤»
moritz r: constant %h = (a => 1, b => 2).hash; INIT { say %h.perl } 18:23
p6eval rakudo 442db9: OUTPUT«("a" => 1, "b" => 2).hash␤»
moritz wow, when has that been fixed?
masak was it once broken?
moritz yes
masak r: constant %h = (a => 1, b => 2).hash; CHECK { say %h.perl }
p6eval rakudo 442db9: OUTPUT«("a" => 1, "b" => 2).hash␤»
moritz there used to be no way to create a hash at compile time
masak r: constant %h = (a => 1, b => 2).hash; BEGIN { say %h.perl }
p6eval rakudo 442db9: OUTPUT«("a" => 1, "b" => 2).hash␤»
masak wow!
that's really early!
moritz r: constant %h = (a => 1, b => 2); CHECK { say %h.perl }
p6eval rakudo 442db9: OUTPUT«("a" => 1, "b" => 2)␤»
moritz that's still wrong though 18:24
masak aye.
moritz (RT #111944)
masak r: constant Int $x = 42; CHECK { say $x }
p6eval rakudo 442db9: OUTPUT«===SORRY!===␤Missing initializer on constant declaration␤at /tmp/kECJtXbY5E:1␤»
masak heh?
std: constant Int $x = 42; CHECK { say $x }
p6eval std 3d13d53: OUTPUT«===SORRY!===␤Missing initializer on constant declaration at /tmp/QJRFBJ3vw_ line 1:␤------> constant Int ⏏$x = 42; CHECK { say $x }␤Two terms in a row at /tmp/QJRFBJ3vw_ line 1:␤------> constant Int ⏏$x = 42; CHECK …
moritz it parses it as (constant Int) # missing initiliazer
masak oh!
r: constant $x = 42; CHECK { say $x } 18:25
p6eval rakudo 442db9: OUTPUT«42␤»
18:25 leprevost left
masak r: my constant Int $x = 42; CHECK { say $x } 18:25
p6eval rakudo 442db9: OUTPUT«===SORRY!===␤Missing initializer on constant declaration␤at /tmp/s023c8tcIq:1␤»
masak there's no way to type constants?
moritz nope
18:26 jaldhar left
jaffa5 masak: not sure about what you wrote earlier... it is just a compilcated way of showing answers directly? 18:26
all tests are like that
[Coke] jaffa5: he's trying to help you improve the quality of your test. You're making it difficult.
masak jaffa5: I/we believe you got some of the answers wrong when you created the test. 18:27
[Coke] If you don't want the core team to help you fix your test so that it's correct, that's fine, but I'm not sure what your expectation here is.
jaffa5 masak: ok
masak jaffa5: I've already taken the test. you're not spoiling it for me. take any measures you feel are necessary to hide the answers from others but show them to me.
if not, you are indeed making it difficult for me to help you. 18:28
jaffa5 ok, wait a sec
masak [Coke]++ # diplomacy
18:29 uvtc joined 18:32 thou joined
uvtc Hi #perl6. Can anyone tell me how to fix this: paste.pocoo.org/show/582533/ ? 18:34
jnthn cognominal: You already have a commit bit there :) 18:35
cognominal ok 18:36
18:36 lichtkind joined 18:37 leprevost joined
moritz uvtc: you probably want curly braces after the =>, not [ 18:40
spider-mario (the outer =>)
uvtc Ah, that got me further. Thanks, moritz. 18:41
In all the examples of hashes I've seen so far, they always look like this: `my %h = 'a' => 1, 'b' => 2;`. That is, no commas, and no curlies required. What do the curlies do (in the context here)? 18:42
moritz uvtc: in 'my %h = ...', it's the assignment to a hash variable that creates the hash. If you don't do that, you need { ... } to create a hash 18:43
a => 1, b => 2 per se is just a list of Pair objects
uvtc (Oh, nice. Also, just had to change the "append" to "push", and everything works. :) )
moritz, Oh, of course. Thanks! 18:44
lichtkind uvtc: hai , yes i was not that responsive but i hope it gets better soon
uvtc lichtkind, hi. 18:46
lichtkind, Did you have a look at the generated html?
lichtkind, Oops. Sorry, should take this offline. 18:47
jaffa5 spider-mario: I added the word "only" to the cases you found unclear.
uvtc lichtkind, re responsiveness, n/p 18:48
cognominal now, I will try to see why panda does not install zavolaj 18:50
"not in the ecosystem" 18:51
blatant lie 18:53
[Coke] seen au? 18:55
aloha au was last seen in #perl6 1 days 9 hours ago saying ". o O ( whetstones )".
[Coke] p6: say sin(3).Rat 18:56
p6eval pugs: OUTPUT«0.141120008059867213523475015790609177202␤»
..niecza v16-21-g1b64073: OUTPUT«0.14111922141119221␤»
..rakudo 442db9: OUTPUT«0.141119221411192␤»
[Coke] p6: say sin(3).Rat.perl 18:57
p6eval rakudo 442db9: OUTPUT«58/411␤»
..pugs: OUTPUT«5084384125703515/36028797018963968␤»
..niecza v16-21-g1b64073: OUTPUT«<58/411>␤»
[Coke] I'd say that's pretty Fat(Rat).
au [Coke]: I'm fading fast, after staying up a night translating allisonrandal.com/2012/04/15/open-s...ghtenment/ into gist.github.com/2400315 18:58
but please feel free to typeahead anything you'd like me to help with :)
18:59 GlitchMr joined, sporous left, sporous joined
masak ooh, 繁體字! 19:02
spider-mario ~glitchmr@….adsl.inetia.pl
.pl? :D 19:03
cognominal how can I get the whole stack trace when I get : use of uninitialized value of type Command in string context in method Str at src/gen/CORE.setting:667
GlitchMr spider-mario, yes
spider-mario that sounds appropriate
moritz cognominal: CONTROL { say $!.backtrace.nice }
masak cognominal: --ll-exception ?
moritz or .full if you're a bit more paranoid
cognominal masak++ moritz++ 19:04
moritz r: CONTROL { say $!.backtrace.nice }; ~Any
p6eval rakudo 442db9: OUTPUT«Method 'backtrace' not found for invocant of class 'Any'␤ in block <anon> at /tmp/3Z_eGnRUwI:1␤␤»
moritz r: CONTROL { say .backtrace.nice }; ~Any
p6eval rakudo 442db9: OUTPUT« in method Str at src/gen/CORE.setting:667␤ in method Stringy at src/gen/CORE.setting:674␤ in sub prefix:<~> at src/gen/CORE.setting:957␤ in block <anon> at /tmp/9cpXsFcUB0:1␤␤use of uninitialized value of type Any in string context in method Str at src/gen/CO…
moritz cognominal: sorry, $_ not $!
I *always* do that wrong 19:05
19:06 birdwindupbird joined 19:07 tokuhirom left
uvtc At some point did Perl 6 support calling fn's with a colon, as in `my-func: 3`? 19:10
moritz that's the so-called "indirect method syntax"
tadzik doesn't it now?
moritz it's specced, but rakudo doesn't implement it 19:11
masak std: use MONKEY_TYPING; augment class Int { method my-func {} }; my-func: 5
p6eval std 3d13d53: OUTPUT«Compiled lib/MONKEY_TYPING.pm6␤ok 00:00 41m␤»
TimToady p6 has never specced *functions* with colons that I can recall
tadzik ha! The use of uninitialized value of type Command in string context in panda comes from gen-usage() 19:12
tadzik tries a fix 19:13
uvtc Well, that's what's strange. In this script paste.pocoo.org/show/582562/ , it works. But in this one paste.pocoo.org/show/582565/ it gives me an error.
That little script gives me:
===SORRY!=== 19:14
Confused
at ./bar.pl6:1
TimToady after all, a function with a colon is indistinguishable from a label
moritz uvtc: yes, as I said, rakudo doesn't implement it
and, as also said, it would call a method, not a subroutine
cognominal I have an account on feather but lost the password. how can I reset it?
moritz cognominal: I can do that for yuo
19:14 Chillance joined
cognominal thx 19:15
uvtc moritz, Oh, I didn't catch the difference there between method & function. Thanks.
moritz cognominal: erm, what's your username on feather?
TimToady masak: note that my-func: 5 is a label followed by a Useless use of constant 5
cognominal moritz: "cognominal" if the account still exists.
[Coke] au: it would be awesome if you could setup a bless() function that would either 1) do what t/spec/S32-trig/sin.t needed it to do, or, barring that, 2) complete without throwing an exception.
moritz cognominal: no such account or home directory. So I guess the account doesn't exist 19:16
[Coke] I may try to hack at it again (for #2) later tonight.
uvtc TimToady, If the function calling syntax doesn't allow the colon, why bother having method calling honor it? 19:17
masak TimToady: is it always a label if it's \w ':' first in a statement?
cognominal moritz, I have not used in years so I am not surprised it has been removed.
TimToady because a function can be a listop without it, but a method can't
moritz cognominal: then contact Juerd to get a fresh account
I think instructions are on feather.perl6.nl/
moritz still remains highly suspicious of the indirect method syntax 19:18
cognominal moritz, thx
TimToady masak: yes, provided the ':' isn't part of some longer token
moritz though that was methodname $invocant: rest, of, args, right?
masak oh, right. 19:19
TimToady yes, it's quite unambiguous, at least compared to P5
masak std: use MONKEY_TYPING; augment class Int { method my-func {} }; my-func 5:
p6eval std 3d13d53: OUTPUT«ok 00:00 42m␤»
jnthn wonders what it'd take to parse it.
masak \o/
std: my-func 5:
p6eval std 3d13d53: OUTPUT«ok 00:00 42m␤»
jnthn (In Rakudo)
masak heh, it's a method call. don't need to declare the method :P
TimToady here's all it does: look to see if the first comma is really a colon, and if so, it's an invocant
easy peasy 19:20
jnthn Hm.
You almost make it sound like LHF... :P
jnthn will take a peek once he's done with the last pseudo-packages
moritz std: m 5: 7: 1
p6eval std 3d13d53: OUTPUT«===SORRY!===␤Alphanumeric character is not allowed as delimiter at /tmp/lWdqcAvrWD line 1:␤------> m ⏏5: 7: 1␤Parse failed␤FAILED 00:00 40m␤»
moritz std: mymethod 5: 7: 1
p6eval std 3d13d53: OUTPUT«===SORRY!===␤Illegal use of colon as invocant marker at /tmp/hAwYe8LmLX line 1:␤------> mymethod 5: 7:⏏ 1␤Check failed␤FAILED 00:00 42m␤»
masak std: a b 2: 5: 19:21
p6eval std 3d13d53: OUTPUT«===SORRY!===␤Illegal use of colon as invocant marker at /tmp/Sl2YzfHtac line 1:␤------> a b 2: 5:⏏<EOL>␤Undeclared routine:␤ 'a' used at line 1␤Check failed␤FAILED 00:00 42m␤»
masak std: a b 2: :
p6eval std 3d13d53: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix : instead at /tmp/3PSfVdZGm8 line 1:␤------> a b 2: ⏏:␤Parse failed␤FAILED 00:00 42m␤»
masak std: a (b 2:):
p6eval std 3d13d53: OUTPUT«ok 00:00 42m␤»
jnthn std: 1 : 2
p6eval std 3d13d53: OUTPUT«===SORRY!===␤Illegal use of colon as invocant marker at /tmp/AFKPy5e3ZO line 1:␤------> 1 :⏏ 2␤Check failed␤FAILED 00:00 41m␤»
jnthn ...infix : ? 19:22
TimToady yes, parsed as a fancy comma
that easily-peasily turns into an invocant marker
uvtc syntactic cologne
skids groan
19:23 samlt joined, plobsing left
jnthn :P 19:24
TimToady it's also one of the many motivations for turning ?: into ??!!, or that : would be ambiguous
jnthn aye
uvtc skids, it's my understanding that #perl6 participants are allowed one awful joke and/or pun per diem. So, there, I've used mine up. 19:25
moritz right, more puns are forbidden, by punishment of Nil
:-)
skids uvtc: that one was bad enough to get expropriated, congrats. 19:27
TimToady
.oO(syntactic Köln)
19:28
uvtc If you're going out on the town with a fancy comma, you need the cologne. [ducks]
masak .oO( syntactic line of pillars )
TimToady though, since it's really rewriting the AST, it's more like semantic cologne... 19:29
masak arborial cologne. 19:30
moritz macrologogne
uvtc Not sure if it was noticed before, but the error I get for trying to use the colon with a function call always tells me the problem is at line 1, regardless of where the offending cologne is.
masak Perl 6 parsers are so slow, they just assume they're still on line 1 :P 19:31
TimToady perl6: my Int constant $x = 42; 19:33
p6eval pugs: OUTPUT«*** ␤ Unexpected "constant"␤ expecting ":" or "("␤ at /tmp/2AF2hBpHgo line 1, column 8␤»
..rakudo 442db9: ( no output )
..niecza v16-21-g1b64073: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/2yqY46vNUS line 1:␤------> my Int constant $x ⏏= 42;␤␤»
TimToady perl6: my Int constant $x = 42; say $x
p6eval pugs: OUTPUT«*** ␤ Unexpected "constant"␤ expecting ":" or "("␤ at /tmp/_1VGr1BLr3 line 1, column 8␤»
..rakudo 442db9, niecza v16-21-g1b64073: OUTPUT«42␤»
TimToady perl6: constant $x of Int = 42; say $x
p6eval pugs: OUTPUT«*** ␤ Unexpected "of"␤ expecting "?", "!", trait, "=", infix assignment or operator␤ at /tmp/jjSGyp06Vb line 1, column 13␤»
..rakudo 442db9, niecza v16-21-g1b64073: OUTPUT«42␤»
TimToady sure you can type constants
jnthn constants
.oO( gee, I can! )
19:34
TimToady see!
jnthn fwiw, I'm not entirely sure Rakudo pays any attention to the "of" form
Actually...
19:34 FACEFOX left
jnthn How does the "of" form work? :) 19:34
There's no container to apply the trait to... 19:35
TimToady and yet there is a declarand
jnthn hehe
multi trait_mod:<of>(Mu $value, Mu:U $type) { $value ~~ $type or die "Type check failed ..." } 19:36
...no. :)
Maybe there needs to be a ConstantDeclarand meta-object or something. 19:37
Otherwise implementing export will be a problem too as we need to convey the name.
TimToady the "constant" keyword lives in the 'sub' slot, so maybe that's a hint
jnthn Well, for a sub we pass a Sub object. 19:38
But constants aren't invokable in any sense, so I'd not expect it to be anything that's ~~ Code
moritz std: constant a = 3; &a
p6eval std 3d13d53: OUTPUT«ok 00:00 43m␤»
TimToady though STD distinguishes type_declarator from routine_declarator, but they both are parsed at the same point
moritz std: &a 19:39
p6eval std 3d13d53: OUTPUT«===SORRY!===␤Undeclared routine:␤ 'a' used at line 1␤Check failed␤FAILED 00:00 42m␤»
jnthn finds that std result bothersome
nom: constant a = 3; say a; say &a 19:40
p6eval rakudo 442db9: OUTPUT«3␤Nil␤»
TimToady remember STD installs & variants for types so that you can talk about coercions as nouns 19:41
jnthn Ah, for Int('eresting') ?
OK
TimToady std: &Int
p6eval std 3d13d53: OUTPUT«ok 00:00 42m␤»
masak I believe this to be an autopun: twitter.com/dwineman/status/191950031409000448 19:42
moritz calls the autopunpolice
felher moritz: I implemented a few typed exceptions similar to those that are already in IO.pm. The problem is they return Nil and die if something went wrong. Seems quite a few spectest require the funcitons i wanted to implement to return Failure or True. Whats the way to go? Implement the new with True/Failure and keep those that alreay have typed exceptions as they are? Rewrite the old to not die with a typed 19:44
exception but return True/Failure instead?
19:44 wooden_ left
uvtc I think I recall heredocs being discussed here recently. That they're specced (<perlcabal.org/syn/S02.html#Heredocs>) but not yet implemented. Why does Perl 6 spec heredocs instead of using a multi-line quoting syntax (for example, Python's triple quotes)? 19:44
TimToady because Python's triple quotes suck 19:45
19:45 fgomez joined, fgomez left, fgomez joined
TimToady and they are implemented in niecza 19:45
sjohnson *gasp*
uvtc What about them sucks?
masak I thought triple quotes were for documentation.
19:45 sivoais left
geekosaur no, they actually poduce strings; just happens a string in void context works as documentation (compare Lisp) 19:46
TimToady the point of heredocs is to use the line sequence out-of-band to the character sequence
triple quotes, besides being ugly and inflexible, don't do that 19:47
19:47 sivoais joined
uvtc TimToady, I agree that using 3 quote marks together to mean a "quote" is ... not pretty. 19:48
TimToady so you end up having to violate end-weight considerations to put any extra little arguments way down at the end
pragmatically, heredocs are about end-weight
19:49 benabik left
TimToady process( q:to/END/, 2, 3 ); # let's you finish the thought with a promise of the first argument 19:50
*lets
uvtc TimToady, Oh. Right. That explanation sticks nicely. Thanks.
TimToady and the fact that it's difficult to implement just reinforces the fact that Perl is designed to torment the implementors rather than the users 19:51
n: say q:to/END/, 'done';␤ Indented stuff.␤ END␤ 19:53
p6eval niecza v16-21-g1b64073: OUTPUT«Indented stuff.␤done␤»
TimToady niecza++ # implements trimming
masak n: say q:to/END/, 'done';␤Oops, forgot to indent! Silly me.␤ END␤ 19:54
p6eval niecza v16-21-g1b64073: OUTPUT«Oops, forgot to indent! Silly me.␤done␤»
masak that's wrong, I think.
TimToady only if you think like a masak
masak .oO( bug! bug! bug! ) 19:55
masak .oO( say it's a bug! come on! )
geekosaur *files a masakbug*
TimToady It might warrant a warning, but chopping non-whitespace off the front could be construed as needlessly unforgiving
masak I meant more like, shouldn't the text itself be at least as indented as the end marker? 19:57
I always thought so.
TimToady in fact, this is discussed at S02:4321
colomon spec++ 20:00
masak oh. only a warning. 20:02
I think a warning might be too mild there.
TimToady I'll let you off this time. 20:03
20:04 leprevost left, GlitchMr left
masak but I don't hold that opinion strongly enough to get on the barricades, or blitz-patch the spec. :) 20:04
TimToady well, you may s/may/must/, if you must 20:05
nap & 20:08
masak can I do s/warning/fatal warning/, too? :P 20:10
20:11 benabik joined 20:12 spider-mario left
masak putting the end marker at a deeper indentation level than some of the text signifies a deep confusion which should probably be addressed before the program is run anyway. 20:12
20:13 spider-mario joined
masak it's close to choosing the wrong string delimiter at the end of a string. 20:13
20:16 sivoais left 20:18 plobsing joined 20:20 sivoais joined 20:23 sivoais left, sivoais joined 20:24 att left
dalek kudo/nom: f05a64d | moritz++ | src/core/Exception.pm:
class X::TypeCheck (not yet used)
20:37
moritz felher: sorry, missed your question earlier. Return True or die seems like a reasonable approach 20:38
harmonizing the tests also seems reasonable 20:39
20:39 att joined 20:40 samlt left
felher moritz: shall i rewrite the Copy and Rename to do True/die instead of Nil/die too? 20:40
moritz felher: yes, please
felher moritz: kk, will do :)
moritz is excited that he isn't the only one anymore who takes care of such stuff
20:41 jferrero left
jnthn felher++ 20:42
lichtkind moritz: i know that feeling :) 20:43
20:44 lichtkind left 20:45 bacek joined, lichtkind joined, benabik left, raiph joined
moritz jnthn: fwiw it seems to be impossible to create a constant hash inside the setting, or to create a non-constant hash and then use it inside an INIT block 20:45
felher \o/ :) 20:46
moritz: i will still ask you if something goes wrong and you probably still have to review my patches :) 20:47
+though
moritz felher: that's the way it always starts
felher moritz: okay then :) 20:48
moritz jnthn: gist.github.com/2401418 that's what happens if I try
code like constant $x = ( 'X::TypeCheck' => sub ($operation, $got, $expected) { X::TypeCheck.new(:$operation, :$got, :$expected).throw },).hash; 20:49
jnthn Hmm
.oO( circularity sore )
moritz is it normal for all those setting routines to show up as nqp;Perl6;World;prefix:<!> in the backtrace? 20:50
not all, only some of them, it seems
jnthn That seems decidedly odd. 20:51
oh, no
It's not.
moritz or even more precisely, most seem to come up twice, once with and once without that prefix
jnthn It's jsut a side-effect of the dynamic compilation
Yeah
There's various bits of thunkery going on as it discovers stuff it's gotta run off and compile.
Are you doing this after Hash is fully defined? 20:52
moritz yes
this is in Exception.pm
which comes after Hash.pm
raiph took jaffa's test; got 46%; was disappointed; then saw scores of jnthn and masak... ;)
phenny raiph: 15 Apr 20:08Z <lichtkind> tell raiph thanks a lot uvtc is also currently helping me to decide but nothing final yet
moritz raiph: I was somewhere around 50% too 20:53
lichtkind raiph: hai
moritz anyway, sleep time for me 20:54
zZzZz 20:55
raiph gnight moritz
20:56 birdwindupbird left
lichtkind gut nacht 20:56
20:58 benabik joined
jnthn 'night, moritz 20:58
21:00 uvtc left 21:02 orafu left, orafu joined
masak sweet sleeply, moritz. 21:03
21:03 skids left
masak p6: say "salmon live in trees and eat pencils".Bool 21:06
p6eval pugs: OUTPUT«1␤»
..rakudo 442db9, niecza v16-21-g1b64073: OUTPUT«True␤»
21:06 envi_ left
dalek kudo/nom: ef6fe01 | jnthn++ | src/ (2 files):
CORE, SETTING and UNIT.
21:09
ast: fa50707 | jnthn++ | S02-names/pseudo.t:
Unfudge.
benabik masak: Maybe we should hook up Str.Bool to a natural language processor so it can evaluate the truth of the statement. 21:10
masak I see absolutely no philosophical hurdles with that.
or even technical ones.
dalek kudo/nom: 1501f51 | jnthn++ | docs/ChangeLog:
Update ChangeLog a little.
21:16
lichtkind raiph allright just tell me when you have time 21:23
21:24 plobsing left, bluescreen10 left
dalek kudo/nom: c4f9b1b | jnthn++ | docs/ROADMAP:
Remove various completed ROADMAP items.
21:24
21:26 spider-mario left 21:28 huf_ is now known as huf 21:31 mdupont left 21:33 fsergot left
tadzik there is something abnormally satisfying in writing tests for Test:: modules 21:37
masak yo dawg.
I expect it's the same thrill as writing a bootstrapping compiler. 21:38
tadzik I herd you like tests? ok()? ok()? ok()?
masak :P
so I put some tests in your tests: ok(ok(ok())) 21:39
tadzik giggles
tadzik wonders if github.com/tadzik/IO-Capture-Simpl...asic.t#L10 is even correct 21:40
21:40 bluescreen10 joined
masak can you formulate a falsifiable hypothesis such that if it's not correct, you'd find out? 21:42
21:42 benabik left 21:43 brrt joined
tadzik possibly 21:43
I can break this tests, yes 21:44
masak sounds like a good idea. 21:47
21:48 att left, ggoebel left 21:49 snearch joined 21:51 jaffa5 left, PacoAir left 21:52 ggoebel joined
felher masak: was your question about a falsifiable hypothesis about something special or just a question to the world/channel/tadzik? :) 21:56
Tene felher: responding to tadzik 21:57
felher Tene: thanks :)
tadzik good knight #perl6 22:01
22:01 fgomez left, fgomez joined, NamelessTee left
felher o/ 22:05
22:06 mdupont joined 22:18 Araq joined 22:23 plobsing joined, localhost left 22:25 localhost joined
jnthn 'night o/ 22:26
22:37 Chillance left
lichtkind good night 22:49
sorear good * #perl6 22:58
sjohnson hi
:) 23:00
everyday i learn multiple things about perl5, it almost makes me wonder if i'll be able to to undertake learning perl 6 23:01
23:20 ilogger2 joined, ChanServ sets mode: +v ilogger2 23:24 Moukeddar joined 23:35 Moukeddar left
lichtkind vlixes: indeed :) 23:42
mayne said that :)
many
the perl 6 teblets are aimed to be an easy learnign
learning
23:57 tokuhirom joined 23:58 whiteknight joined