Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2010-01-12

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:01 skingsbu joined #perl6
00:14 araujo joined #perl6
00:16 tylerni8 joined #perl6
00:31 pugs_svn r29526 | lwall++ | [Cursor] long-overdue refactor removing RE ast methods from Cursor
01:06 ashizawa joined #perl6
01:15 pugs_svn r29527 | lwall++ | [STD,Cursor] take lookaheads and whitespace out of expectation lists
01:22 am0c joined #perl6
01:24 cognominal_ joined #perl6
01:26 cognominal_ TimToady, I don't see the reciprocal of the ** match operator.    I would have expected   <1 2> ** ', ' eq  '1 , 2'.  I know about join, but with the parentheses, it is very verbose
01:26 agentzh joined #perl6
01:27 cognominal_ Also can  'given' be an expression instead of a statement?
01:29 TimToady use 'do given' for that
01:29 cognominal thx
01:30 ash_ joined #perl6
01:30 TimToady otherwise we can't tell it from a 'given' modifier easily
01:31 TimToady rakudo: .say given "hi here"
01:31 p6eval rakudo 3867ff: hi here␤
01:31 cognominal I did not know about the given modifier.
01:31 TimToady similar reasoning for if, while, etc
01:31 cognominal makes sense to me.
01:33 diakopter backwards xargs?
01:33 TimToady he doesn't like <1 2>.join(', ')
01:33 TimToady though there's <1 2>.join: ', '
01:33 TimToady doesn't save any chars though
01:34 diakopter 1 fewer keypress?
01:35 diakopter std: say ... ... ... ... ... ... 3
01:35 cognominal as for readability,  spaces should count as half a char
01:35 p6eval std 29527: ok 00:01 105m␤
01:35 TimToady but the lack of a closing bracket can detract from readability, if there is doubt about where the construct ends
01:36 TimToady hence we provide both () and :
01:36 cognominal anayway if I want ** as a join operator, whith multimethods I can get it.
01:36 TimToady you can, though it does violence to the usual ** concept
01:36 nihiliad joined #perl6
01:38 TimToady rakudo: sub infix:<cl> ($x,$y) { "$x, $y" }; say [cl] <1 2>
01:38 p6eval rakudo 3867ff: 1, 2␤
01:38 TimToady rakudo: sub infix:<cl> ($x,$y) { "$x, $y" }; say [cl] 1..10
01:38 p6eval rakudo 3867ff: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10␤
01:38 TimToady I bet that's what you really want :)
01:39 cognominal indeed, I like it
01:39 diakopter std: ->(){ }()<->
01:39 p6eval std 29527: ok 00:01 107m␤
01:40 diakopter std: ()<->(){ }()<->() # there we go
01:40 p6eval std 29527: ok 00:01 105m␤
01:41 TimToady std: say == 42
01:41 p6eval std 29527: [31m===[0mSORRY![31m===[0m␤Preceding context expects a term, but found infix == instead at /tmp/gkHwnonRal line 1:␤------> [32msay [33m⏏[31m== 42[0m␤    expecting any of:␤  argument list␤    prefix or term␤FAILED 00:01 105m␤
01:48 diakopter std: <<.>><<.>><<.>>
01:48 p6eval std 29527: ok 00:01 105m␤
01:51 TimToady std: «.»«.»«.»
01:51 p6eval std 29527: ok 00:01 105m␤
01:52 TimToady std: «.«».«».»
01:52 p6eval std 29527: ok 00:01 105m␤
01:56 diakopter what does that last one mean
02:01 ash_ joined #perl6
02:11 TimToady it means qqww{.{}.{}.} or some such
02:15 diakopter the compiled-to-JavaScript edition of nqp-rx's Grammar.pm is 111k
02:17 diakopter just the P6Regex one, I mean.
02:17 diakopter not all of nqp-rx' grammar
02:17 pugs_svn r29528 | diakopter++ | [sprixel] finish translating nqp-rx's P6Regex/Grammar.pm
02:19 orafu joined #perl6
02:20 TimToady decommuting &
02:21 simcop2387_ joined #perl6
02:22 skeptical_p joined #perl6
02:30 colomon__ jnthn
02:31 alester joined #perl6
02:31 colomon__ jnthn++
02:32 Mantis joined #perl6
02:34 cls_bsd joined #perl6
02:35 colomon__ what I meant to say there was, yay, jnthn++ is  back!
02:37 cognominal jnthn++ # indeed
02:52 japhb joined #perl6
03:08 ashizawa joined #perl6
03:14 cj diakopter: I'm trying to transcribe http://karma.colliertech.org/~cjac/tmp/0104.png
03:15 cj č̓ does not quite look right ;)
03:16 * cj notes that he's getting off topic.  sorry.  you are the most unicodially capable people I know ;)
03:20 colomon__ rakudo: say pi.Rat(1e-10);
03:20 p6eval rakudo 3867ff: 3.14159265361894␤
03:20 colomon__ rakudo: say pi.Rat(1e-10).perl;
03:20 p6eval rakudo 3867ff: 312689/99532␤
03:23 colomon__ say 10.roots(3).perl
03:23 colomon__ rakudo: say 10.roots(3).perl
03:23 p6eval rakudo 3867ff: [Complex.new(2.15443469003188, 0), Complex.new(-1.07721734501594, 1.86579517236206), Complex.new(-1.07721734501594, -1.86579517236206)]␤
03:30 colomon__ rakudo: say 10.roots(1).perl
03:30 p6eval rakudo 3867ff: Complex.new(10, 0)␤
03:37 diakopter cj: I dunno.
03:43 agentzh joined #perl6
03:43 f00li5h[HireMe] joined #perl6
03:43 f00li5h[HireMe] meow!
03:44 * f00li5h[HireMe] paws at
03:44 f00li5h[HireMe] o_O
03:44 f00li5h[HireMe] i'll be shutting up now... it turns out irssi does odd things if you paste binary on it
03:45 diakopter hm
03:46 diakopter up-arrow, enter?
03:46 f00li5h[HireMe] seems to have kicked off one of my aliases too...
03:46 diakopter restart it? heh
03:47 f00li5h[HireMe] I'm not even sure how I got here
03:47 diakopter well, this is the only channel you're in.
03:47 diakopter that I can see.
03:49 Baggiokwok joined #perl6
03:51 f00li5h[HireMe] the only channel we share
03:56 colomon___ joined #perl6
04:06 dalek rakudo/ng: 393c457 | (Solomon Foster)++ | src/core/ (2 files):
04:06 dalek rakudo/ng: Crude but mostly working implementation of Complex.roots.  Straightforward implementation of Num.Complex.
04:06 dalek rakudo/ng: review: http://github.com/rakudo/rakudo/commit/3​93c457357158bbee8dcafe532698bb302ffa1dd
04:35 drbean joined #perl6
04:51 JimmyZ joined #perl6
04:58 Chillance joined #perl6
05:12 gfx joined #perl6
05:40 cognominal joined #perl6
05:53 pugs_svn r29529 | diakopter++ | [sprixel] Implemented character classes (much more efficient than alternations of
05:53 pugs_svn r29529 | literal strings of length 1, though not after lit() is optimized as well).
05:53 pugs_svn r29529 | Implemented panic().  Added a few more locals to the generated parser routine.
06:20 meppl joined #perl6
06:32 stepnem joined #perl6
06:34 pugs_svn r29530 | lwall++ | [Cursor] mv .syml/.store files to syml/ directory
06:34 pugs_svn r29530 | support subdirctories within syml/
06:34 pugs_svn r29530 | allow parsing of t/spec/package files, including Test::Util.pm
06:37 Baggiokwok joined #perl6
07:09 cls_bsd joined #perl6
07:11 kaare joined #perl6
07:12 Su-Shee joined #perl6
07:14 kaare joined #perl6
07:19 Su-Shee good morning
07:22 am0c joined #perl6
07:23 saschi gmoin! ^^
07:23 TimToady hello from the subtropics
07:24 saschi wow, hi there! ^^
07:30 Su-Shee _subtropics_? you can't be in europe then. ;)
07:31 TimToady well, California, though it's feeling downright temperate at the moment, with a rainstorm coming in off the Pacific
07:31 szbalint nice :)
07:31 TimToady but it almost never snows here
07:32 * Su-Shee offers half a meter of fresh snow (white). ;)
07:32 yath hm, it apparently stopped snowing here
07:33 yath (which still doesn't get me motivated to go to work)
07:44 iblechbot joined #perl6
08:08 moritz_ good morning
08:14 sjohnson yo
08:21 cls_bsd joined #perl6
08:21 f00li5h[HireMe] joined #perl6
08:21 tylerni7 joined #perl6
08:21 Exodist joined #perl6
08:21 zaphar_ps joined #perl6
08:21 payload joined #perl6
08:21 solarion joined #perl6
08:21 REPLeffect_ joined #perl6
08:21 jogla joined #perl6
08:21 jaldhar joined #perl6
08:21 yves joined #perl6
08:21 sunnavy joined #perl6
08:21 hugme joined #perl6
08:21 pugs_svn joined #perl6
08:21 Infinoid joined #perl6
08:21 mdxi joined #perl6
08:21 kcwu joined #perl6
08:21 cj joined #perl6
08:21 LionMadeOfLions joined #perl6
08:21 bloonix joined #perl6
08:21 Khisanth joined #perl6
08:21 gju joined #perl6
08:21 mj41 joined #perl6
08:21 elmex joined #perl6
08:21 zamolxes joined #perl6
08:21 go|dfish joined #perl6
08:21 mtve joined #perl6
08:21 akl joined #perl6
08:21 dukelet0 joined #perl6
08:21 RichiH joined #perl6
08:22 agentzh joined #perl6
08:22 orafu joined #perl6
08:33 Baggiokwok joined #perl6
08:43 barney joined #perl6
09:07 payload joined #perl6
09:09 dakkar joined #perl6
09:17 pnate joined #perl6
09:53 jnthn morning, #perl6
09:56 mathw jnthn!
09:56 payload joined #perl6
10:02 * jnthn finds #perl6 strangely quieter these days.
10:04 * jnthn blames it partly on ENOMASAK
10:04 jnthn ;-)
10:16 frettled :)
10:16 frettled ENOMASAK - core quiet
10:38 mathw a channel I'm in that's full of friends does a similar thing when one particular member is on holiday
10:39 mathw in those circumstances we can go an entire day without filling a screen
10:40 mathw strange how a community can revolve so strongly around one person
10:41 mathw jnthn: have you started thinking about Perl 6 again yet?
10:41 jnthn mathw: Well, I got all of S06-signature/type-capture.t to pass again yesterday
10:41 jnthn Which felt like it was involving thinking. :-)
10:42 jnthn If I don't find more blocks (lack of type captures was the blocker I found yesterday and resolved) I hope to put parametric roles back in todya.
10:42 jnthn *today
10:45 mathw wheee
10:45 mathw I assume you mean to pass in ng
10:45 jnthn Yes.
10:45 jnthn ng: sub foo(::T) { say T }; foo(42)
10:45 p6eval ng 393c45: Int()␤
10:45 jnthn Oh, I put type checking on scalars back too.
10:46 mathw yay
10:46 jnthn But that was mostly easy.
10:46 mathw extra yay
10:46 mathw if that was mostly easy, there must be something done right in ng :)
10:46 mathw or you're a genius, and your definition of easy is completely different to everyone else's
10:46 jnthn Well, it was easy 'cus I'd already put back variable trait mods. ;-)
10:47 mathw :)
10:47 mathw Might we get ng for a release before too long?
10:47 mathw Rakudo * is starting to look quite close from this side of 2010
10:48 mathw Maybe I should help :)
10:48 jnthn It's hard to say.
10:48 jnthn I can put back lots of stuff but we're hurting for the list/iterator interface bits getting sorted out.
10:49 jnthn Which pmichaud has spent plenty of time looking at and thinking about and understands...whereas I've thus not worried about thinking about it much.
10:50 mathw So we all need to go to his house and feed him a continual supply of delicious caffeinated snacks until he's done it?
10:50 jnthn Havne't seen pm around yesterday though.
10:50 jnthn Something like that. ;-)
10:50 * mathw looks up recipes with coffee in
10:53 Intensity joined #perl6
10:58 ihrd joined #perl6
10:58 ihrd left #perl6
11:03 * jnthn sees what he can get past the C# type checker
11:09 meneldor joined #perl6
11:14 rgrau joined #perl6
11:18 mikehh_ joined #perl6
11:55 bluescreen joined #perl6
12:00 am0c joined #perl6
12:02 meneldor guys in which variable inside p6 script i can find the params passed from command line ?
12:02 moritz_ @*ARGS
12:04 meneldor and the first one is in @*ARGS[0] ?
12:04 moritz_ yes
12:04 meneldor tnx
12:04 hejki meneldor: if you're doing simple argument parsing, you might want to use sub MAIN
12:05 meneldor how?
12:05 meneldor yes i need simple parsing
12:07 hejki e.g. [hejki@cornix ohjelmointi]$ perl6 -e 'sub MAIN ($x) { say $x+2 }' 8
12:07 hejki 10
12:08 moritz_ though rakudo's support is very limited
12:08 moritz_ perl6 -e 'sub MAIN(@*a) { .say for @*a }' foo bar
12:08 moritz_ No such attribute '$!do'
12:08 hejki that's why i said "simple argument parsing" :)
12:09 hejki using sub MAIN {} even with lacked support is still more perl6ish than parsing @*ARGS
12:09 hejki IMO :)
12:09 dakkar joined #perl6
12:09 SamuraiJack joined #perl6
12:12 meneldor tnx ill try it
12:14 SamuraiJack left #perl6
12:17 payload joined #perl6
12:25 bluescreen joined #perl6
12:32 colomon___ ng: my @a = roots(10, 5); say @a.perl
12:32 p6eval ng 393c45: [(Complex.new(1.58489319246111, 0), Complex.new(0.489758930722077, 1.50732299832768), Complex.new(-1.28220552699192, 0.931576844957485), Complex.new(-1.28220552693763, -0.93157684503222), Complex.new(0.489758930809934, -1.50732299829913))]␤
12:32 hejki ng: roots("bloody", "roots");
12:32 p6eval ng 393c45: Method 'Complex' not found for invocant of class 'Perl6Str'␤current instr.: '&roots' pc 203859 (src/gen/core.pir:5509)␤
12:33 jnthn heh heh.
12:34 colomon___ jnthn: see the problem?
12:36 jnthn colomon___: Is Str menat to define Complex?
12:37 colomon___ with mine
12:38 buubot joined #perl6
12:38 jnthn No, what's the problem there?
12:38 jnthn Oh, curious extra parens?
12:38 colomon___ ng: my @a = roots(10, 5); say @a.elems
12:38 p6eval ng 393c45: 1␤
12:39 jnthn ah
12:42 Guest91012 joined #perl6
12:42 meneldor guys do i have to export a class from module to be able to use it in my main script?
12:43 meneldor i cannot find a tutoral which explain how to write OO module
12:49 meneldor oh sry i found the problem
12:50 meneldor i've used: method Foo; above the class
12:51 jnthn meneldor: Answer: don't need to export just a "class Foo { ... }" or "class Foo; ... ", though you would if they were lexical classes and didn't make a namespace entry, I believe.
12:51 colomon___ jnthn: sorry about that, parental emergency immediately after I typed my last line.
12:51 jnthn colomon___: It's OK, I was hungry and went to make lunch anyway :-)
12:56 colomon___ anyway, I fixed roots so it works last night, but roots.t still fails because when you pass a list to my @a =, it makes a one-element array with the list as the first element.
12:59 takadonet morning all
13:00 bluescreen joined #perl6
13:02 colomon___ o/
13:06 ruoso joined #perl6
13:09 ignacio_ joined #perl6
13:27 iblechbot joined #perl6
13:36 mssm joined #perl6
13:37 payload joined #perl6
13:38 ignacio_ joined #perl6
13:52 JimmyZ joined #perl6
14:11 payload joined #perl6
14:22 cj_ joined #perl6
14:25 tylerni7 joined #perl6
14:32 cognominal joined #perl6
14:33 hatseflats joined #perl6
14:38 smash_ joined #perl6
14:39 smash_ hello everyone
14:41 colomon___ 'ello
14:44 mathw hello
14:55 PerlJam good morning
15:02 Baggiokwok joined #perl6
15:11 Psyche^ joined #perl6
15:21 colomon_ joined #perl6
15:37 am0c joined #perl6
15:51 payload joined #perl6
15:53 meneldor joined #perl6
15:55 cj howdy
15:56 mathw hi
15:59 buubot joined #perl6
16:04 pmurias joined #perl6
16:10 soupdragon joined #perl6
16:14 uniejo joined #perl6
16:18 nihiliad joined #perl6
16:23 rgrau` joined #perl6
16:29 Exodist joined #perl6
16:40 TimToady agh, thinking about LTM, I stared too long at the vertical blinds, and now I have stripes everywhere...
16:40 SmokeMachine joined #perl6
16:42 soupdragon hehe ;p
16:42 moritz_ now you need to write a program that adjusts the color of your screen in stripes, for compensation :-)
16:45 TimToady I need an eyetracker for that...
16:47 TimToady I wonder how long till TVs track all the faces watching and send different pictures to each eye so 3D glasses are not necessary
16:47 TimToady that would be a real eyetracker  :)
16:47 soupdragon with these new 3D films I think people will want that sooner
16:48 soupdragon although I guess not for a long time after polarized lenses..
16:48 soupdragon maybe we will GM ourselves so that we have naturally polarized eyes
16:48 diakopter yeah; polarized contact lenses.  left vertical right horizontal
16:48 TimToady only if you can change the polarization at will
16:49 TimToady I'd want mine vertical most of the time; I always wear polaroid shades outside
16:51 TimToady but I don't think that's what we'll end up with for 3D tv; we need the equivalent of directed beam radars, only in the optical range
16:52 diakopter currently std/cursor is constructing patterns for the prefixes and bruteforcing to get the longest?
16:52 TimToady just think how efficient a TV could be if it only had to make light for your eyes, too
16:52 jackyf joined #perl6
16:52 TimToady course, intraocular projectors would fix that too
16:53 diakopter that would be neat to watch with water vapor in the air
16:53 soupdragon ooh like in show crash ;p
16:53 soupdragon they have this laser thing which shows you the image
16:53 soupdragon that would be nice
16:54 soupdragon very immersive it might be a bit scary
16:54 diakopter like that sttng episode "the game"
16:56 diakopter wil wheaton & ashley judd
16:58 diakopter TimToady: you're thinking that cursor/std will run its own re engine?
16:59 justatheory joined #perl6
17:01 TimToady eh?  it already does...how do you think it parses?
17:02 TimToady it doesn't use P5 regexes except incidentally to do character classes and such
17:02 diakopter I thought it emitted the prefixes to perl5 regexes.  OH
17:06 TimToady it recognizes individual bits of constant token with p5 regexes, but it could just about as easily use substr() for that
17:07 TimToady all the hard stuff bypasses the p5 engine entirely, because it wouldn't work
17:08 diakopter I thought you couldn't have hard stuff in token prefixes
17:08 TimToady \w+ is hard
17:08 diakopter oh.
17:09 TimToady I'm not talking about LTM here, but the engine that LTM determines the fates of
17:10 diakopter oh
17:10 TimToady LTM is currently emulated with p5 regexes, but that just determines the non-deterministic bits of the real regex matcher, which isn't p5
17:10 TimToady well, isn't p5 regex
17:11 TimToady see STD.pmc and the methods it calls for the actual regex engine
17:11 diakopter ah.  I was imagining the LTM emulation being reworked.
17:11 TimToady well, yes, that wants to get to be less hacky, and that's what I was thinking about
17:12 pmurias joined #perl6
17:12 TimToady separating out all the longest methods to a separate file yesterday was part of that refactoring
17:12 cdarroch joined #perl6
17:14 diakopter ... to find the longest token by reversing each of the prefix patterns, sorting them by the ltm priority rules, then merging them into one alternation in reverse priority order, then prepend the whole pattern with ^(?:.*?)
17:15 diakopter ... and matching it against the input string, reversed and truncated to the input spot.
17:15 diakopter current offset spot, I mean
17:17 diakopter sorting properly would be the tricky part.
17:17 TimToady you can't always tell which of two prefixes will end up longer by inspection
17:18 diakopter hm. in that case, you'd have to flatten/expand out all the nested alternations.
17:18 diakopter sigh
17:22 diakopter I thought I read somewhere that it's possible to calculate whether a regular pattern is subsumed by another
17:22 TimToady that's fine if you don't care which pattern matched
17:23 TimToady we do
17:24 diakopter one could determine that by creating a globally indexed capture for each alternation... ick.
17:24 diakopter (and keeping track of which pattern ended up in which slot)
17:25 TimToady that's more or less what tagged dfa does, but the tdfa I played with require 17MB of stack space on every token, ouch
17:25 TimToady *required
17:26 diakopter :o
17:26 TimToady was also a buggy academic toy, so I abandoned it
17:26 diakopter batty
17:27 TimToady I just plan to mutate my trie implementation into a parallel nfa that caches all recognized tokens in the trie so that the second time we see a particular identifier, it's fast
17:28 TimToady and each trie node knows which patterns it has pointers into if the current character doesn't match
17:28 TimToady but it only has to traverse those for strings it hasn't seen one of yet
17:29 TimToady currently the LTM just runs all the funny patterns at the beginning and sorts the results, but that's because I can't track intermediate match states on them yet
17:30 TimToady when I can keep sets of positions into patterns, I can distribute the parallel match down the trie
17:30 skeptical_p joined #perl6
17:31 skeptical_p joined #perl6
17:31 diakopter hm
17:31 TimToady (probably with some limit on the trie size to avoid explosion on non-recurring texts
17:31 TimToady at some point it starts behaving more like egrep
17:32 TimToady and only caches recent state sets
17:33 TimToady that's been my plan for a long time now, but I keep having to do silly things like design the language...
17:33 TimToady and the current LTM prototype is good enough to have the correct semantics, if slowly
17:33 jnthn An irritating distraction. ;-)
17:34 ash_ joined #perl6
17:34 jnthn hi ash_ :-)
17:34 ash_ hi
17:34 jnthn I'd already gone to attempt sleep by the time you wrote some more questions last night, sorry.
17:34 ash_ i think i got the method forwarder working now, so my patch is done, with some testing first of course
17:34 jnthn \o/
17:34 jnthn Great.
17:34 ash_ no worries
17:36 ash_ some of the parrot stuff you did in master i am not completely comprehending, but i think i get the gist of it, for your forwarder
17:36 jnthn Yes, we hide Parrot away behind the metamodel now rather than twiddling with it too directly.
17:37 jnthn I need to deal with one other $work task and then make some dinner, so I'll probably have time to focus on looking at your patch and hopefully applying it in a couple of hours.
17:38 ash_ how does .lex work? i am having 1 issue with that, creating a closure in parrot for the forwader
17:39 ash_ i am on campus at my school and for whatever reason the perl.org irc server won't let me connect
17:39 ash_ so i can't get to #parrot
17:39 jnthn If you want to see a really simple example of that, see assuming (maybe just in master, not sure if we did also put it ng yet)
17:39 jnthn But basically...
17:39 jnthn .lex '$foo', $P0 associates the register $P0 (you can use a symbolic one too) with the name $foo
17:40 jnthn You then make your inner thingy that you're going to return have it's :outer('...') match the subid of the thing that generates the closure
17:40 jnthn And then you can do x = find_lex '$foo'
17:41 jnthn But be sure to call newclosure as well (in the closure generator) to make sure you get a clone attatched to the right outer scope
17:41 jnthn Also I did such a thing in src/metamodel/Attribute.nqp
17:41 jnthn If you look at how the PIR falls out of that, that may give you more clues.
17:42 Intensity joined #perl6
17:43 ruoso joined #perl6
17:45 ash_ http://gist.github.com/275400 so, right now, the Foo.^bar form works, but the forwarder gives: Lexical '$meth_name' not found
17:45 ash_ do you see anything i just did wrong?
17:47 jnthn hmm, don't immediately see a problem
17:47 jnthn Maybe add a :subid('ClassHOW::add_meta_method') and reference that in the :outer though?
17:47 jnthn In case it's picking up some other add_meta_method
17:48 jnthn so it's
17:48 jnthn .sub 'add_meta_method' :method :subid('ClassHOW::add_meta_method')
17:48 jnthn and then :outer('ClassHOW::add_meta_method')
17:48 jnthn below
17:48 jnthn You have an add_meta_method elsewhere, so probably best to disambiguate. :-)
17:49 ash_ alright, i'll try that
17:50 ash_ i realize the only difference between your master version and the one i made for ng is i use HOW.HOW's add_method and you do an 'infix:does'
17:50 ash_ hmm still getting that error
17:52 jackyf joined #perl6
17:54 ash_ what if i declare the .sub as a :lex
17:55 stephenlb joined #perl6
17:55 jnthn ash_: You shouldn't have to do that if you have a .lex in the sub itself.
17:56 jnthn Oh wait, you mean the inner one...
17:56 jnthn Hmm, but try that, but again, I don't *think* that'd make a difference.
17:57 ash_ i am having trouble finding much documentation on :lex, but it is mentioned in the PIR book chapter 6 on sub's
18:00 jnthn Yeah, I've never used it as far as I can remember, I think it's for if you have a more dynamic lexpad rather than use .lex
18:01 PerlJam Based on the ack I just did of my parrot working copy, there's not a whole lot of info on :lex
18:02 ash_ Languages where this information is not available can mark the subroutine with :lex instead. /from chapter 6 of pir book
18:03 ash_ in regards to .lex
18:03 ash_ so, i guess it has something to do with the language lexical rules vs parrots lexical rules?
18:04 r0bby joined #perl6
18:04 ash_ would find_dynamic_lex be any better than find_lex?
18:04 ash_ i assume they have different lookup rules
18:09 jnthn No, find_lex is what we tend to use for this. It looks like it should work, which is odd. :-/
18:10 ash_ eh, i'll keep working on it and send it to you later, i am sure i just did something dumb somewhere, i am blaming this one on my lack of pir experience
18:10 r0bby_ joined #perl6
18:14 ash_ in parrot, can i return the object idea? _dumper doesn't return that, i am trying to figure out what pmc the inner scope thinks its bound to
18:16 r0bby joined #perl6
18:22 r0bby joined #perl6
18:28 r0bby joined #perl6
18:34 r0bby joined #perl6
18:40 r0bby_ joined #perl6
18:41 jnthn phenny: tell ash_ the interpinfo opcode lets you introspect such things.
18:41 phenny jnthn: I'll pass that on when ash_ is around.
18:46 skeptical_p joined #perl6
18:46 r0bby joined #perl6
18:48 PerlJam jnthn: could you give an update on Rakudo for #ps since pmichaud seems absent?
18:48 PerlJam (just asking becuase I'm lurking on #ps right now and there don't seem to be any updates)
18:50 jjore joined #perl6
18:53 r0bby_ joined #perl6
18:53 slavik1 joined #perl6
18:54 ShaneC joined #perl6
18:54 slavik2 joined #perl6
18:59 IllvilJa joined #perl6
19:00 r0bby joined #perl6
19:05 frew joined #perl6
19:06 r0bby_ joined #perl6
19:11 squ joined #perl6
19:11 squ what advantages do perl6 offer over p5
19:12 r0bby joined #perl6
19:12 Su-Shee squ: extremely smooth coding for starters. everything not-so-nice in p5 is smoothened in p6
19:12 Su-Shee squ: many features you'd like added
19:13 squ Id like?
19:13 Su-Shee squ: and on top of it "cool stuff" which makes typical handling of for example lists easier then ever before.
19:13 squ I dont get it Su-Shee
19:13 Su-Shee squ: "everyone likes"  ;) like named parameters, classes for example.
19:14 squ p5 dont have classes?
19:14 Su-Shee squ: it does bless. moose added more classy classes. p6 has classes natively, so to speak.
19:15 Su-Shee squ: do you know p5 already?
19:16 squ I hope
19:16 squ no demand to use it often
19:16 Su-Shee squ: err.. and you don't know bless? :)
19:17 squ nope
19:17 squ started to learn perl from 5.0004
19:17 rgrau` joined #perl6
19:17 squ when I bought a book about it
19:17 Su-Shee "and never updated"? ;)
19:18 squ no demand
19:18 hercynium joined #perl6
19:18 r0bby joined #perl6
19:18 squ and what forced you to learn bless?
19:19 Su-Shee squ: ?! that's how OO perl is done with perl 5.
19:19 squ wtf
19:19 squ is that anser
19:19 squ w
19:19 squ ?
19:19 squ :)
19:20 Su-Shee squ: with bless you do objectoriented perl in perl 5. it's how modules let you inherit stuff.
19:21 squ and what forced you to learn bless?
19:21 squ it is question
19:21 squ 12/1/2010 21:23:30 Su-Shee !i=user-405@p579F6F0A.dip.t-dialin.net> squ: with bless you do objectoriented perl in perl 5. it's how modules let you inherit stuff.
19:22 squ it is statement
19:22 Su-Shee I don't even know what to say to that.
19:23 squ ah forget, I just wasting my time
19:23 PerlJam squ: Su-Shee wanted to do OOP in perl, ergo she learned about bless.
19:23 squ btw, what does  proxyscan.freenode.net do to my 80 port and why
19:23 squ ?
19:24 squ :(
19:24 TimToady probably makes sure you aren't running an open relay
19:25 r0bby joined #perl6
19:25 squ its asking "CONNECT 213.92.8.7:31204 HTTP/1.0"
19:25 thowe joined #perl6
19:26 TimToady when you attach to freenode there's a message about how it does that, I think
19:28 TimToady squ: here's the message
19:28 TimToady 18:55 -!- - freenode runs an open proxy scanner. Your use of the network
19:28 TimToady 18:55 -!- - indicates your acceptance of this policy. For details on
19:28 TimToady 18:55 -!- - freenode network policy, please take a look at our policy
19:28 TimToady 18:55 -!- - page (http://freenode.net/policy.shtml). Thank you for using
19:28 TimToady 18:55 -!- - the network!
19:29 payload joined #perl6
19:29 TimToady squ: Are you Latvian?
19:29 squ I hope no
19:29 diakopter <snort>
19:30 squ but enviroinment makes me one of them
19:31 r0bby joined #perl6
19:31 TimToady if russian is your native tongue, we can probably put you in touch with people who can help you more than we can
19:32 squ I dont need help actually
19:32 squ just have a problem
19:32 TimToady if you have a problem, then you need help :)
19:32 squ yes
19:32 squ will I abandon perl after 6 come out
19:33 squ as most people did with python when p3 came out
19:33 squ 4 years passed they still use p2.5
19:33 TimToady I tend to think that people will abandon python when Perl 6 comes out.  :)
19:34 squ google use python
19:34 squ no one wants perl developers
19:34 TimToady yes, I know, my brother-in-law works there, and doesn't like Python, so I hear it all the time
19:34 TimToady squ: you shouldn't make blanket statements that aren't strictly true
19:35 squ sorry, my mistake
19:35 squ Id love to do something with perl, but cant get job as perl developer
19:35 squ so Im forced to learn php
19:36 squ and I am very upset about fact
19:36 squ but thats not all
19:36 TimToady well, if you haven't learned about bless, then you really don't know perl yet, and are asking for a job you aren't yet qualified for
19:37 TimToady there are still plent of jobs for people who really know perl
19:37 TimToady *plenty
19:37 squ cool
19:37 squ then Ill go learn bless ok?
19:37 squ :)
19:37 TimToady though perhaps not in .lv
19:37 r0bby joined #perl6
19:37 TimToady have fun
19:38 squ I go thanks
19:38 squ left #perl6
19:39 TimToady .oO(probably doubly hard for a russian expat to land a job in latvia)
19:41 jnthn TimToady: There's a lot of Russian speakers in Latvia, afaik.
19:41 jnthn I think pretty large minority there.
19:41 TimToady yes, I know
19:41 TimToady but they went from top dog to bottom dog overnight
19:41 jnthn Yes, true. :-/
19:41 TimToady and some of them still have a sense of entitlement that doesn't serve them well in the new "environment"
19:42 TimToady not saying that's necessarily so in this case, but it is a known failure mode :)
19:42 jnthn :-)
19:43 jnthn Hmm...maybe time to try and get parametric roles back in place...and then try and do hashes.
19:43 r0bby joined #perl6
19:43 TimToady it's hard to explain to someone who only knows Perl 4 why Perl 6 is better than Perl 5...
19:43 Su-Shee that's why I stopped trying.
19:44 jnthn PerlJam: oops, sorry, was dinnering
19:44 colomon_ jnthn: do you think patching up ng's list assignment is something that could be done by someone out of his head on cold medicine?
19:44 jnthn TimToady: I thought it was 5.004, not 4
19:44 TimToady 5.004 had bless, but squ doesn't know it
19:44 jnthn Ah, I see your point. :-)
19:45 slavik joined #perl6
19:45 jnthn colomon_: Erm. Being out of your head may or may not help. Trouble is I dunno how it needs to intereact with laziness...
19:46 colomon_ jnthn: ah, laziness.
19:46 jnthn Yeah. The implementation work on it is, erm, not eager enough. ;-)
19:47 colomon_ okay, I'll forget about that for today and pay my taxes or something equally painful instead.
19:48 jnthn You're welcome to have a crack, but otoh it wouldn't surprise me if it ended up getting re-done again later.
19:49 r0bby joined #perl6
19:51 jnthn (Which is also what kinda puts me off - because I'm fairly sure pm knows how we wants it to look, but I'm not sure what that way is.)
19:51 jnthn Hopefully we get our pm back soon. And masak.
19:51 * jnthn pines
19:52 dugg joined #perl6
19:52 Su-Shee did they got married and run away to vegas?
19:52 Su-Shee no, the other way round...:)
19:53 jnthn got to vegas and run away married? ;-)
19:54 TimToady pm is rightly concentrating on family matters right now
19:55 jnthn Aha, OK.
19:55 r0bby joined #perl6
19:55 jnthn TimToady: Good to know he's not sick or something - thanks.
19:56 jnthn colomon_: How much of a blocker is it?
19:56 PerlJam TimToady: you mean Perl 6 isn't the most important thing ever?!?
19:57 PerlJam (I guess I should add a smiley just in case the sarcasm doesn't quite come through  ;-)
19:57 jnthn colomon_: If a big one, we maybe could go for an intermediate non-lazy impl...
19:57 Su-Shee PerlJam: sure it is. I've today changed our entire software architecture to better fit p6. ;)
19:59 frew joined #perl6
20:00 PerlJam Onre of these days I'd like to pin down a couple of those people that are strident nay-sayers about Perl 6 and get them to show me the magic formula that would have already gotten us there.
20:00 PerlJam s/Onre/One/
20:01 PerlJam of course then it'll probably be "oh, I'd just use ruby and wouldn't bother with perl"
20:01 PerlJam or some suche
20:01 r0bby joined #perl6
20:01 PerlJam s/che/ch/
20:02 Su-Shee PerlJam: "already gotten us" where?
20:02 PerlJam Su-Shee: to where ever Perl 6 is headed.  you know "done"
20:03 jnthn *sigh* Oh no, not another "done" discussion.
20:03 jnthn :-)
20:03 colomon_ jnthn: sorry about that, I wandered away to work on the dishes.
20:03 jnthn np
20:03 TimToady PerlJam: those are the people who are never happy unless they have something to be unhappy about.
20:03 Su-Shee jnthn: he didn't mean the "when done" - more the "where to done" :)
20:05 jnthn Su-Shee: Aye...I spent the best part of an hour reading the long discussion from around new years on such things and came away like, "well there's an hour of my life I won't get back..." :-/
20:05 colomon_ TimToady: do you have any feel for how long pmichaud will be out of it?
20:05 PerlJam ha!
20:05 PerlJam colomon_: you've just unknowingly made me a little happy
20:06 colomon_ jnthn: in general, list assignment (in one form or another) seems to be blocking a bunch of stuff.  I don't have a feel for how important it is in the grand scheme of things, though.
20:06 colomon_ PerlJam: ?
20:06 Su-Shee jnthn: I personally don't care besides my impatience I always have. I will use p6 and I know exactly what for and that's what I'm preparing for today. problem solved for me.
20:07 PerlJam colomon_: I've known pmichaud for a long time and around here people are always asking me about him.  It brings me a little bit of joy to see *someone else* asked about pm  :)
20:07 r0bby joined #perl6
20:07 colomon_ PerlJam: ah!  :)
20:08 PerlJam colomon_: If you can do it, then I'd say do it.  The worst that could happen is that pm later replaces your implementation.
20:08 PerlJam (okay, that's not the *worst* that could happen, but that's the most probable worst)
20:09 colomon_ Anyway, I don't want to be nosy, just trying to get an idea if maybe it would be worth tackling a few of pmichaud's projects while he is "away".
20:09 jnthn Yes, nothing worse than that's ever happened to me when I wrote code that needed replacing. :-)
20:09 jnthn colomon_: Aye, I agree knowing "a couple of days" vs "a couple of weeks" would mean we decide things differently.
20:10 colomon_ what if it needs replacing .... but it Doesn't Get Replaced!?!!!!!   ;)
20:10 jnthn The appocalypse happens early.
20:10 jnthn So nothing serious really.
20:10 PerlJam We've already had the apocalypses  :)
20:11 jnthn well, nothing to be worried about then.
20:13 r0bby joined #perl6
20:16 jnthn colomon_: OK, my feeling is, if you feel it's blocking things, take a look at how it's done in master and then give it a try. You probably will need to implement !STORE on List or some such.
20:17 colomon_ jnthn: groovy.  I will see what I can do once I've got my taxes done.  :)
20:20 * jnthn fixes a stupid bug he made in the docs for another open source project and finally gets on to doing Rakudo things.
20:26 bluescreen joined #perl6
20:29 Mantis joined #perl6
20:42 jnthn rakudo: say Positional ~~ Role
20:42 p6eval rakudo 3867ff: 1␤
20:42 jnthn rakudo: say Positional[Int] ~~ Role
20:42 p6eval rakudo 3867ff: 0␤
20:42 jnthn oh, damm, master has the bug too.
20:43 jnthn .oO( how'd we get away with that... )
20:44 jnthn rakudo: say &trait_mod:<does>.candidate​s>>.signature>>.perl>>.say
20:44 p6eval rakudo 3867ff: :(Object $class where all(), Object $role)␤:(ContainerDeclarand $c, Object $role)␤11␤
20:44 jnthn oh heh, like that.
20:48 * colomon_ looks up briefly from his taxes and is very impressed by that line of code...
20:48 r0bby joined #perl6
20:49 r0bby joined #perl6
20:56 r0bby_ joined #perl6
20:56 jnthn Hmm. Having Role represent both the undisambiguated collection of roles and an individual disambiguated role is tricky.
20:57 r0bby joined #perl6
21:00 jnthn TimToady: Any thoughts on this?
21:02 jnthn TimToady: I've kinda been treating the thing in the namespace as always being the thingy that knows about all of the roles, and if you try and do that somewhere, it knows to disambiguated itself through doing Foo[].
21:02 jnthn *to disambiguate
21:03 jnthn Having Foo (all of em) and Foo[] / Foo[Int] etc (particular disambiguated forms of the role) pretending to be the same thing feels a bit awkward in a "trying not to just cheat and lie" world. :-)
21:07 jnthn A Perl 6 level way (rather than just a guts one) to know which we have would allow me to make things a little less magical anyways.
21:12 spinclad rather like having both the full multi bundle and the particular chosen candidate being Subs
21:12 jnthn Well, we don't do that in Rakudo either.
21:12 spinclad maybe like both Int and 0 being Ints
21:13 jnthn rakudo: multi foo() { }; say &foo.WHAT
21:13 p6eval rakudo 3867ff: ␤
21:13 jnthn ...
21:13 jnthn rakudo: sub foo() { }; say &foo.WHAT
21:13 p6eval rakudo 3867ff: Sub()␤
21:13 jnthn rakudo: multi foo() { }; say &foo ~~ Sub
21:13 p6eval rakudo 3867ff: 0␤
21:13 jnthn rakudo: multi foo() { }; say &foo ~~ Multi
21:13 p6eval rakudo 3867ff: 1␤
21:13 jnthn rakudo: multi foo() { }; say &foo ~~ Code
21:13 p6eval rakudo 3867ff: 1␤
21:13 jnthn They're all Code but not all Sub.
21:14 spinclad right
21:14 jnthn Which is why I'm wondering if there's a "3 things" situation for roles.
21:14 spinclad so is Role like Code or like Sub?
21:14 jnthn And if it's like Code, what are the names of the other two things? :-)
21:15 jnthn I think we need to have a way to disambiguate, anyways, for the occasions people will care.
21:16 spinclad i somewhat think of Foo as (*args -> Role) and Foo[Int] as the resulting Role...
21:16 spinclad so in that sense different types
21:17 jnthn Yeah
21:17 jnthn That's my kinda feeling too.
21:17 spinclad i would like to definitely think that, with the Specs saying so
21:17 jnthn Better than trying to paper over the difference, imo.
21:20 spinclad so Role isn't like Code or Sub but like the type they return
21:21 jnthn In a sense, yes.
21:23 * spinclad &
21:24 tylerni7 joined #perl6
21:26 r0bby joined #perl6
21:30 sjn joined #perl6
21:32 r0bby joined #perl6
21:37 alester joined #perl6
21:37 jaldhar joined #perl6
21:38 soupdragon joined #perl6
21:38 r0bby joined #perl6
22:03 dalek rakudo/ng: f9001fa | jonathan++ | src/ (7 files):
22:03 dalek rakudo/ng: Bunch of fixes to get parametric roles just about working again.
22:03 dalek rakudo/ng: review: http://github.com/rakudo/rakudo/commit/f​9001fa2ba2bc7f53ba4245fc18134cac874b6f8
22:08 dduncan joined #perl6
22:14 dduncan p6eval 1+1
22:14 dduncan oh right
22:14 dduncan perl6: 1+1
22:14 p6eval elf 29530, pugs, rakudo 3867ff:  ( no output )
22:15 dduncan perl6: say Bool::True.WHAT;
22:15 p6eval pugs: Bool␤
22:15 p6eval ..elf 29530: STRING␤
22:15 p6eval ..rakudo 3867ff: Bool()␤
22:15 dduncan perl6: say Same.WHAT;
22:15 p6eval rakudo 3867ff: Could not find non-existent sub Same␤in Main (file src/gen_setting.pm, line 324)␤
22:15 p6eval ..elf 29530: STRING␤
22:15 p6eval ..pugs: *** No such subroutine: "&Same"␤    at /tmp/inuctN74F2 line 1, column 5-14␤
22:16 dduncan perl6: say Order::Same.WHAT;
22:16 p6eval rakudo 3867ff: Order()␤
22:16 p6eval ..pugs: *** No such subroutine: "&Order::Same"␤    at /tmp/7Uoc88KeBp line 1, column 5-21␤
22:16 p6eval ..elf 29530: STRING␤
22:16 ive joined #perl6
22:17 cj how do I search under $('#foo') for all elements with class .bar ?
22:18 cj oops.  this isn't #jquery!
22:18 dduncan cj, no, but you can still do that sort of thing in Perl 6
22:18 cj dduncan: do I get a pony, too?
22:19 dduncan yes
22:19 dduncan perl6: say Bool::False.HOW;
22:19 p6eval rakudo 3867ff: Bool()<0x2b47fc5b9db8>␤
22:19 p6eval ..pugs: ^Bit␤
22:19 p6eval ..elf 29530: Can't locate object method "HOW" via package "Bool::False" (perhaps you forgot to load "Bool::False"?) at (eval 123) line 3.␤ at ./elf_h line 5881␤
22:22 ash_ joined #perl6
22:29 ash_ joined #perl6
22:31 ash_ jnthn ping?
22:31 jnthn ng: say Int ~~ Num
22:31 phenny ash_: 18:41Z <jnthn> tell ash_ the interpinfo opcode lets you introspect such things.
22:31 p6eval ng f9001f: 1␤
22:32 slavik joined #perl6
22:32 jnthn ash_: hi
22:33 ash_ i am going to email you both of my patches, the first one gets meta methods working, the second one still has a bug  but i haven't figured out why
22:33 jnthn ash_: OK, great.
22:34 jnthn email is jnthn at jnthn dot net
22:34 ash_ sure thing
22:35 sjohnson rakudo: my @farm = <piggy bird rooster>; @farm.map( { uc; }); say @farm.perl;
22:35 p6eval rakudo 3867ff: No applicable candidates found to dispatch to for 'uc'␤in Main (file <unknown>, line <unknown>)␤
22:35 sjohnson rakudo: my @farm = <piggy bird rooster>; @farm.map( { uc($_); }); say @farm.perl;
22:35 p6eval rakudo 3867ff: ["piggy", "bird", "rooster"]␤
22:36 PerlJam sjohnson: perhaps you wanted @farm.=map  ?
22:36 sjohnson i think you are correct
22:37 sjohnson i was kind of thinking the .= is unnecessary... because the $_ is an alias...
22:38 sjohnson <--- confused
22:38 sjohnson rakudo: my @farm = <piggy bird rooster>; @farm.map( { $_ = uc($_); }); say @farm.perl;
22:38 p6eval rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"]␤
22:38 sjohnson there we go
22:38 sjohnson rakudo: my @farm = <piggy bird rooster>; @farm.map( { $_.=uc; }); say @farm.perl;
22:38 p6eval rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"]␤
22:38 ash_ jnthn: its sent, so hopefully you should get it in a bit
22:39 pugs_svn r29531 | jnthn++ | [t/spec] Correct some tests in light of Int/Num and Num/Rat changes - they're bad examples now, so use explicit declared subtypes for these tests.
22:39 PerlJam my @farm = <piggy bird rooster>; @farm.=map( { uc($_); }); say @farm.perl;
22:39 PerlJam oops.
22:39 PerlJam rakudo: my @farm = <piggy bird rooster>; @farm.=map( { uc($_); }); say @farm.perl;
22:39 p6eval rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"]␤
22:39 PerlJam rakudo: my @farm = <piggy bird rooster>; @farm.=map(uc(*)); say @farm.perl;
22:40 p6eval rakudo 3867ff: No applicable candidates found to dispatch to for 'map'␤in Main (file <unknown>, line <unknown>)␤
22:40 r0bby joined #perl6
22:40 PerlJam Hmm.
22:40 jnthn ash_: Thanks.
22:40 PerlJam I'm I forgetting something obvious about Whatever, or is that just not implemented?
22:41 sjohnson PerlJam: the .=map is food for thought.  wrapping my head around it as we speak
22:41 jnthn PerlJam: I think you wanted *.uc
22:41 PerlJam jnthn: ah, yes.
22:41 ash_ rakudo: <piggy bird rooster>.map({ .uc }).join(', ').say;
22:42 jnthn rakudo: my @farm = <piggy bird rooster>; @form>>.=uc; say @farm.perl; # hmm, maybe... :-)
22:42 p6eval rakudo 3867ff: PIGGY, BIRD, ROOSTER␤
22:42 p6eval rakudo 3867ff: Symbol '@form' not predeclared in <anonymous> (/tmp/7mwEL2EmIP:2)␤in Main (file <unknown>, line <unknown>)␤
22:42 jnthn rakudo: my @farm = <piggy bird rooster>; @farm>>.=uc; say @farm.perl; # hmm, maybe... :-)
22:42 p6eval rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"]␤
22:42 PerlJam you must be right.  Because the way I wrote it would mean uc({ $_ }) and that's just crazy
22:42 jnthn whee
22:42 * ash_ grumbles jnthn and his silly hyper operators
22:43 jnthn I only implemented the spec. :-P
22:43 PerlJam <piggy bird rooster>.map(*.uc).perl.say;
22:43 ash_ rakudo?
22:43 * PerlJam needs a bot that doesn't need "rakudo:" to know I'm talking to it
22:43 sjohnson heheh
22:43 ash_ perl6: <piggy bird rooster>.map(*.uc).perl.say;
22:43 PerlJam It should just go "ah, there's some perl code" and execute it.
22:43 PerlJam :)
22:43 p6eval rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"]␤
22:43 p6eval ..pugs: *** Cannot cast from VList [VStr "INF"] to Pugs.AST.Types.VCode (VCode)␤    at /tmp/7ldmgVOvc1 line 1, column 1-40␤
22:43 p6eval ..elf 29531: Undefined subroutine &GLOBAL::whatever called at (eval 126) line 3.␤ at ./elf_h line 5881␤
22:43 dalek rakudo/ng: ca8d80b | jonathan++ | src/ (2 files):
22:43 dalek rakudo/ng: One more fix that sees us able to pass all but two tests in S14-role/parameterized-basic.t that we can in master; will hunt those two down tomorrow.
22:43 dalek rakudo/ng: review: http://github.com/rakudo/rakudo/commit/c​a8d80b61c427f54590f6527a3e44740974ab085
22:43 dalek rakudo/ng: 93d662a | jonathan++ | src/ (2 files):
22:43 dalek rakudo/ng: A couple of more role tweaks to get us closer to passing a bit more.
22:43 dalek rakudo/ng: review: http://github.com/rakudo/rakudo/commit/9​3d662ac740b6142305b97c1a0ef51138f33eb97
22:44 sjohnson PerlJam: i suppose if you wrote a quick script to pass it to a std-like local rakudo thingy
22:44 sjohnson to run it if it's valid
22:44 jnthn ash_: I've spent my evening debugging and sorta fixing parametric roles - I'll take a shufty at your patches and try to debug 'em tomorrow.
22:45 ash_ alrighty, did they apply cleanly for you?
22:45 jnthn ('cus I'm tired now)
22:45 jnthn I didn't try yet, but I don't think anything I've done will cause them not to. Or at least, I hope not.
22:45 sjohnson thanks PerlJam
22:45 PerlJam rakudo: <piggy bird rooster>>>.uc.perl.say;  # this is the one that's likely to cause people fits  :)
22:45 p6eval rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"]␤
22:45 sjohnson wow that's a neat trick
22:45 sjohnson rakudo: <piggy bird rooster>.uc.perl.say;
22:46 p6eval rakudo 3867ff: "PIGGY BIRD ROOSTER"␤
22:46 sjohnson what were the extra two >'s for PerlJam ?
22:46 PerlJam sjohnson: obfuscation! :)
22:46 ash_ hyper operator
22:46 sjohnson heh
22:46 r0bby joined #perl6
22:46 sjohnson i'm a fan of thast obfuscation stuff
22:46 meppl joined #perl6
22:46 sjohnson saw some interesting perl 5 japh's
22:46 jnthn sjohnson: If you have @list>>.method then it calls method on every item in the list and makes you a new list of results.
22:47 PerlJam rakudo: <piggy bird rooster>.>>.uc.perl.say;  # clearer but still makes you think
22:47 p6eval rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"]␤
22:47 sjohnson is the >> operator unncessary though?
22:48 ash_ its required
22:48 sjohnson i did it without it though ash_
22:48 jnthn sjohnson: .uc coerced the list to a string and uc'd the one string.
22:49 * sjohnson rubs eyes
22:49 sjohnson oh
22:49 sjohnson i c
22:49 sjohnson didn't see those quotes
22:49 ash_ sjohnson: notice in your's its 1 big string, not 3 strings in a list
22:49 jnthn rakudo: <a b c>.uc.WHAT.say
22:49 p6eval rakudo 3867ff: Str()␤
22:49 sjohnson good eye!
22:49 jnthn rakudo: <a b c>>>.uc.WHAT.say
22:49 p6eval rakudo 3867ff: Array()␤
22:49 soupdragon joined #perl6
22:49 sjohnson irc colour coded quotes for the .perl thing would be pretty k3wl
22:50 sjohnson might be too cool for school tho
22:54 ash_ so, jnthn if i did (in pir), $P1 = newclosure $P1 \n  say $P1.'get_lexinfo'()    shouldn't that print out the lexical variables of the closure?
22:55 jnthn no, it's a parse error...
22:55 PerlJam ash_: you can only say/print simple things.
22:55 PerlJam ash_: PIR is assembly after all.
22:55 jnthn $P0 = $P1.'get_lexinfo'() and then say $P0 may do something
22:55 jnthn but probably nothing quite that useful.
22:55 jnthn I forget what that exactly returns.
22:55 ash_ it says it should return a hash
22:56 jnthn OK
22:56 jnthn In that case you can probably iteratre its keys to see what's in there.
22:56 ash_ I just am trying to see find some way to see why find_lex '$meth_name' dies
22:58 jnthn Yes, I'm a bit confused about that too.
22:58 jnthn I'll dig deeper tomorrow.
22:58 ash_ kk
22:58 jnthn ('tis about midnight in my $timezone now... :-))
22:59 ash_ oh, well, dang, you stay up late then if i keep seeing you online at this thime
23:00 jnthn ash_: Oh, I'm certainly an evening person.
23:01 jnthn ash_: I've got a phone meeting tomorrow morning though, so can't stay up *too* late tonight. :-)
23:02 ash_ do you work on rakudo full time or is it something you do on the side?
23:03 jnthn ash_: It's been somewhere between the two over the last year really.
23:04 ash_ got ya, just wondering
23:04 jnthn I've not had a full time job, just consulting, and between various jobs and some grants to work on Rakudo, I've managed to keep food on the table and be able to go travel a bit.
23:04 sjohnson rakudo: say "40".pack
23:05 jnthn In March I am joining a company, which means I won't have to worry so much about where my next bit of work is coming from.
23:05 p6eval rakudo 3867ff: Method 'pack' not found for invocant of class 'Str'␤in Main (file src/gen_setting.pm, line 324)␤
23:05 sjohnson rakudo: say pack("c", 40);
23:05 p6eval rakudo 3867ff: Could not find non-existent sub pack␤in Main (file src/gen_setting.pm, line 324)␤
23:05 PerlJam jnthn: a rakudo-friendly company?
23:05 jnthn PerlJam: Yeah. :-)
23:05 PerlJam sjohnson: pack/unpack aren't implemented to my knowledge
23:05 jnthn PerlJam: I'm not going to be doing full time.
23:06 jnthn PerlJam: And they're very happy with me going to conferences.
23:06 PerlJam jnthn: yeah, but if you could get paid to work on rakudo, that's always awesome.
23:06 ash_ sweet, sounds like a goodjob
23:07 jnthn PerlJam: The way it works out I kinda *do* need to do something that pays a bit in the remainder of the time, but yes, I'd like that to be Rakudo stuff.
23:09 ash_ how does interpinfo work?
23:09 PerlJam We need an Ian Hague type fellow to setup a business that needs rakudo and hire pm + jnthn  :)
23:09 ash_ like, are there any examples i can reference, doing an ack "interpinfo" didn't get me much
23:10 jaldhar joined #perl6
23:10 nihiliad joined #perl6
23:10 smash_ joined #perl6
23:10 Guest91012 joined #perl6
23:10 rachelBROWN joined #perl6
23:10 gbacon joined #perl6
23:10 PacoLinux joined #perl6
23:10 szabgab joined #perl6
23:10 lisppaste3 joined #perl6
23:10 constant joined #perl6
23:10 partisan joined #perl6
23:10 breinbaas joined #perl6
23:10 yahooooo joined #perl6
23:10 pjcj joined #perl6
23:10 Woody2143 joined #perl6
23:10 youwin joined #perl6
23:10 nsh joined #perl6
23:10 sbp joined #perl6
23:10 phenny joined #perl6
23:10 pardunci1 joined #perl6
23:10 ssm joined #perl6
23:10 eiro joined #perl6
23:10 jnthn ash_: oh, it's a funky op.
23:10 jnthn ash_: let me try and find you something...
23:10 sjohnson joined #perl6
23:10 Mantis joined #perl6
23:10 payload joined #perl6
23:10 orafu joined #perl6
23:10 drbean joined #perl6
23:10 japhb joined #perl6
23:10 arnsholt joined #perl6
23:10 takadonet joined #perl6
23:10 renormalist joined #perl6
23:10 astinus joined #perl6
23:10 spinclad joined #perl6
23:10 zibri joined #perl6
23:10 jan_ joined #perl6
23:10 kolibrie joined #perl6
23:10 gabiruh joined #perl6
23:10 zykes- joined #perl6
23:11 jnthn ash_: oh actually
23:11 jnthn I think nicer is...
23:11 jnthn Tehre's a $P0 = getinterp op
23:11 jnthn iirc
23:11 justatheory joined #perl6
23:11 jnthn That gets you an object representing the interpreter
23:11 ash_ k, thanks, ill try that
23:11 jnthn Then you can do things like $P0['sub'] or $P0['lexpad']
23:12 jnthn And it's a much saner interface.
23:12 jnthn Not sane, but saner
23:12 jnthn See I think src/pmc/parrotinterpreter.pmc in Parrot source tree, get_pmc_keyed method or some such.
23:13 jnthn ash_: oh, here you go
23:13 jnthn http://docs.parrot.org/parrot/latest/h​tml/src/pmc/parrotinterpreter.pmc.html
23:13 jnthn And getinterp is documented in http://docs.parrot.org/parrot/la​test/html/src/ops/core.ops.html
23:14 jnthn So is interpinfo akshually
23:14 ash_ i am going to sign up for the google summer of code to work on parrot this summer, hopefully to implement an llvm stack frame builder, well thats my proposal anyway, this stuff is helping me learn about parrot a lot, plus i'd love to see rakudo star get as far along as it can before its supposed to be released
23:14 jnthn ash_: OK, cool.
23:15 jnthn ash_: There's likely projects within Rakudo itself as well - really depends on what you will find most -Ofun. :-)
23:16 ash_ interpinfo is confusing, what does it mean by the list of .CAPITAL_LETTERS
23:16 ash_ are those options? thats what i found confusing about it
23:17 jnthn They're constants
23:17 jnthn You have to .include them
23:17 jnthn Thus why I prefer getinterp
23:17 jnthn and then inspect that
23:18 ash_ k, i'll use that for now
23:27 jnthn k
23:27 * jnthn -> rest, night
23:27 sjohnson rakudo:  my @strs = "  x ", "x ", "x", " x ";  say @strs.trim.perl;
23:27 ash_ cya later
23:27 p6eval rakudo 3867ff: "x  x  x  x"␤
23:27 sjohnson rakudo:  my @strs = "  x ", "x ", "x", " x ";  say @strs.>>.trim.perl;
23:28 p6eval rakudo 3867ff: ["x", "x", "x", "x"]␤
23:28 sjohnson intersting >> operator.. what do they call it?
23:29 TimToady it's not really an operator; it's a meta-operator
23:29 TimToady this particular meta-operator is called a hyper
23:29 TimToady a hyperop modifies some other operator to run in parallel over multiple values
23:29 TimToady when it would naturally only work on one value
23:30 TimToady in this case. the method call
23:30 TimToady is treated as a fancy postfix operator
23:30 ash_ you can do it the other way too
23:31 ash_ -« (1,2,3);                   # (-1, -2, -3) # from the spec
23:32 diakopter pugs: say -« (1,2,3);
23:32 p6eval pugs: -1-2-3␤
23:32 ash_ i don't think it works in rakudo though
23:32 ash_ ah, but it works in pugs, cool
23:33 sjohnson thanks TimToady and ash_
23:34 sjohnson TimToady: is there a pack(); func in p6?
23:34 ash_ its talked about in S03, so you know, the section on Meta Operators goes over the general meta ops and in there are the specifics of hyper
23:35 ash_ sjohnson: yes, in S32-Str they talk about it for strings, its not yet implemented though
23:35 sjohnson oic
23:35 TimToady ash_: you have to understand that sjohnson doesn't actually believe in reading docs.  he intents to learn it all by asking questions here.  :P
23:36 ash_ maybe i should respond with more links? :P
23:36 TimToady commuting &
23:37 sjohnson sorry TimToady :(  but i will read them
23:37 sjohnson just need to sit down, and do it
23:38 diakopter sjohnson: that's what I do too.
23:38 ash_ perl cabal's syn is searchable btw, http://perlcabal.org/syn
23:39 sjohnson TimToady: if i read the docs, i wont have the joy of having people help me anymore :)

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

Perl 6 | Reference Documentation | Rakudo