Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-05-04

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:04 berekuk joined #perl6
00:04 TimToady std: .push &fork
00:04 camelia std fa59c1b: OUTPUT«[31m===[0mSORRY![31m===[0m�Function name &fork not allowed in infix position at /tmp/4He0L8KfIJ line 1:�------> [32m.push [33m�[31m&fork[0m�Check failed�FAILED 00:00 42m�»
00:18 berekuk joined #perl6
01:12 MrMeek-afk joined #perl6
01:13 woosley1 joined #perl6
01:26 FROGGS_ joined #perl6
02:30 diakopter PerlJam: hi
02:34 orafu joined #perl6
03:04 am0c joined #perl6
03:08 jaldhar joined #perl6
03:32 tangentstorm joined #perl6
03:54 preflex joined #perl6
04:10 skids joined #perl6
04:23 skids joined #perl6
04:25 Psyche^ joined #perl6
04:30 DarthGandalf joined #perl6
04:35 adu joined #perl6
04:36 adu FROGGS_: interesting
04:37 REPLeffect joined #perl6
04:58 skids joined #perl6
05:09 DarthGandalf joined #perl6
05:18 thou joined #perl6
05:34 _ilbot joined #perl6
05:34 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org/ | UTF-8 is our friend!
06:04 dmol joined #perl6
06:10 am0c joined #perl6
06:26 dmol joined #perl6
06:30 raiph http://blogs.perl.org/users/perl_6_reports/2013/05/perl6-summary-for-april-25th---may-1st.html
06:52 moritz raiph: note that irclog.perlgeek.de is up again
06:53 sorear yay!!
06:54 sorear wow, the new server is MUCH faster
06:54 moritz that's curious, because it only has 1/4th of the memory of the old one, and one instead of four CPUs
06:54 moritz and is virtual, whereas the old one was "real" hardware
06:55 moritz but maybe using a newer version of mysql helps
06:55 raiph great to hear it's up
06:55 moritz raiph++ # nice summaries
06:55 raiph it's not responding (yet) for me
06:55 moritz raiph: what IP does the domain resolve to?
06:56 moritz might still have the old IP in DNS
06:56 moritz should be 213.95.21.23
06:57 raiph yeah, old ip presumably (213.95.10.24)
06:58 sorear moritz: is it possible that dumping and reloading the database caused it to be stored better?
06:59 moritz raiph: until all the DNS caches are flushed, you can put an entry into your /etc/hosts, or resolve via nameserver 213.239.254.194
07:00 moritz sorear: I have no idea. I think a RDBMS isn't supposed to suffer from that kind of problem, but then again it's mysql, so all bets are off :-)
07:03 dmol BTW, Wikipedia has switched from MySQL to MariaDB recently
07:03 moritz I guess I will when Debian makes the switch
07:04 moritz do the mariadb folks care more about standard compliance and data validation than mysql?
07:04 pecastro joined #perl6
07:06 dmol moritz: mariadb is designed as drop-in replacement for mysql, and it is compatible with the later on the protocol level
07:06 moritz right. Which probably means "no"
07:07 dmol And I don't believe in the future of mysql under the veil of Oracle :)
07:11 * tangentstorm runs off to write his own database...
07:11 moritz tangentstorm: don't, just use postgresql :-)
07:11 moritz (unless you have *very* specific needs)
07:12 tangentstorm i was kind of trying to be funny... but i actually am writing a database. :)
07:12 moritz tangentstorm: now I'm curious. Why?
07:13 tangentstorm That is a deep question. :)
07:13 * moritz has time
07:14 moritz to read your deep answer, I mean :-)
07:15 tangentstorm Do you have any guess as to why programmers implement their own versions of things in general?
07:16 tangentstorm besides just for fun/learning i mean
07:16 moritz 80% "Not Invented Here"-syndrome, 20% didn't find anything that fit their needs
07:17 * tangentstorm wonders which of those applies to perl6... :)
07:17 moritz both, of course :-)
07:18 tangentstorm What do you think causes NIH?
07:19 rindolf joined #perl6
07:19 moritz hubris, lack of domain knowledge which makes people believe they can do better than existing solutions
07:20 tangentstorm Hrm... Both of those are pretty good causes.
07:20 moritz there are lots of other reasons, but those tend to be most common ones
07:20 moritz I've heard that google is very "good" at NIH
07:21 tangentstorm I've noticed a pattern where people will go and look at other implementations, really want to use them, and and come away saying all the implementations are terrible.
07:21 tangentstorm which i guess is your 20%
07:22 tangentstorm they don't really say terrible... they say bloated or messy or whatever.
07:22 moritz for the sake of propriety I should add that I don't have quantitive data to support that 80%/20% divide
07:22 tangentstorm well you hang out here. they say all the things they say about parrot.
07:22 moritz well, I don't really disagree
07:22 sorear aka, dunning & kreuger
07:22 moritz but then again when parrot was started, there weren't many VMs for dynamic languages at all
07:24 tangentstorm sorear: yes, but people who are suffering from overestimating their abilities aren't actually going to be able to make something :)
07:24 moritz tangentstorm: so, are you going to tell my why you write your own database? I'm still curious :-)
07:24 moritz (and if the answer is NIH, I won't think negatively about you; I've done it often enough myself)
07:25 tangentstorm no it's part of solving the problem that i believe causes NIH
07:25 tangentstorm but also NIH :)
07:25 lizmat -OFun and -Olearning may also be involved?
07:26 tangentstorm fun and learning have definitely been involved. :)
07:26 * lizmat looks back and sees tangentstorm just said that
07:26 * tangentstorm learned all about b+ trees :)
07:27 tangentstorm new question: have you ever had the experience of looking up some obscure math term on wikipedia?
07:27 sorear yes
07:27 moritz yes
07:28 tangentstorm if not, the hodge conjecture's a good place to start :D
07:28 sorear https://meta.wikimedia.org/wiki/Reading_level look for landscape gardening
07:29 sorear hodge conjecture isn't terrible obscure
07:29 tangentstorm :D
07:29 sorear I mean I have no idea what it is but it must be pretty famous and important if there's a prize for it :P
07:29 tangentstorm sure because of the prize... but every word in the definition of the problem is (to me) complete gibberish :)
07:30 tangentstorm even the guy on the official video for the prizes is like ... how the heck am i supposed to even give you a frame of reference for this thing?!?
07:31 tangentstorm so it's obscure to begin with, but the actual problem doesn't have to be obscure.
07:31 tangentstorm you could be looking at any densely linked site... like tvtropes or something (warning: people routinely get lost for hours in there)
07:31 tangentstorm basically just any time you're trying to approach understanding a complicated graph structure
07:31 sorear I understood the first sentence of that article.
07:32 bonsaikitten tangentstorm: re: "all implementations are terrible" - most code is bad, and we underestimate effort
07:32 sorear I know what algebraic varieties are, and I know what algebraic topology is... and they (superficially) have nothing to do with each other
07:32 bonsaikitten so you end up at the conclusion "it'll be faster for me to write this from scratch"
07:32 xinming_ joined #perl6
07:33 masak we know. this is #perl6 ;)
07:33 tangentstorm bonsaikitten: if you think about the things that make code bad, you'll see that wikipedia's math pages suffer from the same problems
07:33 sorear although non-singular algebraic varieties tend to be very nice topological spaces, as such things go
07:33 bonsaikitten tangentstorm: biggest problem: most coders are at the edge of their understanding
07:33 bonsaikitten you don't just do boring stuff you know already, you try to solve new problems
07:33 sorear always(?) analytic manifolds, etc
07:33 tangentstorm bonsaikitten: agreed.
07:34 bonsaikitten so, you'll be delivering some suboptimal solution just because you don't know better (which is the exact same thing you yell at others for)
07:34 tangentstorm that's /especially/ true when you're in a situation that would prompt you to go find someone else's package to use.
07:35 tangentstorm well. but often your problem is pretty small
07:35 tangentstorm like : maybe you just want to keep a list of your favorite books or something.
07:35 tangentstorm so you might look at MySQL and it seems huge and bloated compared to a text file.
07:35 bonsaikitten sqlite ;)
07:35 sorear I'm only talking about complex algebraic varieties here.  Algebraic varieties over finite fields are a completely different ball of wax.
07:36 bonsaikitten mysql is a bad example because it's kinda mediocre in every way
07:36 tangentstorm okay, well sqlite then. :)
07:37 tangentstorm even though it's small, it's still a lot of overhead, especially if you've never used SQL before.
07:37 woolfy joined #perl6
07:37 dalek roast: bc4c9a5 | (David Warring)++ | S05-capture/caps.t:
07:37 dalek roast: tests separator captures RT #117831
07:37 dalek roast: review: https://github.com/perl6/roast/commit/bc4c9a5ec8
07:37 masak sorear: I just learned the terms homomorphism, monomorphism, etc. -- a bunch of Wikipedia articles make a ton more sense.
07:38 masak I can almost see the point of exact sequences. :)
07:38 tangentstorm So... you only have so much "woring ram" in your brain at any given time...
07:38 masak tangentstorm: working* ?
07:38 tangentstorm And when you're confronted with a graph structure, and you need to understand things, you'll do what masak is doing... :)
07:38 sorear warring ram.  corewars?
07:38 bonsaikitten tangentstorm: head space - yeah, but once you have figured out how to talk to the DB it gets quite easy
07:39 tangentstorm depends what you're storing
07:39 bonsaikitten hmm, haven't played corewars in a long time
07:39 tangentstorm that's the other thing... you make random associations in your own mind.
07:39 sorear tangentstorm: those who do not study COBOL and CODASYL are doomed to repeat them.
07:40 tangentstorm haha... i'm not familiar with codasyl but i've been contemplating writing a tetris in cobol just for fun :)
07:40 masak "fun" :)
07:40 tangentstorm so first you have this graph of someone else's ideas in front of you ( wikimath, tv tropes, some dude's code )
07:40 sorear hey, I'm the one who's working off and on on a bootstrapping INTERCAL compiler
07:41 tangentstorm then there's all the associations you're making in your own head as you try to understand and associate what you're reading back to your own experience.
07:42 tangentstorm for example, for me, writing that last sentence reminds me of the official term for it : http://en.wikipedia.org/wiki/Transderivational_search :)
07:42 tangentstorm whatever "official" means
07:43 tangentstorm So here you are, walking this graph of ideas... some of them are in your head and some are on your screen.
07:44 tangentstorm Now if you don't have enough working memory, you can augment your memory by putting stuff in front of you.
07:44 tangentstorm like notes to yourself or whatever.
07:44 tangentstorm i think pretty much everyone uses their visual field to ground them... like even if you get interrupted you don't completely forget everything you were doing because your environment reminds you.
07:45 sorear reminds me of ben goertzel(sp?)'s notes on graphical language
07:45 tangentstorm but if you get interrupted and distracted and you rely on your environment to remind you...
07:45 * masak leaves for some AFK activities for the rest of the day
07:45 sorear tangentstorm: explain blind people
07:45 tangentstorm and then your environment is showing you a complicated graph structure....
07:45 tangentstorm you are going to get lost.
07:46 lizmat Looking at S12:886: "Is equivalent to submethod BUILD (:$tail is copy ) { $!tail := $tail }"
07:46 tangentstorm sorear: sighted people then ;)
07:46 lizmat somehow the "is copy" and the binding ":=" seem to be in contradiction
07:46 lizmat am I wrong ?
07:46 sorear no
07:47 sorear $!tail binds the attribute to the freshly copied container
07:47 sorear if there were no "is copy" the attribute would become readonly
07:47 lizmat ok, gotcha
07:51 tangentstorm anyway... i think this problem has a lot to do with our brains trying to deal with complicated, ill-structured graphs, so, as part of what i'm doing, i'm building a graph database.
07:52 tangentstorm but i'm also trying to write it in a way that will make it comprehensible to the next guy looking for a graph database.
07:54 tangentstorm ...
07:55 lizmat that's always helpful: *you* might be the next guy in ~ 2 years or so
07:55 sorear graph database?  so you are reinventing codasyl?
07:55 tangentstorm probably
07:56 tangentstorm another reason people reinvent the wheel: lack of awareness of existing wheels :)
07:57 bonsaikitten pff. all that old stuff is irrelevant ;)
07:57 bonsaikitten (so let's reinvent it badly!)
07:57 lizmat did we discuss learning curve already?
07:58 tangentstorm ah, no... mine is a graph database but it's not necessarily a purely navigational database.
07:58 lizmat sometimes it *seems* easier to reimplement something then going through the curve of learning a system
07:59 tangentstorm it's basically a triple  store, which firmly embraces the relational model when and where it makes sense.
07:59 tangentstorm lizmat: yes :)
07:59 bonsaikitten tangentstorm: triple stores ... oh, so hilarious
08:00 tangentstorm so my task in writing this is to make it seem easier to the next guy to use my thing than to reinvent his own.
08:00 tangentstorm bonsaikitten: thank you. i also do bar mitzvahs :)
08:01 lizmat .tell jnthn I'm not seeing how transposing "EXPORTHOW::<grammar> = TracedGrammarHOW;" to overriding "Mu::new" lexically would work
08:01 yoleaux lizmat: I'll pass your message to jnthn.
08:03 tadzik TimToady: ping-pong
08:03 tadzik erm
08:03 tadzik timotimo: pingpong
08:03 tadzik TimToady: sorry, tabfail
08:04 tangentstorm it's also a version control system, an extensible parser, and a tool for process management
08:04 tadzik timotimo: could you paste me Steps to Reproduce somewhere?
08:04 tadzik timotimo: and later maybe try removing %*CUSTOM_LIB<site>/panda?
08:06 census joined #perl6
08:11 * tangentstorm supposes he looks like a crackpot by now. :)
08:11 sorear tangentstorm: Does it also bake pizzas?
08:12 * diakopter wants pizza
08:12 tangentstorm no, because pizzas aren't trivially implemented by walking a graph.
08:12 lizmat I think it's more important that it knows what you mean
08:12 tangentstorm unless you know a recipe that uses them? :)
08:18 berekuk joined #perl6
08:21 donaldh joined #perl6
08:25 Chillance joined #perl6
08:30 zby_home_ joined #perl6
08:47 lizmat .tell jnthn I found S12:2516 about Custom Meta-Objects
08:47 yoleaux lizmat: I'll pass your message to jnthn.
09:06 kaare_ joined #perl6
09:08 _ilbot joined #perl6
09:08 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org/ | UTF-8 is our friend!
09:10 * moritz has closed the biggest April gap in the IR clogs
09:10 dalek panda/panda2: 0bbb63b | tadzik++ | lib/Panda (2 files):
09:10 dalek panda/panda2: Make destdir easier to override
09:10 dalek panda/panda2: review: https://github.com/tadzik/panda/commit/0bbb63b066
09:10 dalek panda/panda2: 09fc84a | tadzik++ | / (3 files):
09:10 dalek panda/panda2: Bugfix, and make more real-world proof
09:10 dalek panda/panda2: review: https://github.com/tadzik/panda/commit/09fc84af85
09:11 * lizmat wonders if those clogs really shine in infra-red only
09:17 PacoAir joined #perl6
09:19 labster hi everyone
09:19 lizmat hi labster!
09:20 _ilbot joined #perl6
09:20 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org/ | UTF-8 is our friend!
09:23 labster Okay, I have a couple of nitpicky things about File::Spec I want to ask.  Since I was concentrating on getting the code working, I didn't pay too much attention to naming.  But now that it's just about done, the names of the classes seem more important.
09:23 sftp joined #perl6
09:23 labster What should I call the File::Spec module, now in the core?  I think it should be under IO, but it's really a path specification or file specification.  So, IO::Spec, IO::FileSpec, or IO::PathSpec?  (IO::Path::Spec would get confusing due to looking like IO::Path::Unix).
09:24 labster Second, should I change the names of the OS submodules?  Perl 5 uses ::Unix and ::Win32, but S16 qp// uses :posix and :win.  For comparison, python uses os.posixpath and os.ntpath.
09:24 moritz how about IO::Path::Spec and then IO::Path::Spec::Unix?
09:25 spider-mario joined #perl6
09:27 * lizmat was thinking more or less the same thing
09:28 labster Then IO::Path has it's own subclass IO::Path::Unix which does pathy operations, while IO::Path::Spec doing the stringy operations would have IO::Path::Spec::Unix.
09:28 lizmat brb
09:28 labster As long as IO::Path::Spec::Unix and IO::Path::Unix aren't too confusing, we're ok.
09:32 labster then again, we don't want anyone really using the backend, so maybe that's okay.
09:32 grondilu joined #perl6
09:34 * grondilu was reading http://rosettacode.org/wiki/Anonymous_recursion#PicoLisp and thought that "recurse" would be a nice keyword instead of &?ROUTINE or &?BLOCK.
09:51 dalek roast: 4ee1dab | (Brent Laabs)++ | S32-io/io-path.t:
09:51 dalek roast: fudge some IO::Path tests in preparation of windows support
09:51 dalek roast: review: https://github.com/perl6/roast/commit/4ee1dab053
09:57 lizmat grondilu: maybe make this a specs issue?  https://github.com/perl6/specs/issues
09:57 lizmat afk for a few hours at least
09:58 berekuk joined #perl6
10:07 grondilu lizmat: yep, why not.  I should do more of this stuff.
10:11 kivutar joined #perl6
10:30 kivutar joined #perl6
11:14 pecastro joined #perl6
11:20 tgt joined #perl6
11:23 pecastro_ joined #perl6
11:23 kivutar joined #perl6
11:32 kivutar joined #perl6
11:39 isBEKaml joined #perl6
12:02 timotimo tadzik: i had the wrong parrot-5.*.0 in my PATH, so i used the wrong panda. not your fault at all
12:32 kivutar joined #perl6
12:55 preflex joined #perl6
13:14 MrMeek joined #perl6
13:16 skids joined #perl6
13:44 cognominal nqp: grammar A {  token TOP { <a-a>  } token a-a { a }  }  say(A.parse: 'a')
13:44 camelia nqp: OUTPUT«Unable to parse expression in blockoid; couldn't find final '}' at line 2, near "token TOP "␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
13:44 cognominal nqp: grammar A {  token TOP { <a-a>  }; token a-a { a }  };  say(A.parse: 'a')
13:44 camelia nqp: OUTPUT«a␤»
13:45 cognominal nqp: grammar A {  token TOP { <a-a:<a>>  }; token a-a:<a> { a }  };  say(A.parse: 'a')
13:45 camelia nqp: OUTPUT«Method 'a-a' not found for invocant of class 'A'␤current instr.: 'TOP' pc 200 ((file unknown):167896626) (/tmp/oRKMwkv6Fs:1)␤»
13:47 cognominal nqp: grammar A is HLL::Parser {  token TOP {  <EXPR>  }; token term:sym<a> { a }  };  say(A.parse: 'a')
13:47 camelia nqp: OUTPUT«Could not find parent class 'HLL::Parser' at line 2, near ";  say(A.p"␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
13:47 cognominal nqp: grammar A is HLL::Grammar {  token TOP {  <EXPR>  }; token term:sym<a> { a }  };  say(A.parse: 'a')
13:47 camelia nqp: OUTPUT«a␤»
13:48 cognominal nqp: grammar A is HLL::Grammar {  token TOP {  <EXPR>  }; token term:sym<a-a> { a }  };  say(A.parse: 'a')
13:48 camelia nqp: OUTPUT«a␤»
13:51 census joined #perl6
14:23 pecastro_ joined #perl6
14:33 lee_ is the source code to dalek available somewhere?
14:35 lizmat probably somewhere on github
14:35 lizmat rn: class Foo { has $!foo; trusts Bar }; class Bar { method foo { self!Foo::foo } }
14:35 camelia niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![31m===[0m��GLOBAL::Bar does not name any package at /tmp/lAQNPBP254 line 1:�------> [32mclass Foo { has $!foo; trusts Bar[33m�[31m }; class Bar { method foo { self!Foo::f[0m��Cannot call private method 'foo' on Foo because it does …
14:35 camelia ..rakudo 474102: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Cannot call private method 'foo' on package Foo because it does not trust Barâ�¤at /tmp/HdVIzVX3E1:1â�¤------> [32m; class Bar { method foo { self!Foo::foo[33mâ��[31m } }[0mâ�¤    expecting any of:â�¤        method argumentsâ�¤Â»
14:36 lizmat a case of "trusts" NYI ?
14:38 lee_ ah-ha! this is what i was looking for https://github.com/sorear/dalek-poller/blob/master/push.psgi#L58
14:38 lee_ for my own bot :)
14:49 rking joined #perl6
14:54 cognominal nqp: grammar A is HLL::Grammar {  token TOP {  <EXPR>  }; token term:sym<nqp-fun> { a }  };  say(A.parse: 'a')
14:54 camelia nqp: OUTPUT«a␤»
15:22 TimToady lizmat: did you see http://irclog.perlgeek.de/perl6/2013-05-04#i_7016965 ?
15:22 TimToady it's not quite so awesome as to suggest a colon, but that turned out to be hard
15:24 TimToady hmm, maybe there's another way...
15:33 Targen joined #perl6
15:34 crab2313 joined #perl6
15:41 dalek std: 276a42f | larry++ | STD.pm6:
15:41 dalek std: Warn on apparent term following baremeth
15:41 dalek std: review: https://github.com/perl6/std/commit/276a42f6c9
15:43 TimToady camelia: restart std
15:43 TimToady hmm
15:43 TimToady camelia: help
15:43 camelia TimToady: Usage: <(nqp-jvm|star|pugs|nqp|std|niecza|rakudo|b|nom|npr|n|r|perl6|prn|rn|p|rnp|nrp|pnr|rpn|p6|nr)(?^::\s) $perl6_program>
15:44 TimToady hmm
15:46 geekosaur rebuild?
15:47 TimToady camelia: rebuild std
15:47 TimToady guess not...
15:49 geekosaur evalbot rebuild std
15:49 camelia OK (started asynchronously)
15:49 geekosaur grep ftw
15:51 TimToady evalbot help
15:51 TimToady LTA...
15:52 TimToady std: .push 42
15:52 camelia std fa59c1b: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Two terms in a row (method call with args requires colon or parens without whitespace) at /tmp/ETUPi0iMes line 1:â�¤------> [32m.push[33mâ��[31m 42[0mâ�¤    expecting any of:â�¤        infix or meta-infixâ�¤    infixed functionâ�¤       statement modifier
15:52 camelia ..loop…
15:53 timotimo TimToady: are you going to spec that & + no-space + something is forbidden?
15:53 TimToady well, runs off the end
15:53 timotimo maybe &, no space, bareword/identifier?
15:53 TimToady std: .push &i
15:53 camelia std fa59c1b: OUTPUT«ok 00:00 42m␤»
15:54 timotimo r: say i
15:54 camelia rakudo 474102: OUTPUT«0+1i␤»
15:54 timotimo ah, that's why it works
15:54 TimToady wanted something defined but not a function
15:54 TimToady anyway, not done rebuilding, apparently
15:55 TimToady std: .push &i
15:55 camelia std fa59c1b: OUTPUT«ok 00:00 42m␤»
16:00 TimToady it would appear that the rebuild failed or stalled
16:16 dmol joined #perl6
16:28 thou joined #perl6
16:50 GlitchMr huh? The IRC logs page works, but it doesn't have anything?
16:50 TimToady temporarily missing between March 1 and a day or so ago
16:51 TimToady std: .push &i
16:51 camelia std 276a42f: OUTPUT«Potential difficulties:â�¤  Colon (or parens) required for method name with arguments at /tmp/6j5aE3w3bz line 1:â�¤------> [32m.push[33mâ��[31m &i[0mâ�¤ok 00:00 42mâ�¤Â»
16:51 TimToady std: .push &fork
16:51 camelia std 276a42f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Function name &fork not allowed in infix position at /tmp/avWm_rac4L line 1:â�¤------> [32m.push [33mâ��[31m&fork[0mâ�¤Potential difficulties:â�¤  Colon (or parens) required for method name with arguments at /tmp/avWm_rac4L line 1:â�¤------> …
16:52 TimToady timotimo: most of the warnings in STD are not specced like that; in that sense, STD is serving as the spec
16:52 moritz GlitchMr: there are two name servers for irclog.perlgeek.de, and one of them serving the old IP, which has an old database
16:53 moritz (the old host is up again, but it doesn't have the new data)
16:54 GlitchMr Confusing...
16:54 moritz like all eventually consistent systems are sometimes
16:54 GlitchMr At least my private logs seem to work realtime...
16:55 GlitchMr I'm going to wait until my system notices IP had changed.
16:58 GlitchMr I'm still goint to have logs, even if I don't think it's needed. Just in case.
16:59 moritz a bit of redundant redundancy never hurts
17:08 lizmat TimToady: cool!
17:09 moritz TimToady++
17:09 moritz lizmat++ # nagging
17:09 lizmat TimToady++ indeed
17:10 * lizmat is not sure whether nagging is one of her vices or virtues
17:11 moritz maybe both.
17:11 FROGGS joined #perl6
17:14 arnsholt It can be used for good and evil
17:14 arnsholt With great power comes great responsibility =)
17:16 flussence .oO( With great power comes great power bills... )
17:16 moritz with grate responsitibilty comes much nagging from others :-)
17:17 moritz *great
17:22 berekuk joined #perl6
17:24 lizmat :-) so what am I doing wrong here:
17:24 lizmat r: class Foo { has $!foo; trusts Bar }; class Bar { method foo { self!Foo::foo } }
17:24 camelia rakudo 474102: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Cannot call private method 'foo' on package Foo because it does not trust Barâ�¤at /tmp/E4zFVVR6lK:1â�¤------> [32m; class Bar { method foo { self!Foo::foo[33mâ��[31m } }[0mâ�¤    expecting any of:â�¤        method argumentsâ�¤Â»
17:25 timotimo :o
17:25 timotimo you don't need to predeclare Bar?
17:25 timotimo r: class Bar { ... }; class Foo { has $!foo; trusts Bar }; class Bar { method foo { self!Foo::foo } }
17:25 camelia rakudo 474102:  ( no output )
17:25 moritz you probably need to
17:25 timotimo LTA error, i'd claim
17:25 dalek roast: 33746c6 | larry++ | S05-modifier/ignorecase.t:
17:25 dalek roast: [M] is not <[M]>
17:25 dalek roast: review: https://github.com/perl6/roast/commit/33746c6546
17:25 moritz aye
17:26 timotimo who feels like making a ticket?
17:26 moritz masak!
17:26 * lizmat submits rakudobug
17:41 dalek std: 291c7f0 | larry++ | CORE.setting:
17:41 dalek std: add some missing function declarations
17:41 dalek std: review: https://github.com/perl6/std/commit/291c7f08bd
17:42 dalek roast: cd184fd | larry++ | S01-perl-5-integration/context.t:
17:42 dalek roast: use '=== Nil', not '~~ Nil'
17:42 dalek roast: review: https://github.com/perl6/roast/commit/cd184fd250
17:45 domidumont joined #perl6
17:53 kivutar joined #perl6
17:56 domidumont joined #perl6
17:58 dalek roast: 3c14ada | larry++ | S02-types/declare.t:
17:58 dalek roast: avoid ~~ Nil
17:58 dalek roast: review: https://github.com/perl6/roast/commit/3c14ada2c4
17:58 dalek roast: 1655bb5 | larry++ | S02-types/nil.t:
17:58 dalek roast: avoid ~~ Nil
17:58 dalek roast: review: https://github.com/perl6/roast/commit/1655bb5ca1
18:12 dalek nqp: e3a67e4 | (Alessandro Ghedini)++ | 3rdparty/dyncall/dyncallback/dyncall_ (2 files):
18:12 dalek nqp: Fix build failure on PowerPC (closes #62)
18:12 dalek nqp: review: https://github.com/perl6/nqp/commit/e3a67e4621
18:12 dalek nqp: 5a319af | (Alessandro Ghedini)++ | 3rdparty/dyncall/dyncall/dyncall_callvm_sparc.c:
18:12 dalek nqp: Fix build failure on SPARC
18:12 dalek nqp: review: https://github.com/perl6/nqp/commit/5a319afccf
18:12 dalek nqp: 249b9cf | moritz++ | 3rdparty/dyncall/dyncallback/dyncall_ (2 files):
18:12 dalek nqp: Merge branch 'ftbfs-ppc' of https://github.com/Debian/nqp
18:12 dalek nqp: review: https://github.com/perl6/nqp/commit/249b9cfd0a
18:12 dalek nqp: 8d9d7be | moritz++ | 3rdparty/dyncall/dyncall/dyncall_callvm_sparc.c:
18:12 dalek nqp: Merge branch 'ftbfs-sparc' of https://github.com/Debian/nqp
18:12 dalek nqp: review: https://github.com/perl6/nqp/commit/8d9d7be0dc
18:34 dalek roast: 220bf16 | larry++ | S05-capture/named.t:
18:34 dalek roast: STD warning suppression
18:34 dalek roast: review: https://github.com/perl6/roast/commit/220bf168b9
18:34 dalek roast: cb011d5 | larry++ | S12-attributes/undeclared.t:
18:34 dalek roast: class Foo does Role{} needs ws before {}
18:34 dalek roast: review: https://github.com/perl6/roast/commit/cb011d50bb
18:34 dalek roast: cda8a0d | larry++ | S12-methods/parallel-dispatch.t:
18:34 dalek roast: don't smartmatch against Nil
18:34 dalek roast: review: https://github.com/perl6/roast/commit/cda8a0d64b
18:34 dalek roast: 86125fc | larry++ | S13-overloading/typecasting-short.t:
18:34 dalek roast: |$capture --> |capture
18:34 dalek roast: review: https://github.com/perl6/roast/commit/86125fc842
18:34 dalek roast: 151f725 | larry++ | S32-str/capitalize.t:
18:34 dalek roast: capitalize -> wordcase
18:34 dalek roast: review: https://github.com/perl6/roast/commit/151f725c1b
18:34 dalek roast: 3b4611b | larry++ | integration/class-name-and-attribute-conflict.t:
18:34 dalek roast: $.foo form not allowed in BUILD
18:34 dalek roast: review: https://github.com/perl6/roast/commit/3b4611b7f7
18:36 ajr joined #perl6
18:37 dalek std: b33d8e0 | larry++ | CORE.setting:
18:37 dalek std: more missing names
18:37 dalek std: review: https://github.com/perl6/std/commit/b33d8e0b99
18:43 dalek nqp: 4934e64 | (Stéphane Payrard)++ | / (2 files):
18:43 dalek nqp: support parameters with dash
18:43 dalek nqp:
18:43 dalek nqp: Conflicts:
18:43 dalek nqp:
18:43 dalek nqp: src/NQP/Grammar.nqp
18:43 dalek nqp:
18:43 dalek nqp: Signed-off-by: Moritz Lenz <moritz@faui2k3.org>
18:43 dalek nqp: review: https://github.com/perl6/nqp/commit/4934e64221
18:50 moritz masak, GlitchMr: both nameservers now return the right IP for irclog.perlgeek.de, so once the DNS caches (typically max. 1 day) expire, your problems with the IR clogs should go away
18:50 Chat8721 joined #perl6
18:50 diakopter \o/
18:51 * lue has a guess as to where IR clogs came from...
18:51 Chat8721 C:
18:51 diakopter c drive indeed
18:52 diakopter fj
18:52 diakopter ergh
18:53 dalek nqp: a24051c | (Stéphane Payrard)++ | src/QAST/Operations.nqp:
18:53 dalek nqp: Remove stray blanks
18:53 dalek nqp: review: https://github.com/perl6/nqp/commit/a24051c4fc
18:53 dalek nqp: 582df75 | (Stéphane Payrard)++ | src/QAST/Operations.nqp:
18:53 dalek nqp: Rolled QAST::Operations.add_hll_unbox calls into loop
18:53 dalek nqp: review: https://github.com/perl6/nqp/commit/582df752a6
18:53 dalek nqp: a3d59ba | (Stéphane Payrard)++ | / (349 files):
18:53 dalek nqp: Merge remote-tracking branch 'upstream/master'
18:53 dalek nqp: review: https://github.com/perl6/nqp/commit/a3d59bac18
18:53 dalek nqp: da25ee1 | moritz++ | src/vm/parrot/QAST/Operations.nqp:
18:53 dalek nqp: Merge branch 'master' of https://github.com/cognominal/nqp
18:53 dalek nqp: review: https://github.com/perl6/nqp/commit/da25ee15ab
18:55 moritz question for the OS X users: is https://github.com/drKreso/nqp/commit/86a3b20d72aeaa2acf92fa0119b92d3edc4348a5 (the assumption that $^X eq 'darwin' implies 64bit) good?
18:59 geekosaur no
19:00 flussence OS X was 32-bit userland on 64-bit kernel until recently, IIRC
19:00 geekosaur other way around, only recently the 64 bit kernel became default
19:00 geekosaur 64-bit userland on 32 bit has existed since 10.5 and was default in 10.6
19:01 flussence that... confuses me
19:01 geekosaur confuses a lot of people :)
19:03 geekosaur anyway, the assumption is, as the comment says, imperfect but largely true for 10.6+ and most machines using Apple's perl5 (the earliest Apple Intel hardware did not support 64bit extensions)
19:04 geekosaur and finding out the truth is absurdly difficult :/
19:05 geekosaur so anyway, that assumption is false on: PPC, 10.5.x, early Core1-based Intel hardware. do we care?
19:07 geekosaur and may be false on 32-bit builds of perl from other sources, although in many cases those will only be 32 bit in the case where 64 bit won't run anyway
19:08 moritz $ ./perl6 -Ilib t/spec/S32-str/capitalize.rakudo
19:08 moritz 1..15
19:08 moritz Cannot get character of empty string
19:08 moritz that's a parrot error; I'm sure there's a rakudobug to be tracked down and submitted in there
19:08 moritz geekosaur: can you think of a better heuristic?
19:11 geekosaur not really, see 'absurdly difficult
19:11 geekosaur '
19:12 labster the file /System/Library/CoreServices/SystemVersion.plist has a OS Version number.  You could check that.
19:13 moritz if *I* did that, it would be largely guesswork, because I don't have OS X anywhere and can't test it
19:13 geekosaur and just to make things more annoying, there is no difference between perl -V output on this machine with `arch -32` vs. `arch -64`
19:13 moritz geekosaur: does 'uname -a' differ?
19:14 geekosaur apple went to a lot of trouble to hide as much as possible the difference between 32 and 64 bit on OS X
19:14 geekosaur I don't have any 32-bit-only machines to check, sorry
19:15 moritz does uname -a mention 64 anywhere?
19:16 moritz on the machine(s) you do have available?
19:16 geekosaur yes; the problem is it also mentioned 64 bit everywhere else unles syou have one of the things I mentioned earlier (10.5, Core 1 processor, etc.)
19:17 labster Well, uname -r will check that you don't have 10.5 or earlier.  You just need Darwin version > 10
19:18 labster well, >= 10
19:18 kaare_ joined #perl6
19:19 moritz what does uname -r print on those systems?
19:20 labster http://osxdaily.com/2009/09/07/how-to-tell-if-youre-running-the-32-bit-or-64-bit-kernel-in-mac-os-x-snow-leopard/
19:20 labster my google-fu is strong
19:20 geekosaur note that kernel is not relevant
19:20 geekosaur as I said earlier, from 10.6 on it is normal to have a 64 bit userspace on a 32 bit kernel
19:21 * moritz will just merge that pull request, and wait for complaints.
19:21 labster *sigh*.  go for it, moritz.
19:21 geekosaur yes, this is moderately insane
19:22 dalek nqp: 86a3b20 | drKreso++ | Configure.pl:
19:22 dalek nqp: OSX 64 bit target for NativeCall
19:22 dalek nqp: review: https://github.com/perl6/nqp/commit/86a3b20d72
19:22 dalek nqp: a78780c | moritz++ | Configure.pl:
19:22 dalek nqp: Merge branch 'master' of https://github.com/drKreso/nqp
19:22 dalek nqp: review: https://github.com/perl6/nqp/commit/a78780c2bd
19:22 moritz labster: speaking of pull requests, I'm spectesting yours right now
19:24 labster It's passed on my and FROGGS' machines.  With the exception of io-path, which I'm going to have to rewrite for different OS versions anyway.
19:24 timotimo moritz: did you have time to take a look at my branch for Package::EXPOTR?
19:24 moritz timotimo: no
19:24 dalek nqp: cae6f61 | (Gerhard R)++ | 3rdparty/dyncall/buildsys/gmake/tool/gcc.gmake:
19:24 dalek nqp: [dyncall] next shot at fixing the build on Strawberry Perl
19:24 dalek nqp:
19:24 dalek nqp: Should work universally, but testing on OSX would be appreciated.
19:24 dalek nqp: review: https://github.com/perl6/nqp/commit/cae6f61082
19:24 dalek nqp: af021f4 | moritz++ | 3rdparty/dyncall/buildsys/gmake/tool/gcc.gmake:
19:24 dalek nqp: Merge branch 'master' of https://github.com/gerdr/nqp
19:24 dalek nqp: review: https://github.com/perl6/nqp/commit/af021f42d2
19:27 labster The good news is that by stea... borrowing tests from Perl 5, I should have literally hundreds of tests to make sure things paths are working.
19:28 colomon labster++
19:31 * geekosaur pulls and builds on his OS X desktop
19:34 geekosaur although I don't think I've done any NativeCall stuff before, so not sure how I'd test any of this
19:34 geekosaur (well, ideally, it's already got tests and I can just run them)
19:37 dalek rakudo/nom: 5b53365 | (Brent Laabs)++ | / (7 files):
19:37 dalek rakudo/nom: added IO::Spec, started work on IO::Path
19:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5b53365d8b
19:37 dalek rakudo/nom: 22397c5 | (Brent Laabs)++ | src/core/IO.pm:
19:37 dalek rakudo/nom: add support for IO::Path::<os subclasses>
19:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/22397c5677
19:37 dalek rakudo/nom: beab87b | (Brent Laabs)++ | src/core/IO (5 files):
19:37 dalek rakudo/nom: rename `file-name-is-absolute` to `is-absolute` in IO::Spec
19:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/beab87b874
19:37 dalek rakudo/nom: a2505bc | (Brent Laabs)++ | src/core/ (3 files):
19:37 dalek rakudo/nom: IO::Spec.tmpdir now returns `.` on failure, trying $*TMPDIR out
19:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a2505bc726
19:37 dalek rakudo/nom: ca77ce3 | (Brent Laabs)++ | / (5 files):
19:37 dalek rakudo/nom: move IO to later in the build: lib.pm now works, regex works
19:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ca77ce31b4
19:37 dalek rakudo/nom: 87edfc0 | (Brent Laabs)++ | src/core/IO/Spec/ (3 files):
19:37 dalek rakudo/nom: cleanup tmpdir, remove unused and already commented out code
19:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/87edfc0008
19:37 dalek rakudo/nom: 02c7fbb | (Brent Laabs)++ | src/core/IO (3 files):
19:37 dalek rakudo/nom: fix dir(), panda now runs \o/.  Also change splitpath to use :nofile param
19:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/02c7fbb8d7
19:37 dalek rakudo/nom: 5838e93 | moritz++ | / (8 files):
19:37 dalek rakudo/nom: Merge branch 'iospec' of https://github.com/labster/rakudo into nom
19:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5838e933b3
19:37 dalek perl6-examples: 95cc309 | (David Warring)++ | parsers/CSSGrammar.pm:
19:37 dalek perl6-examples: removed null operator fudge
19:37 dalek perl6-examples: review: https://github.com/perl6/perl6-examples/commit/95cc3093a8
19:37 dalek perl6-examples: 165e633 | (David Warring)++ | rosalind/itwv-grondilu.pl:
19:37 dalek perl6-examples: Merge branch 'master' of github.com:perl6/perl6-examples
19:37 dalek perl6-examples: review: https://github.com/perl6/perl6-examples/commit/165e63359c
19:39 dmol1 joined #perl6
19:42 dalek rakudo/nom: 454c190 | moritz++ | docs/ChangeLog:
19:42 dalek rakudo/nom: update ChangeLog
19:42 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/454c190ffb
19:45 timotimo ah great, iospec
19:47 dalek perl6-examples: b71f739 | (David Warring)++ | parsers/CSSGrammar.pm:
19:47 dalek perl6-examples: removed null combinator fudge
19:47 dalek perl6-examples: review: https://github.com/perl6/perl6-examples/commit/b71f739e7f
19:53 kivutar joined #perl6
19:56 woolfy joined #perl6
19:57 berekuk joined #perl6
19:58 labster cool.  That means it's time for me to add some tests.
20:00 moritz labster++ # great work in rakudo
20:01 moritz labster: have you signed a CLA for rakudo? it's a prerequisite for getting a commit bit
20:01 labster Yeah, I sent it in last month.
20:02 labster It should be there by now, the address is going about an hour's drive away from me.
20:02 moritz ok, great
20:02 adu joined #perl6
20:03 lizmat moritz: do you need one for nqp as well?
20:04 moritz lizmat: no
20:07 lizmat but you do need one for rakudo, so where do I get the CLA ?
20:08 moritz lizmat: http://www.perlfoundation.org/contributor_license_agreement
20:11 FROGGS ola
20:12 lizmat FROGGS!
20:12 moritz ola FROGGS, que tal?
20:13 FROGGS err, fine thanks
20:14 * moritz retires for resting
20:14 dalek rakudo/nom: 5ad46fd | moritz++ | src/Perl6/Grammar.nqp:
20:14 dalek rakudo/nom: start to switch **0..1 back to ?
20:14 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5ad46fdbdc
20:14 FROGGS gnight moritz
20:15 lizmat night moritz!
20:28 dmol joined #perl6
20:35 timotimo something's going wrong with my EXPORT sub :|
20:38 timotimo in my EXPORT sub I can't access the "create_adt" symbol. it's defined as "our sub create_adt(...) is export"
20:38 timotimo why can't i access it as ADT::create_adt?
20:38 FROGGS can you paste the code?
20:38 timotimo sure
20:40 adu FROGGS: thanks for the tips
20:40 FROGGS adu: you're welcome
20:41 timotimo https://github.com/timo/ADT/tree/EXPORT_sub - this branch here
20:42 FROGGS hmmm, if the export sub is outside of the module, dont you need to import that module?
20:42 timotimo i ... do?
20:42 timotimo i don't know how to perl :)
20:42 FROGGS r: module M { sub s is export { } }; say M::s
20:42 camelia rakudo 454c19: OUTPUT«Could not find symbol '&s'␤  in method <anon> at src/gen/CORE.setting:10027␤  in any  at src/gen/Metamodel.nqp:2504␤  in any find_method_fallback at src/gen/Metamodel.nqp:2492␤  in any find_method at src/gen/Metamodel.nqp:939␤  in block  at /tmp/wU0zQjkOTT:1␤␤»…
20:42 FROGGS r: module M { sub s is export { } }; import M; say M::s
20:43 camelia rakudo 454c19: OUTPUT«Could not find symbol '&s'␤  in method <anon> at src/gen/CORE.setting:10027␤  in any  at src/gen/Metamodel.nqp:2504␤  in any find_method_fallback at src/gen/Metamodel.nqp:2492␤  in any find_method at src/gen/Metamodel.nqp:939␤  in block  at /tmp/HSbL8v0Gly:1␤␤»…
20:43 FROGGS r: module M { our sub s is export { } }; import M; say M::s
20:43 camelia rakudo 454c19: OUTPUT«Nil␤»
20:43 FROGGS r: module M { our sub s is export { } }; say M::s
20:43 camelia rakudo 454c19: OUTPUT«Nil␤»
20:43 FROGGS hmmm
20:43 FROGGS looks like you dont need to import
20:44 timotimo i'm currently building a newer rakudo
20:44 timotimo can you get my code to work, though?
20:44 timotimo there's already test coverage for the export sub
20:44 lizmat well, import is needed so you can say "s"
20:44 timotimo good point
20:44 geekosaur hm, I think my build failed to find icu
20:45 FROGGS geekosaur: your parrot build?
20:45 FROGGS geekosaur: what OS arfe you on?
20:45 geekosaur OS X
20:45 geekosaur which means getting icu support is a bit interesting
20:45 FROGGS you have the dev package installed? (I guess there is something on osx)
20:45 geekosaur (and keeping it from colliding with macports even more so)
20:46 lizmat rn: module M { our sub s is export { "foo" } }; import M; say s
20:46 camelia rakudo 454c19: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Null regex not allowedâ�¤at /tmp/IElptOgDLc:1â�¤------> [32ms is export { "foo" } }; import M; say s[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        argument listâ�¤        prefix or termâ�¤        prefix or meta-prefixâ�¤Â»
20:46 camelia ..niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![31m===[0m��Action method statement_control:import not yet implemented at /tmp/3QCPWrBZLx line 1:�------> [32mur sub s is export { "foo" } }; import M[33m�[31m; say s[0m��No delimiter found at /tmp/3QCPWrBZLx line 1 (EOF):�------> …
20:46 lizmat rn: module M { our sub s is export { "foo" } }; import M; say s()
20:46 camelia rakudo 454c19: OUTPUT«foo␤»
20:46 camelia ..niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![31m===[0m��Action method statement_control:import not yet implemented at /tmp/UKiyvPBiq9 line 1:�------> [32mur sub s is export { "foo" } }; import M[33m�[31m; say s()[0m��Unhandled exception: Unable to resolve method statement_lev…
20:46 lizmat I wonder whether the need for () after "s" is a bug or not
20:47 FROGGS lizmat: it is, and there is already a ticket
20:47 FROGGS s without () is treated as substitution
20:47 lizmat hehe
20:47 lizmat r: module M { our sub a is export { "foo" } }; import M; say a
20:47 camelia rakudo 454c19: OUTPUT«foo␤»
20:48 lizmat so, the import allows you to not have to specify fully qualified names
20:48 FROGGS ya, I see
20:48 FROGGS but then I wonder what is wrong with timotimo's code...
20:48 FROGGS will clone it
20:48 lizmat maybe his rakudo is out of date ?
20:49 lizmat I think import didn't work until maybe sometime last week ?
20:49 timotimo well, i'm already compiling the newest nom :)
20:49 FROGGS already done so :P
20:49 timotimo but i think my previous nom was pretty recent, too
20:49 lizmat we'll see  :-)
20:49 FROGGS timotimo: I dont get an error for: PERL6LIB=lib perl6 -MADT -e '1'
20:50 timotimo yeah, the t/01-tree.t works no-problem
20:50 timotimo but t/02-EXPORT.t doesn't
20:50 timotimo (did you check out the correct branch?)
20:51 FROGGS yeah, 01 passes, 02 missing
20:51 FROGGS what branch ooc?
20:51 FROGGS ahh, okay, got it
20:52 adu why is it still { <…> } in NQP and {*} in Perl6?
20:52 lizmat because NQP is "Not Quite" ?
20:53 adu I thought they were changing it to {*}
20:53 lizmat I'm not aware of that, but that doesn't mean much  :-)
20:54 adu hmm
20:54 FROGGS timotimo: the Perl6::Grammar was fixed to support arglist properly?
20:55 timotimo er ... wha?
20:55 FROGGS it wasnt working a week ago or so
20:56 timotimo what is arglist in this case?
20:56 FROGGS use Module "arglist"
20:56 FROGGS making it an our-sub changes its behaviour though
20:57 timotimo oh
20:57 FROGGS Nominal type check failed for parameter '@attrs'; expected Positional but got Any instead
20:58 FROGGS so $_<types> is Any at line 78
20:59 timotimo let me bring everything up to date with my new rakudo
21:00 FROGGS hmmm, there is no <types> in your grammar
21:00 FROGGS ahh, there, I see
21:01 FROGGS timotimo: $adt is a failed match for "foo bar"
21:02 timotimo oh, duh
21:02 timotimo m)
21:02 timotimo but it gets executed on your end
21:02 timotimo didn't on mine. i got "cannot find &create_adt" no my end
21:02 FROGGS ya, that was before I made it an our-sub
21:05 lizmat night #perl6
21:05 timotimo huh, wasn't it an our sub before as well?
21:05 timotimo night lizmat
21:05 FROGGS hmmm, maybe it was, but since I was on the wrong branch first...
21:06 FROGGS timotimo: no, the diff says it wasnt our
21:07 timotimo strange. i'll investigate :)
21:07 timotimo indeed!
21:12 timotimo # Error: Type check failed in assignment to '$a'; expected 'Tree' but got 'Tree'
21:12 timotimo that's just great :(
21:13 flussence .oO( maybe it wanted a larch instead of a data structure )
21:15 geekosaur elmost right...
21:21 japhb_ joined #perl6
21:35 gtodd ᑲᐦᑲᑯᐤ
21:36 FROGGS ?
21:42 diakopter r: say ??!!q!??!??q!??!!!q??;
21:42 camelia rakudo 5ad46f: OUTPUT«??␤»
21:42 diakopter n: say ??!!q!??!??q!??!!!q??;
21:42 camelia niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Expecting a term, but found either infix ?? or redundant prefix ?â�¤  (to suppress this message, please use space between ? ?) at /tmp/GTY_vyhv2d line 1:â�¤------> [32msay ??[33mâ��[31m!!q!??!??q!??!!!q??;[0mâ�¤â�¤Parse failedâ�¤â�¤Â»â€¦
21:43 moritz std: say ??!!q!??!??q!??!!!q??;
21:43 camelia std b33d8e0: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Expecting a term, but found either infix ?? or redundant prefix ?â�¤  (to suppress this message, please use space between ? ?) at /tmp/GljRSEOi2Z line 1:â�¤------> [32msay ??[33mâ��[31m!!q!??!??q!??!!!q??;[0mâ�¤Parse failedâ�¤FAILED 00:00 41m…
21:45 labster rn: ??!!'foo'
21:45 camelia rakudo 5ad46f:  ( no output )
21:45 camelia ..niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Expecting a term, but found either infix ?? or redundant prefix ?â�¤  (to suppress this message, please use space between ? ?) at /tmp/UxqB0_s8Uj line 1:â�¤------> [32m??[33mâ��[31m!!'foo'[0mâ�¤â�¤Parse failedâ�¤â�¤Â»
21:46 FROGGS rn: my $a; $a = ??!!42; say $a
21:46 camelia niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Expecting a term, but found either infix ?? or redundant prefix ?â�¤  (to suppress this message, please use space between ? ?) at /tmp/qxgJmqaSgn line 1:â�¤------> [32mmy $a; $a = ??[33mâ��[31m!!42; say $a[0mâ�¤â�¤Parse failedâ�¤â�¤Â»â€¦
21:46 camelia ..rakudo 5ad46f: OUTPUT«True␤»
21:46 FROGGS ahh, sure
21:47 * moritz couldn't sleep, so he implemented 'recurse': https://github.com/perl6/specs/issues/37#issuecomment-17442034
21:48 grondilu lol that was fast.  moritz++
21:49 grondilu r: sub postfix:<!>($n) { $n > 1 ?? $n * recurse($n-1) !! 1 }; say 4!
21:49 camelia rakudo 5ad46f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routine:â�¤    recurse used at line 1. Did you mean '&reverse'?â�¤â�¤Â»
21:49 moritz grondilu: not as a built-in, as a user-supplied subroutine
21:49 grondilu oh yeah
21:51 moritz I also had an idea for a new project (again) :-)
21:51 * FROGGS listens
21:51 moritz my working name is donor-o-meter
21:51 grondilu moritz wrote:  "How often do you actually recurse into anonymous functions in real-world code?"
21:51 grondilu ^ it's not just about anonymous functions.
21:52 moritz the idea is that I consider asking for donations for running the IRC logs
21:52 moritz but I want some kind of coordination, so that I get neither flooded with donations, nor get none at all
21:52 grondilu I don't like to explicitely use the name of the function for recursion, because if I change the name later, I'll have to do it several times.  It's not good imho
21:52 FROGGS moritz: ahh, otherwise I'd said you just make a paypal-donate button on that page
21:53 moritz so I want to display some message saying "your donations pay for this service until 2013-08-01" or so
21:53 moritz along with a graphical bar that illustrates how far into the future or past that is
21:53 FROGGS and it will display a huge pic of the donator for the given time?
21:53 moritz and if it's maybe 2 months or more into the future, I won't even show the "donate" button
21:53 FROGGS k
21:54 FROGGS sounds cool
21:54 moritz FROGGS: nah, just an acknowledgement and a link
21:54 moritz grondilu: I'd argue that it's safer to use the name for recursion (more)
21:54 labster wow, that's amazing how github just mails out responses right away, unlike RT.
21:54 moritz grondilu: otherwise if your sub grows, and you refactor it by splitting stuff into a nother subroutine, you accidentally recurse into the wrong function
21:55 labster Agreed, it's probably safer to call itself by name when possible.
21:55 moritz grondilu: whereas when you rename a function, you typcially just grep for all occurrences, so you won't mess the recursion
21:55 moritz *miss
21:56 grondilu oh I see.  valid point.  I trust your judgment anyway.  So I'm fine with no "recurse".
21:57 grondilu and actually I wanted "recurse" instead of &?ROUTINE mainly for aesthetic reasons, so it's not a big deal.
21:58 grondilu (and also because "recurse" is easier to type than &?ROUTINE)
21:58 geekosaur labster, rt should be sending them immediately as well; it sounds like there are severe mail server issues with respect to rt.perl.org or whatever relaying server it might use
22:02 rindolf joined #perl6
22:06 sorear a large part of rt.perl.org's delay problem is caused by the fact that it uses manual moderation for spam control
22:14 thou joined #perl6
22:15 * moritz found https://lwn.net/SubscriberLink/548560/26d15e832d21a483/ nice
22:18 lue moritz: "nice" literally or sarcastically?
22:22 moritz lue: literally
22:23 moritz .oO( REALLY!!!! )
22:24 berekuk joined #perl6
22:32 pmichaud good afternoon, #perl6
22:32 diakopter hi Pm
22:33 adu good afternoon
22:33 labster Good PM, Pm.
22:36 FROGGS std: use v5; open( FH, '>', 'input.txt' ); print FH "hello"; close(FH)
22:36 camelia std b33d8e0: OUTPUT«ok 00:01 54m␤»
22:36 FROGGS std: use v5; open( my $fh, '>', 'input.txt' ); print $fh "hello"; close($fh)
22:37 camelia std b33d8e0: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Confused at /tmp/lWNbujt8WQ line 1:â�¤------> [32m( my $fh, '>', 'input.txt' ); print $fh [33mâ��[31m"hello"; close($fh)[0mâ�¤    expecting any of:â�¤   p5infixâ�¤        statement modifierâ�¤Parse failedâ�¤FAILED 00:01 53mâ�¤Â»
22:43 sftp joined #perl6
22:44 pecastro joined #perl6
22:45 sorear yo pm.
22:52 kurahaupo joined #perl6
22:59 jnthn Good evening, #perl6
22:59 yoleaux 08:01Z <lizmat> jnthn: I'm not seeing how transposing "EXPORTHOW::<grammar> = TracedGrammarHOW;" to overriding "Mu::new" lexically would work
22:59 yoleaux 08:47Z <lizmat> jnthn: I found S12:2516 about Custom Meta-Objects
22:59 jnthn (for just a moment)
22:59 FROGGS o/
23:01 jnthn yoleaux: tell lizmat you want to subclass ClassHOW, I expect. You then write a role with the new functionality you want in, and then arrange for it to be mixed in to every class automatically (easiest is probably method compose($obj) { self.add_role($obj, YourRolewithNewIn); nextsame; }
23:01 FROGGS nr: my \FH
23:01 camelia niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Term definition requires an initializer at /tmp/rjpOS1QkXm line 1 (EOF):â�¤------> [32mmy \FH[33mâ��[31m<EOL>[0mâ�¤â�¤Unhandled exception: Unable to resolve method statement_level in type Strâ�¤  at /home/p6eval/niecza/src/NieczaA…
23:01 camelia ..rakudo 5ad46f: OUTPUT«===SORRY!===␤Method 'ast' not found for invocant of class 'NQPMu'␤»
23:01 jnthn ...so, that's not the syntax for yoleaux?
23:01 FROGGS nr: my \FH = 42
23:01 camelia rakudo 5ad46f, niecza v24-37-gf9c8fc2:  ( no output )
23:01 FROGGS jnthn: .tell somebody test
23:02 FROGGS .tell jnthn YOLO
23:02 yoleaux FROGGS: I'll pass your message to jnthn.
23:03 jnthn .tell lizmat you want to subclass ClassHOW, I expect. You then write a role with the new functionality you want in, and then arrange for it to be mixed in to every class automatically (easiest is probably method compose($obj) { self.add_role($obj, YourRolewithNewIn); nextsame; }
23:03 yoleaux 23:02Z <FROGGS> jnthn: YOLO
23:03 yoleaux jnthn: I'll pass your message to lizmat.
23:21 TimToady FROGGS: STD_P5 does not yet attempt to parse indirect objects :)
23:21 TimToady it's...complicated...
23:24 census what is YOLO again?
23:25 diakopter a justification for license to do anything regardless of any other consequences
23:25 geekosaur 'you only live once'?
23:29 labster Oh, like starting a sentence "With all due respect" allows you to say anything no matter how disrespectful it is.
23:31 FROGGS TimToady: well, thanks :P
23:32 FROGGS TimToady: the problem is that I need to support that some day (these days basically)
23:39 timotimo it seems like something's still wrong with the EXPORT sub
23:40 timotimo (or possibly with the way i'm using ClassHOW in my ADT module)
23:40 timotimo the symptom is that i get error messages like Error: Type check failed in assignment to '$a'; expected 'Tree' but got 'Tree'
23:43 diakopter I wish that error message would include the .WHICH output of each of those
23:44 timotimo how would you feel if i granted that wish?
23:44 timotimo would it actually be helpful? beyond seeing that the WHICH is actually different?
23:45 diakopter yeah that I suppose
23:47 jnthn Sleep; 'night &
23:50 census thanks for the yolo explanation :)  i knew i haerd it around this channel before :)
23:52 timotimo oh, huh?!
23:53 timotimo i added         if $.expected.^name eq $.expected.^name { return $msg ~ " ($.expected.WHICH() and $.got.WHICH() respectively)"; }
23:53 timotimo but that doesn't trigger apparently
23:53 timotimo ah, ok, ::Assignment has its own message method
23:55 labster r: say IO::Spec.splitpath("dir", :nofile).perl;  my $a = ("file", :nofile).item;  say IO::Spec.splitpath( |$a ).perl;
23:55 camelia rakudo 5ad46f: OUTPUT«("", "dir", "")␤Too many positional parameters passed; got 3 but expected 2␤  in method splitpath at src/gen/CORE.setting:10471␤  in method splitpath at src/gen/CORE.setting:10897␤  in block  at /tmp/qvdFInYXtl:1␤␤»
23:56 labster okay, how am I using method(|$a) wrong here?
23:57 timotimo r: say IO::Spec.splitpath("dir", :nofile).perl;  my $a = ("file", :nofile);  say IO::Spec.splitpath( |$a ).perl;
23:57 camelia rakudo 5ad46f: OUTPUT«("", "dir", "")␤Too many positional parameters passed; got 3 but expected 2␤  in method splitpath at src/gen/CORE.setting:10471␤  in method splitpath at src/gen/CORE.setting:10897␤  in block  at /tmp/Eagr6M6Efo:1␤␤»
23:57 timotimo r: my $a = :("file", :nofile);  say IO::Spec.splitpath( |$a ).perl;
23:57 camelia rakudo 5ad46f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Malformed parameterâ�¤at /tmp/CMksMof7yu:1â�¤------> [32mmy $a = :("file", :[33mâ��[31mnofile);  say IO::Spec.splitpath( |$a ).[0mâ�¤    expecting any of:â�¤        colon pairâ�¤        signatureâ�¤        double quotesâ�¤        constraintâ�¤     …
23:57 timotimo r: my $a = \("file", :nofile);  say IO::Spec.splitpath( |$a ).perl;
23:57 camelia rakudo 5ad46f: OUTPUT«("", "file", "")␤»
23:57 timotimo that's why i guess
23:57 labster r: my $a = \("file", :nofile); say $a.WHAT:
23:57 camelia rakudo 5ad46f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Two terms in a rowâ�¤at /tmp/ZxJA4Nmova:1â�¤------> [32mmy $a = \("file", :nofile); say $a.WHAT[33mâ��[31m:[0mâ�¤    expecting any of:â�¤        method argumentsâ�¤        postfixâ�¤        infix stopperâ�¤        infix or meta-infixâ�¤        stat…
23:58 labster r: my $a = \("file", :nofile); say $a.WHAT;
23:58 camelia rakudo 5ad46f: OUTPUT«(Capture)␤»
23:58 timotimo no, i do not know why you can't just use the $a you had before and no, i do not know why it claimed to be 3 elements :|
23:59 FROGGS maybe |$a flattens into positionals only?
23:59 timotimo that doesn't explain how 2 become 3

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo