Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2011-05-09

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:09 Ninka-8576 joined #perl6
00:11 Chillance left #perl6
00:11 Ninka-8576 left #perl6
00:12 mberends left #perl6
00:25 benabik left #perl6
00:36 orafu joined #perl6
01:04 whiteknight left #perl6
01:07 ymasory_ joined #perl6
01:14 ymasory_ left #perl6
01:24 envi joined #perl6
01:25 cotto left #perl6
01:46 woosley joined #perl6
02:14 newbee joined #perl6
02:15 p6eval left #perl6
02:15 benabik joined #perl6
02:16 p6eval joined #perl6
02:17 bluescreen__ left #perl6
02:17 bluescreen__ joined #perl6
02:18 plobsing left #perl6
02:18 newbee rakudo: my Int $x = 10 / 3; say $x; #--- i want $x to be 3;
02:18 p6eval rakudo 705435: OUTPUT«Type check failed for assignment␤    Container type: Int␤               Got: Rat␤  in '&infix:<=>' at line 1␤  in main program body at line 22:/tmp/sSkFGbggT2␤»
02:19 plobsing joined #perl6
02:23 p6eval left #perl6
02:24 woosley left #perl6
02:24 p6eval joined #perl6
02:26 newbee left #perl6
02:31 Tedd1 left #perl6
02:31 Tedd1 joined #perl6
02:32 ingy left #perl6
02:34 ingy joined #perl6
02:39 Tene rakudo: my Int $x = (10/3).Int;
02:39 p6eval rakudo 705435:  ( no output )
02:39 sorear rakudo: say 10 div 3
02:39 Tene rakudo: my Int $x = (10/3).Int; say $x
02:39 p6eval rakudo 705435: OUTPUT«3␤»
02:39 p6eval rakudo 705435: OUTPUT«3␤»
02:39 TimToady but what do you want -10 / 3 to be?
02:39 sorear TimToady: "correct"
02:39 sorear :p
02:39 TimToady I'm floored...
02:40 * sorear actually almost always wants FM/MOD semantics, and can't figure out why Intel chose SM/REM
02:45 Limbic_Region left #perl6
02:50 woosley joined #perl6
02:51 * perigrin adds some decimals back to TimToady
02:51 sorear I think I'll modify niecza's MMD engine to use position-in-the-MRO as a tiebreaker
02:52 leprevost joined #perl6
02:52 sorear i.e: class A { multi method foo(Any,Int) { "A" } }; class B is A { multi method foo(Int,Any) { "B" } }; is B.foo(1,1), "B";
02:53 TimToady off to GRU->PTY->IAH->SFO
02:53 TimToady afk
03:23 Su-Shee joined #perl6
03:27 Su-Shee_ left #perl6
03:45 hudnix left #perl6
03:49 leprevost left #perl6
03:53 envi left #perl6
03:55 satyavvd joined #perl6
04:25 ymasory left #perl6
04:47 bluescreen100 left #perl6
04:47 bluescreen__ left #perl6
04:47 bluescreen10 left #perl6
05:38 justatheory left #perl6
05:38 justatheory joined #perl6
05:42 justatheory left #perl6
05:45 kaare_ joined #perl6
05:56 SHODAN joined #perl6
06:12 donri joined #perl6
06:17 birdwindupbird joined #perl6
06:53 cotto joined #perl6
07:02 mj41 joined #perl6
07:17 am0c joined #perl6
07:19 wamba joined #perl6
07:22 fhelmberger joined #perl6
07:26 awoodland left #perl6
07:26 awoodland joined #perl6
07:28 pnu left #perl6
07:40 pnu joined #perl6
07:49 jevin left #perl6
07:50 jevin joined #perl6
07:51 [particle] joined #perl6
07:51 domidumont joined #perl6
07:59 TiMBuS left #perl6
07:59 TiMBuS joined #perl6
08:06 jnthn morning, #perl6
08:07 moritz \o
08:07 sorear o/
08:09 tadzik morning
08:11 nymacro joined #perl6
08:13 Mowah joined #perl6
08:15 araujo left #perl6
08:22 dakkar joined #perl6
08:23 flatwhatson left #perl6
08:34 thinker joined #perl6
08:42 thinker left #perl6
08:43 satyavvd left #perl6
09:13 woosley left #perl6
09:16 awoodland left #perl6
09:17 noganex_ joined #perl6
09:18 noganex left #perl6
09:21 awoodland joined #perl6
09:25 awoodland left #perl6
09:51 woosley joined #perl6
09:54 cognominal left #perl6
10:04 cognominal joined #perl6
10:16 Su-Shee left #perl6
10:16 Butcho joined #perl6
10:18 woosley left #perl6
10:19 Butcho left #perl6
10:20 Su-Shee joined #perl6
10:31 araujo joined #perl6
10:46 jaldhar left #perl6
10:46 jaldhar joined #perl6
10:48 Sarten-X left #perl6
10:49 cognominal left #perl6
10:50 Sefnajjer joined #perl6
10:53 domidumont left #perl6
10:59 Sarten-X joined #perl6
11:06 domidumont joined #perl6
11:07 Psyche^ joined #perl6
11:07 Psyche^ is now known as Patterner
11:08 cognominal joined #perl6
11:13 orafu left #perl6
11:15 wamba left #perl6
11:37 SHODAN left #perl6
11:39 nyeh joined #perl6
11:40 nyeh left #perl6
11:50 Sefnajjer left #perl6
11:52 colomon \o
11:54 sorear o/
11:59 bluescreen10 joined #perl6
12:13 wallberg joined #perl6
12:22 takadonet morning all
12:25 hudnix joined #perl6
12:44 mtk joined #perl6
12:53 jrockway left #perl6
12:54 leprevost joined #perl6
13:00 jrockway joined #perl6
13:01 wamba joined #perl6
13:03 Holy_Cow joined #perl6
13:29 birdwindupbird left #perl6
14:03 kaare_ left #perl6
14:04 pyrimidine joined #perl6
14:06 birdwindupbird joined #perl6
14:10 gottreu joined #perl6
14:12 drbean joined #perl6
14:16 drbean left #perl6
14:24 Su-Shee_ joined #perl6
14:27 Su-Shee left #perl6
14:31 Su-Shee_ is now known as Su-Shee
14:35 slavik2 left #perl6
14:37 slavik joined #perl6
14:37 kaare_ joined #perl6
14:38 am0c left #perl6
14:42 drewlander joined #perl6
14:43 nymacro left #perl6
14:48 wamba left #perl6
14:51 colomon left #perl6
14:51 nymacro joined #perl6
14:52 PhatEddy joined #perl6
15:00 Holy_Cow left #perl6
15:03 nymacro left #perl6
15:03 nymacro joined #perl6
15:11 PhatEddy rakudo: my token ident { [<alpha>|_] \w* }; if 'mottle' ~~ /<ident>/ { say 'matched' }
15:11 p6eval rakudo 705435: OUTPUT«matched␤»
15:11 PhatEddy rakudo: my token udent { [<alpha>|_] \w* }; if 'mottle' ~~ /<udent>/ { say 'matched' }
15:11 p6eval rakudo 705435: OUTPUT«Method 'udent' not found for invocant of class 'Cursor'␤  in <anon> at line 22:/tmp/AwNCR6HUc2␤  in 'Cool::match' at line 2670:CORE.setting␤  in 'Regex::ACCEPTS' at line 6392:CORE.setting␤  in main program body at line 22:/tmp/AwNCR6HUc2␤»
15:12 ymasory joined #perl6
15:12 PhatEddy Am I doing something wrong?
15:13 nymacro left #perl6
15:13 flussence try "our"?
15:14 flussence rakudo: our token udent { [<alpha>|_] \w* }; if 'mottle' ~~ /<udent>/ { say 'matched' }
15:14 p6eval rakudo 705435: OUTPUT«Method 'udent' not found for invocant of class 'Cursor'␤  in <anon> at line 22:/tmp/T3hbBV6cIJ␤  in 'Cool::match' at line 2670:CORE.setting␤  in 'Regex::ACCEPTS' at line 6392:CORE.setting␤  in main program body at line 22:/tmp/T3hbBV6cIJ␤»
15:14 flussence I dunno. seen this happen before though...
15:15 ymasory left #perl6
15:21 hercynium joined #perl6
15:23 moritz <&udent> for lexical lookup
15:23 PhatEddy rakudo: my token udent { [<alpha>|_] \w* }; if 'mottle' ~~ /<&udent>/ { say 'matched' }
15:23 p6eval rakudo 705435: OUTPUT«matched␤»
15:23 PhatEddy thx
15:24 PhatEddy Why did ident work?
15:26 moritz there's a predefined ident
15:29 PhatEddy I think this makes part of synopis look confusing though - 05 http://perlcabal.org/syn/S05.html#Regex_Routines,_Named_and_Anonymous
15:29 moritz it's a limitation in rakudo
15:30 moritz niecza: token udent { [<alpha>|_] \w* }; if 'mottle' ~~ /<udent>/ { say 'matched' }
15:30 p6eval niecza v5: OUTPUT«Unhandled exception: trying to dereference null␤  at /home/p6eval/niecza/boot/lib/CORE.setting line 413 (CORE die @ 2)␤  at /home/p6eval/niecza/src/Metamodel.pm6 line 659 (Metamodel Unit.deref @ 2)␤  at /home/p6eval/niecza/src/NieczaPassBegin.pm6 line 288 (NieczaPassBegin
15:30 p6eval ..C118_ANON…
15:30 moritz seems not only in rakudo :-)
15:32 wallberg left #perl6
15:36 woosley joined #perl6
15:37 orafu joined #perl6
15:48 am0c joined #perl6
15:50 justatheory joined #perl6
15:57 * jnthn back from $dayjob :)
15:58 * moritz too
15:58 moritz q
15:58 moritz dammit
16:05 woosley left #perl6
16:17 spq joined #perl6
16:21 mj41 left #perl6
16:24 REPLeffect joined #perl6
16:28 zb joined #perl6
16:30 rhr left #perl6
16:43 Tene jnthn: you mentioned that the find_method method is special in 6model right now?
16:47 wamba joined #perl6
16:50 jnthn Tene: Yes.
16:51 ashleydev joined #perl6
16:52 Tene What's special about it?
16:53 jnthn Tene: Only that the name "find_method" is hardcoded in the method dispatcher.
16:53 mj41 joined #perl6
16:54 ymasory joined #perl6
16:54 jnthn Tene: A repr and a metaclass have a contractual relationship also, but since it's ultimately the meta-class that picks the repr - or has the last say about it - that's not really a problem.
16:54 jnthn And exactly what that relationship is varies. P6opaque cares that there are attributes and parents methods on the meta-object, for example.
16:55 jnthn HashAttrStore doesn't require any such thing.
17:00 cdarroch joined #perl6
17:00 cdarroch left #perl6
17:00 cdarroch joined #perl6
17:00 PhatEddy rakudo: print 'abc' ~ chr(0x2620);
17:01 p6eval rakudo 705435: OUTPUT«abc☠»
17:01 jaldhar left #perl6
17:01 jaldhar joined #perl6
17:01 Chillance joined #perl6
17:06 Tene I'm still fuzzy on the relationship between a HOW and a repr.
17:07 orafu left #perl6
17:08 sjn joined #perl6
17:09 benabik left #perl6
17:17 wamba left #perl6
17:28 masak joined #perl6
17:28 masak hello, #perl6.
17:28 jnthn dobry vecer, masak :)
17:29 masak приветствия, jnthn :)
17:30 * masak makes vecery nom
17:31 dakkar left #perl6
17:31 awoodland joined #perl6
17:31 jnthn oooozhen
17:33 masak an empty kitchen table: not bad. a kitchen table with only TAoCP 2 on it: poetry.
17:33 masak (I should mention that historically, my kitchen table has had a tendency to attract entropy)
17:37 Tene I need to get TAoCP eventually.
17:38 Sefnajjer joined #perl6
17:38 Sefnajjer Hello
17:38 jnthn masak: Hope it tastes good...
17:38 Tene I need to finish TAotMOP and AIaMO first.
17:38 masak I'm reading through the first three now. so that I can pick up the fourth with a good conscience. :)
17:38 masak Sefnajjer: hi!
17:38 Sefnajjer it's me Moukeddar :)
17:39 * masak is not surprised
17:39 * Sefnajjer wonders why
17:39 masak Tene: .oO( reading with a Lisp ) :)
17:40 Tene masak: hm?
17:42 Sefnajjer masak, they Accepted the MVC architecture :)
17:42 masak Tene: at least the first one is CLOS, I know...
17:43 masak Sefnajjer: nice. I'm happy for you :)
17:43 Tene Yeah, The Art of the Metaobject Protocol is primarily about CLOS.
17:43 Sefnajjer thanks very much , the sample Idea worked :)
17:43 Tene uses CLOS as an example, at least.
17:43 Ali_h joined #perl6
17:43 masak Tene: right. it implements CLOS in CLOS.
17:44 masak very metacircular.
17:44 Ali_h Hi I want to get started with perl 6 and am a windows user - can anyone suggest where to start?
17:48 masak Ali_h: perl6.org
17:50 masak Ali_h: also, feel free to ask anything here. you'll find it's a very friendly group.
17:50 masak Ali_h: there are a few Windows holdouts... er, I mean users... in here. :)
17:50 Ali_h masak thank you :) ill go look now
17:51 jnthn masak: hey...some Perl 6 compiler developers use Windows! :P
17:52 daemon joined #perl6
17:52 Sefnajjer masak, is OpenSuse a good distro fo a developer , i kinda dislike the ubuntu
17:52 masak jnthn: well, someone has to, I guess :P
17:52 Su-Shee Sefnajjer: then use whatever you like?
17:52 masak Sefnajjer: I don't know.
17:53 masak Sefnajjer: what Su-Shee++ said :)
17:54 Su-Shee luckily, there's a linux for everyone. (literally ;)
17:54 Sefnajjer OpenSuse then :) , i had a previous experience with it and it was lovely , but ubuntu seems to be  a bigg buzz these days
17:58 benabik joined #perl6
18:04 araujo left #perl6
18:09 masak Sefnajjer: you could partition your drive and try both.
18:10 Sefnajjer masak, OpenSuse is very tempting :)
18:10 Sefnajjer i'll shrink the windows Parition for it :)
18:11 Sefnajjer there's Perl6 Package for it ,right?
18:12 birdwindupbird left #perl6
18:12 masak not to my knowledge.
18:12 sorear good * #perl6
18:12 masak sorear! \o/
18:14 tadzik I suppose it depends on what do you mean by Perl 6 :)
18:14 tadzik hello zebras
18:14 Sefnajjer execute and debug perl6 scripts
18:14 tadzik so a compiler in the first place. Which one then? :)
18:15 Sefnajjer i was asking if there's an OpenSuse package of perl6
18:16 _dolmen_ joined #perl6
18:16 tadzik I was... ah, nevermind :) I mean there's not a "perl6", there are a few compilers implementing a different bunch of Perl 6
18:16 Sefnajjer oh , great
18:17 benabik Sefnajjer: openSUSE 11.3 ships with the June 2010 version of Rakudo.
18:17 wamba joined #perl6
18:17 benabik Sefnajjer: "Newer versions of rakudo are available from the devel:languages:parrot build service project."
18:17 Sefnajjer one more reason to love OpenSuse :)
18:18 masak and Rakudo :)
18:18 Su-Shee_ joined #perl6
18:18 masak is Rakudo the only Perl 6 compiler so far that ships with Linux distributions?
18:18 Sefnajjer weird name for an interpreter right?
18:18 tadzik interpreter?
18:18 Sefnajjer compiler
18:18 masak weird?
18:20 masak TimToady: did you make bare blocks into one-iteration loops in Perl Classic? I only really grokked that today, and I don't like it. :)
18:20 Sefnajjer rakudo , that's like an Anim :)
18:21 Su-Shee left #perl6
18:21 am0c left #perl6
18:22 fhelmberger left #perl6
18:23 masak I accidentally did 'last' from a bare block in Perl 5... it exited the bare block, but not the surrounding loop. :/
18:24 masak I suppose the underlying reason is 'do ... while' loops or something like that.
18:24 * sorear out
18:24 masak but that's two wrongs not making a right if you ask me... :)
18:24 wamba left #perl6
18:24 jnthn masak: Did you submit a classicbug? ;)
18:24 sorear masak: perlsyn talks about bare blocks being do-once loops
18:24 sorear it's quite useful actually if you ask me
18:25 masak sorear: oh? in that case, I'm willing to be convinced.
18:32 Sefnajjer Functional Programming: A Pragmatic Introduction
18:32 Sefnajjer interesting
18:33 _dolmen_ left #perl6
18:33 _dolmen_ joined #perl6
18:34 dolmen__ joined #perl6
18:37 Su-Shee_ is now known as Su-Shee
18:37 dolmen__ left #perl6
18:38 _dolmen_ is now known as dolmen_
18:44 Holy_Cow joined #perl6
18:44 Sefnajjer left #perl6
18:47 wamba joined #perl6
18:52 fglock joined #perl6
18:55 fglock 'my $*var' is the same as Perl 5 'local $var' ?
18:56 masak to a first approximation.
18:56 Holy_Cow left #perl6
18:56 fglock how is it different?
18:57 * masak looks it up for fglock
18:57 fglock I've only seen this in examples, I can't find the spec
18:58 masak S05:178: 'Perl 5's "C<local>" function has been renamed to C<temp> to better reflect what it does.'
18:58 [hercynium] joined #perl6
18:58 [hercynium] left #perl6
18:58 [hercynium] joined #perl6
18:58 Tene masak: loop control on bare blocks has been useful to me several times, specifically 'last' and 'redo'.
18:58 masak fglock: but it then adds that 'temp $x' doesn't undefine $x, as Perl 5's 'local $x' does.
18:58 fglock makes sense - but what is 'my $*var'
18:59 noganex joined #perl6
18:59 masak fglock: it's a dynamically scoped variable.
19:00 masak Tene: do you agree that it doesn't look like a loop?
19:00 Tene masak: No.
19:00 fglock dynamically scoped - isn't it the same as Perl 5 'local'?
19:00 Tene masak: I suspect I may be persuadable, but not intuitively, no.
19:01 masak fglock: yes.
19:01 hercynium left #perl6
19:01 noganex_ left #perl6
19:01 [hercynium] is now known as hercynium
19:01 masak fglock: if I remember correctly, 'temp' and dynamicals are kinda closely related.
19:02 fglock maybe 'my' makes it visible in the current scope, without redeclaring? (temp would create a new variable)
19:03 masak rakudo: for ^5 { given "OH HAI" { .say; last }; .say }
19:03 p6eval rakudo 705435: OUTPUT«OH HAI␤»
19:03 PerlJam fglock: a new value, not a new variable.
19:03 PerlJam as I understand things
19:04 jnthn 'my' declares a lexical variable as normal, * just means it can be looked up dynamically.
19:04 jnthn But the actual installation of a dynamic is pretty much the same.
19:04 masak jnthn: so a 'temp' isn't visible in a callee scope?
19:05 jnthn masak: Orthogonal.
19:05 fglock jnthn: so I need to use 'my' when I need to see the variable
19:05 jnthn temp $x no, temp $*x I guess yes.
19:05 PerlJam jnthn: that's what I think too
19:05 jnthn fglock: If you want to see it dynamically it's the * that matters, not the declarator.
19:05 birdwindupbird joined #perl6
19:06 fglock temp $x  ==> save $x, get new $x
19:06 fglock my $*x ==> use current $*x
19:06 jnthn no
19:06 fglock I mean, temp $*x
19:06 [hercynium] joined #perl6
19:06 [hercynium] left #perl6
19:06 [hercynium] joined #perl6
19:06 jnthn ah, ok
19:07 jnthn my $*x is a new variable. temp $*x just means "remember the value we had before and then put it back in place at scope exit", iirc.
19:07 jnthn But my $x and temp $x also mean that. It's just that those don't "exist" in the dynamic scope.
19:08 masak well, the twigil is mostly a comment about how the lookup is done, right?
19:08 hercynium left #perl6
19:08 [hercynium] is now known as hercynium
19:08 jnthn masak: Declarationaly or usagely?
19:09 masak usagely.
19:09 jnthn For usage though, certainly.
19:09 jnthn $x = walk static chain
19:09 Holy_Cow joined #perl6
19:09 jnthn $*x = walk dynamic chain
19:09 masak that's the nice thing. it's just a normal 'my' variable (if you used 'my')
19:09 fglock my $*x is a new variable - what happens to the global value?
19:09 jnthn ?
19:09 jnthn There is no global value.
19:09 masak or an 'our' variable. or a 'temp' variable.
19:10 fglock $*x lives in GLOBAL, no?
19:10 jnthn No
19:10 jnthn It's a lexical.
19:10 masak fglock: in the general case, there isn't a global value.
19:10 masak fglock: if it's declared with 'my', it's lexical.
19:10 jnthn $*x may look in GLOBAL as a last resort.
19:10 jnthn But only after it's walked the entire dynamic chain.
19:11 fglock hmm - and the first 'my $*x' in the caller stack will be used?
19:12 masak right. the first one found walking back along it.
19:14 fglock got it - now about 'temp $*x', how is it different
19:14 fglock it is not lexical?
19:15 fglock hmm - no, that doesn't make sense
19:16 jnthn I guess it's, find whatever $*x is now, save it away, then at block exit restore it.
19:16 fglock hmm - while 'my $*x' will only restore at 'return' ?
19:17 masak 'temp' is syntactic sugar for 'is leave { $*x = <old-value> }'
19:17 jnthn fglock: There's no restoring to do.
19:17 masak fglock: 'my $*x' doesn't restore so much as go out of scope.
19:17 masak fglock: it's a lexical.
19:21 * tylercurtis finds it somewhat confusing that of PROCESS and GLOBAL, S02 indicates that GLOBAL is the less global.
19:26 jevin left #perl6
19:26 dju_ joined #perl6
19:29 dju left #perl6
19:29 fglock reading S02, 'temp $*foo' is the same as 'my $*foo', except that 'temp' knows the previous value and reuses that
19:31 masak right.
19:31 fglock cool - thanks
19:31 Holy_Cow left #perl6
19:37 tylercurtis fglock: Are you sure about that? temp can also only be used on existing rw variables.
19:43 REPLeffect left #perl6
19:44 fglock right - it doesn't make sense to save the previous value if you are not going to modify it anyway
19:46 tylercurtis fglock: right, but my can be used to create new dynamic variables or to change the value within a dynamic scope of a readonly dynamic variable, iiuc.
19:47 ashleydev left #perl6
19:51 benabik left #perl6
19:51 fglock change the value - yes, by masking the outer value
19:56 REPLeffect joined #perl6
19:57 Chillance left #perl6
19:57 Chillance joined #perl6
19:57 masak you can do that with lexically looked-up variables, too.
19:58 masak rakudo: my $a is ro = 5; say $a; { my $a is ro = 42; say $a }; say $a
19:58 Trashlord left #perl6
19:58 p6eval rakudo 705435: OUTPUT«No applicable candidates found to dispatch to for 'trait_mod:<is>'. Available candidates are:␤:(Mu $child, Role $r)␤:(Routine $r, Any :default($default)!)␤:(Code $block, Any $arg?, Any :export($export)!)␤:(Mu $child, Mu $parent)␤:(Mu $type where ({ ... }), Any :rw($rw)!)␤:(Mu
19:58 p6eval ..$type…
19:58 masak oh, right :)
19:58 jnthn readonly
19:58 masak rakudo: my $a is readonly = 5; say $a; { my $a is readonly = 42; say $a }; say $a
19:58 p6eval rakudo 705435: OUTPUT«Cannot modify readonly value␤  in '&infix:<=>' at line 1␤  in main program body at line 22:/tmp/jIlks00XNp␤»
19:58 masak too much Moose lately :P
19:58 masak oh, right :P
19:58 jnthn also it's very very very readonly in Rakudo :/
19:58 masak forget it :)
19:59 jnthn afk for a bit
20:00 masak alpha: constant $a = 5; say $a; { constant $a = 42; say $a }; say $a
20:00 p6eval alpha : OUTPUT«5␤42␤5␤»
20:01 masak \o/
20:02 fglock what is alpha?
20:02 bluescreen10 left #perl6
20:02 arnsholt The oldest Rakudo
20:03 arnsholt (FSVO oldest)
20:03 arnsholt A year or two back, there was a major refactor of nqp into nqp-rx, which had better grammar handling
20:03 fglock ah, ok
20:03 masak it's just one year.
20:04 arnsholt That became the basis for rakudo-ng, which is the current Rakudo
20:04 masak well, it started 18 months back or so.
20:04 fglock google finds 'v6-alpha', an older v6.pm
20:04 masak that's a diff'rent alpha :)
20:04 arnsholt And the previous Rakudo became alpha
20:04 masak Rakudo 'alpha' is just an internal name for an old branch.
20:04 arnsholt Something similar will probably happen when rakudo-nom becomes stable enough to replace current Rakudo
20:04 masak 'beta'?
20:05 arnsholt Perhaps
20:05 masak you heard it here first!
20:05 masak :)
20:06 tinhead joined #perl6
20:06 masak and then we'll release the obvious sequel to "Rakudo Starr": "Rakudo Harrisson". :P
20:06 * masak can't wait for Rakudo McCartney
20:06 jasonmay haha
20:09 spq left #perl6
20:10 ab5tract joined #perl6
20:12 Su-Shee .oO(I see a Rakudo Bieber at some point in the future and then help us all.. ;)
20:12 fglock :P
20:13 tinhead left #perl6
20:13 fglock dinner &
20:14 fglock left #perl6
20:17 birdwindupbird left #perl6
20:23 masak Su-Shee: yes, but have you listened to http://www.youtube.com/watch?v=QspuCt1FM9M ?
20:23 masak ("You Smile" slowed down 800%. that was the first Bieber song I ever listened to.)
20:24 Su-Shee masak: "Sadly, my religion, my political opinion and my morals and ethics forbid me strictly to click on Justin Bieber related links of any kind" ;)
20:25 Su-Shee UHM. Now I actually clicked and it's not available in my country?!
20:27 Tene masak: you may find http://www.youtube.com/user/Thunt9#p/search/9/TewfjpgM56g and its followups to be interesting
20:31 Mowah left #perl6
20:32 masak Tene: heh. :)
20:32 masak Tene: well, the nice thing about 800% slowed down is that the lyrics sounds like whale song. :)
20:34 Tene rakudo: multi sub f($a,$b,$c) { }; multi f($a,$b,$c where {$a**2 + $b**2 == $c**2 and $a+$b+$c == 1000}) { say "$a $b $c" }; f(all(1..100),all(1..100),all(1..100));
20:34 p6eval rakudo 705435: OUTPUT«(timeout)»
20:34 * Tene feeling silly today.
20:35 masak shouldn't that be 'any'?
20:36 Tene I'm not actually using the result there; all that relies on is autothreading
20:36 masak also, your one-liner seems to assume that measuring a quantum superposition will make the correct answer(s) magically appear out of the haystack.
20:36 Tene if I wanted something useful back, though, yeah.
20:36 drewlander left #perl6
20:37 masak the fact that this is not the case is exactly what makes quantum computing so frustrating. :)
20:37 Tene masak: no, I really didn't.
20:37 Tene I assumed it would run over the entire state space.
20:37 masak right, both 'all' and 'any' will do that.
20:38 Tene rakudo: multi f($n) { }; multi f($n where 3) { "three" }; multi f($n where 5) { "five" }; say f(any(1..10));
20:38 masak hm, I suppose it doesn't matter which one you use in this script. since you're not checking a boolean value.
20:38 p6eval rakudo 705435: OUTPUT«any("three", "five")␤»
20:38 go joined #perl6
20:39 masak rakudo: multi f($n) { }; multi f($n where 3) { "three" }; multi f($n where 5) { "five" }; say f(all(1..10));
20:39 p6eval rakudo 705435: OUTPUT«all("three", "five")␤»
20:39 masak ok, I stand corrected.
20:39 masak both would work. they just act as containers.
20:39 masak and as parallel dispatchers, I guess.
20:39 go left #perl6
20:39 Tene rakudo: multi f($a,$b,$c) { }; multi f($a,$b,$c where {$a**2 + $b**2 == $c**2}) { [$a,$b,$c] }; f(any(1..10),any(1..10),any(1..10));
20:40 p6eval rakudo 705435:  ( no output )
20:40 Tene rakudo: multi f($a,$b,$c) { }; multi f($a,$b,$c where {$a**2 + $b**2 == $c**2}) { [$a,$b,$c] }; say f(any(1..10),any(1..10),any(1..10));
20:40 p6eval rakudo 705435: OUTPUT«any(any(any(), any(), any(), any(), any(), any(), any(), any(), any(), any()), any(any(), any(), any(), any(), any(), any(), any(), any(), any(), any()), any(any(), any(), any(), any([3, 4, 5]), any(), any(), any(), any(), any(), any()), any(any(), any(), any([4, 3, 5]),
20:40 p6eval ..any(), any…
20:40 Tene Huh; wonder why that's different.
20:41 Tene rakudo: multi f($a,$b,$c) { }; multi f($a,$b,$c where {$a**2 + $b**2 == $c**2}) { [$a,$b,$c] }; say f(1,1,1);
20:41 p6eval rakudo 705435: OUTPUT«␤»
20:41 Tene rakudo: multi f($a,$b,$c) { }; multi f($a,$b,$c where {$a**2 + $b**2 == $c**2}) { [$a,$b,$c] }; say f(1,1,1).perl;
20:41 p6eval rakudo 705435: OUTPUT«Nil␤»
20:42 ymasory left #perl6
20:42 Tene oh, from the combinations, somehow
20:42 Tene any(any(...
20:42 Tene any() isn't collapsing to Nil
20:43 Tene I don't know whether the spec is good and defined around junctions of no elements.
20:43 masak chromatic is grumpy today. http://www.modernperlbooks.com/mt/2011/05/2018-is-the-year-of-perl-510.html
20:44 masak Tene: 1**2 + 1**2 != 1**2
20:44 tadzik I can understand that
20:45 Tene masak: I know.  I was trying to figure out where the extra any()s were coming from in the failure cases.
20:45 masak Tene: good question.
20:45 Tene rakudo: multi f($a,$b,$c) { }; multi f($a,$b,$c where {$a**2 + $b**2 == $c**2}) { [$a,$b,$c] }; say f(all(1..10),all(1..10),all(1..10));
20:45 p6eval rakudo 705435: OUTPUT«all(all(all(), all(), all(), all(), all(), all(), all(), all(), all(), all()), all(all(), all(), all(), all(), all(), all(), all(), all(), all(), all()), all(all(), all(), all(), all([3, 4, 5]), all(), all(), all(), all(), all(), all()), all(all(), all(), all([4, 3, 5]),
20:45 p6eval ..all(), all…
20:46 masak Tene: seems you get three nested levels of any(), and many of the innermost ones are empty because they match the first multi
20:47 masak rakudo: say so 2 == any()
20:47 p6eval rakudo 705435: OUTPUT«Bool::False␤»
20:47 masak rakudo: say so 2 == none()
20:47 p6eval rakudo 705435: OUTPUT«Bool::True␤»
20:47 masak Tene: I think junctions of no elements are very well defined.
20:52 tadzik masak: don't you find him and sri right?
20:53 masak sorry, could you rephrase that question?
20:55 tadzik don't you think chromatic has a right to be mad seeing what happens regarding 5.8.x?
20:57 masak tadzik: I think chromatic is very good at pointing out things that are wrong with Perl and around Perl.
20:57 Trashlord joined #perl6
20:58 masak tadzik: in this case, Linux distributions that ship old Perl versions.
20:59 masak tadzik: but I found this post more gloomy than most recent posts.
21:00 masak it's especially striking given that a bit over a year ago, the big discussion was over regular releases of Perl 5. that's now in effect, and functions as the argumentation in this reasoning.
21:01 masak not saying chromatic is wrong. just noting that he's now expressing displeasure over the next thing that needs to be fixed. :)
21:02 y3llow_ joined #perl6
21:02 plobsing I think the whole premise of that post is flawed. Surely if you can spring for the support contract for the linux distro, you can pay someone to backport the cpan modules you want.
21:04 y3llow left #perl6
21:04 y3llow_ is now known as y3llow
21:05 Trashlord left #perl6
21:05 benabik joined #perl6
21:05 kaare_ left #perl6
21:06 benabik left #perl6
21:10 tadzik g'night
21:11 masak 'night, panda
21:13 Trashlord joined #perl6
21:16 ab5tract left #perl6
21:28 donri left #perl6
21:28 ymasory joined #perl6
21:30 ymasory left #perl6
21:30 ymasory joined #perl6
21:34 Tene masak: he's been expressing displeasure over outdated 'enterprise' environments for years.
21:34 Tene This isn't new.
21:36 masak true.
21:36 masak and that wasn't really my point either.
21:36 masak just that he keeps pressing on with the important issues.
21:38 mj41 left #perl6
21:39 justatheory left #perl6
21:39 justatheory joined #perl6
21:40 orafu joined #perl6
21:43 Tene plobsing: That's kind of the point of the post, actually.  I think you must have missed some of the sarcasm.
21:44 justatheory left #perl6
21:44 ashleydev joined #perl6
21:50 masak I didn't miss the sarcasm. it's the only part of the post that I object to.
21:50 masak but maybe this message isn't possible to deliver without sarcasm, I dunno.
21:50 plobsing Tene: ah. that I did. so he was being subtle, not quick to anger.
21:51 masak oh btw. now that we have .base, how do you people feel about... .unbase ?
21:51 masak (converting a string representation to a number)
21:51 plobsing wouldn't :base be an optional argument to a more general number parsing function?
21:52 Tene masak: sarcasm is often simpler than delivering a message directly and plainly.
21:53 masak Tene: yes, because it strikes bitingly at no-one in particular.
21:53 jevin joined #perl6
21:53 Tene The format of that post is to present an exaggerated, simplified version of beliefs that he disagrees with, trying to use the exaggeration to indirectly imply his reasons for disagreement.
21:54 masak plobsing: yes, I guess. so I'm proposing spec-ing and exposing that function.
21:54 Tene It's far simpler to do that than to directly and plainly explain the position, his reasoning about it, etc.
21:54 Tene someone mentioned that there's something related by sri?
21:55 plobsing masak: more like "1234".Int(:base<8>)
21:55 _sri afraid i started the whole thing when i deprecated perl 5.8 support in mojolicious
21:57 wamba left #perl6
21:58 masak _sri++
21:58 masak _sri: was there one big reason, or many small ones?
21:59 Tene and then apparently un-deprecated it
21:59 _sri don't ++ me too quick, i backed off and reverted the deprecation :/
21:59 masak plobsing: I'll have to decide whether I like that. :) I don't have an immediate gut feeling.
22:00 masak ok, _sri-- :)
22:00 _sri i think the mailing list thread covers the whole discussion quite well http://groups.google.com/group/mojolicious/browse_thread/thread/510dcf2219371deb
22:01 starcoder is now known as evilstarcoder
22:01 evilstarcoder is now known as starcoder
22:01 _sri i underestimated the backlash a bit
22:01 masak ah, denial of service.
22:02 benabik joined #perl6
22:02 benabik left #perl6
22:02 flussence I think 5.8 users deserve a scare every now and then :)
22:03 masak +1
22:05 BinGOs sometimes the herd won't listen
22:08 * masak .oO( guess they haven't herd... )
22:08 Tene The first post is a bit weird... there's no need to involve xen.  If you really want virtualization, CentOS has good support for kvm, or you can just use containers with lxc, which centos also has good support for.
22:08 _sri http://rassie.org/archives/378
22:08 _sri http://blogs.perl.org/users/opossumpetya/2011/05/mojo-ppl-what-have-you-done.html
22:09 _sri two of the harshest reactions
22:09 _sri which also triggered most of the following discussions
22:09 mux_ joined #perl6
22:10 _sri but the root of all evil really is really rhel
22:10 Tene and, fwiw, I've upgraded system perl to 5.10 on debian 3.1, which is something like 7 years old now.
22:10 Tene It's completely feasible.
22:11 masak what's this Date::Manip disaster I hear about?
22:11 flussence one of the guys at my $dayjob likes to remind me how bad RHEL is often :)
22:11 _sri s/really//  # argh, time to sleep i guess...
22:11 geekosaur left #perl6
22:11 cschimm1 left #perl6
22:11 mux left #perl6
22:11 geekosaur joined #perl6
22:12 Tene There's not really any legitimate excuse for staying with 5.8
22:12 cschimm1 joined #perl6
22:12 flussence (on the other hand, I've been given plenty of illegitimate ones...)
22:14 _sri i don't see deprecating 5.8 support get easier any time soon
22:15 Tene The only place we're still using 5.8 is on some of our proxies.  We've got code we rely on running as a perlbal plugin, and perlbal's performance fell on the floor when we upgraded to 5.10.  They haven't been a priority in the upgrade, so we've left them for later, where we plan to just abandon perlbal.
22:15 flussence fortunately I managed to convince $dayjob to let me install 5.12 for most of our webserver stuff recently. All it took was one module install gone horribly wrong :)
22:17 awoodland left #perl6
22:17 perigrin _sri: RHEL isn't alone, it's just the current worst-case. Apple ships a broken Perl.
22:17 Tene I see this as mostly just saying "computers are hard; let's go shopping", but I'm not feeling very charitable towards suicidal technical debt today, after having to deal with so much of it at work.
22:18 _sri perigrin: lion will fix it though, and everybody will upgrade
22:18 perigrin _sri: I will reserve judgement.
22:19 arnsholt What's broken with the Apple perl, OOC?
22:19 plobsing _sri: whenever somebody whines at you about it, point to the license that clearly disclaims "fitness for a particular purpose".
22:20 perigrin arnsholt: the latest thing I'd seen about it was the default Perl on OSX won't compile XS with the current XCode4 becuase they stripped the PPC headers from XCode but didn't re-compile / update Perl.
22:20 perigrin you can fix it in the environment
22:20 arnsholt Fun
22:21 kda joined #perl6
22:21 arnsholt (I use MacPorts anyways, so I get a different set of problems)
22:21 kda left #perl6
22:21 perigrin I use perlbrew
22:21 perigrin so yeah
22:22 arnsholt I decided to upgrade my Perl (IIRC MacPorts installed 5.8 as well. Why? WHY??) and ended up blowing away my whole MacPorts install and starting from scratch with and installing something non-ancient
22:22 _sri perlbrew++ # <3
22:23 perigrin arnsholt: if I recall there was also something where Apple upgraded libraries
22:23 perigrin to versions older than the current CPAN
22:23 perigrin effectively downgrading you if you weren't using local::lib
22:23 perigrin basically the problem is ... it's a system perl
22:24 perigrin you're not in control of it
22:24 arnsholt Heh. Sounds like a reason I can believe
22:24 masak 'night, #perl6
22:24 masak left #perl6
22:27 Tene You can be as in-control of it as you'd like to be.  I've upgraded system perl on several RH and debian-derived distros.  As long as you acknowledge that you're forking the distro, it's a completely valid option.
22:28 perigrin Tene: right but it's sort of like replacing the stock firmware ona router with dd-wrt. You know going in that you can't cry to your support people for help if you screw it up.
22:28 perigrin And then why use RHEL?
22:29 Tene perigrin: There are a wide variety of distros; you should certainly evaluate what you want and need from a distro.
22:29 gottreu left #perl6
22:30 perigrin Tene: I'm just arguing the point of view for people who have chosen RHEL.
22:30 Tene What *I* don't get are people who seem to be simultaneously saying "I want the latest and newest stuff" and "I can never use anything new ever"
22:30 perigrin I personally use FreeBSD or Arch or Gentoo when given a choice.
22:31 perigrin Tene: the problem I have is when somehow it's my fault for not supporting their system choices.
22:31 Tene perigrin: that's exactly my question to them, why are you using RHEL if you don't want what RHEL provides?  For any use case, there's *a* configuration you can choose.
22:32 perigrin I'm more than willing to work with them. I'm more than willing to support *them* in supporting their system choices. I'm not willing to do their job for them for free.
22:32 Tene For all the people who are complaining about perlbrew not being an appropriate way to deploy system software, they're right, for their environment.  In that case, build an rpm for it, install it in an lxc container, deploy a VM, etc.  You've got a dozen different deployment options.
22:33 perigrin :)
22:33 dolmen_ left #perl6
22:33 perigrin Tene: but see that's *work*
22:33 perigrin if they're gonna go through all that work why should they use your software ...
22:33 Tene Instead of complaining that it's not right, they need to explain what their actual requirements are, if they want useful recommendations.
22:34 silent_h_ joined #perl6
22:35 Tene If they want to leave the core system alone, then there are dozens of options for reliably and sanely deploying whatever perl configuration they actually want.  Really.
22:36 perigrin Honestly they don't know what they want.
22:36 Tene Probably.
22:37 am0c joined #perl6
22:38 Tene I *do* think that a comprehensive guide for deploying new releases of perl in different environments, discussing the tradeoffs, etc. would be very nice, and might be very useful.
22:38 Tene People who are upset really are upset, and that's unfortunate.  It would be nice to enable more people to use new software.
22:40 Tene I see too few people maintaining their perl package deployments with the distro package manager.  Tools like cpan2dist, cpanspec, etc. are underused.
22:40 perigrin Well and I think there should be an option.
22:41 Tene It certainly might help if there was a standard link that could be provided, saying "Here are a dozen different deployment options for CentOS 5.6; If none of those will work for you, please tell me what your needs are so that we can find a deployment option that will help you."
22:47 Tene So, there's a lot of good work that can be done there.
22:51 am0c rakudo: say ~(  <a b c> X <1 2> X <A B>  );
22:51 p6eval rakudo 705435: OUTPUT«No applicable candidates found to dispatch to for 'infix:<X>'. Available candidates are:␤:(Any $lhs, Any $rhs)␤␤  in main program body at line 22:/tmp/oQOoWRXO61␤»
22:51 am0c rakudo: say ~(  (<a b c> X <1 2>) X <A B>  );
22:51 p6eval rakudo 705435: OUTPUT«a A a B 1 A 1 B a A a B 2 A 2 B b A b B 1 A 1 B b A b B 2 A 2 B c A c B 1 A 1 B c A c B 2 A 2 B␤»
22:52 am0c std: <a b c> X <1 2> X <A B>
22:52 p6eval std 9f27365: OUTPUT«ok 00:01 114m␤»
22:54 flussence rakudo: say ( [X] [0, 1] xx 3 ).perl
22:54 p6eval rakudo 705435: OUTPUT«((0, 0), (0, 1), (0, 0), (0, 1), (0, 0), (0, 1), (1, 0), (1, 1), (1, 0), (1, 1), (0, 0), (0, 1), (1, 0), (1, 1), (1, 0), (1, 1))␤»
22:54 flussence rakudo: say ~( [X] [0, 1] xx 3 )
22:54 p6eval rakudo 705435: OUTPUT«0 0 0 1 0 0 0 1 0 0 0 1 1 0 1 1 1 0 1 1 0 0 0 1 1 0 1 1 1 0 1 1␤»
22:54 flussence huh, the second one takes a lot longer on mine
22:54 flussence wait, wrong line
22:55 am0c ah
22:56 am0c S03 says that the X operator is list associative that 1,2 X 3,4 X 5,6 should work
22:56 am0c which produces (1,3,5),(1,3,6),(1,4,5),(1,4,6),(2,3,5),(2,3,6),(2,4,5),(2,4,6)
22:57 flussence rakudo: say [~] [Z] [0..4] xx 3
22:58 p6eval rakudo 705435: OUTPUT«0 0 0 1 1 2 1 3 2 4␤»
22:58 sorear good * #perl6
22:58 flussence I'm getting some extremely long 100%-cpu delays in the repl every few lines, just playing around with these...
22:58 flussence GC?
22:59 am0c heh
23:03 silent_h_ left #perl6
23:04 hercynium left #perl6
23:04 plobsing flussence: can you give an example that triggers the pauses? '~( [X] [0, 1] xx 3 )' runs instantly every time for me
23:05 flussence that last line I wrote above, works fine 5 times in a row then several seconds of delay
23:06 flussence strace says it's doing nothing besides slowly eating memory...
23:06 flussence there's a delay after output before it prints the next > prompt too
23:07 flussence wonder if I just need to update rakudo on this machine
23:07 plobsing 'for ^100 { say [~] $_, [Z] [0..4] xx 3' has noticeable sub-second delays for me, but they're hard to spot
23:08 flussence I'm on 2011.04-3-g8533c3c, I'll update it to see if it goes away
23:08 sorear niecza: say ~( [X] [0, 1] xx 3 )
23:08 p6eval niecza v5: OUTPUT«0 1 0 1 0 1␤»
23:09 sorear that's what I thought
23:09 sorear 15:51 < am0c> rakudo: say ~(  <a b c> X <1 2> X <A B>  );
23:09 sorear perl6: say ~(  <a b c> X <1 2> X <A B>  );
23:09 p6eval rakudo 705435: OUTPUT«No applicable candidates found to dispatch to for 'infix:<X>'. Available candidates are:␤:(Any $lhs, Any $rhs)␤␤  in main program body at line 22:/tmp/m0wGCs5p98␤»
23:09 p6eval ..pugs, niecza v5: OUTPUT«a 1 A a 1 B a 2 A a 2 B b 1 A b 1 B b 2 A b 2 B c 1 A c 1 B c 2 A c 2 B␤»
23:09 sorear perl6: say ~(  <a b c> X~ <1 2> X~ <A B>  );
23:09 p6eval niecza v5: OUTPUT«a1A a1B a2A a2B b1A b1B b2A b2B c1A c1B c2A c2B␤»
23:09 p6eval ..rakudo 705435: OUTPUT«No applicable candidates found to dispatch to for 'crosswith'. Available candidates are:␤:(&op, Any $lhs, Any $rhs)␤␤  in main program body at line 1␤»
23:09 p6eval ..pugs: OUTPUT«a 1 2 A B b 1 2 A B c 1 2 A B␤»
23:10 whiteknight joined #perl6
23:10 * sorear attempts to bring am0c over to the dark side
23:10 * am0c .oO( help me! )
23:13 saaki left #perl6
23:14 sorear Embrace it!
23:23 * jnthn blug: http://6guts.wordpress.com/2011/05/10/rakudo-on-6model-gets-underway/
23:23 jnthn And now I'll sleep.
23:23 jnthn &
23:25 am0c jnthn: good night
23:25 justatheory joined #perl6
23:27 jasonmay jnthn++
23:28 ashleydev left #perl6
23:33 molaf__ joined #perl6
23:33 molaf_ left #perl6
23:35 leprevost left #perl6
23:37 am0c left #perl6
23:40 risou joined #perl6
23:40 ashleydev joined #perl6
23:42 Ali_h_ joined #perl6
23:42 Ali_h_ left #perl6
23:43 Ali_h left #perl6
23:43 hugme left #perl6
23:43 tadzik left #perl6
23:44 ali_h joined #perl6
23:44 tadzik joined #perl6
23:56 araujo joined #perl6
23:59 Chillance left #perl6

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

Perl 6 | Reference Documentation | Rakudo