Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2010-04-07

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:00 lichtkind lue: so i just wanted him wave too
00:02 lue Alright. Only wondering :)
00:03 yinyin joined #perl6
00:03 lichtkind lue: he helped me understand coolness of perl 6 :)
00:03 lue rakudo: sub yulia is krassivaya { }
00:03 p6eval rakudo b75b2b: OUTPUT«Could not find sub &substr␤current instr.: 'perl6;Signature;_block21375' pc 485274 (src/gen/core.pir:72076)␤»
00:03 lue Ah. I think he did the same for me :)
00:03 lichtkind lue: your not a russion :)
00:03 lichtkind russian
00:04 lue but the RT is :)
00:04 lichtkind i dont get this
00:04 lue (at least the bug I'm looking at)
00:04 meppl joined #perl6
00:04 nihiliad joined #perl6
00:07 payload1 joined #perl6
00:07 payload1 left #perl6
00:17 colomon jnthn: yes.
00:17 colomon more at next location.  ;)
00:19 lue colomon! waaait!
00:28 lue rakudo: say 999999[1]
00:28 p6eval rakudo b75b2b: OUTPUT«get_pmc_keyed() not implemented in class 'Integer'␤current instr.: 'perl6;Positional[::T];postcircumfix:<[ ]>' pc 10553 (src/metamodel/GrammarHOW.pir:44)␤»
00:28 lue rakudo: say 999999[0]
00:28 p6eval rakudo b75b2b: OUTPUT«get_pmc_keyed() not implemented in class 'Integer'␤current instr.: 'perl6;Positional[::T];postcircumfix:<[ ]>' pc 10553 (src/metamodel/GrammarHOW.pir:44)␤»
00:28 lue rakudo: say 10000000[1]
00:28 p6eval rakudo b75b2b: OUTPUT«get_pmc_keyed() not implemented in class 'Integer'␤current instr.: 'perl6;Positional[::T];postcircumfix:<[ ]>' pc 10553 (src/metamodel/GrammarHOW.pir:44)␤»
00:32 jhuni joined #perl6
00:38 payload joined #perl6
00:42 lue rakudo: sub foo($v, $w?, $x?, $y?){ say $v~"|"~$w~"|"~$x~"|"~$y}; foo(1,,3,);
00:42 p6eval rakudo b75b2b: OUTPUT«1|3|Any()|Any()␤»
00:43 TimToady std: sub foo($v, $w?, $x?, $y?){ say $v~"|"~$w~"|"~$x~"|"~$y}; foo(1,,3,);
00:43 p6eval std 30331: OUTPUT«[31m===[0mSORRY![31m===[0m␤Preceding context expects a term, but found infix , instead at /tmp/qEnjmerSPc line 1:␤------> [32m?){ say $v~"|"~$w~"|"~$x~"|"~$y}; foo(1,[33m⏏[31m,3,);[0m␤FAILED 00:01 111m␤»
00:43 TimToady Perl 6 does not allow null arguments anywhere except after the final ,
00:44 lue But obviously, rakudo does :)
00:44 lue Perl6: where not an error is an error itself.
00:44 TimToady I didn't design rakudo.  :)
00:45 lue Of course you didn't. If you built rakudo like you built STD, R* would've been released April of '02 :)
00:48 colomon joined #perl6
00:48 lue hai colomon o/
00:48 colomon \o
00:49 diakopter well
00:49 TimToady
00:49 lue That's.... the answer to divide by zero!
00:50 sorear STD doesn't need to actually run code
00:51 sorear which makes things a wee bit easier
00:51 lue if you can parse it, you can compile it.
00:51 lue .oO(First Law of Language Interpreters?)
00:52 TimToady well...STD actually runs quite a bit of code--just not your code.  :)
00:52 sorear not if your language has syntax for things like a halting oracle
00:52 TimToady
00:52 sorear or if it's something ludicrously weird to compile like Thue
00:53 lue .u ⌽
00:53 phenny U+233D APL FUNCTIONAL SYMBOL CIRCLE STILE (⌽)
00:53 lue .u ⏂
00:53 phenny U+23C2 DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH CIRCLE (⏂)
00:53 lue DENTISTRY symbol!? Oo
00:53 sorear but... what does it look like?
00:54 colomon jnthn: ping?
00:54 TimToady std: sub o⃠ {...}; o⃠ 1,2,3
00:54 p6eval std 30331: OUTPUT«ok 00:01 107m␤»
00:55 ruoso .u o⃠
00:55 phenny U+006F LATIN SMALL LETTER O (o)
00:55 phenny U+20E0 COMBINING ENCLOSING CIRCLE BACKSLASH (⃠)
00:55 TimToady sorear: my browser shows it correctly in the log, fwiw
00:56 TimToady it's the Don't o routine :)
00:56 * ruoso doesn't know how to imput that character in gnome -- except copy-n-paste
00:57 lue ruoso: you has it easy, you can just hold down a couple of control character (Ctrl+Alt, methinks) and then the hex number of the unicode you wish to use.
00:58 ruoso yeah... in fact I thought I would need to input both as a single character
00:58 ruoso but i can just use the second alone after any other character and it will compose them together
00:58 TimToady seems to work right here
00:58 ruoso ©⃠
00:59 lue Learn™ how to do anything™, including input™ Unicode!
00:59 ruoso XChat sometimes has some trouble rendering it tho
00:59 TimToady ∅⃠
00:59 TimToady it's the gyroscope symbol
00:59 lue Ø
01:00 * lue thinks of the french pronouncing XChat as XCat
01:01 alester_ joined #perl6
01:01 TimToady \o҉/
01:01 lue I once read of a guy who figured out the solution to division by zero. People call him crazy, but look anyway: http://en.wikinews.org/wiki/British_comp​uter_scientist%27s_new_%22nullity%22_ide​a_provokes_reaction_from_mathematicians
01:01 lue .u o҉
01:01 phenny U+006F LATIN SMALL LETTER O (o)
01:01 phenny U+0489 COMBINING CYRILLIC MILLIONS SIGN (҉)
01:02 lue rakudo: say "\x[0489][006F]"
01:02 p6eval rakudo b75b2b: OUTPUT«҉[006F]␤»
01:02 lue rakudo: say "\x[0489, 006F]"
01:02 p6eval rakudo b75b2b: OUTPUT«҉o␤»
01:02 lue rakudo: say "You could win M\x[0489]illions!";
01:02 p6eval rakudo b75b2b: OUTPUT«You could win M҉illions!␤»
01:02 TimToady hmm, combining characters as metas....hmm...
01:03 lue .oO(What would that look like?)
01:05 TimToady std: sub Ø {...}; Ø 1
01:05 p6eval std 30331: OUTPUT«ok 00:02 108m␤»
01:05 lue .u Φ
01:05 phenny U+03A6 GREEK CAPITAL LETTER PHI (Φ)
01:05 lue rakudo: say 1/0
01:05 p6eval rakudo b75b2b: OUTPUT«Inf␤»
01:06 lue perl6: say 1/0
01:06 p6eval pugs: OUTPUT«*** Illegal division by zero␤    at /tmp/sxWO0SlWLi line 1, column 5 - line 2, column 1␤»
01:06 p6eval ..elf 30331: OUTPUT«Illegal division by zero at (eval 122) line 3.␤ at ./elf_h line 5881␤»
01:06 p6eval ..rakudo b75b2b: OUTPUT«Inf␤»
01:06 lue rakudo's one of a kind :)
01:07 lisppaste3 colomon pasted "Mu troubles for jnthn" at http://paste.lisp.org/display/97424
01:09 TimToady rakudo: my $x = 1/0; say "alive";
01:09 p6eval rakudo b75b2b: OUTPUT«alive␤»
01:10 TimToady pugs: my $x = 1/0; say "alive";
01:10 p6eval pugs: OUTPUT«*** Illegal division by zero␤    at /tmp/nlk9bKyRTt line 1, column 4-12␤»
01:10 TimToady I guess pugs's rats don't like /0
01:10 TimToady or /Ø either
01:10 colomon does pugs have Rats?
01:11 TimToady pugs: say (1/2).WHAT
01:11 p6eval pugs: OUTPUT«Rat␤»
01:11 TimToady I smell a Rat.
01:11 colomon pugs++
01:11 lue I wonder how you would implement trans-real numbers :)
01:12 TimToady pugs: say (2/3) ** 20
01:12 p6eval pugs: OUTPUT«0.00030072865982171749425581991985055918␤»
01:12 TimToady pugs: say (2/3) * (2/3)
01:12 p6eval pugs: OUTPUT«0.44444444444444444​44444444444444444444444␤»
01:12 TimToady pugs: say ((2/3) * (2/3)).perl
01:12 p6eval pugs: OUTPUT«4/9␤»
01:12 TimToady pugs: say ((2/3) ** 20).perl
01:12 p6eval pugs: OUTPUT«1048576/3486784401␤»
01:12 colomon woah
01:12 TimToady rakudo: say ((2/3) ** 20).perl
01:12 p6eval rakudo b75b2b: OUTPUT«0.000300728659821717␤»
01:13 TimToady boo :)
01:13 TimToady rakudo: say ((2/3) ** 40).perl
01:13 p6eval rakudo b75b2b: OUTPUT«9.04377268381661e-08␤»
01:13 TimToady pugs: say ((2/3) ** 40).perl
01:13 p6eval pugs: OUTPUT«1099511627776/12157665459056928801␤»
01:13 TimToady pugs: say ((2/3) ** 100).perl
01:13 p6eval pugs: OUTPUT«1267650600228229401496703205376/515377​520732011331036461129765621272702107522001␤»
01:13 TimToady FatRats, in fact
01:14 lue rakudo: say ((2/3) ** 100).perl
01:14 p6eval rakudo b75b2b: OUTPUT«2.45965442657982e-18␤»
01:14 colomon rakudo doesn't treat integer powers any different than other powers.
01:14 TimToady would be simple to pick that up with mmd
01:14 lue Rakudo doesn't let me flood the IRC with random strings of numbers :(
01:14 TimToady no, just random everything else... :P
01:14 lue pugs: say pi
01:14 p6eval pugs: OUTPUT«3.141592653589793␤»
01:14 lue rakudo: say pi
01:14 p6eval rakudo b75b2b: OUTPUT«3.14159265358979␤»
01:15 TimToady pugs: say pi.WHAT
01:15 p6eval pugs: OUTPUT«Rat␤»
01:15 lue .oO( Rakudo must catch up! :) )
01:15 lichtkind gut night
01:15 TimToady pugs: say pi.perl
01:15 p6eval pugs: OUTPUT«3141592653589793/1000000000000000␤»
01:15 lue night o/
01:15 TimToady o/
01:15 lichtkind \o
01:15 TimToady Ø
01:15 colomon \o
01:15 lue that's not right! Pi is clearly IrRat :)
01:15 lue rakudo: say pi.perl
01:15 p6eval rakudo b75b2b: OUTPUT«3.14159265358979␤»
01:16 TimToady it's a SneakyRat
01:16 niros left #perl6
01:16 lue .u 3141
01:16 phenny U+3141 HANGUL LETTER MIEUM (ㅁ)
01:17 lue rakudo: say pi.fmt{'%x'}
01:17 p6eval rakudo b75b2b: OUTPUT«3␤»
01:17 lue rakudo: say '16'.fmt{'%x'}
01:17 TimToady perl6: say πr²
01:17 p6eval rakudo b75b2b: OUTPUT«1␤»
01:17 p6eval elf 30331: OUTPUT«Undefined subroutine &GLOBAL::πr² called at (eval 123) line 3.␤ at ./elf_h line 5881␤»
01:17 p6eval ..rakudo b75b2b: OUTPUT«Confused at line 11, near "say \u03c0r\x{b2}"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
01:17 p6eval ..pugs: OUTPUT«*** No such subroutine: "&\207\128r\194\178"␤    at /tmp/3DWvASyOBv line 1, column 5 - line 2, column 1␤»
01:17 lue rakudo: say 16.fmt{'%x'}
01:17 p6eval rakudo b75b2b: OUTPUT«1␤»
01:17 TimToady std: say πr²
01:17 p6eval std 30331: OUTPUT«Undeclared routine:␤   'πr²' used at line 1␤ok 00:01 106m␤»
01:17 lue erm, maybe I'm doing it wrong?
01:18 TimToady what's with the curlies?
01:18 TimToady curlies are always closures, and in this case, a hash subscript
01:19 TimToady rakudo: say ('16'.fmt){'%x'}
01:19 p6eval rakudo b75b2b: OUTPUT«1␤»
01:19 TimToady beats me why that says 1 though
01:19 lue rakudo: say '16'.fmt('%x')
01:19 TimToady rakudo: say 16.fmt
01:19 p6eval rakudo b75b2b: OUTPUT«10␤»
01:19 p6eval rakudo b75b2b: OUTPUT«16␤»
01:20 lue see, I can never remember how to use fmt :)
01:20 TimToady it's just a method call
01:20 lue rakudo: say 16.fmt('%x')
01:20 p6eval rakudo b75b2b: OUTPUT«10␤»
01:20 lue rakudo: say pi.fmt('%x')
01:20 p6eval rakudo b75b2b: OUTPUT«3␤»
01:20 TimToady rakudo: say 16{'%x'}
01:20 p6eval rakudo b75b2b: OUTPUT«get_pmc_keyed() not implemented in class 'Integer'␤current instr.: 'perl6;Associative[::T];postcircumfix:<{ }>' pc 13903 (src/builtins/Code.pir:85)␤»
01:20 TimToady rakudo: say '16'{'%x'}
01:20 p6eval rakudo b75b2b: OUTPUT«1␤»
01:20 TimToady o_O
01:20 TimToady dinner &
01:20 lue rakudo: say (pi).fmt('%x')
01:20 p6eval rakudo b75b2b: OUTPUT«3␤»
01:21 diakopter rakudo: say ''{''}
01:21 p6eval rakudo b75b2b: OUTPUT«␤»
01:21 lue pugs: say pi.fmt('%x')
01:21 p6eval pugs: OUTPUT«3␤»
01:21 lue perl6: say pi.fmt('%x')
01:21 p6eval pugs, rakudo b75b2b: OUTPUT«3␤»
01:21 p6eval ..elf 30331: OUTPUT«Undefined subroutine &GLOBAL::pi called at (eval 126) line 3.␤ at ./elf_h line 5881␤»
01:27 ash_ joined #perl6
01:28 lue afk
01:30 * ruoso implementing async IO and missing feed operators
01:30 colomon \o/
01:30 * ruoso forgot to mention that was Perl 5
01:31 * ruoso just realized that phrase could be understood as if he was implementing the feed operators..
01:33 colomon I thought that seemed like a big task... ;)
01:34 ruoso but that does depend on the vm threading model
01:34 ruoso since async IO is tightly related to implicit threading
01:36 ruoso and the threading model is a harder problem per se
01:36 ruoso specially if we want to deal with perl5
01:36 * ruoso .oO( it's so easy to accept a Global Interpreter Lock )
01:38 ruoso but I always keep getting back at the IO language and Erlang...
01:40 ruoso my idea nowadays is around an object "belonging" to a thread, and everytime you want to talk to a foreign object that would result in a message being sent to the thread that owns the objet
01:42 ash_ can parrot IO support serial?
01:43 ash_ by extension, does rakudo support serial io?
01:43 ruoso ash_, might be worth asking on #parrot if noone replies around here
01:46 ash_ kk, i'll ask
01:49 colomon_ joined #perl6
01:56 Psyche^ joined #perl6
02:00 * araujo finds some free time to test rakudo in his new machine
02:18 sorear I wonder how hard it would be to implement Unicode TR28 in P6
02:21 constant joined #perl6
02:21 constant joined #perl6
02:25 dalek rakudo: 8c434e8 | pmichaud++ | docs/spectest-progress.csv:
02:25 dalek rakudo: pectest-progress.csv update: 386 files, 30548 (79.2% of 38577) pass, 10 fail
02:25 dalek rakudo: Failure summary:
02:25 dalek rakudo: S02-literals/listquote-whitespace.rakudo aborted 8 test(s)
02:25 dalek rakudo: S06-multi/syntax.rakudo 21 - use multi method to override builtin lives
02:25 dalek rakudo: S06-multi/syntax.rakudo 22 - use multi method to override builtin
02:25 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​c434e8587abd38968d93c4258feeb844b682709
02:28 sorear excuse me, UTN28
02:28 sorear not UTR28
02:38 agentzh joined #perl6
02:38 colomon listquote-whitespace?
02:43 ash_ joined #perl6
02:47 colomon works locally...
02:48 colomon_ joined #perl6
02:49 araujo rakudo:  my @arr = 1, 2, 3; say "array @arr[]";
02:49 p6eval rakudo 8c434e: OUTPUT«array @arr[]␤»
02:49 araujo shouldn't that interpolate?
02:50 CokeBot9000 rakudo:  my @arr = 1, 2, 3; say "array @arr";
02:50 p6eval rakudo 8c434e: OUTPUT«array @arr␤»
02:50 CokeBot9000 rakudo:  my @arr = 1, 2, 3; say "array {@arr}";
02:50 p6eval rakudo 8c434e: OUTPUT«array 1 2 3␤»
02:50 petdance joined #perl6
02:55 sorear CokeBot9000: commands
02:55 CokeBot9000 riiiight.
02:56 CokeBot9000 -> zzz
03:00 ash_ joined #perl6
03:08 molaf joined #perl6
03:12 hungryhpos joined #perl6
03:13 jenk joined #perl6
03:14 sposatoProc_null joined #perl6
03:14 DroneKloeri joined #perl6
03:14 Tabmowsolarispla joined #perl6
03:14 sposatoProc_null Hey guys. I just came from Best Buy with my dad and saw this a-ni-me called 'Neon Genesis Evangelion' and my dad let me bought it, so now I have it with me but I've been reading about it and they say there is nudity in it. I'm not sure if my parents will allow me to watch it, last time they found my Hentai folder they changed my parental controls to Young Teen for a month. It's not fair. I'm 19. I'm hiding my Hentai in Doc
03:14 was kicked by diakopter: sposatoProc_null
03:15 Tabmowsolarispla I went to MacWorld and persuaded an Adobe employee to preview the then beta of Photoshop 4. He left me to mess around with it on my own and while he was talking to some other folks I pulled out an ethernet crossover cable and connected his Mac to my Powerbook and copied over the Photoshop Beta.
03:15 was kicked by diakopter: Tabmowsolarispla
03:15 guineabell_sco How about the enviroment? Canonical clearly does not care much for enviromental protection. The amount of Ubuntu CDs they have dumped in the past is unacceptable. They have reached AOL quantities.
03:15 railsterry GET TROOPS OUT OF IRAQ BUCK FUSH CONSERVATIVES ARE GAY NO BLOOD FOR OIL WRONG WAR WRONG PLACE WRONG TIME FRIENDS DONT LET FRIENDS VOTE REPUBLICAN BUSH&DICK: GOOD IN BED BAD IN DA WHITEHOUSE my brother raped me when i was 6
03:16 solaris_RailsApp As someone erotically attracted to balloons, a question close to my heart is "to pop or not to pop?" Flame wars over this very issue take up a significant amount of space on the balloon fetish chatrooms I frequent. I find that while non-poppers feel an emotional attachment to balloons and can get quite protective of their inflatable friends; poppers such as myself see no point to jerking off with balloons unless they explo
03:16 thingatari joined #perl6
03:16 Webplan9xor Rory touched my virgin junk liberally. He strapped me into his Trans Am and told me we were taking a detour on the way back from the prom. I could not believe what the fuck was going on. He vomited red many times as he had been drinking heavily. I told him the athletic staff would not approve of the star quarterback falling asleep inside an underage girl. There it is. My dad found us at makeout ridge. I've got to go.
03:16 GitTabnet joined #perl6
03:16 Nettab joined #perl6
03:16 JavaLorezTerry I hope I never have to hear any of these cosplay slangs ever at a convention. Anime Iowa is a place to have fun and to enjoy being surrounded by fellow fans. Not a place to treat other fans in a superior fashion. *Most of us experienced or are experiencing this in highschool*
03:16 svnnullTabnet You are either for the expansion of growth of the human population off the earth and into space or you are for mass murder and restricted personal liberty to control population growth here on earth.
03:16 GitTabnet It was only -after- I took the lethal dose of aspirin that I realized I couldn't find my Evanescence CDs anywhere!! My elaborate suicide plans were ruined, but as you can imagine I am quite used to disappointment... so sleepy...
03:16 thingatari girl you must be a game of texas holdem cuz i just wanna go all in
03:16 Null_git dude...listen...pretty much evry one hate him and microsoft, sure he's given us some computer crap who cares, its all crap, i hate windows so much, its the crapyest piece of shit ever, i want linux!
03:17 RubyBicycle There is very little of value in blogging. There are some real journalists who have an online newsletter, and real writers who post articles independently -- that they happen to be classified as blogs flatters the sycophantic self-indulgent blogosphere at large. Imagine if you serialized your blog and emailed all your friends with it every time you updated it? If they wouldn't welcome such a diary, don't bother with your blog.
03:17 x86netnext you shut your face you nigger loving pile of intestinal feces, ill rip your bowels out and feast on them, then i'll impregnate your girlfriend and wait 7 months then unwravel her belly button and suck out all the vaginal discharge and feast upon the baby. i will fornicate your liver, then make you guzzle gallon after gallon of putrid diarrhea. you will gag on my green logs of asshole mud butter
03:17 diakopter ok, +n seems to be the right thing
03:17 TimToady what does that do?
03:17 diakopter +n (prevent external send)   Users outside the channel may not send messages to it.
03:18 TimToady can we take +r back off...er, yeah
03:18 dhoss joined #perl6
03:18 aesop +r is off topic
03:18 diakopter the first couple of spammers were in the channel
03:19 TimToady aesop was random earlier today, don't know if it's related
03:19 diakopter true
03:20 dhoss hi aesop
03:20 aesop #defocus
03:20 aesop hello dhoss
03:20 diakopter hrm
03:21 diakopter someone made a webirc bot.
03:21 diakopter probably with perl
03:22 sorear I thought the Javascript IRC worm from a couple months ago was pretty cute
03:23 diakopter it was quite dangerous
03:24 diakopter redirecting to a site of an attacker's choosing is extremely powerful
03:25 diakopter I mean, it almost makes me want to use opera, just b/c its vulnerabilities likely haven't been researched by the baddies
03:25 aesop opera is gr8
03:25 diakopter yet
03:27 dhoss safari4lyfe
03:32 lue O hai ( seems a very, very, weird attack happened earlier. >P )
03:33 diakopter hi
03:38 agentzh joined #perl6
03:46 agentzh joined #perl6
03:57 sjohnson yo
03:58 sorear ho ho
04:20 ruoso std: role Perm { constant Read = 0b0001 but Perm }
04:20 p6eval std 30331: OUTPUT«ok 00:01 109m␤»
04:20 ruoso rakudo: role Perm { constant Read = 0b0001 but Perm }
04:20 p6eval rakudo 8c434e:  ( no output )
04:22 colomon joined #perl6
05:16 astrojp left #perl6
05:25 quester_ joined #perl6
05:28 quester_ Good evening, 楽土 fans
05:28 sorear what about its enemies
05:29 quester_ $enemies := Mu();
05:30 jonasbn joined #perl6
05:30 PZt joined #perl6
05:33 quester_ phenny:  tell jnthn - Thank you very much for the answer to the "our sub ..." question.
05:33 phenny quester_: I'll pass that on when jnthn is around.
05:51 dduncan joined #perl6
06:08 aufrank joined #perl6
06:09 lisppaste3 aufrank pasted "potential p6l post" at http://paste.lisp.org/display/97430
06:09 aufrank hi all
06:09 aufrank I was about to hit send on a post to p6l, and then decided I'd drop in here to see if this was an FAQ or too trivial to go to the list
06:10 aufrank I just pasted my message to nopaste, at the link provided above
06:12 aufrank I look forward to hearing anyone's thoughts on the question, and whether it's worth asking on p6l
06:12 diakopter I don't recall which synopsis that's in
06:16 TimToady S03:1911 and thereabouts
06:18 ingy hi TimToady
06:18 ingy I was just thinking of you...
06:19 aufrank thx, going to look now
06:19 TimToady ingy: o/
06:20 TimToady or would that be \o, since I'm right-handed...
06:20 ingy TimToady: I just wrote my first programming language
06:20 TimToady yay
06:20 TimToady fun, ain't it?
06:21 ingy yes
06:21 ingy I call it C'Dent
06:21 diakopter its pronounciation has a nice cadence
06:21 TimToady std: say C'Dent
06:21 p6eval std 30331: OUTPUT«Undeclared name:␤      'C'Dent' used at line 1␤ok 00:01 108m␤»
06:22 aufrank thanks for the pointer, glad I asked here first!
06:22 ingy I was thinking of you because I can now write a module in C'Dent Python and compile it to Perl6
06:22 TimToady and the one before C'Dent would be its anteC'Dent
06:22 ingy and half a dozen other languages at present
06:22 ingy TimToady: like this: http://cdent.org/examples/
06:23 ingy I don't know too much p6
06:23 ingy what's the better p6 println command?
06:24 diakopter I think greet needs ()
06:24 * dhoss boggles
06:24 diakopter say?
06:24 ingy diakopter: it worked against rakudo for me...
06:24 diakopter oh
06:24 ingy let me check....
06:25 diakopter rakudo: class Hello { method greet { say "hi" } }; Hello.new.greet;
06:25 p6eval rakudo 8c434e: OUTPUT«hi␤»
06:25 diakopter k
06:25 diakopter std: class Hello { method greet { say "hi" } }; Hello.new.greet;
06:25 p6eval std 30331: OUTPUT«ok 00:01 107m␤»
06:25 diakopter k
06:26 diakopter C'tsNot
06:33 gfx joined #perl6
06:34 Su-Shee joined #perl6
06:34 ingy I updated cdent.emitter.perl6 to use say
06:34 ingy thanks
06:34 ingy http://cdent.org/examples/
06:35 ingy cdent has a few input dialects that are small/strict/strongly-implicitly-typed subsets of popular languages
06:36 diakopter cool
06:36 diakopter I'm doing something similar for a .net backend for STD
06:36 ingy they all generate the same cdent tree, which can be used to generate modules in hopefully a dozen langs
06:37 ingy I wrote the prototype in Python actually
06:37 ingy it's not a terrible language
06:38 ingy and it has great yaml support! (hahaha)
06:38 ingy which I use kinda heavily
06:38 ingy well the grammar and serialized asts are yaml
06:38 ingy grammar_s_ I mean
06:39 ingy python really lacks in it's module planning
06:40 ingy you can't have one guy write text.mangle and another guy write text.hoople
06:41 ingy so people come up with lots of whacky top level namespaces
06:41 ingy seems like they didn't really plan for CPAN like success
06:42 ingy diakopter: what's STD again?
06:42 sorear hey, I was working on something vaguely sort of like that
06:43 diakopter STD is the name of Larry's Perl 6 front-end
06:43 diakopter short for "Standard"
06:43 ingy oh right
06:43 sorear it was a multitarget compiler turning NQP into shell scripts, DCL, Windows .exe, and anything else on an as-needed basic
06:43 diakopter as in "definitive"
06:43 sorear as an autoconf replacement
06:44 ingy sorear: C'Dent is squarely targeted at portable modules for the OSCON langs
06:44 ingy or the O'Reilly langs
06:44 ingy as I like to call em
06:45 ingy I finally got the impl doing a complete grammar based parse of one lang and emitters for 6 langs
06:46 ingy for the simplest possible definition of C'Dent
06:46 sorear I don't get either reference
06:46 ingy Module>Class>Method>Println
06:46 Trashlord joined #perl6
06:46 ingy enough for hello-world
06:47 ingy of
06:47 sorear OSCON, O'Reilly
06:47 sorear I know one is a conference and the other is a book publisher
06:47 ingy OSCON langs == Perl Python Ruby JS
06:47 sorear but not what either has to do with sets of languages
06:47 ingy also P6 and Py3
06:48 diakopter the ones with named tracks at the oreilly conference named oscon
06:48 diakopter ?
06:48 ingy yeah
06:48 ingy the conference that (like OSDC) brings everyone together to go off and be isolated :)
06:49 ingy http://osdc.tw/2010/03/schedu​le_please_check_your_gun.html
06:50 ingy sorear: that kinda explains what I mean
06:51 ingy diakopter: I almost called C'Dent 'Pyrl'
06:51 ingy because I have pyrl.org...
06:51 ingy want it?
06:51 ingy ;)
06:52 diakopter heh
06:52 ingy I think that would have been an unfortunate choice...
06:52 diakopter I have a bunch of domain names with perl in the name
06:52 diakopter used to have a lot more
06:53 ingy I have perlster.org
06:53 ingy and perl5i.org
06:53 Trashlord 5i?
06:53 ingy I've had perl5i for many years
06:53 lexual joined #perl6
06:53 ingy before schwern's thing
06:53 sorear I hear the Polish NIC gets a lot of Perl users
06:53 ingy I think I offered the domain to him
06:54 ingy sorear: http://makefile.pl
06:55 ingy I'm off to sleep
06:55 ingy night all
07:03 payload joined #perl6
07:10 sunnavy joined #perl6
07:14 xabbu42 joined #perl6
08:10 gfx joined #perl6
08:10 moritz_ rakudo: say 0.5 * ln(9)
08:10 p6eval rakudo 8c434e: OUTPUT«Could not find sub &ln␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
08:10 moritz_ rakudo: say 0.5 * log(9)
08:10 p6eval rakudo 8c434e: OUTPUT«1.09861228866811␤»
08:16 am0c joined #perl6
08:18 am0c rakudo: say ~( 0, 1 ... &infix:<+> )   # infinitive loop ?
08:18 p6eval rakudo 8c434e:  ( no output )
08:19 * moritz_ wonders what &infix:<+> numifies to
08:19 moritz_ rakudo: say +&infix:<+>
08:19 sorear rakudo: say +(&infix:<+>)
08:19 p6eval rakudo 8c434e: OUTPUT«12␤»
08:19 p6eval rakudo 8c434e: OUTPUT«12␤»
08:19 moritz_ 12? ....
08:19 sorear 12?
08:19 sorear rakudo: say +(&infix:<0>)
08:19 p6eval rakudo 8c434e: OUTPUT«Could not find sub &infix:<0>␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
08:19 sorear rakudo: say +(&infix:<*>)
08:19 moritz_ probably number of multis
08:20 p6eval rakudo 8c434e: OUTPUT«9␤»
08:20 moritz_ rakudo: class A { }; multi sub infix:<+>(A $, A $) { }; rakudo: say +&infix:<+>
08:20 p6eval rakudo 8c434e: OUTPUT«Confused at line 11, near "rakudo: sa"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
08:20 moritz_ rakudo: class A { }; multi sub infix:<+>(A $, A $) { };  say +&infix:<+>
08:20 p6eval rakudo 8c434e: OUTPUT«1␤»
08:20 moritz_ rakudo: class A { }; multi sub infix:<+>(A $, A $) { };  say 3+3
08:20 p6eval rakudo 8c434e: OUTPUT«No applicable candidates found to dispatch to for 'infix:<+>'. Available candidates are:␤:(A , A )␤␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
08:20 moritz_ ouch
08:21 moritz_ it hides all the outer multis
08:21 moritz_ worth a bug report
08:21 sorear I thought the point of multis was they augmented
08:21 moritz_ you add candidates; hiding candidates is a bug
08:22 sorear are you going to file it?
08:23 moritz_ done
08:23 moritz_ (using email for filing bugs)++
08:24 sorear an irc bug filer would be pretty neat
08:25 moritz_ aye; but not trivial
08:31 lexual left #perl6
08:41 payload joined #perl6
08:45 clintongormley joined #perl6
08:56 envi^home joined #perl6
09:05 jnthn morning
09:05 phenny jnthn: 05:33Z <quester_> tell jnthn - Thank you very much for the answer to the "our sub ..." question.
09:06 sorear Are any of Rakudo's competitors currently viable for applications?
09:06 jnthn moritz_: It's only sort of a bug, fwiw.
09:06 moritz_ jnthn: care to elaborate?
09:06 jnthn Oh, maybe it is...
09:06 moritz_ sorear: depends on the application :-)
09:07 jnthn Anyway, the issue isn't so much that outer lexical candidates don't get found..
09:07 moritz_ sorear: the most usable besides rakudo are probably pugs and elf, both of which aren't developed anymore
09:07 jnthn ...it's that operators are not lexical in the setting yet.
09:07 moritz_ ah
09:07 moritz_ but they could be?
09:07 jnthn Not yet without causing far too much breakage.
09:07 moritz_ :(
09:08 jnthn We've got some really quite awkward issues relating to lexicals at BEGIN/INIT time.
09:08 barney joined #perl6
09:09 sorear moritz_: something with a fair amount of metamodel funny business and a need for external libraries
09:09 moritz_ sorear: then ask pmurias about mildew when he's around
09:10 moritz_ sorear: it's based on smop, which in turn explored many corners of the meta model
09:15 jnthn sorear: Just tried to build Blizkost and I get:
09:15 jnthn bkmarshal.c(134) : error C2065: 'my_perl' : undeclared identifier
09:16 jnthn Also various warnings liek:
09:16 jnthn bkmarshal.c(134) : warning C4047: 'function' : 'struct interpreter *' differs in levels of indirection from 'int '
09:16 jnthn That's on MS VC++
09:17 sorear uhhh
09:18 jnthn SETATTR_P5Scalar_sv(interp, pmc, SvREFCNT_inc(sv));
09:18 jnthn That's the line it balks on
09:18 sorear apparently, SvREFCNT_inc requires a lexical interpreter only on !__GNUC__
09:18 jnthn Ah
09:18 jnthn In that case, probably it's not such a tricky fix.
09:20 sorear change SvREFCNT_inc to SvREFCNT_inc_simple_NN and it'll work
09:20 sorear SvREFCNT_inc guarantees to evaluate its argument only once
09:21 sorear #  define SvREFCNT_inc(sv)>-----\
09:21 sorear >-------((PL_Sv=MUTABLE_SV(sv)) ? (++(SvREFCNT(PL_Sv)),PL_Sv) : NULL)
09:21 jnthn sorear: oh, I'd done it by having a lexical my_perl
09:21 jnthn Is that OK too?
09:21 sorear yes
09:21 jnthn OK, cool, I'll commit htat.
09:22 moritz_ are revision control conflict markers ( <<<<<<< ) always at the start of the line?
09:22 sorear yes
09:22 moritz_ so it's quite easy to safely plug into STD.pm
09:22 jnthn sorear: That gets us through the compile, but the linking is busted.
09:22 jnthn oh heh
09:22 jnthn LINK : fatal error LNK1104: cannot open file "p5sv$(O.obj"
09:23 sorear jnthn: are you using -W11 with MSVC too?
09:23 moritz_ looks like a non-expanded thingy ini the makefile :-)
09:23 jnthn -W4
09:23 jnthn Is what ends up in the makefile.
09:23 jnthn moritz_: Yes. :-)
09:25 sorear jnthn: on Linux the gcc command line ends up with 12 lines of word-wrapped -W flags
09:25 jnthn !!
09:25 dual joined #perl6
09:25 sorear hence, -W11
09:26 jnthn hmm, wonder if it's:
09:26 jnthn $(PMC_SOURCES:.pmc=$(O))
09:27 sorear can we please do something about those makefiles
09:27 jnthn Yes, almost certainly it dislikes that line.
09:27 sorear they scare me
09:31 jnthn sorear: Fixed the build on Win32. :-)
09:31 dakkar joined #perl6
09:32 moritz_ anyone want to test a STD.pm patch for me? (not at home, no access to my build...)
09:32 moritz_ http://moritz.faui2k3.org/tmp/​version-control-markers.patch
09:32 jnthn Makefiles aren't great, but at least they're widely understood.
09:32 moritz_ inspired by aristotle++
09:33 jnthn nt/callsv.t ................ Dubious, test returned 5 (wstat 1280, 0x500)
09:33 masak joined #perl6
09:33 jnthn lolitsmasak
09:33 masak oh hai, #perl6
09:33 phenny masak: 06 Apr 18:34Z <moritz_> ask masak where he installed pdflatex from, CokeBot9000++ wants to know
09:33 moritz_ I've seen that one failing too
09:33 masak hm, pdflatex comes with the tetex package on MacPorts, methinks.
09:34 masak I haven't backlogged yet, but it seems that hanekomu quit due to yesterday's debacle.
09:34 masak as in 'quit being a Perl 5 community member'.
09:34 moritz_ I don't think he did
09:34 moritz_ reading mst's last twit
09:34 masak ok, good.
09:34 sorear jnthn: the makefile language may be widely understood but our makefiles can only be understood by people far above my level
09:36 jnthn sorear: Grrr. When I run that test file under the debugger, it fails to segfault.
09:36 jnthn sorear: It does pass the test anyway, but segfaults on exit.
09:37 moritz_ so... global destruction? :(
09:37 jnthn Dunno, because it refuses to segv under the debugger. :-(
09:37 jnthn But very possibly.
09:38 sorear jnthn: the handling of global destruction in blizkost is very fragile, I'm suprised it doesn't currently segfault on linux
09:38 jnthn Ah, OK.
09:38 jnthn Should make install work?
09:38 jnthn Or not yet?
09:38 sorear the fundamental issue is that the p5whatever destructors need to refer to the interpeter
09:38 sorear but neither Perl5 nor Parrot have any concept of ordered destruction
09:38 quester_ I have a patch to make sort work properly... I thinkf.. but I have a few questions about style and tests.  Would anyone care to discuss that now...?
09:39 quester_ s/thinkf/think/
09:39 dduncan left #perl6
09:39 masak quester_: sure.
09:39 sorear jnthn: I haven't touched make install, nor tested it
09:39 sorear if it works, awesome
09:39 jnthn sorear: No, it fails
09:40 jnthn sorear: But that's OK, at least that means it's not a Win32 specific brokenness. :-)
09:40 sorear right now it's impossible to dynload blizkost from rakudo
09:40 sorear due to a very weird bug which I don't understand at all, but tentatively assigned to Parrot
09:40 jnthn I'd expect it'd need make install for that.
09:40 sorear since it causes completely nonsensical stack traces
09:41 sorear no, I'm testing perl6 -e 'pir::load_bytecode("./perl5.pbc")'
09:41 quester_ Okay, thanks masak.  After creating a [Parrot] ResizablePMCArray I need to populate it.  I'm using this... $index_PARROT_RPA.push($_) for ^self.elems;  ... but I'm not sure if there is any convention about which methods are supposed to work for RPA's.
09:41 sorear it also fails with the installed absolute path to nqp.pbc, so I don't think it's my fault
09:42 sorear in any event, not being able to load the library from the only major language that's working well on parrot renders the library useless
09:42 jnthn :/
09:42 masak quester_: why are you creating a Parrot ResizablePMCArray?
09:42 quester_ I've noticed that .say, .perl, and .elems don't work for RPA's, and several simple-looking things like @index_PARROT_RPA = ^self.elems; replace an RPA with a Perl6 Array.
09:43 masak yes, I think you should.
09:43 jnthn quester_: Working with an RPA from Perl 6 space may not end particularly well.
09:44 jnthn sorear: I'd really like to try and get it working at some level soonish.
09:44 moritz_ in the long run that's something that Rakudo should support, for HLL interop
09:44 jnthn sorear: Gotta do @other_task now, but may be able to have a dig tonight.
09:45 jnthn Anyway, at least it builds again on Win32 now. :-)
09:45 quester_ Oh, that.  Patrick Michaud rewrote sort for Rakudo-ng.  He wanted to use the Parrot sort for speed, but he wanted to keep the code in Perl 6, probably to make it somewhat easier to read and maintain.
09:46 quester_ AFAIK, since Perl6 sort and Parrot sort are both methods, the only way to control which one is called is to use sort on an appropriate object.
09:47 jnthn quester_: That all matches up with what I understood of it too.
09:48 quester_ The existing release of Rakudo uses Parcel for that, but that means that sorting a Parcel goes to the underlying Parrot sort, which doesn't work quite the same way.  For instance, the first example in the Perl 6 book, the one about tennis...
09:48 moritz_ right
09:48 moritz_ (table tennis scores, actually :-)
09:49 quester_ ... fails because it uses sort with a monadic (unary?) "by" parameter, on a Parcel that was returned by a previous sort.  I fixed that, but I'm not sure how fragile using .push on an RPA might be.
09:51 payload1 joined #perl6
09:51 mikehh rakudo: builds on parrot r45414 - tests spectest_smolder #33038 - 2 failures
09:51 mikehh rakudo: 32,508 ok, 2 failed, 451 todo, 1,493 skipped and 14 unexpectedly succeeded
09:51 mikehh rakudo: Ubuntu 10.04 beta amd64 (gcc with --optimize)
09:51 p6eval rakudo 8c434e: OUTPUT«Could not find sub &spectest_smolder␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
09:51 p6eval rakudo 8c434e: OUTPUT«Confused at line 11, near "32,508 ok,"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
09:51 p6eval rakudo 8c434e: OUTPUT«Confused at line 11, near "Ubuntu 10."␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
09:52 sorear jnthn: you mean, fix #1452?
09:52 jnthn "add method debug to $conf object" ?
09:52 quester_ So... should I leave it in Perl6, with .push, or would it be better to move the whole initialization of the RPA into PIR?
09:53 jnthn quester_: I think .push on an RPA is safe, so long as you know it's an RPA. :-)
09:53 jnthn sorear: Wrong ticket number?
09:53 quester_ Ok, thank you.
09:54 jnthn quester_: pir::push__vPP is even safer though.
09:54 jnthn pir::push__vPP($the_rpa, $thething)
09:54 sorear jnthn: 1542
09:54 jnthn And a bunch more efficient too
09:54 sorear this is what I get for using my memory
09:54 IllvilJa joined #perl6
09:55 quester_ Ah!  Good!  Thanks, jnthn++,I will try that.
09:56 jnthn sorear: We explicitly import PCT.
09:56 jnthn See line 42 (YARLY) of src/Perl6/Compiler.pir i Rakudo.
09:58 dakkar joined #perl6
09:59 quester_ Next question:  I am trying to figure out how to get t/spec/S32-list/sort.t to work.  Apparently Pugs has a subroutine form of sort and a Hash.sort, both of which Rakudo lacks.  As far as I can see they aren't in the spec.  Should I add them to sort.t, or to Rakudo,...
09:59 quester_ ... or use #?rakudo skip 'named args' to just skip the tests?
10:00 moritz_ I think it should just be in the spec
10:00 moritz_ and in Rakudo
10:00 moritz_ Hash.sort => Hash.pairs.sort
10:01 ruoso rakudo: class A; say A.HOW.^can('can').signature
10:01 p6eval rakudo 8c434e: OUTPUT«Method 'signature' not found for invocant of class 'Integer'␤current instr.: 'perl6;A;_block45' pc 303 (EVAL_1:136)␤»
10:01 moritz_ so it's your choice if you implement it, or fudge the test
10:01 ruoso rakudo: class A; say A.HOW.^method('can').signature
10:01 p6eval rakudo 8c434e: OUTPUT«Method 'method' not found for invocant of class ''␤current instr.: '!dispatch_.^' pc 410 (src/glue/dispatch.pir:100)␤»
10:01 jnthn huh
10:01 jnthn rakudo:  class A; say A.^can('can').signature
10:01 p6eval rakudo 8c434e: OUTPUT«Method 'signature' not found for invocant of class 'P6Invocation'␤current instr.: 'perl6;A;_block45' pc 303 (EVAL_1:136)␤»
10:01 jnthn rakudo:  class A; say A.can('can').signature
10:02 p6eval rakudo 8c434e: OUTPUT«Method 'signature' not found for invocant of class 'P6Invocation'␤current instr.: 'perl6;A;_block45' pc 303 (EVAL_1:136)␤»
10:02 jnthn Aha, that's more like it.
10:02 ruoso rakudo: class A; say A.HOW.^methods
10:02 p6eval rakudo 8c434e: OUTPUT«Method 'methods' not found for invocant of class ''␤current instr.: '!dispatch_.^' pc 410 (src/glue/dispatch.pir:100)␤»
10:02 jnthn Yeah, that's going to end awkwardly at the moment.
10:02 ruoso jnthn, I want to introspect the metamethods
10:02 jnthn Tough.
10:02 jnthn The metaclass of the thing we use to implement the ClassHOW metaclass doesn't support introspection.
10:03 quester_ Okay, adding it to Rakudo and the spec seems logical.  Thank you, moritz_++
10:03 ruoso jnthn, okay... is there a way to override the meta for one class such that it implements methods depending on the keys of a hash
10:04 moritz_ rakudo: class Match is Array does Hash { }; my $m = Match.new; $m[0] = 3; say $m[0]
10:04 p6eval rakudo 8c434e: OUTPUT«Null PMC access in invoke()␤current instr.: 'perl6;Proxy;!STORE' pc 14550 (src/builtins/Method.pir:18)␤»
10:04 moritz_ wow
10:04 moritz_ seems the road to pure Perl 6 match objects is longer than I expected :/
10:05 ruoso moritz_, a Match object looks more like a Parcel then like a composition of Array and Hash
10:05 jnthn Probably more like a Capture I guess, since it has named parts...
10:06 ruoso oh yeah... of course... and the named parts are not counted for the positional index
10:06 jnthn ruoso: Not yet, method ^dispatch($name, $capture) should be possible by the time we reach R* though.
10:06 jnthn Since I want it for other stuff.
10:06 ruoso will it be overrideable?
10:06 moritz_ rakudo: class Match is Capture { }; say Match.new
10:06 p6eval rakudo 8c434e: OUTPUT«Match()<0x40b2e78>␤»
10:06 jnthn Should be.
10:06 ruoso cool
10:07 moritz_ rakudo: class Match is Capture { method Str { self.join(', ') }; say Match.new
10:07 p6eval rakudo 8c434e: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 11␤current instr.: 'perl6;Regex;Cursor;FAILGOAL' pc 1664 (ext/nqp-rx/src/stage0/Regex-s0.pir:907)␤»
10:07 moritz_ rakudo: class Match is Capture { method Str { self.join(', ')} }; say Match.new
10:07 p6eval rakudo 8c434e: OUTPUT«␤»
10:07 moritz_ rakudo: say Capture ~~ Positional
10:07 p6eval rakudo 8c434e: OUTPUT«0␤»
10:07 moritz_ rakudo: say Capture ~~ Hash
10:07 ruoso that's a rakudobug
10:07 p6eval rakudo 8c434e: OUTPUT«0␤»
10:07 moritz_ rakudo: say Capture ~~ Mapping
10:08 p6eval rakudo 8c434e: OUTPUT«Could not find sub &Mapping␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
10:08 moritz_ rakudo: say Capture ~~ Associative
10:08 p6eval rakudo 8c434e: OUTPUT«0␤»
10:08 ruoso that's also a rakudobug
10:08 moritz_ let's join that into one :-)
10:08 jnthn Aye, capture needs to be marked as doing those two.
10:09 jnthn ruoso: You'll probably also be happy to know that our method postcircumfix:<( )> now just gets passed one positional parameter which is a capture. :-)
10:09 ruoso :D
10:10 sorear Why are captures a non-native type?
10:10 ruoso now we just need the matching iterator in the signature binding to allow varying-multi reduce
10:10 ruoso sorear, because you can customize the invocation
10:11 sorear why would you want to
10:12 ruoso because you might be implementing something different then a regular routine call
10:13 sorear like what?
10:13 jnthn ruoso: Yeah, I'm still kinda waiting on something concrete to land in the spec on that.
10:15 M_o_C joined #perl6
10:15 ruoso sorear, like using the result of a regexp as the arguments to the rountine
10:16 sorear that sounds like a job for coercion
10:16 sorear not tied captures
10:16 moritz_ WAMTOWTDI (we allow ...) :-)
10:17 ruoso sorear, coercion would enforce context too early on the match object
10:17 masak TimToady: enjoying your responses to the 'bitsets' thread. I find it interesting to see that you call (*) what I put into Rakudo as (&). :) perhaps we'll need both variants?
10:17 sorear I think we should call the operator /\ or +&
10:18 sorear it's just a boolean algebra
10:18 ruoso boolean algebra cover a small part of the use cases for set
10:18 gfx joined #perl6
10:18 ruoso bitset is a small part of the use cases for se
10:18 ruoso *set
10:19 moritz_ I don't understand Damian
10:19 ruoso but who does? :D
10:19 moritz_ he worries that Perl 6 doesn't allow easy enough C-like operators
10:19 moritz_ but if that's what wants, why not just use Int or int?
10:20 ruoso did you see my reply?
10:20 * ruoso later &
10:21 moritz_ read it now
10:23 jnthn enum Perms <Read Write Exec> = 1,2,4...*; # could maybe fly. maybe.
10:23 jnthn So long as it's a special syntactic form.
10:23 jnthn enum Perms of (1,2,4...*) <Read Write Exec>;
10:23 jnthn is srsly DO NOT WANT though.
10:24 * moritz_ doesn't see the need for any new language construct at all
10:25 moritz_ maybe I'm just a sloppy reader, but it seems we have all that's needed: bit operation, subset types, insanity
10:27 mathw I kind of like the idea of specifying a range to draw enum values from
10:27 mathw although with 1, 2, 4 ... *, how does it know it's powers and not +2?
10:27 moritz_ mathw: because 1 + 2 != 2
10:27 mathw oh yes
10:27 mathw but 1 ** 2 != 2
10:28 moritz_ but 2 ** 1 = 2 :-)
10:28 moritz_ erm, ==
10:28 mathw yes, just redefine the universe there :)
10:28 mathw 2 + 2 = 5
10:28 * mathw waits
10:28 mathw wouldn't that be a fun language
10:28 moritz_ /kick mathw acute danger to universe
10:32 moritz_ http://rakudo.de/progress.png cute
10:34 sorear how does it know it's powers and not say, the solution to a second order difference equation
10:34 sorear (fun fact: every sequence of terms can be extrapolated as a polynomial.)
10:35 * jnthn wonders how tell Perl 6 is taylored to handle those.
10:35 moritz_ sorear: by spec
10:36 jnthn *well
10:38 mathw the spec does actually have the algorithm for figuring out what the pattern is in it
10:57 masak lue: I'm sorry, but the guy who 'figured out the solution to division by zero' managed to restate what everyone already knew: if you introduce the kind of number he did, you can still "count" with it, but the reals are no longer a field. his 'insight' is almost tragically mundane.
10:58 masak rakudo: say πr²
10:58 p6eval rakudo 8c434e: OUTPUT«Confused at line 11, near "say \u03c0r\x{b2}"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
10:59 masak rakudo: say '16'{'%x'}
10:59 p6eval rakudo 8c434e: OUTPUT«1␤»
10:59 * masak submits rakudobug
11:00 jnthn wtf is it parsing that as...
11:00 masak you tell me.
11:00 jnthn std:  say '16'{'%x'}
11:00 p6eval std 30331: OUTPUT«ok 00:01 108m␤»
11:00 masak well, yes, but... :)
11:00 jnthn I mean, I guess it's just a hash index into a string, but it shouldn't work...
11:01 masak no.
11:01 masak it shouldn't.
11:01 jnthn rakudo: say Q:PIR{ %r = 'huh'[0] }
11:01 p6eval rakudo 8c434e: OUTPUT«The opcode 'set_p_sc_kic' (set<3>) was not found. Check the type and number of the arguments␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 987 (compilers/pct/src/PCT/HLLCompiler.pir:545)␤»
11:02 agentzh joined #perl6
11:07 am0c joined #perl6
11:08 f00li5h joined #perl6
11:10 masak lunch &
11:15 f00li5h joined #perl6
11:26 moritz_ _kic? what's that?
11:27 jnthn keyed integer constant
11:36 constant joined #perl6
11:36 constant joined #perl6
11:40 dakkar joined #perl6
11:45 * moritz_ just found lots of OSS guys on linkedin
11:45 payload joined #perl6
11:50 moritz_ btw I (and a few others) have been email from another student who is interested in some Perl 6 projects for gsoc
11:51 bluescreen joined #perl6
11:55 payload joined #perl6
11:57 Guest67710 joined #perl6
12:05 moritz_ I wonder if he'll show up here
12:06 dual joined #perl6
12:06 masak that generally helps. not 100% necessary, but often much easier.
12:07 moritz_ since it's the only real-time communication medium that I usually use for hacking, it's hard to imagine mentoring without it
12:07 masak aye.
12:08 am0c joined #perl6
12:10 moritz_ I mean I could settle with jabber of skype chat or whatever... but it's really good to expose the students to the community
12:11 takadonet morning all
12:12 mathw oh definitely
12:12 masak takadonet: \o
12:12 mathw and the perl 6 community is very strong
12:28 frettled we can lift at least 10 stone
12:28 masak I could easily imagine spending the summer actually writing the u4x documentation. maybe I should submit that as a GSoC proposal, too.
12:28 masak does feel slightly strange, though, since I originated the project...
12:28 moritz_ masak: read the program guidelines first
12:29 masak moritz_: URL?
12:29 moritz_ masak: it says that projects should be primarily code, not docs
12:29 masak ah.
12:29 moritz_ we can lift at least 10 stone
12:29 moritz_ we can lift at least 10 stone
12:29 moritz_ argl
12:29 moritz_ sorry
12:29 moritz_ copy & paste gone wrong
12:29 masak it does bear repeating. :P
12:29 moritz_ http://socghop.appspot.com/document/s​how/gsoc_program/google/gsoc2010/faqs
12:30 masak hm. that's the one I just read. :)
12:30 masak must've missed the part about 'primarily code'.
12:30 masak but fair enough. then I don't have to consider u4x.
12:30 moritz_ the combination of windows Ctrl+c/Ctrl+v and putty mark/Ctrl+Insert is... interesting
12:31 moritz_ erm, shift+insert
12:31 masak hm, I'll remove "User level documentation and examples - http://svn.pugscode.org/pugs/docs/u4x/READM" from "Rakudo Projects" on http://www.perlfoundation.org/pe​rl5/index.cgi?gsoc_2010_projects
12:31 masak it's not a Rakudo project, and it's not a primarily-code project. :)
12:31 moritz_ please do
12:36 masak done.
12:37 masak there was a bit of further confusion/duplication between the "Perl 6" and "Rakudo" headings. I fixed that.
12:37 moritz_ masak++
12:37 moritz_ so... have you decided on a topic yet? :-)
12:38 masak I'll submit a Buf proposal.
12:38 moritz_ great!
12:38 masak yes, I think it will be.
12:39 * moritz_ really looks forward to seeing both the proposal and the work
12:40 masak :)
12:40 moritz_ have you thought of a mentor yet? maybe jnthn?
12:41 masak haven't thought of it, but jnthn sounds like an appropriate mentor for this.
12:41 masak there will be a bit of Parrot guts involved.
12:41 moritz_ IMHO technical guidance and mentoring can mostly be detangled
12:42 masak in that case, I'd take any of the #perl6 frequenters as a mentor.
12:43 masak I don't have any strict preferences, at least.
12:43 mathw Don't pick me!
12:43 masak :)
12:43 moritz_ if there'll be a good test suite proposal, I'll mentor that. If not, I'm willing to act as either mentor or backup mentor for just about any Perl 6 project
12:44 dual joined #perl6
12:45 mathw I'd rather be submitting proposals, but I'm not a student
12:46 dual joined #perl6
12:48 CokeBot9000 masak - trying tetex, danke.
12:49 moritz_ I'd rather be sumitting proposals too, and I could enrole as PHD student, but I fear I don't have time for 20hrs/week hacking
12:50 masak and then you couldn't be a mentor for a possible spectests submission :)
12:50 moritz_ that too
12:51 moritz_ but I think others could do that too
12:51 dual joined #perl6
12:52 frettled Does anyone remember which Perl version introduced the ?: clustering thing for regexps, so that we didn't have to create unnecessary captures?  I'm trying to convince someone that their code is _very_ old-fashioned and not just merely inefficient.
12:53 mathw 5.6 at the very latest
12:54 mathw in that it's definitely in 5.6 because I've used it
12:54 CokeBot9000 joined #perl6
12:54 frettled It's in the third edition of Programming Perl, at least.
12:54 * CokeBot9000 tests.
12:55 frettled and in my 1996 edition of the Perl 5 Desktop Reference
12:56 frettled It's probably in 5.001, since that reference was printed in February 1996, and 5.002 was released 1996-02-29.
12:58 mathw I think we can agree that it is indeed very old-fashioned not to use it
12:58 mathw although Perl 6's solution is a tad more elegant :)
12:59 frettled Perl 6 is always more elegant.  ;)
13:00 quester_ Good night, #perl6
13:01 quester_ left #perl6
13:03 masak syntactically sweet dreams, quester_.
13:03 frettled Ah, (? was invalid syntax in Perl 4, so that probably was news in Perl 5, then.
13:05 dual joined #perl6
13:06 dual joined #perl6
13:09 PerlJam greetings #perl6lings
13:10 masak \o
13:10 moritz_ o/
13:11 hejki rakudo: say "c-" x 3 ~ "combo breaker"
13:11 p6eval rakudo 8c434e: OUTPUT«c-c-c-combo breaker␤»
13:11 masak :P
13:12 masak rakudo: say "c-" x 3, "combo breaker"
13:12 p6eval rakudo 8c434e: OUTPUT«c-c-c-combo breaker␤»
13:12 * masak should write a blog post about "don't concatenate things when you can use a comma" :)
13:12 moritz_ what's wrong with concatenation?
13:12 * moritz_ plays dumb
13:12 masak nothing, particularly
13:12 masak just a waste of perfectly good strings.
13:13 frettled I prefer conjudenation
13:13 hejki i prefer conjecturion :)
13:13 moritz_ unless you mix Bufs with Strs
13:13 PerlJam I prefer conflation :p
13:13 frettled masak: besides, tilde is more difficult to access on a non-US keyboard
13:13 masak that, too.
13:13 PerlJam frettled: really?
13:13 masak waste of shift presses.
13:13 PerlJam Got a pic of a non-US keyboard ?
13:13 frettled tilde must die as an essential programming character, alongwith {, [, ], and }
13:14 masak um...
13:14 masak frettled: or just do like I do, and use a US layout with your keyboard.
13:14 frettled PerlJam: http://images.google.com/images?q=norwegian+​keyboard+layout&amp;oe=utf-8&amp;rls=org.moz​illa:en-US:official&amp;client=firefox-a&amp​;um=1&amp;ie=UTF-8&amp;ei=J4W8S4jpBMuaOOvEzJ​MI&amp;sa=X&amp;oi=image_result_group&amp;ct​=title&amp;resnum=4&amp;ved=0CB8QsAQwAw
13:14 frettled masak: It's a bit cumbersome to do that with a Mac
13:14 frettled that is, it works okay-ish in some applications, but not in X
13:15 frettled Windows' keyboard-switching feature is superior.
13:15 moritz_ frettled: uhm... [] and {} are difficult on the German keyboard too, but there are just not enough braces on that keyboard that are easily accessible
13:15 frettled But I don't like Wintendo.
13:15 frettled moritz_: yes, it's a common problem for us.
13:15 masak frettled: I've never had any problems with it in X. I'm on a Mac.
13:15 PerlJam We could got fully unicode and make all keystrokes equally difficult to type  ;)
13:15 frettled masak: oh, you've found a hotkey combination that actually works?
13:16 PerlJam "To type the letter 'a', it's shift-meta-5"
13:16 frettled \o/
13:17 masak frettled: think so. at least I've never felt it to be a problem.
13:17 astrojp joined #perl6
13:17 frettled masak: I strongly dislike having to move the mouse to the upper right corner, you see :)
13:19 jnthn masak: I'm happy to act as mentor or tech guide for Buf.
13:19 masak don't know what you're talking about.
13:19 masak jnthn: ok, cool!
13:19 * mathw finds a compose key on a UK keyboard suits him nicely in Linux,b ut then he only has to write in English, German and Esperanto
13:19 jnthn I dare you to submit a talk about your work, titled "In the Buf".
13:19 masak :P
13:20 masak you silly English people with your idiomatic expressions...
13:20 Woody2143 joined #perl6
13:21 frettled :)
13:34 am0c ./perl6 --target=pir is not working at the moment. but is it right that it was working feature in the past?
13:34 moritz_ it was, yes
13:34 moritz_ what's the problem right now?
13:35 jnthn am0c: Not working?
13:35 am0c I'm just answering the question in the forum. and i thought i should make sure.
13:35 * jnthn is curious because he uses that for debugging...
13:35 moritz_ building Test.pir relies on that
13:35 am0c oops
13:35 masak which Perl version was it that added support for binary data. Perl 2? Perl 3?
13:35 moritz_ so it seems to be working for modules
13:35 jnthn What doesn't work standalone scripts.
13:36 PerlJam am0c: ./perl6 --target=pir works just fine except for code given on the command line with -e   (to my knowledge anyway)
13:36 am0c works for modules, but not works for standalone script
13:36 moritz_ masak: perl 3, according to perldoc perlhist
13:36 jnthn e
13:36 masak thanks.
13:36 jnthn gah s
13:36 jnthn s/What/But/
13:36 am0c PerlJam: is that by a design?
13:36 PerlJam am0c: accident I hope
13:37 am0c i see
13:37 jnthn afk for a bit, laundry, walk in the sun, systemka.
13:40 PZt joined #perl6
13:46 dalek joined #perl6
13:50 rgrau joined #perl6
13:55 masak S02:1322: Buf         Perl buffer (a stringish array of memory locations)
13:55 masak I find that to be an odd description.
13:56 molaf joined #perl6
13:56 masak in which sense isn't every array an 'array of memory locations'?
13:56 masak I thought a Buf contained integers, not memory locations.
13:56 * moritz_ finds that odd too
13:57 masak also, only S03 mentions Buf16 and Buf32.
13:57 masak and only in passing.
13:57 masak std: Buf16
13:57 p6eval std 30331: OUTPUT«Undeclared name:␤      'Buf16' used at line 1␤ok 00:01 108m␤»
13:57 masak ...and Buf8.
13:58 ash_ joined #perl6
13:58 ash_ is there a way to do like Int.new(5)?
13:59 ash_ i am probably just retarded, but i am trying to figure out how ints, strings, etc. work (the constants) in rakudo, they don't have any attributes...
14:00 moritz_ ash_: parrot provides PMC "boxes" for the native types
14:00 moritz_ (int, num, str)
14:00 moritz_ and afaict Rakudo uses those
14:00 ash_ but is there a way to do Int.new?
14:00 meppl joined #perl6
14:00 ash_ rakudo: say Int.new(5);
14:00 p6eval rakudo 8c434e: OUTPUT«0␤»
14:00 ash_ or should they be some special constant internally?
14:01 masak since Int values are immutable, expecting to get a new instance out of .new is a bit suspicious.
14:01 masak even apart from the fact that you're already sending it the instance you want :)
14:02 ash_ yeah, but that could be $a, you could not know what your sending it
14:02 moritz_ ash_: then you want $a.Int
14:02 ash_ ah, good point
14:08 jnthn It's probably fine that how you get an Int is an implementation detail rather than having a spec'd way.
14:09 masak jnthn: have you signed up as a mentor for this year's GSoC?
14:10 moritz_ if not, you should... our esteemed masak is going to hand in a proposal
14:10 * masak is working on the proposal right now
14:15 jnthn masak: nej
14:15 jnthn moritz_: How'd I do that? :-)
14:15 jnthn .oO( sign up...this is starting to sound like responsibility! )
14:15 masak jnthn: http://socghop.appspot.com/gsoc/
14:15 masak (I think)
14:15 moritz_ jnthn: go to http://socghop.appspot.com/
14:15 moritz_ get an account, log in
14:15 ash_ masak: what are you doing yours on?
14:16 masak ash_: Buf
14:16 moritz_ and then in the left column at the bottom there's a small link called "Apply as a mentor"
14:16 ash_ i am submitting one for parrot
14:16 masak nice.
14:16 ash_ doing an llvm stack frame builder, and maybe libffi
14:16 moritz_ jnthn: when you've done that, also ping dukeleto on IRC so he'll approve you as a mentor
14:18 PerlJam jnthn: pinging dukeleto is important given how close to the deadline for student apps we are.
14:20 ash_ deadline is  the 9th, so 2 days from now
14:20 jnthn hmm...I don't see dukeleto on here
14:20 * jnthn finds his email
14:21 PerlJam wow, parrot gets even more love than yesterday
14:23 takadonet PerlJam: what do you mean by that?
14:24 PerlJam just that there are more parrot proposals
14:24 PerlJam (I don't know why that surprises me)
14:25 jnthn Emailed.
14:26 PerlJam jnthn: dukeleto is on #parrot
14:26 [particle] i'll approve you
14:26 PerlJam (irc.perl.org)
14:26 [particle] i'm backup org admin
14:26 PerlJam [particle]++
14:26 jnthn [particle]: Cool, thanks.
14:27 ash_ i kinda like the nitty gritty details, so parrot seems more my cup of tea, although i do rather light rakudo
14:28 moritz_ I don't know how much mentoring capacity we have for rakudo anyway
14:28 moritz_ probably not more than 3 or so
14:29 payload joined #perl6
14:30 ash_ in rakudo, are all attributes essentially private? since doing $.a really just makes methods for accessing a? or am i mis-understanding again?
14:30 [particle] jnthn: you've been accepted.  fill in your address, and you'll get a nice t-shirt :)
14:31 jnthn ash_: In Perl 6 too. :-)
14:31 jnthn ash_: Yes, all private, . implies create accessor method.
14:31 ash_ kk, just checking, and that just returns an lvalue essentially?
14:31 moritz_ only if the attribute 'is rw'
14:31 ash_ ah, good point
14:31 ash_ hmm
14:32 ash_ wonder what i should default to in nqp...
14:32 ash_ my p6opaque object is being simplified, now i only have 3 attribute to it, a list of attributes, a list of method pointers, and its class name
14:33 moritz_ what about inheritance? is that handled by the MOP?
14:33 ash_ for me, yeah, thats handled outside of the p6opaque object
14:34 ash_ (i have a parents attribute, so i know which parents to find)
14:34 ash_ although that might be useful to move out of the attributes table...
14:35 jnthn OK, all signed up.
14:36 nacho joined #perl6
14:38 ash_ which parent lookup algorithm does perl 6 use by default for multiple inheritance?
14:39 ash_ MRO?
14:39 jnthn C3
14:40 nihiliad joined #perl6
14:40 [particle] just like python, and current perl 5
14:40 justatheory joined #perl6
14:40 vorner joined #perl6
14:40 ash_ i thought python used mro
14:40 moritz_ does perl 5 really use it by default?
14:40 * moritz_ remembers some 'use mro "c3";' in DBIx::Class
14:40 moritz_ oh, maybe that's for older perls
14:41 [particle] yep, that's for older perls
14:41 jnthn I think I've implemented C3 twice, and each time promptly forgot how it works. :-)
14:42 ash_ i am just trying to figure out how order matters for my list of parents
14:42 moritz_ I think it's just some breadth-first search
14:51 [particle] msg ash_ wikipedia has plenty of direct links for C3 info: http://en.wikipedia.org/wiki/C3_linearization
14:52 [particle] phenny, tell ash_ wikipedia has plenty of direct links for C3 info: http://en.wikipedia.org/wiki/C3_linearization
14:52 phenny [particle]: I'll pass that on when ash_ is around.
14:52 [particle] too many channels, too many message bots
14:52 moritz_ too few sane message bots
14:52 [particle] s{'message'}{}
14:53 holli joined #perl6
14:53 * moritz_ tried hard to increase the sanity of the #perl6 bots
14:54 [particle] the log bots are quite sane, thank you :)
14:54 moritz_ :-)
14:55 moritz_ hugme is... well... not quite sane, but at least quiet unless spoken to
14:55 [particle] yes, i do see my name highlighted more frequently than i should, but it's no bother
14:55 [particle] if i get upset about it, i can always get a hug
14:55 frettled Too many highlight particles?
14:56 moritz_ :-)
14:56 frettled hugme: hug [particle]
14:56 * hugme hugs [particle]
14:56 [particle] hugme: hug hugme
14:56 * hugme hugs hugme
14:56 moritz_ frettled: the 'show $project' command lists all meta comitters
14:56 moritz_ hugme: show november
14:56 hugme moritz_: the following people have power over 'november': TimToady, [particle], colomon, jnthn, masak, moritz_, pmichaud, viklund. URL: http://github.com/viklund/november/
14:56 moritz_ which typically includes [particle]++
14:56 [particle] i really need to step back into p6 development
14:57 [particle] my fingers are twitching from my time away
14:57 * masak uses a tractor beam to pull [particle] back in
14:57 * moritz_ assists masak by providing a hugbot
14:58 CokeBot9000 hugme: show partcl-nqp
14:58 hugme CokeBot9000: sorry, I don't know anything about 'partcl-nqp'
14:58 moritz_ funny thing is, you can actually move tiny spheres around with laser beams
14:58 frettled moritz_: boring factoid particle! ;)
14:58 ruoso joined #perl6
14:59 * moritz_ feels as bad as purl-- should
14:59 masak purl--
15:01 * moritz_ wonders if mysql suports regexes, and if he can use that to extract karma from the IRC logs
15:01 frettled moritz_: yes, mysql supports regexes
15:02 frettled SELECT colname FROM tabname WHERE colname REGEXP "(karma|instant)"
15:02 * [particle] reduces his in-pile from 10cm to 0.6cm
15:02 frettled [particle]: new shredder?
15:02 [particle] that gets me closer to p6dev...
15:02 [particle] large envelopes :)
15:05 * CokeBot9000 is really not looking forward to organizing his home office. :|
15:06 moritz_ just 104k lines containing ++ :-)
15:08 pmurias joined #perl6
15:08 * [particle] just notices his shred pile is 25cm
15:10 CokeBot9000 kids++ # they like running the shredder!
15:11 [particle] i've got to plug it in outdoors for this much paper... i'll put it right over the yard waste bin
15:12 [particle] can't recycle cross-cut shredded paper, the fibers are too small
15:12 moritz_ huh?
15:12 moritz_ I thought the recycling mill shreddred them anyway?
15:12 ingy morning
15:13 [particle] if i put them in the yard waste bin, they're made into mulch i can use in my garden :)
15:13 [particle] hola, ingy
15:13 ingy hi [particle]
15:13 moritz_ oh, that's good recycling too
15:13 ingy [particle]: is there a spug meeting coming up?
15:14 holli joined #perl6
15:14 ingy [particle]: and are you coming to my python talk?
15:14 [particle] yes, third tuesday this monch
15:14 ingy :)
15:14 [particle] i didn't see when your talk is, let me follow the link and check my schedule
15:14 ingy ok
15:15 [particle] bummer, i have a soccer game tomorrow at 7, in redmond
15:15 ingy dang: I'll be in .tw on 3rd tuesday
15:15 [particle] and so it goes.
15:15 pmurias ruoso: hi
15:15 ingy [particle]: maybe we can hack at a cafe one day soon
15:15 ingy you got a day job?
15:15 [particle] yep, i do
15:15 ingy I'm sorry :(
15:15 [particle] i'm paid to work on open source: http://openefs.org
15:16 ingy anything you want?
15:16 ingy :)
15:16 [particle] if only, then i'd be p6 hacking
15:16 * ingy is paid to work on open source by the state of washington
15:16 [particle] unemployment?
15:17 ingy oui
15:17 [particle] nice
15:17 ruoso hi pmurias
15:17 ingy I started a consulting company though
15:17 holli g'localtime
15:17 ingy ouicode.com
15:17 ingy but UI keeps it easy going
15:18 ingy [particle]: did you see I got my new programming language working?
15:19 ingy I was talking about it here later last night
15:19 [particle] no, i'll backlog
15:20 ingy the quick read is here: http://cdent.org/examples/
15:20 ingy :D
15:20 pmurias ruoso: how do you want the goals in the gsoc proposal detailed?
15:22 CokeBot9000 ingy: reminds me of SWIG or COBRA.
15:22 [particle] sweet
15:22 ruoso pmurias, "detailed" is not the best word... I should have said "explained"
15:23 ingy CokeBot9000: corba?
15:24 CokeBot9000 It's been 15 years and I still mistype that. =-)
15:24 ingy CokeBot9000: corba is pretty heavy weight though, no?
15:25 ingy I mean with C'Dent you just use a Python module that happened to be written in Perl 6
15:25 ingy you don't know that C'Dent was involved
15:25 moritz_ you'll certainly see that the code is generated, no?
15:25 ingy I don't know much about corba, but doesn't it involve a pretty heavy runtime?
15:26 PerlJam ingy: I'd know C'Dent was involved just by looking at the first line of the module  :)
15:26 ingy moritz_: when is the last time you looked inside inside the modules you use everyday though
15:27 moritz_ ingy: I do that pretty often - whenever I get errors from inside the modules
15:27 moritz_ (which is far too often)
15:27 ingy but you're special
15:27 ingy :)
15:27 CokeBot9000 ingy: I see C'Dent -> Perl6 and C'Dent -> python ... is there one that converts back to C'Dent?
15:27 moritz_ and I also want to write patches for my modules, now and then
15:28 ingy I mean the point is that C'Dent is write once, upload everywhere
15:28 moritz_ I understand that
15:28 CokeBot9000 so you're not running a pythong module that is written in perl6. it's written in cdent.
15:29 ingy CokeBot9000: it's written in the C'Dent subset of Perl 6
15:29 ingy but is pure Python at runtime
15:30 ingy it's just a way to get module hackers to start thinking outside of their programming languages
15:30 ingy and sharing with others
15:30 pausenclown what the hell is 'use MONKEY_TYPING'?
15:30 ingy it also might be a way to write Perl mods once for p5 and p6
15:30 pmurias pausenclown: it enables monkey patching
15:30 ingy or py2 and py3
15:31 masak pausenclown: know about the 'augment' and 'supersede' keywords?
15:31 pausenclown nope.
15:31 masak pausenclown: they're in S12, I think.
15:31 ingy hi masak
15:31 masak ingy: \o
15:32 ingy masak: we are almost a year late to pair up!
15:32 masak ingy: I know! and the need still exists.
15:32 masak still no YAML parser for Perl 6.
15:32 moritz_ but now we have <?(...)> in regexes
15:33 moritz_ which will make it a bit easier
15:33 ingy masak: but right now... this very hour... I am going to write a perl6 parser in YAML!
15:33 pmurias ruoso: the other thing i'm not sure about is how to expand the benefits to the Perl community section of the proposal
15:33 masak ingy: good luck.
15:33 moritz_ ingy: you know that such a thing already exists?
15:33 masak ingy: if you put it on github or the like, I might contribute.
15:34 moritz_ STD.pm can parse itself
15:34 moritz_ and turn itself into a YAML AST
15:34 ingy moritz_: :)
15:34 pausenclown ... use "supersede" instead of "augment"...but don't do that, ...
15:34 pausenclown lol
15:34 moritz_ so it's just a matter of transforming that AST into the format that you need
15:34 moritz_ anyway, afk
15:35 ingy moritz_: one sec
15:36 ruoso pmurias, you could expand the part where SMOP will enable, in a near future, the complete interoperability between Perl 5 and Perl 6 by the binary-type compatibilization of SV* and SMOP__Object*
15:36 ingy moritz_: I need it in this form: http://github.com/ingydotnet/cdent/bl​ob/master/tests/modules/world.cd.yaml
15:36 ingy :)
15:36 frzntoz joined #perl6
15:36 ruoso pmurias, i.e.: the perl 5.14 will support Perl 6 (5.12 will be out soon)
15:36 ingy but I really meant that I am going to write a parser for the C'Dent subset of Perl 6
15:37 ingy which is I can actually do in less than an hour :)
15:37 ingy just a grammar in YAML...
15:37 pausenclown speaking of OO. Are there corresponding keywords to Mooses' around, after and before?
15:38 ingy masak: it's all in github
15:39 ruoso pausenclown, not in the core, but given the flexibility of the Perl 6 object system, implementing that modifier in a module is very straightforward
15:40 TimToady pausenclown: not keywords, since Perl 6 doesn't really have any, but there are similar concepts
15:40 TimToady you can wrap any routine, not just a method
15:40 TimToady that gives you "around", of which before and after are merely subsets
15:41 TimToady or if you want something more like contracts, PRE and POST traits will do that
15:41 colomon joined #perl6
15:41 TimToady or if you just want to have actions that always fire when you enter or leave a block, ENTER and LEAVE will do that
15:42 ruoso TimToady, but wrap doesn't have a declarator
15:43 ruoso which is what before, after and around are
15:43 TimToady declarators run code at compile time
15:43 ruoso sure sure... I was just clearing what the original question was
15:43 TimToady yes, the concepts could be declared with traits
15:43 pausenclown tx
15:44 TimToady because traits can run code at declaration time, and running code can run .wrap
15:44 pmurias ruoso: i'm adding INFERED-TYPE-CHECK($expr,'...p5 test for the inferred type...') to mildew to write tests for the type inferrence
15:44 pausenclown but i wish the synopes weren't so cryptic ( or the Exegesis more up to date and complete )
15:44 masak ingy: again, good luck. looking forward to seeing the result, and/or contributing.
15:45 ruoso pausenclown, they're not cryptic, they're just a spec doc ;)
15:45 pmurias * INFERRED-TYPE-CHECK
15:45 TimToady they could use to be better organized in spots, fershure
15:45 ruoso pmurias, you mean as a pre-declared symbol?
15:45 pausenclown i read that dispatcher part several times but i don't grok it. how/on what do i call nextsame et. al?
15:45 TimToady but I worry more about getting the correct facts in there somewhere, and then they can always be moved later
15:46 pmurias ruoso: propably only declared when a special pragma is seen by the compiler
15:46 TimToady pausenclown: you know how loop labels work in Perl 5?
15:46 ruoso pmurias, I think it's ok with the pragma
15:46 pausenclown sure
15:46 pmurias ruoso: it will be turned into a special AST node
15:46 TimToady imagine that every dispatcher has a loop
15:46 TimToady looping over its list of candidates
15:47 TimToady this loop has a lable, say "CANDIDATE:"
15:47 TimToady nextsame is basically just 'next CANDIDATE;'
15:47 pausenclown oh yeah, i get THAT
15:47 TimToady that's my mental model of it, more or less
15:47 ruoso I think the key to underestand it is that the method invocation is not internal to the object, it is external... the code that handles that invocation is "the dispatcher" and it belongs to the language runtime, not to each object
15:48 pausenclown but how do i call that sub. as a method on self, global sub,.. ?
15:48 TimToady but nextsame/nextwith also tell the dispatcher whether to call it with the original set of arguments or a new set
15:49 TimToady I don't understand your question
15:49 pausenclown ok. what is the invocant of nextsame?
15:49 TimToady whatever it was before
15:49 ruoso I think he meant syntatically
15:50 pausenclown in rakudo, it tried self.nextsame, .nextsame and nextsame. none of them worked
15:50 pausenclown but that might be an implementation issue
15:51 Trashlord joined #perl6
15:52 TimToady likely. a simple 'nextsame;' should work with most dispatchers, eventually
15:53 pausenclown that croaked in rakudo with "unknown sub" or something similar
15:53 TimToady well, then, NYI
15:54 vorner left #perl6
15:55 TimToady the method forms, by the way, want an invocant indicating the next candidate routine to call, so they bypass the dispatcher's notion of the next candidate, and force it.
15:55 pausenclown rakudo: class A { method x { say "a" } }; class B  is A { method x { say "b"; nextsame; } }; B.new.x;
15:55 cotto_work joined #perl6
15:55 p6eval rakudo 8c434e: OUTPUT«b␤a␤»
15:55 payload joined #perl6
15:55 pausenclown mmh. i guess i should run an update =)
15:55 TimToady well, that part is YI
15:56 pausenclown that's all i need atm.
15:57 pausenclown rakudo: class A { method x { say "a"; 1 } }; class B  is A { method x { say nextsame; say "b";  } }; B.new.x;
15:57 p6eval rakudo 8c434e: OUTPUT«a␤»
15:57 jnthn :-)
15:58 jnthn callsame does the Other Thing.
15:58 IllvilJa joined #perl6
15:58 pausenclown rakudo: class A { method x { say "a"; 1 } }; class B  is A { method x { say callsame; say "b";  } }; B.new.x;
15:58 p6eval rakudo 8c434e: OUTPUT«a␤1␤b␤»
15:58 pausenclown nice
15:59 pausenclown did that concept grow on your midden, TimToady_
15:59 pausenclown ?
15:59 TimToady I have many middens, some moldier than others.
16:00 meppl joined #perl6
16:00 pausenclown =)
16:01 pausenclown Seriously, who came up with it? It's very elegant.
16:01 * TimToady bows and bangs oversized head on the floor
16:02 TimToady but most of these things have been heavily refined with much community discussion
16:02 TimToady you can say a lot in ten years...
16:02 TimToady but most of the unifications are my idea
16:03 REPLeffect joined #perl6
16:03 TimToady me being the guy who is supposed to see most of the elephant, all at once...
16:03 TimToady the blind guys tend to miss the symmetries...
16:03 pausenclown That's easy. Just make two steps backwards. ^^
16:04 cognominal TimToady, I hope you are careful to avoid to add the elephant factor to the bus factor.
16:04 TimToady it gets blurry when you do that :P
16:05 TimToady The elephant is, I hope, becoming real, while the bus is, I hope, remaining imaginary.
16:05 moritz_ ingy: then you'll have some fun transforming :-)
16:06 TimToady moritz_: the <<<<<<< patch, while well intended, is not quite right
16:06 pausenclown how to catch an elephant with binoculars, tweezers, and a match box?
16:06 TimToady line-oriented commentary should be handled in the same spot as pod docs
16:07 TimToady pausenclown: I live with someone who collects elephant jokes.  I sincerely doubt you'll have a new one for me unless you make it up on the spot... :)
16:08 pausenclown heh.
16:08 pausenclown You might try on her. The punchline is:
16:10 pausenclown You look trough the binoculars reversed, pick up the elephant with the tweezers and put it into the match box.
16:10 TimToady That's casual to the most obvious observer.
16:11 REPLeffect In fairness to pausenclown, I didn't see it coming.
16:11 REPLeffect not that I was trying really hard.
16:11 TimToady you really only need binoculars if there are two elephants
16:12 REPLeffect TimToady: I'm guessing you'd heard it before
16:12 TimToady my wife tells it regularly
16:12 TimToady among about 200 others
16:12 REPLeffect I'm sorry.  :D
16:12 pausenclown ok, so you obviously also know ho to detect an elephant in the fridge?
16:12 TimToady but for one elephant, a monocular will do, and a single tweezer.
16:13 TimToady sure, there are several ways, usually involving footprints.
16:13 REPLeffect ok, well even *I* knew that one
16:13 REPLeffect or, those ones, rather
16:13 REPLeffect I think butter is the most popular
16:14 jnthn .oO( Where do you find an elephant in an SVN repo? trunk )
16:14 REPLeffect no, no silly.  He's at the end of a branch.
16:14 TimToady doubtless with his toenails painted.
16:15 jnthn I suspect trying to play tag with an elephant is a bad idea though.
16:15 REPLeffect there are bound to be conflicts
16:17 pausenclown The Jungle, a lovely glade. A tiger is taking a sun bath. Suddenly a "boom" shatters the woods, and an elephant enters the glade, bursting of laughter.
16:17 pausenclown Tiger asks: What's so funny?
16:17 pausenclown Elephant: We are fucking the monkeys.
16:18 jaldhar joined #perl6
16:18 pausenclown Tiger: So what? We do that too.
16:18 pausenclown Elephant: Yeah, but yours dont explode!
16:19 masak *grasshoppers chirping*
16:19 moritz_ TimToady: so which rule should I patch for the version control markers? unv?
16:23 pausenclown .oO( this is so hliarious: http://www.youtube.com/watch?v=gT_mkrrM_cE )
16:23 moritz_ erm, probably vws
16:27 ingy TimToady: did you ever decide if .p6 or .pm6 would be accepted Perl 6 module file endings?
16:28 ingy so many parts of various tool chains key off file endings
16:28 ingy seems like differentiation would be a good thing
16:29 * pausenclown nods
16:30 * ingy has an immediate need :)
16:30 moritz_ isn't that specced in S01?
16:30 ingy url?
16:30 moritz_ http://perlcabal.org/syn/S01.html
16:31 ingy ah
16:31 ingy .p6m
16:31 moritz_ or pm6
16:32 ingy I am using .pm6 so far
16:32 frettled The latter is pmichaud friendly.
16:32 ingy I will continue
16:32 lisppaste3 moritz_ pasted "version control conflict marker - patch for STD.pm for TimToady++ to review" at http://paste.lisp.org/display/97454
16:33 moritz_ so far the 'make testt' hasn't produced new errors
16:34 * moritz_ -> nom
16:34 ruoso joined #perl6
16:39 pausenclown rakudo supports neither pm6 nor p6m
16:40 jnthn Ugh.
16:40 jnthn Shouldn't be a hard patch to write, if we really gotta.
16:41 nihiliad joined #perl6
16:42 ingy oh crap, now I remember. rakudo's "use Foo;" doesn't look for .pm6 :(
16:42 jnthn Well, given I only knew it was spec that we should support that for about 5 minutes... :-)
16:42 ingy that's why I had Foo6.pm :\
16:43 jnthn ingy: src/Perl6/Module/Locator.pm is the file in need of a patch. ;-) ;-)
16:44 ingy jnthn: k :)
16:44 ingy I assume that using .pm6 over .pm is correct
16:44 ingy although not sure if .pm is higher in the depth
16:45 jnthn Oh, you probably want to pick all of them up
16:45 TimToady if there are both a .pm and a .pm6, we should probably assume the .pm is Perl 5
16:45 ingy yes
16:45 jnthn :-/
16:45 jnthn Yeah but then we gotta worry about precedence of extension vs precedence of version...
16:46 ingy but do we do a full depth search on .pm6 first?
16:46 jnthn (as in, module version)
16:46 TimToady well, a lot of people are going to be translating a lot of .pm files over the next few years
16:47 ingy I suppose that putting p5 paths in @*INC is asking for trouble
16:48 ingy we could at least detect it and give a helpful msg
16:48 ingy don't put p5 and p6 in the same directory yo!
16:48 TimToady the cache of which files are where could actually look at the .pm files and determine if they are p5 or p6
16:48 jnthn I think as a first cut, we just add all possibilities to the candidate list.
16:49 TimToady ingy: I do that all the time!
16:49 ingy TimToady: me too :P
16:49 TimToady STD.pm gets translated to STD.pm5 currently
16:49 [particle] put a closure in @INC to figure it out
16:49 ingy sometimes you gotta change your ways for the greater good
16:49 TimToady which confuses NYTProf greatly...
16:49 ingy I think Perl is a good example of that ;)
16:50 ingy see?!
16:50 jnthn Then later we can tweak the selection algorithm and be smarter about gracefully handling Perl 5 modules.
16:50 TimToady well, it's already specced that we look for 'package Foo;' in .pm files
16:50 ingy TimToady's propensity to DTRT bites again!
16:50 TimToady and assume pm6 is p6
16:51 ingy jnthn: are you saying that if you see .pm6 and .pm next to each other, to load both?
16:51 jnthn TimToady: Well, we assume everything you feed to Rakudo is Perl 6 right now... ;-)
16:51 jnthn ingy: No, to add both to the candidate list.
16:51 jnthn Then if one declares a higher version number or is the wrong authority it'll get dropped.
16:51 ingy jnthn: I see
16:51 jnthn If there's a conflict then I guess they complain.
16:51 TimToady jnthn: which, oddly enough, means Rakudo is *not* assuming that what it is getting in Perl 6, but the Perl 6-like language, Rakudo *
16:52 jnthn But we can add a tie-breaker later on.
16:52 TimToady versioning is orthogonal to the 5/6 decision
16:52 ingy jnthn: but after the selection algorithm is done you just load 1, right?
16:52 jnthn Oh sure.
16:52 ingy ok
16:52 TimToady except in the sense that 6 is new than 5 :)
16:52 jnthn TimToady: Kinda.
16:52 TimToady *newer
16:53 ingy well then I guess there is no performance penalty for searching the whole depth. we have to anyways
16:53 [particle] -1 is newer than 5 and 6.
16:53 TimToady you build the database once in any case
16:53 ingy perl6 can has a database
16:54 TimToady fsdo
16:55 jnthn TimToady: We all know that Rakudo * won't support all of Perl 6, that's hardly news. :/
16:56 jnthn The trick is trying to be as much a subset as we can.
16:56 stephenlb joined #perl6
16:58 TimToady well, short term, we can just say that any .pm6 hides a .pm in the same location.
16:58 ingy YAPC seems to have a negative bent on p6 this year
16:58 ingy TimToady++
16:58 ingy I can patch that ;)
16:58 jnthn TimToady: That works.
16:59 ingy (moving forward)++
16:59 TimToady I prefer to think that YAPC is stressing all the cool things that Perl 5 has borrowed back from Perl 6.  :)
17:01 ingy if my talk is accepted it will be about both
17:01 ingy and then some
17:03 * TimToady wonders how universal the <<<<<<< markers are across different revision control systems...
17:04 * colomon wonders if he should submit a talk.... might have the brainpower to think about it in another week or two.
17:10 ingy colomon: for which conf?
17:11 colomon yapc:na
17:11 ingy colomon: I'd do it now. the CFP closed on Mar 31
17:11 ingy I put mine in late (on Sunday)
17:11 ingy :\
17:12 ingy I didn't even notice the CFP had started....
17:12 ingy just happened to look online...
17:13 colomon I'm really not joking when I say I might have the energy in a few weeks.  Right now I'm typing this standing in the kitchen of the now 80% empty house which used to be mine, listening to the movers try to take care of the last 20%.
17:13 PerlJam ingy: do you  think they don't have enough proposals?
17:13 colomon so I guess I can wait for next year.
17:13 ingy PerlJam: what do you mean?
17:14 PerlJam yapc::na
17:14 PerlJam if the CFP closed Mar 31, why would they accept proposals now?
17:15 ingy PerlJam: I am hoping they will, because I really want to present my talk
17:15 PerlJam ingy: What's the title or topic of your talk?
17:16 ingy PerlJam: http://conferences.mongueurs.net/yn2010/talk/2699
17:17 PerlJam that's a broken link for me.
17:18 ingy PerlJam: I think last year the CFP ran trough April. I didn't think to look into it in March. And I didn't see any email about it.
17:18 ingy PerlJam: are you helping run the conf?
17:18 PerlJam nope
17:18 ingy you might need to be logged in
17:18 ingy or you might need to be logged in as me :\
17:19 ingy one sec
17:19 ingy PerlJam: http://nopaste.snit.ch/paste :)
17:19 Chillance joined #perl6
17:19 cdarroch joined #perl6
17:19 cdarroch joined #perl6
17:19 PerlJam ingy: I didn't pay attention to any of the YAPCs this year, but the last couple of years I recall that the deadline for CFP was extended because the timeline was originally quite short.
17:20 ingy well I wrote them a comment asking them if they would extend it a couple days :)
17:21 ingy they are thinking of making it a 5 day conf I believe
17:21 PerlJam acmeism++
17:22 ingy :)
17:22 ingy (conference calls)--
17:22 ingy bbl
17:23 payload joined #perl6
17:29 * moritz_ won't make it to #rs today
17:31 colomon when is it, again?
17:32 dual joined #perl6
17:33 jnthn moritz_: OK
17:33 jnthn colomon: It...seems to keep shifting!
17:33 jnthn I think because of summer time. :-)
17:34 jnthn If it's same as last week, then it's in 86 minutes for me.
17:34 jnthn Well, and everyone else I guess. :-)
17:34 jnthn I meant 2100 for me which is in 86 minutes... ;-)
17:34 colomon I may or may not be around then.  :)
17:34 bkeeler I hope to be
17:35 PerlJam 1900 UTC?
17:35 jnthn PerlJam: I believe so.
17:35 colomon I think the movers will probably be done then, in which case I'll either be desperately doing last minute things or collapsing back at the hotel room.
17:36 PerlJam colomon: be sure to give the house a once-over to make sure you got everything  :)
17:36 colomon that's for tomorrow morning.  :)
17:37 bkeeler Order a pizza for the movers, that'll delay things enough for you to attend
17:37 colomon ha!  we already bought them breakfast and lunch.  :)
17:37 PerlJam my wife and I recently moved apartments and at the point  I thought we were done, I started looking around and found and enire drawer of stuff in the kitchen that we had failed to move.
17:37 slavik can I have pizza, too? I'm sure the movers don't need all that pizza
17:37 PerlJam s/enire/entire/
17:40 colomon PerlJam++: you got me looking around the kitchen here, and I just found what appears to be half a draw of kitchen stuff the packers missed.
17:41 dual joined #perl6
17:42 colomon I have a giant ginger grater!?  Who knew?
17:42 jnthn Wow that's grate!
17:43 PerlJam where do you get giant ginger?
17:44 colomon Probably Texas.
17:44 bkeeler So its that drawer full of unitaskers that you've used maybe twice then forgotten about?
17:44 PerlJam someone watches too much Alton Brown
17:45 PerlJam (and it's probably me :)
17:45 bkeeler There's no such thing as too much Alton Brown ;)
17:45 bkeeler I miss the food network.
17:46 colomon bkeeler: half and half
17:47 bkeeler Oooh, no, you should store that in the fridge
17:47 PerlJam yeah
17:47 colomon groan
17:47 PerlJam put that in your coffee, not in a drawer
17:48 * PerlJam wanders off to get some work done
17:48 colomon my bottle opener was in there too, so it wasn't just stuff lost in the back of the drawer.
17:49 colomon but then, some of that stuff was still in its original, unopened packaging.
17:49 colomon in mint condition, I guess.
17:49 bkeeler I have one of those bar-style bottle openers that attaches to the wall.  Never need to hunt around for it and waste precious beer-drinking time
17:50 diakopter peppermint or spearmint
17:50 solu joined #perl6
17:53 colomon wine bottle, I meant.
17:53 colomon though it can do bottle tops too, I guess.
17:53 pausenclown rakudo: class A { has Str $a is rw = 1|2; }; A.new.a = 3;
17:53 p6eval rakudo 8c434e: OUTPUT«Method 'a' not found for invocant of class 'A'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
17:53 pausenclown rakudo: class A { has Str $.a is rw = 1|2; }; A.new.a = 3;
17:53 p6eval rakudo 8c434e:  ( no output )
17:54 pausenclown rakudo: class A { has Str $.a is rw = 1|2; }; my $a = A.new; $a = 3; say $a.a
17:54 p6eval rakudo 8c434e: OUTPUT«Method 'a' not found for invocant of class 'Integer'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
17:54 colomon rakudo: my Str $a = 1|2;
17:54 p6eval rakudo 8c434e: OUTPUT«Type check failed for assignment␤current instr.: '&die' pc 17293 (src/builtins/Junction.pir:404)␤»
17:54 jnthn Type checks NYI for attrs.
17:54 * diakopter poindexters what to do next
17:55 pausenclown rakudo: class A { has Str $.a is rw = 1|2; }; my $a = A.new; $a.a = 3; say $a.a
17:55 p6eval rakudo 8c434e: OUTPUT«3␤»
17:57 slavik pausenclown: am I understanding the intent there? you want to limit the things that A.a can be assigned to?
17:58 pausenclown yeah. i thought it is a junction.
17:58 pausenclown but i see now it makes no sense =)
17:59 sjohnson rakudo:  my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = $str.split(/\n/); say @lines.items;
17:59 p6eval rakudo 8c434e: OUTPUT«Method 'items' not found for invocant of class 'Array'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
17:59 colomon maybe something like has $.a where { $.a == 1|2 }  ?
17:59 sjohnson rakudo:  my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = $str.split(/\n/); say @lines.count;
17:59 p6eval rakudo 8c434e: OUTPUT«Method 'count' not found for invocant of class 'Array'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
17:59 pausenclown or create a subtype
18:00 colomon rakudo:  my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = $str.split(/\n/); say +@lines;
18:00 p6eval rakudo 8c434e: OUTPUT«11␤»
18:00 sjohnson this is different than perl5. any idea why?
18:01 pausenclown rakudo:  my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = $str.split(/\n/); say @lines.elems;
18:01 p6eval rakudo 8c434e: OUTPUT«11␤»
18:01 sjohnson in perl 5, this will show it as being only 1 element
18:02 colomon because perl 5 is wrong?  ;)
18:03 CokeBot9000 perl5: print "hi";
18:03 CokeBot9000 (hey, does evalbot do p5?)
18:03 colomon rakudo: (<Read Write Exec Fold Spindle Mutilate> Z=> 1,2,4...*).perl.say
18:03 p6eval rakudo 8c434e: OUTPUT«("Read" => 1, "Write" => 2/1, "Exec" => 4/1, "Fold" => 8/1, "Spindle" => 16/1, "Mutilate" => 32/1)␤»
18:03 mberends joined #perl6
18:03 slavik nice
18:03 colomon whoops.  :)
18:04 sjohnson i really have to get a p5 bot going
18:04 jnthn Hmm...what the Rat invasion? :-)
18:04 sjohnson maybe i'll do it tonight
18:04 colomon jnthn: that's my whoops.
18:04 colomon probably should have a special check to avoid that in the series code.
18:05 pausenclown sjohnson: "Splits the string EXPR into a list of strings and returns that list. By default, empty leading fields are preserved, and empty trailing ones are deleted. "
18:05 pausenclown from perldoc
18:06 sjohnson thanks pausenclown .. i should have checked perldoc. oops
18:07 pausenclown question is, is there an argument to .split to trigger the same behaviour?
18:08 pugssvn r30332 | lwall++ | [S02] some clarifications of the desired semantics of buffers
18:10 sjohnson i prefer the way it does it in p6
18:10 sjohnson but that's just me
18:11 pugssvn r30333 | lwall++ | [S03] remove bogus mentions of Buf8, Buf16, Buf32
18:15 pausenclown sjohnson: S32 says "Null trailing fields are no longer trimmed by default." but no word on how to undefault :/
18:15 TimToady rakudo:  my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = $str.comb(/\N+/); say @lines.elems;
18:15 p6eval rakudo 8c434e: OUTPUT«1␤»
18:16 colomon TimToady++
18:16 * pausenclown blinks
18:16 TimToady usually if you think you want split in P6, you want comb instead.
18:16 pausenclown that's cheating =)
18:17 * TimToady is allowed to cheat.
18:19 TimToady especially if it encourages people to establish good figure/ground reasoning skills
18:20 TimToady it's usually healthier to think about what you want than what you don't want...
18:20 TimToady ...except when it isn't.
18:21 pausenclown and it's those exceptions that usually cause the most trouble.
18:21 TimToady actually, it's the people who take exception that usually cause the most trouble... :)
18:24 pausenclown nope. that's the people who make assumtions.
18:24 pausenclown *assumptions
18:25 TimToady so you assume
18:27 pausenclown Well, you can lead a horse to water but you can't eat it too.
18:27 am0c joined #perl6
18:27 CokeBot9000 in that split example, are those last elements undefined, or are they the empty string?
18:28 CokeBot9000 (trying to write a p5split in rakudo that will drop trailing empty elements)
18:29 sjohnson timtoady knows a lot about perl !
18:30 CokeBot9000 funny that.
18:31 CokeBot9000 'sthere something data::Dumper-like for rakudo yet?
18:31 sjohnson .perl
18:31 sjohnson rakudo: say <1 2 3>.perl
18:31 p6eval rakudo 8c434e: OUTPUT«("1", "2", "3")␤»
18:31 pausenclown rakudo: my @a = ( 1, 2, 3, 4 ); say @a[2..*];
18:31 sjohnson i would have chose .dump myself...
18:32 p6eval rakudo 8c434e:  ( no output )
18:32 CokeBot9000 sjohnson: *facepalm*
18:32 sjohnson did i do something wrong?
18:34 sjohnson sorry TimToady ... i remember me asking this question before, and you or someone else showing me the comb thing.  oopsies
18:35 * sjohnson reminds himself to read the Sd+ specs
18:35 sjohnson (´ー` )
18:35 CokeBot9000 my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = p5split($str, /\n/); say @lines.elems; sub p5split($string, $regex) { my @stuff = $string.split($regex); @stuff.pop() while +@stuff && @stuff[*-1] eq ''; return @stuff; }
18:36 CokeBot9000 rakudo: my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = p5split($str, /\n/); say @lines.elems; sub p5split($string, $regex) { my @stuff = $string.split($regex); @stuff.pop() while +@stuff && @stuff[*-1] eq ''; return @stuff; }
18:36 p6eval rakudo 8c434e: OUTPUT«1␤»
18:38 frzntoz joined #perl6
18:38 TimToady rakudo: my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = p5split($str, /\n[\n*$]?/); say @lines.elems;
18:38 p6eval rakudo 8c434e: OUTPUT«Could not find sub &p5split␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
18:38 TimToady rakudo: my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = split($str, /\n[\n*$]?/); say @lines.elems;
18:38 p6eval rakudo 8c434e: OUTPUT«No applicable candidates found to dispatch to for 'split'. Available candidates are:␤:(Str $delimiter, Str $input, Int $limit = { ... })␤:(Regex $delimiter, Str $input, Int $limit = { ... })␤␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
18:39 TimToady rakudo: my $str = "this is a string\n\n\n\n\n\n\n\n\n\n"; my @lines = $str.split(/\n[\n*$]?/); say @lines.elems;
18:39 p6eval rakudo 8c434e: OUTPUT«2␤»
18:39 TimToady hmm
18:40 THW_ joined #perl6
18:40 * sjohnson scratches TimToady's head
18:40 TimToady .oO(You can lean my faithful horse U to water, but don't try to make an ass out of U and me...)
18:42 pausenclown rakudo: augment class Str { multi method split (Int $i) { $i*2 } }; my $s = "x"; say $x.split(12);
18:42 p6eval rakudo 8c434e: OUTPUT«Can't augment class Str without 'use MONKEY_TYPING'␤current instr.: 'perl6;Perl6;Grammar;add_name' pc 40468 (src/gen/perl6-grammar.pir:448)␤»
18:47 pausenclown can I extend Str in order to create a new multi sub split?
18:49 pausenclown rakudo: use MONKEY_TYPING; augment class Str { multi method split (Int $i) { $i*2 } }; my $x = "x"; say $x.split(12);
18:49 p6eval rakudo 8c434e: OUTPUT«x␤»
18:51 pausenclown rakudo: use MONKEY_TYPING; multi class Str { multi method split (Int $i) { $i*2 } }; my $x = "x"; say $x.split(12);
18:51 p6eval rakudo 8c434e: OUTPUT«Malformed multi at line 11, near "class Str "␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
18:51 cdarroch joined #perl6
18:51 cdarroch joined #perl6
18:53 CokeBot9000 /win 3
18:54 jnthn #rs in 5
18:57 sjohnson hi jnthn
19:00 jnthn sjohnson: o/
19:08 alester joined #perl6
19:10 ShaneC joined #perl6
19:10 M_o_C joined #perl6
19:20 ash__ joined #perl6
19:23 ash__ does perl 6 have dynamic scopes?
19:24 frettled scope up, scope down?
19:25 TimToady of course Perl has dynamic scopes, the question is what you want to do with them
19:26 TimToady see, for instance, S06:2182
19:26 clintongormley joined #perl6
19:28 TimToady or S02:2645
19:28 ash__ like, " my $a = 0; sub f { return $a }; sub g { my $a = 1; return f; }; say g;" is there a way f's $a will refer to g's $a?
19:28 ash__ i'll go check those, thanks TimToady++
19:31 ash__ wait, so &*foo() makes a dynamically scoped foo or a globally scoped foo?
19:31 TimToady only if you call it $*a instead
19:31 TimToady dynamic
19:32 TimToady most dynamic variables are actually in someone's lexical scope as $*a
19:32 ash__ so... the twigil * means dynamic not global? i thought it meant global for some reason
19:32 TimToady used to, a long time ago...
19:32 ash__ ah, wonder why i thought that... oh well
19:32 TimToady and it still ends up in GLOBAL:: as a fallback
19:33 TimToady or PROCESS::
19:33 TimToady which is how %*ENV presumably gets there
19:33 ash__ so GLOBAL::<$a> (or should that be $*a?) is the final fallback for $*a if there is no lexical scope that doesn't have that value?
19:34 slavik so, when can I buy the Perl6 book?
19:35 ash__ so, to force it to be global you'd have to do just straight up define a GLOBAL::<$*a> ?
19:35 ash__ slavik: its downloadable for free, if you mean the one on github
19:35 slavik ash__: I want the hard copy :)
19:36 bkeeler I'm sure the authors could make it available on one of those print-on-demand services like lulu
19:36 jnthn slavik: There will be print copies in the future. :-)
19:39 TimToady ash__: yes, or 'our $a' when GLOBAL is the current package.
19:39 TimToady (the * is removed for looking in packages)
19:40 ash__ can you not go back and define a new one at a later point in the runtime?
19:41 slavik ash__: nothing says hardcore in 21st century like a hard copy :)
19:42 ash__ lol
19:42 ash__ true
19:47 pjcj joined #perl6
19:53 alester joined #perl6
20:00 TimToady phone
20:04 hercynium joined #perl6
20:05 frettled yes, please
20:12 slavik ash__: also, the hard copy can be signed and predominantly displayed :)
20:15 ash__ true
20:18 frzntoz joined #perl6
20:30 [particle] jnthn, moritz_, bkeeler: i just spoke with pmichaud. he promises to look at the patches from moritz and bkeeler as soon as he's able, possibly later this week.
20:31 bkeeler Nice, thanks
20:32 moritz_ great
20:32 ingy jnthn: I don't see src/Perl6/Module/Locator.pm in ra
20:33 moritz_ ingy: then your copy of rakudo is too old, incomplete or you're on the worng branch
20:33 ingy kudo :)
20:33 ingy moritz_: likely
20:34 ingy checking...
20:35 moritz_ branch 'master' should be fine
20:35 pmurias ruoso: is Mildew::Test::InferredTypes a sane name to ename INFERRED-TYPE-TEST?
20:35 ingy moritz_: thanks. I was on alpha because the last time I was active, master was messed up, iirc
20:37 ingy moritz_: what is the standard way to submit patches here?
20:38 pmurias ingy: to rakudo?
20:39 ingy pmurias: yes
20:42 CokeBot9000 ~/win 3
20:42 ingy :)
20:42 PerlJam ingy: ask for a commit bit  :)
20:43 Trashlord joined #perl6
20:43 * ingy asks CAN HAS I COMMITZ??
20:44 ingy should I do the .pm6 patch on master or a branch?
20:44 CokeBot9000 ISTR that patches via rt.perl.org/rt3 are preferred over github pull requests. that could be very old intel, though.
20:45 frettled [particle]: did he say anything about how his wife is doing?
20:45 [particle] they'll know more tomorrow, after a dr's appt
20:45 ingy PerlJam: can you give me a commit bit?
20:45 [particle] hugme: show rakudo
20:45 hugme [particle]: sorry, I don't know anything about 'rakudo'
20:45 [particle] feh.
20:45 frettled [particle]: ok, thanks for the heads-up
20:46 [particle] my pleasure
20:49 ingy bbiab. Need to relocate.
20:51 PerlJam ingy: I probably could if I remembered how.
20:51 PerlJam ingy: what did you want to patch?
20:52 [particle] how about forking and doing a pull request?
20:54 PerlJam [particle]: that's crazy talk!  :)
20:55 * PerlJam secretly hopes that ingy wants to do IO::All Perl 6 style for Rakudo
21:04 jnthn [particle]: Great, thanks, good to know.
21:07 pugssvn r30334 | moritz++ | [STD] die on version control conflict markers
21:08 PerlJam moritz++ indeed
21:08 jnthn moritz_++
21:09 Damn3d joined #perl6
21:10 Damn3d joined #perl6
21:10 Damn3d left #perl6
21:10 ingy PerlJam: I wanted to add .pm6 support as discussed here earlier by TimToady and jnthn
21:11 ingy (and add IO::All to Rakudo... ;)
21:11 moritz_ ingy: submit a patch to rakudobug@perl.org. Commit bits to rakudo require sending in a signed CLA first
21:12 bkeeler The CLA is the standard perl one, right?
21:12 PerlJam ingy: did you sign a CLA for Parrot or anything?
21:12 ingy what is a CLA and how do I sign one?
21:12 moritz_ not sure
21:12 PerlJam ah, I guess not
21:12 ingy :)
21:13 PerlJam CLA == contributor license agreement
21:13 moritz_ CLA = Contributor License Agreement
21:13 PerlJam it's on the Perl foundation website somewhere
21:13 moritz_ and you sign it with a pen
21:13 bkeeler http://www.perlfoundation.org/​contributor_license_agreement]
21:13 moritz_ and send by snail mail
21:13 PerlJam bkeeler++
21:13 ingy where do I send ?
21:13 ingy thanks...
21:13 bkeeler The address is on the web site there
21:13 ingy I think
21:13 jnthn Generally though, some sane patches are also kinda a pre-req for a Rakudo commit bit. :-)
21:13 ingy :P
21:14 jnthn Well, or insanely good ones. ;-)
21:14 PerlJam jnthn: ingy will *never* get one then!  All of his patches are insane
21:14 * bkeeler 's patches are probably not sane
21:14 frettled PerlJam: hee-hee
21:14 moritz_ bkeeler: the first big one was sane enough to get applied
21:14 bkeeler I sent a CLA in, ready for whenever I'm judged sane enough
21:15 * ingy 's insanity is the sanest of all
21:15 moritz_ bkeeler++
21:18 bkeeler Hmm, there appear to be two CLAs on the perlfoundation website, with different mailing addresses
21:18 bkeeler http://www.perlfoundation.org/​contributor_license_agreement and http://www.perlfoundation.o​rg/attachment/legal/cla.txt
21:18 bkeeler I sent mine to the Michigan address, not the Oregon one
21:20 jhuni joined #perl6
21:24 ingy bkeeler: is that TPF address chromatic's?
21:24 bkeeler Might be
21:24 ingy it looks familiar :)
21:24 [particle] oregon is a box near c
21:25 ingy anyway I got the CLA signed and am headed out to find a mailbox :)
21:25 [particle] michigan is a box near kurt
21:26 PerlJam ingy++
21:26 [particle] oregon is possibly a new address, since kurt resigned as tpf treasurer
21:28 bkeeler Perhaps chromatic is the person to ask then
21:29 wknight8111 joined #perl6
21:29 ash__ so, to get a commit bit to rakudo, you need to sign a cla, is there anything else?
21:29 [particle] i pinged him in #parrot about it
21:30 [particle] ash__: you need to be approved
21:30 PerlJam ash__: some demonstrated ability doesn't hurt :)
21:31 bkeeler Who actually flips the bit?  pm?
21:31 jnthn Yes.
21:31 [particle] pm manages the repo, yes
21:32 wknight8111 Demonstrated ability? Since when is that a requirement? :)
21:32 [particle] it's not well-documented on rakudo.org, based on a quick search
21:33 jnthn Of all the things that should be documented, I'd say this one is fairly far down the list. :-)
21:33 ash__ i am getting pretty far in my nq-nqp, although that may not be the demonstrative ability your looking for, i am hoping by maybe the end of the semester (5 weeks from now) i can have basic stuff working, function calls and looking, and things like that, then over the summer, in my spare time i'd like to implement grammars
21:34 jnthn ash__: Cool.
21:34 jnthn ash__: Are you looking at building it to be fairly NQP-compatible?
21:34 ash__ i am aiming for as much as possible, without anything PIR
21:34 jnthn Sure.
21:35 ash__ but syntax, and structure are going to be identitcal
21:35 jnthn Excellent.
21:35 ash__ it already parses and builds an AST for things like: sub foo($a) { $a + 2 }
21:35 ash__ i am just trying to get runtime support so I can have that be useful
21:36 jnthn :-)
21:36 * jnthn should read up some more on llvm.
21:36 PerlJam speaking of ASTs ... did anyone see that grant where someone made Perl 5 ASTable?  Seems like that could make a good bridge between Perl 5 and Perl 6
21:37 PerlJam (though only if it works.  Nicholas pointed out that it didn't even pass its own tests)
21:37 jnthn Might look if I can be AST.
21:37 jnthn er, I mean... :-)
21:38 TiMBuS joined #perl6
21:38 PerlJam http://news.perlfoundation.org/2010/0​4/grant-report-changing-the-perl.html
21:40 colomon joined #perl6
21:42 mathw PerlJam: that's pretty impressive
21:44 PerlJam There's a GSoC project lurking in there for some enterprising student too.
21:44 PerlJam :)
21:46 PerlJam I haven't looked at the AST, but I wonder if Perl 6 could be compiled to it.
21:49 ash__ off to give an ACM presentation &
22:03 lollan joined #perl6
22:07 molaf joined #perl6
22:10 pausenclown joined #perl6
22:16 nsh joined #perl6
22:17 sbp joined #perl6
22:22 lue joined #perl6
22:23 lue Oh hai!
22:23 bkeeler Heya lue
22:27 lue nothing much is happening right now, is it?
22:27 lue .u bored
22:27 phenny lue: Sorry, no results for 'bored'.
22:27 lue .u sad
22:27 phenny U+0635 ARABIC LETTER SAD (ص)
22:27 lue :)
22:27 slavik lol?
22:27 slavik .u г
22:27 phenny U+0433 CYRILLIC SMALL LETTER GHE (г)
22:27 slavik :D
22:29 lue rakudo: my $a = 3000; say "\x$a"
22:29 p6eval rakudo 8c434e: OUTPUT«Unrecognized backslash sequence: '\x' at line 11, near "$a\""␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
22:29 lue rakudo: my $a = 3000; say "\x[$a]"
22:29 p6eval rakudo 8c434e: OUTPUT«Unrecognized backslash sequence: '\x' at line 11, near "[$a]\""␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
22:29 lue rakudo: my $a = 3000; say "\x{$a}"
22:29 p6eval rakudo 8c434e: OUTPUT«Unrecognized backslash sequence: '\x' at line 11, near "{$a}\""␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
22:30 lue rakudo: my $a = 3000; say "\x $a"
22:30 p6eval rakudo 8c434e: OUTPUT«Unrecognized backslash sequence: '\x' at line 11, near " $a\""␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
22:31 jnthn std: my $a = 3000; say "\x[$a]"
22:31 p6eval std 30334: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized backslash sequence: '\x' at /tmp/pv61HlAUtY line 1:␤------> [32mmy $a = 3000; say "\x[[33m⏏[31m$a]"[0m␤    expecting backslash␤FAILED 00:01 110m␤»
22:31 jnthn std: my $a = 3000; say "\x[$a]"
22:31 p6eval std 30334: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized backslash sequence: '\x' at /tmp/ymjLeBMnB3 line 1:␤------> [32mmy $a = 3000; say "\x[[33m⏏[31m$a]"[0m␤    expecting backslash␤FAILED 00:01 107m␤»
22:32 CokeBot9000 .u APL quad
22:32 phenny U+2395 APL FUNCTIONAL SYMBOL QUAD (⎕)
22:33 lue That's seems a bit silly, that you can't do something like \x$a.
22:33 lue I know about ord() and chr(), but I want MTOWTDI!
22:33 lue :)
22:34 jnthn rakudo: my $a = 3000; say "lol $a.chr()"
22:34 p6eval rakudo 8c434e: OUTPUT«lol ஸ␤»
22:35 lue But it won't let me do the horrible pun I was after :(
22:35 lue rakudo: my $c = 42; my $k = 1923; my $d = 6502; say "\x[$k,$c,$d]"
22:35 p6eval rakudo 8c434e: OUTPUT«Unrecognized backslash sequence: '\x' at line 11, near "[$k,$c,$d]"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
22:43 lue .u thumb
22:43 phenny lue: Sorry, no results for 'thumb'.
22:46 payload joined #perl6
23:03 lue http://rt.perl.org/rt3/Tic​ket/Display.html?id=57970 can anyone tell me the exact purpose of this ticket?
23:03 jnthn The comment is out of date in it
23:04 jnthn But it means essentially "get radix.t to pass entirely" I guess. :-)
23:05 lichtkind joined #perl6
23:06 lue The Perl6Str.pmc bit was random
23:06 lue hi lichtkind o/
23:06 ruoso joined #perl6
23:06 lichtkind lue: hai
23:07 lichtkind is it save to say that mutable types are value container types?
23:09 lue I couldn't tell you :) . By just reading what you asked, it seems like it would. But don't quote me. I don't has Perl-fu yet :)
23:09 lichtkind hahha
23:09 lichtkind lue: remind sme on old chinese films where the teacher says:
23:09 jnthn lichtkind: They needn't be, no
23:09 lichtkind lue: your kung fu is weak :)
23:10 jnthn lichtkind: I mean, an iterator isn't a container as such (you can't assign to it), but it does mutate as you iterate.
23:10 lichtkind jnthn: but mostly they do?
23:11 lue .oO(The dub-over saying "hello" while the mouths say something like カネサ後場高きゅの質)
23:14 lichtkind my chinese is weak :)
23:14 jnthn lichtkind: Well, many is maybe more true than most... At least some. :-)
23:15 lue that's japanese,  and I typed random syllables (which the input method turned into kanji)
23:15 lue phenny: "カネサ後場高きゅの質" ?
23:16 jnthn heh, I fed it to Google Translate.
23:16 jnthn You accidentally the well wishing.
23:16 jnthn "Yu Kanesa afternoon high quality"
23:18 lue I fed it to my fish, it said: "Quality of [kanesa] afternoon session high coming [yu"
23:20 lue yu could be "hot bath", but kanesa isn't a word :/
23:21 * lichtkind added m, mm, ss to index B and pick to A
23:24 lue 時の勇士!
23:24 lue lichtkind: \o/
23:25 lichtkind lue: i dont understand this :)
23:26 lue that's alright, only the japanese do. They tell their kids the 時の勇士の伝説
23:26 lue .oO(I can't wait to start learning japanese someday!)
23:30 lichtkind_ joined #perl6
23:31 lue rakudo: say 1 orelse 0
23:31 p6eval rakudo 8c434e: OUTPUT«Confused at line 11, near "say 1 orel"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
23:31 lue std: say 1 orelse 0
23:31 p6eval std 30334: OUTPUT«ok 00:01 109m␤»
23:32 lue rakudo: multi sub infix:<orelse>($a,$b){$a??$a!!$b;}; say 1 orelse 0
23:32 p6eval rakudo 8c434e: OUTPUT«1␤»
23:32 lue rakudo: multi sub infix:<orelse>($a,$b){$a??$a!!$b;}; say 0 orelse 0
23:32 p6eval rakudo 8c434e: OUTPUT«0␤»
23:32 lue rakudo: multi sub infix:<orelse>($a,$b){$a??$a!!$b;}; say 0 orelse 1
23:32 p6eval rakudo 8c434e: OUTPUT«1␤»
23:32 lue rakudo: multi sub infix:<orelse>($a,$b){$a??$a!!$b;}; say 0 orelse 0 orelse 1
23:32 p6eval rakudo 8c434e: OUTPUT«1␤»
23:33 lue rakudo: multi sub infix:<orelse>($a,$b){$a??$a!!$b;}; say 3!=3 orelse 4=9 orelse 1
23:33 p6eval rakudo 8c434e: OUTPUT«0␤Cannot assign to readonly value␤current instr.: '&die' pc 17293 (src/builtins/Junction.pir:404)␤»
23:33 lue and there my code fails :/
23:34 lue rakudo: multi sub infix:<orelse>($a,$b){$a??$a!!$b;}; say 3!=3 orelse 4==9 orelse 1 # *cough*
23:34 p6eval rakudo 8c434e: OUTPUT«0␤»
23:34 lue rakudo: multi sub infix:<orelse>($a,$b){$a??$a!!$b;}; say 0 orelse "bummer"
23:34 p6eval rakudo 8c434e: OUTPUT«bummer␤»
23:35 lue rakudo: multi sub infix:<orelse>($a,$b){$a??$a!!$b;}; say 3!=3 orelse 4==9 orelse "bummer"
23:35 p6eval rakudo 8c434e: OUTPUT«0␤»
23:36 lue jnthn: your a wiz at this stuff. Could the orelse code stay this simple, or would it have to get big and messy?
23:38 lue .oO(this jesse@perl.org needs a lesson in bug reporting)
23:38 f00li5h joined #perl6
23:38 jnthn lue: Nah, actually we had a list of tasks in a text file and he knew how to magically turn each one into a ticket for us. :-)
23:39 lue ah. Well, they certainly aren't descriptive tickets :/
23:40 jnthn I think orelse ain't that simple.
23:40 jnthn Needs to shrot-circuit and stuff, or at least only evaluate up to some conditon...
23:40 jnthn ...which means mucking in compiler guts rather than just writing it in Perl 6.
23:41 lue It's supposed to continue on failure. It works in a basic sense, but the actual operator needs the Power and Wisdom of somebody else :D
23:44 f00li5h joined #perl6
23:50 f00li5h joined #perl6
23:57 lichtkind allright eacht time got a bit further
23:57 lichtkind good night and thanks
23:58 lue good night

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

Perl 6 | Reference Documentation | Rakudo