Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2009-12-11

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 coppro is continue a different statement than next? (and likewise, leave different than last?)
00:00 colomon I think so.
00:00 colomon but I admit the terms still confuse me.
00:00 coppro ok...
00:01 coppro it would seem to make more sense to have next, last, and redo all have a consistent meaning across blocks (though my understanding of lexotic scopes probably means that's a pipe dream)
00:01 ihrd joined #perl6
00:01 ihrd left #perl6
00:02 jnthn colomon: (argh got disconnect) Odd they happen sooner in ng...wonder what that's down to (or if we do something that triggers it more...)
00:03 colomon jnthn: could be two different bugs, of course.
00:03 colomon jnthn: I'm still valgrinding the crashing code in master, it is taking forever.
00:04 jnthn colomon: same bt?
00:05 colomon jnthn: dunno, didn't try it in the debugger and don't have debugging compiled in.
00:05 colomon jnthn: I'd have been more careful about my next step if I'd known valgrind was going to take this long...
00:07 colomon afk for a few...
00:07 TimToady coppro: next, last, and redo are consistent in all refering to "iteration", which is a dynamic concept, and hence not applicable to individual textual blocks like "when"
00:08 coppro ok, thanks
00:10 TimToady and when statements (of which default is a special case) are just executed in order as normal statements; they're only special in leaving the current topicalizer, skipping the rest of the when blocks
00:10 TimToady so that concept we call "break"
00:11 TimToady in fact, you can intermix normal statements with when statements
00:11 TimToady it's up to the optimizer to figure out if a set of when blocks can be optimized to a computed goto
00:11 coppro like C
00:12 TimToady kinda like, yes
00:12 TimToady and using 'break' in the same sense that C does
00:12 TimToady that is, in its non-loop sense
00:13 TimToady except, since we have real closures, we have to implement it with a lexotic control exception to make it give the semantics the C programmer expects
00:13 TimToady while unwinding through any interior dynamic scopes
00:13 TimToady so break is very much like return that way, just with a different target
00:14 jnthn .oO( there's more than one way to torture the implementors ;-) )
00:14 TimToady the control freaks will break you
00:14 jnthn <groan>
00:23 colomon back and valgrind is still running....
00:24 colomon jnthn, TimToady: I'm curious what you guys think of that .mandel method I implemented around 40 minutes ago in the backlog.
00:24 colomon It feels both wrong and evil and wonderfully seductive to me.
00:26 pugs_svn r29314 | lwall++ | [STD] add quote modifier :p aka :path
00:28 TimToady colomon: spec it, and then it won't be evil :)
00:28 jnthn Do we really need a built-in .mandel method? :-)
00:28 colomon oh, no, no, no!
00:29 jnthn Or better put, does it have purposes besides making those pretty pictures?
00:29 colomon That was intended to be end-user code, not something to go in core.
00:29 jnthn hehe :-)
00:29 colomon that's why I find it evil.
00:29 TimToady but if you can generalize it to a .diverge method...
00:29 jnthn augment is a little evil, but there's worse. :-)
00:30 colomon Actually, I was wondering if it implied there should be some way to call a sub that only takes one argument using something like >>.
00:30 colomon (That's >>. not >> end of sentence.  :)
00:31 jnthn does @values ==> thesub(*) ==> @result; do that?
00:31 TimToady well, there's always hyper map
00:31 jnthn or whatever the pipe syntax is.
00:31 colomon TimToady: right, but hyper map just seems so much more awkward than >>.
00:31 TimToady feeds don't hyperize
00:32 jnthn No, that's true.
00:32 * colomon can't believe he just said that, considering the equivalent would take dozens of lines of C++....
00:32 envi^office joined #perl6
00:32 TimToady though mandel is more like a hyper grep
00:33 colomon TimToady: no, you need to get both the 0 and the 1 results for it to make sense.
00:34 colomon It's a transform, not a filter.
00:34 TimToady well, you can always define your own operator
00:34 TimToady and then hyper that
00:34 TimToady you can hyper prefixes
00:35 colomon Ha!  mandel should be postfix snowman for Complex.  :)
00:35 jnthn std: multi prefix:<mandrel>($x) { }; my @x; mandrel<<@x
00:35 p6eval std : ok 00:01 111m␤
00:35 jnthn er, mandel :-)
00:36 colomon Okay, I'm convinced.
00:37 TimToady decommuting &
00:38 colomon joined #perl6
00:39 romanhunt joined #perl6
00:40 lisppaste3 colomon pasted "mandel crash in valgrind" at http://paste.lisp.org/display/91909
00:40 colomon jnthn: looks to me like it is probably not the same random crashing bug as in ng.  :(
00:44 jnthn colomon: I think I may have even patched that particular segv in ng.
00:45 jnthn yes, pretty sure I did.
00:45 colomon hmmm.... maybe I can translate this script to ng....
00:45 jnthn Sometimes the gc calls mark after destroy. :-/
00:45 zaslon joined #perl6
00:45 zaslon loljnthnhazblogged! jnthn++ 'Attribute sub-protocol and other role bits': http://use.perl.org/~JonathanWorthington/journal/39997?from=rss
00:45 pointme joined #perl6
00:46 jnthn zaslon: This morning! :-P
00:46 zaslon Sorry, I don't understand that command
00:46 colomon Ah, there's zaslon's notification.
00:46 carlin ENOMEMORYLEFT
00:46 carlin So the RSS cron couldn't run
00:49 zaslon lolperl6adventhazblogged! perl6advent++ 'Day 11: Classes, attributes, methods and more': http://perl6advent.wordpress.com/2009/12/11/day-11-classes-attributes-methods-and-more/
00:49 carlin ah, moritz_++ kicked lambdabot :-)
00:49 carlin (pause for irony...)
00:53 mubot joined #perl6
00:55 jnthn mubot: help
00:55 mubot usage: mubot: [karma [name] | purge <name> | link <nick> <alternative>] | <name>++ | <name>--
00:55 jnthn mubot: karma jnthn
00:55 mubot jnthn has not yet made an impact on this world
00:55 jnthn :'(
00:55 obra joined #perl6
00:57 colomon jnthn++
00:57 colomon in ng: "Lexical '$_' not found"
00:57 jnthn oh?
00:57 colomon I'm guessing that's my map({ cdot($_, $y) })  ?
00:57 jnthn hmm, yeah
00:58 colomon oh wait, no it's not.
00:58 colomon it's being called from Any.join.
00:58 jnthn Maybe some oddness with setting up $_ as a param or something...thought I'd got that righ tthoug.
00:58 colomon err.... don't see how it can be join.
00:59 cognominal ng:  my @a = 10..20; say @a[0]
00:59 p6eval ng 2c7750: 10..20␤
00:59 colomon .. doesn't work properly in ng yet.
00:59 Baggio_ joined #perl6
01:00 colomon ng: my @a = 10 ... 20; say @a[0]
01:00 p6eval ng 2c7750: 10␤
01:00 colomon jnthn: changing that map to map({ cdot($^x, $y) }) fixed the problem.
01:00 jnthn ah
01:00 cognominal say 10..20.WHAT
01:00 jnthn maybe it is a bug there then :-(
01:00 colomon oh, it happened in join because of laziness.
01:01 cognominal ng: say 10..20.WHAT
01:01 p6eval ng 2c7750: 10..Int␤
01:01 jnthn cognominal: Probably you wanted (10..20).WHAT
01:01 colomon ng: say (10..20).WHAT
01:01 p6eval ng 2c7750: Range()␤
01:01 cognominal indeed
01:01 cognominal ng: say (10...20).WHAT
01:01 p6eval ng 2c7750: Array()␤
01:02 colomon cognominal: I hacked up a version of ... that just returns an array, so that it could work without iterators in ng.
01:03 colomon jnthn: you'll be pleased to know that I'm now getting bus errors in ng with the mandel program.  :)
01:03 cognominal colomon, is ... a standard operator?
01:03 colomon yes, it's the series operator.
01:03 cognominal ho, I forgot
01:03 colomon it's supposed to be very dwimmy, but I only implemented the version that goes from one Int to another.
01:05 jnthn colomon: But the returns one?
01:05 lisppaste3 colomon pasted "mandel in ng crash bt" at http://paste.lisp.org/display/91911
01:05 colomon yes.
01:05 jnthn yup, same old...
01:05 jnthn :-/
01:05 jnthn On the one hand, at least the segfaults seem to have one root cause.
01:05 jnthn On the other hand, it's gonna be a real pain to resolve.
01:19 broquaint joined #perl6
01:24 colomon jnthn: errr... with --trace=4, the trace stops once the p6 program is executing?
01:25 agentzh joined #perl6
01:29 colomon blast, just like before it works with --trace=4 on.
01:31 pugs_svn r29315 | colomon++ | [perl6advent] Switch to doing Rat this weekend.
01:33 colomon jnthn: Got bus error with --trace=4 on!!!!!
01:34 colomon The bad news: as I tried to say before, it seems like the trace switches off in the middle of the big mandel calculation loop?  At least, it prints out a ton of trace info, then slowly prints out a mandelbrot set with no trace information intermixed.
01:50 JimmyZ joined #perl6
01:51 meppl joined #perl6
02:00 JimmyZ joined #perl6
02:01 xinming joined #perl6
02:01 JimmyZ joined #perl6
02:12 nihiliad joined #perl6
02:20 thowe joined #perl6
02:40 RichiH joined #perl6
03:02 xinming joined #perl6
03:03 carlin mubot: karma trace
03:03 mubot trace has a karma of -3
03:03 carlin heh
03:06 sjohnson @karma
03:06 sjohnson mubot: karma sjohnson
03:06 mubot sjohnson has not yet made an impact on this world
03:07 sjohnson at least i don't have bad karma!
03:08 thowe mubot: karma thowe
03:08 mubot thowe has not yet made an impact on this world
03:08 thowe story of my life
03:09 TimToady .oO(I hope nobody names a long switch 'timtoady'...)
03:09 sjohnson heh
03:09 JimmyZ karma JimmyZ
03:09 woodford__ joined #perl6
03:09 sjohnson chin up thowe++
03:14 thowe does the ++ operator on someone's name add karma points?
03:14 TimToady mubot: karma thowe
03:14 mubot thowe has a karma of 1
03:14 thowe I got karma the other day then.  Does it go away if I sign off?
03:15 TimToady @karma
03:15 colomon thowe: the karma bot got rebooted today, we're all starting fresh.
03:15 TimToady that might have been lambdabot, which we're trying to get rid of
03:16 thowe So, I'm noticing something the last few days a couple of times that is probably about to make me ask a silly question...
03:18 thowe Is Perl 6 not meant to use ascii sources files?  The hyper characters and the strange output the ng bot gives don't seem to be meant to be ascii
03:18 colomon thowe: Perl 6 uses Unicode.
03:18 colomon though you can use pure-ascii source if you'd like.
03:18 coppro ASCII is the way of the past... everything should be Unicode
03:19 thowe wow.
03:19 coppro Perl 6 has the sanest Unicode interpretation of any language ever
03:19 * thowe puts on his shiny futuristic coveralls
03:20 thowe Now I know I need to switch to FreeBSD.  OpenBSD doesn't have any localization.
03:24 thowe so, we're talking 16 bit character encoding here, right?  not UTF-8?
03:25 diakopter std: token unv { :dba('horizontal whitespace')  [ | \h+ | <?before \h* '=' [ \w | '\\'] > ^^ <.pod_comment> ] }
03:25 p6eval std : ok 00:02 106m␤
03:31 Baggio_ joined #perl6
03:32 diakopter std: $^P # I love this error message
03:32 p6eval std : [31m===[0mSORRY![31m===[0m␤Unsupported use of $^P variable; in Perl 6 please use whatever debugger Perl 6 comes with at /tmp/TXO74uWfMY line 1:␤------> [32m$^P [33m⏏[31m# I love this error message[0m␤FAILED 00:01 105m␤
03:32 diakopter ROTFL
03:34 arnsholt Heh
03:36 arnsholt Hmm. Is having 817 lines of real code and ~4000 lines of tests considered doing it wrong? ^^
03:53 diakopter arnsholt: I don't think so
03:54 arnsholt diakopter: Yeah, I donæt really think so either
03:55 arnsholt I'm just amused by the wide gap in size. It's not all that surprising either, given that the code generates and analyses morphology
03:56 arnsholt But it's five in the morning and I'm writing the final report. It's the little things that get you through it =)
03:58 Baggio_ joined #perl6
04:02 pnate joined #perl6
04:02 pjcj joined #perl6
04:12 TimToady thowe: we mostly work in UTF-8, but Perl doesn't care which encoding you use
04:13 TimToady a lot of people don't realize that UTF-16 is also a variable-width encoding
04:14 TimToady and I personally do a lot of work up in Plane 1
04:15 TimToady here's a cool character with 64 strokes: 𪚥
04:15 thowe doesn't show up here :(
04:15 TimToady nor here either, but the log has it right
04:15 jaldhar joined #perl6
04:15 * thowe installs urxvt on the new box...
04:16 JimmyZ show up there, but I don't know what it is.
04:16 TimToady it's a character composed of four dragon characters
04:16 TimToady .u 𪚥
04:16 phenny U+2A6A5 CJK UNIFIED IDEOGRAPH-2A6A5 (𪚥)
04:16 thowe what does it reprisent?
04:17 TimToady lots of dragons?  :)
04:17 thowe represent rather
04:17 thowe Oh, I figured it was some Jabanese thing you knew about.
04:17 TimToady JimmyZ: and it's four traditional dragons
04:17 JimmyZ http://zh.wiktionary.org/wiki/%F0%AA%9A%A5
04:17 thowe er Japanese
04:17 TimToady so four ⿓ crammed into one
04:17 JimmyZ TimToady: Yes,
04:18 JimmyZ I'm looking at http://zh.wiktionary.org/wiki/%F0%AA%9A%A5
04:18 TimToady dunno if there's one with four 龙
04:19 TimToady does it give a definition?
04:19 diakopter there there be four dragons
04:19 JimmyZ It means  nagging
04:19 TimToady heh
04:19 TimToady a character made up by someone with four wives, perhaps :)
04:20 JimmyZ It's old chinese.
04:20 TimToady well, pretty much everything in Extension B is...
04:20 thowe hahah
04:21 JimmyZ Pinyin is zhe2
04:22 TimToady as opposed to one of ten or eleven other meanings of zhe2  :)
04:23 TimToady none of which seem to mean 'nag'
04:23 beggars joined #perl6
04:24 TimToady though in compound, we have: 折磨 折磨 [zhe2 mo5] /persecute/torment/
04:24 TimToady hmm break hemp/stone...
04:25 TimToady oh, grindstone, yeah, forgot tha tone
04:25 TimToady *that one
04:25 diakopter chip away -> nag
04:26 JimmyZ 𪚥 means hyperverbal
04:27 TimToady another 64-stroke one is 𠔻
04:27 JimmyZ or 'too much to say'?
04:29 JimmyZ character composed of four dragon characters is here: http://en.wiktionary.org/wiki/File:Zh%C3%A9.svg
04:30 diakopter I spent an hour with regexec.c today  :^
04:30 TimToady maybe it's only 60
04:30 gfx joined #perl6
04:31 Raugturi joined #perl6
04:32 Baggio_ joined #perl6
04:42 synth joined #perl6
04:55 meppel joined #perl6
05:07 thowe So, in perl 6, zero is equiv to false?
05:07 thowe like C?
05:08 quantumEd rakudo: 0 ~ false
05:08 p6eval rakudo 7ef386: Could not find non-existent sub false␤in Main (file src/gen_setting.pm, line 324)␤
05:08 quantumEd rakudo: say (0 ~ (0 ~ 1))
05:08 p6eval rakudo 7ef386: 001␤
05:09 quantumEd rakudo: say ((0 ~ 0) ~ 1)
05:09 p6eval rakudo 7ef386: 001␤
05:09 quantumEd I think he answer is yes but I don't know..
05:10 thowe rakudo: if 0 { say "true" }
05:10 p6eval rakudo 7ef386:  ( no output )
05:10 thowe rakudo: if 1 { say "true" }
05:10 p6eval rakudo 7ef386: true␤
05:11 thowe m.  That will be a change.  I'm used to only nil and false being false
05:11 thowe but perhaps 0 being false is more typical.
05:16 thowe Another point I may not be clear on...  Are multi subs called in order of declaration until one will work within the context you are using it?
05:18 thowe Maybe not called, but first one that will work wins?
05:26 _jaldhar joined #perl6
05:27 s1n thowe: if i had to guess, by lexical scope
05:28 rgrau_` joined #perl6
05:33 diakopter rakudo: vert
05:33 p6eval rakudo 7ef386: Could not find non-existent sub vert␤in Main (file src/gen_setting.pm, line 324)␤
05:33 thowe well, I'm kind of looking at the third example here: http://perl6advent.wordpress.com/2009/12/08/day-8-comb-your-constraints/
05:34 thowe it would seem that an even number failed to work with the first multi sub, so it is expected to go to the next(?)
05:34 rgrau_`` joined #perl6
05:38 s1n yeah, it'll try them all one after the other backwards (or upwards, depending how you look at it) in the lexical_scope
05:41 carlin rakudo: multi foo { say 1 }; multi foo { say 2 }; foo;
05:41 p6eval rakudo 7ef386: Ambiguous dispatch to multi 'foo'. Ambiguous candidates had signatures:␤:()␤:()␤in Main (file <unknown>, line <unknown>)␤
05:42 s1n rakudo: multi foo (Str $baz) { say "string" }; multi foo { say "something else" }; foo; foo("bar"); foo(5);
05:42 p6eval rakudo 7ef386: something else␤string␤No applicable candidates found to dispatch to for 'foo'␤in Main (file <unknown>, line <unknown>)␤
05:43 carlin rakudo:  multi sub foo(Int $x where {$x % 2}) { say 1 }; multi sub foo(Int $x) { say 2 }; foo(2)
05:43 p6eval rakudo 7ef386: 2␤
05:44 s1n rakudo:  multi sub foo(Int $x where {$x % 2}) { say 1 }; multi sub foo(Int $x) { say 2 }; foo(2); foo(3)
05:44 carlin rakudo:  multi sub foo(Int $x where {$x % 2}) { say 1 }; multi sub foo(Int $x) { say 2 }; foo(5)
05:44 p6eval rakudo 7ef386: 2␤1␤
05:44 p6eval rakudo 7ef386: 1␤
05:44 s1n wee
05:45 carlin hmm, my rakudo cried about ambiguous candidates for foo(2), probably out of date
05:46 carlin rakudo: multi sub foo(Int $x) { say 2 };
05:46 p6eval rakudo 7ef386:  ( no output )
05:46 carlin rakudo: multi sub foo(Int $x) { say 2 }; multi sub foo(Int $x where {$x % 2}) { say 1 }; foo(2)
05:46 p6eval rakudo 7ef386: 2␤
05:46 carlin rakudo: multi sub foo(Int $x) { say 2 }; multi sub foo(Int $x where {$x % 2}) { say 1 }; foo(3)
05:46 p6eval rakudo 7ef386: 1␤
05:53 masak joined #perl6
05:54 masak good morning, #perl6.
06:04 abra joined #perl6
06:04 justatheory joined #perl6
06:10 carlin masak: o/
06:20 carlin (got called away so now that I've looked at the result of that code before) how does that work? Wouldn't 3 match both multis? Why is the second called?
06:21 c9s joined #perl6
06:21 masak carlin: no, the second one is narrower.
06:22 masak carlin: the rule is that a param with a 'where' clause are narrower than the same param without.
06:22 masak s/are/is/
06:24 carlin oh okay, that makes sense
06:28 carlin initially it looked rather 'odd'
06:29 masak :P
06:31 JimmyZ rakudo: multi sub foo(Int $x where {$x % 2}) { say 1 }; multi sub foo(Int $x) { say 2 };  foo(3)
06:32 p6eval rakudo 7ef386: 1␤
06:33 cotto joined #perl6
06:42 yath joined #perl6
06:42 yath moin
06:42 masak hi
06:47 tann1 joined #perl6
07:12 unixhack joined #perl6
07:12 unixhack Hi everybody
07:13 masak hi unixhack
07:13 unixhack is perl6 complete by c language??
07:13 unixhack I am from China
07:14 unixhack is perl6 complete by c language??
07:14 unixhack is perl6 completement by c language??
07:14 Baggio_ joined #perl6
07:15 masak 你可以写中文...
07:15 unixhack perl6是不是用 C语言实现的
07:16 masak 不是.
07:16 unixhack 你有 QQ
07:16 unixhack
07:16 masak 没有.
07:17 masak Rakudo (an implementation of Perl 6) is written on top of Parrot, a virtual machine.
07:17 masak Parrot is partly written in C.
07:17 masak so the answer to your question is a little 'yes', but mostly 'no'. :)
07:17 unixhack_ joined #perl6
07:17 masak (oh, and there's SMOP, another implementation of Perl 6, which is written in C.)
07:18 unixhack_ is it implement by  haskell ?
07:19 masak unixhack: there's Pugs, another implementation, which is, yes.
07:19 masak unixhack_: but I'd recommend using Rakudo nowadays.
07:19 unixhack_ 你有没有 qq
07:19 masak unixhack_: 没有. 你认为我应该得到QQ?
07:20 unixhack_ 没有
07:20 unixhack_ 只是  用的比较多
07:20 spinclad joined #perl6
07:20 unixhack_ 联系方便
07:20 masak Yes, I see. I'm more used to IRC. :)
07:21 masak I'll see if I can get QQ.
07:21 unixhack_ do you use x chat??
07:21 masak this is a chat.
07:21 masak IRC is multiplayer Notepad. :)
07:22 masak 你的 QQ 名子是什么?
07:22 unixhack_ but i can't live a message to you by using irc chat
07:22 masak sorry, 我不动 "live a message".
07:23 unixhack_ QQ number  >
07:23 unixhack_ what about email
07:23 Su-Shee joined #perl6
07:23 * masak unixhack_ my email address is cmasak@gmail.com
07:23 masak how, how's that for IRC incompetence? :P
07:24 unixhack_ do you use g talk  ?
07:24 masak not /me, /msg... :P
07:24 masak unixhack_: not really, no.
07:24 unixhack_ OK
07:24 masak unixhack_: but I could, if it will help you.
07:24 unixhack_ ok
07:25 unixhack_ i am new to perl
07:25 unixhack_ I am a C++ programmer
07:25 masak ok, nice.
07:25 masak welcome to Perl!
07:26 unixhack_ i know little Python
07:26 unixhack_ python 3k
07:26 masak ah, the new one. :)
07:27 flip214 joined #perl6
07:27 unixhack_ 非常期望  perl6
07:27 unixhack_ 但是 那个 parrot 不知道什么东西
07:27 unixhack_ 软CPI
07:27 unixhack_ 软CPU
07:27 unixhack_ ?
07:28 masak yeah, I guess.
07:28 masak you know about JVM, or .net?
07:28 unixhack_ yes
07:28 masak Parrot is one of those.
07:28 unixhack_ .net is very poor
07:28 unixhack_ I prefer Java
07:28 masak 'Virtual Machine' 是不是 软CPU?
07:29 unixhack_ yes
07:29 unixhack_ 虚拟机
07:29 unixhack_ 软件CPU
07:29 unixhack_ 嘻嘻
07:29 masak then you got it right.
07:29 unixhack_ 你是做什么的
07:29 unixhack_ 什么工作
07:30 masak I am a student.
07:30 masak 我是学生.
07:30 unixhack_ 我也是的
07:30 unixhack_ 你大几
07:30 masak oh, cool. :)
07:30 masak rakudo: say 'OH HAI'
07:31 p6eval rakudo 7ef386: OH HAI␤
07:31 masak unixhack_: that's Rakudo, by the way. that's a Perl 6 implementation.
07:31 masak rakudo: for 1..10 { .say }
07:31 p6eval rakudo 7ef386: 1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤
07:31 unixhack_ 是的
07:31 unixhack_ 我希望C 实现的
07:31 unixhack_ 或者  自编译的
07:32 unixhack_ 用 perl6编写perl6
07:32 masak well, there are various self-hosting efforts...
07:32 masak Elf is one. it's Perl 6 written in Perl 6.
07:33 unixhack_ Do you know write a C complie by C language  ??
07:33 masak rakudo: say '!_kcahxinu ,olleH'.flip
07:33 p6eval rakudo 7ef386: Hello, unixhack_!␤
07:34 masak unixhack_: sometimes people do write a C compiler in C, yes.
07:34 masak unixhack_: I've never done it. :)
07:34 masak but the thought appeals to me.
07:34 unixhack_ pypy
07:34 unixhack_ do you know about ?
07:34 masak heard the name.
07:37 xinming masak: After reading the conversation, I was thinking wether you were from china. ;-)
07:37 masak xinming: you flatter me, sir. :)
07:37 xinming masak: Nope, BTW, some minor correction is needed to be more natural.
07:37 masak no, just two years of studies, plus judicious use of Google Translate. :)
07:37 masak xinming: I can imagine.
07:38 xinming "没有. 你认为我应该得到QQ?"      <--- This one should be  "没有, 你认为我应该有QQ?"
07:38 masak I take full responsibility. Google Translate only did what I told it to do. :)
07:38 flip214 I get the NULL PMC ACCESS errors again, on use. Any hints?
07:38 xinming hmm, Ok. :-)
07:38 flip214 strace, ltrace, --trace=65535 doesn't help
07:38 masak flip214: any program whatsoever?
07:38 flip214 Last time it was "use Digest::MD5:from<prarrot>"
07:38 flip214 Don't know what it's this time
07:39 masak flip214: it'll be very helpful if you minimize the problem to its bare essentials.
07:39 masak xinming: thanks. I'll remember that.
07:39 JimmyZ 大家好
07:39 flip214 Yeah ... but how do I find the offending line if it's already distributed over 20 files?
07:40 unixhack_ 大家好
07:40 JimmyZ any more about rakudo perl6 and parrot, welcome to ask me ;)
07:40 masak yes, please ask JimmyZ :) he's a native.
07:40 unixhack_ 你有  QQ没
07:40 JimmyZ yes
07:40 xinming masak: the word "got" need to be changed to "have" depending on the context.
07:40 xinming JimmyZ: 中国人?
07:40 masak xinming: yes, it makes perfect sense.
07:40 JimmyZ xinming,我联系过你几次 了
07:40 xinming ...
07:41 JimmyZ 老是忘记我?
07:41 xinming let's talk in #perlchina
07:41 unixhack_
07:41 flip214 Sometimes I even get a segfault in libparrot.so.1.8.0
07:41 moritz_ good morning
07:41 unixhack_ left #perl6
07:41 xinming don't flood the channel with all Chinese characters. :-)
07:41 masak moritz_: morning!
07:41 JimmyZ moritz_: good moring.
07:41 masak moritz_: or should I say 早上好 :)
07:42 JimmyZ I don't wanna #perlchina
07:42 moritz_ masak: only if you want that I don't understand you
07:43 masak moritz_: no, look, it's easy... :P
07:43 xinming JimmyZ: If we talk here, there will be so many chinese characters which will be overwhelm for foreigners. :-)
07:44 masak yes, will somebody think of the foreigners!
07:44 JimmyZ xinming: then, let's talking in english.
07:44 masak .oO( 汉字 overload... )
07:45 xinming unixhack_ was not good at English, That's why he would use Chinese all the time.
07:45 flip214 I found the line which causes the null pmc access ...
07:45 masak flip214++
07:45 flip214 it's a "use other::module;" line
07:46 masak flip214: I'm pretty sure I have such lines working in my code.
07:46 masak must be something more.
07:46 flip214 yes, I have lots of "use ..." lines ...
07:46 flip214 but only this one makes trouble (atm)
07:46 masak so do I! :)
07:47 masak have many 'use ...' lines, that is; not make trouble.
07:47 flip214 masak: Yes, I know ;-)
07:47 flip214 I think I can draw a rather sharp line what's the culprit:
07:47 flip214 it's "our sub opt_value(options_e $index) is export { return @settings[$index].value; }" with options_e being a (non-exported) enum
07:48 flip214 as soon as that's before the =begin END I get that error
07:48 masak flip214: care to submit a rakudobug?
07:49 JimmyZ anyone wants my qq, please contact me.
07:49 Su-Shee good morning.
07:49 masak morning, Su-Shee.
07:49 flip214 JimmyZ: what's your "qq"?
07:49 flip214 morning
07:50 flip214 When will enums be exportable?
07:51 kaare joined #perl6
07:51 masak flip214: sometime after a rakudobug is submitted about it. :)
07:51 moritz_ when somebody implements it
07:51 masak flip214: what moritz_ said.
07:51 masak but experience says an RT ticket sure helps.
07:53 * masak backlogs over '"LHC" eq "Low Hanging Chocolate"' :)
07:53 woodford joined #perl6
07:53 masak colomon++
07:54 JimmyZ flip214: are you chinese too?
07:55 masak std: default {}
07:55 p6eval std : ok 00:01 105m␤
07:55 masak rakudo: default {}
07:55 p6eval rakudo 7ef386:  ( no output )
07:55 moritz_ rakudo: default { say 'hi' }
07:56 p6eval rakudo 7ef386: hi␤
08:01 flip214 jimmyz: no
08:01 flip214 jimmyz: at least my parents never said so ;-)
08:02 JimmyZ flip214: you have a qq? I don't think so. :)
08:02 flip214 I still don't know what qq means here ... I only know perl's qq
08:03 masak flip214: QQ is a Chinese chat client.
08:03 flip214 oh, ok. thanks for explaining.
08:04 JimmyZ flip214: native version of OICQ, which is more than OICQ.
08:04 JimmyZ flip214: just liking msn, stype
08:05 JimmyZ flip214: s/stype/skype/
08:05 flip214 rt.perl.org just gave me "Internal Server Error"
08:05 flip214 after clicking on the perl6 queue
08:05 flip214 now it worked after a reload ....
08:13 mberends joined #perl6
08:14 mberends hello #perl6
08:14 flip214 Any ideas for "$ perl6 -e 'enum X «A B C»;'
08:14 flip214 giving a segmentation fault?
08:14 colomon_ joined #perl6
08:14 flip214 rakudo: enum X «A B C»;
08:15 p6eval rakudo 7ef386:  ( no output )
08:15 flip214 rakudo: enum X «A B C»; print X.WHAT.perl;
08:15 p6eval rakudo 7ef386:  ( no output )
08:15 masak p6eval-- is just being difficult.
08:16 flip214 but wait ...
08:16 flip214 rakudo: say '1';
08:16 p6eval rakudo 7ef386: 1␤
08:16 flip214 Hmmm, my perl6 doesn't even work without arguments ..
08:17 masak .oO( maybe just as well... )
08:18 flip214 do you mean that it doesn't make much difference for me? gee, thanks
08:18 masak I mean that the Rakudo REPL isn't known to make people happy.
08:19 masak flip214: if you think you've found a bug in Rakudo, you should definitely create an RT ticket about it.
08:20 masak by the way, someone took Wolfman2000++'s challenge: http://huri.net/tech/perl6-vigenere
08:27 tann2 joined #perl6
08:28 constant joined #perl6
08:29 iblechbot joined #perl6
08:31 mathw hi
08:33 masak o/
08:43 colomon_ joined #perl6
09:01 flip214 I now removed the whole parrot directories in my rakudo directory; "git status" shows no changes; but "perl6" without arguments crashes.
09:01 flip214 src/io/api.c:306: failed assertion 'pmc'
09:01 flip214 Backtrace - Obtained 23 stack frames (max trace depth is 32).
09:01 flip214 /usr/lib/libparrot.so.1.4.0 [0x7feb4091b9e3]
09:01 flip214 Is that because of userspace changes? Some incompatible libraries.
09:01 masak flip214: works here.
09:01 flip214 ok
09:02 masak flip214: waitwait, did you remove the parrot directories, and then not put them back?
09:02 flip214 I removed them, and did "perl Configure.pl --gen-parrot" - which did a "svn co"
09:03 moritz_ so you have a globally installed parrot which conflicts with the one that's built locally
09:04 moritz_ /usr/lib/libparrot.so.1.4.0
09:04 moritz_ that's... ancient
09:04 masak moritz_++ # diagnosis
09:05 payload joined #perl6
09:06 jferrero joined #perl6
09:09 flip214 oh yes ... but why does it now conflict? I'm running that since a few months, and only now I get this problem.
09:11 moritz_ because you removed the correct parrot libs that were earlier in the search path
09:11 masak rakudo: class A { has $.a; }; class B { has $.b }; my $x = A.new(:a<hi>); my $y = B.bless($x)
09:11 p6eval rakudo 7ef386:  ( no output )
09:11 masak locally, I get "No such attribute '$!b' in class 'B'"
09:11 masak oh, wait. forget the inheritance.
09:12 masak same result, though.
09:12 masak ng: class A { has $.a; }; class B is A { has $.b }; my $x = A.new(:a<hi>); my $y = B.bless($x)
09:12 p6eval ng 2c7750: No such attribute '$!b' in class 'B'␤current instr.: 'perl6;Mu;BUILD' pc 1482 (src/builtins/Mu.pir:127)␤
09:13 * masak cheers jnthn on to fix this
09:13 moritz_ what should that be? a rebless?
09:13 flip214 moritz: you mean because of the 1.7 to 1.8 transition? But I re-configure if necessary after "git pull" ... well, never mind.
09:14 flip214 I removed 1.4; recompilation is running.
09:14 moritz_ that's not what I meant; but what I meant is likely wrong anyway
09:15 masak moritz_: yes, a rebless. a new object with more slots.
09:18 masak hm, speaking of slots: Tene is on for the calendar tomorrow, and his slot says '???'.
09:19 moritz_ if he doesn't come up with something today, we can simply take my Whatever post and stick it in
09:20 Alias joined #perl6
09:20 masak nod.
09:20 masak I'm amazed at how well the Advent Calendar works.
09:21 moritz_ though it's easy to explain why it works so well :-)
09:21 masak Perl 6 and Christmas clearly work well together. ;)
09:21 moritz_ :)
09:21 moritz_ not quite my explanation, but still good :-)
09:22 masak moritz_: I learned the other day that the anarchy of #perl6 partly inspired the modus operandi of #padre.
09:22 masak that makes me happy.
09:22 moritz_ .oO( cultural hug-imperialsm )
09:23 Baggio_ joined #perl6
09:28 masak phenny: tell pmichaud re Pm-13 that Regex ~~ Method feels right to me as well. but why does one call them with /<Grammar::xyz>/ and not with /<Grammar.xyz>/, in that case? I've always been slightly surprised that it's the former syntax.
09:28 phenny masak: I'll pass that on when pmichaud is around.
09:31 Alias joined #perl6
09:32 Transformer joined #perl6
09:35 * mathw must finish the day 12 advent entry tonight
09:35 masak mathw: 13.
09:36 Transformer left #perl6
09:40 mathw oh yes
09:40 mathw whew
09:40 mathw an extra 24 hours :D
09:41 masak bonus time! \o/
09:41 mathw I should still finish it tonight though, so people will have time to check it for me
09:42 moritz_ speaking of checking... you're all welcome to review my Whatever post
09:44 mathw oh really
09:44 * mathw cracks his knuckles and cackles
09:46 masak moritz_: '# indexing from the back of the array' -- it would be useful to state what the indexed element is as well.
09:47 moritz_ ok
09:48 masak similarly, '# gives a random permuntation\n # of @x' is all very well, but people might not be aware that the positional argument to .pick() is usually a number.
09:49 masak I'd make the comment '# pick all of the elements, in random order' or something like that.
09:49 masak it'd play better with people's preconceptions of '*' as meaning 'many'.
09:50 Baggio_ joined #perl6
09:53 IllvilJa jnthn: in today's Perl 6 advent calendar post, shouldn't the last word in the fourth text paragraph (skipping code snippets) be "$self" rather than "self"?  (It's the paragraph describing methods and that methods automatically takes care of invocants etc)
09:54 IllvilJa jnthn: but all in all a very good introduction to OO in Perl 6.
09:55 IllvilJa (All these perl 6 advent calendar posts have been very useful so far)
09:55 mathw IllvilJa: No, self is the keyword which refers to the invocant of the current method
09:56 mathw $self would have to be explicitly declared in the signature
10:01 masak rakudo: sub self() { say "OH HAI" }; self
10:01 p6eval rakudo 7ef386: Lexical 'self' not found␤in Main (file src/gen_setting.pm, line 324)␤
10:01 * masak submits rakudobug
10:01 moritz_ nope, that's fine
10:01 moritz_ rakudo: sub self() { say "OH HAI" }; self()
10:01 p6eval rakudo 7ef386: Lexical 'self' not found␤in Main (file src/gen_setting.pm, line 324)␤
10:01 moritz_ *that's* a bug
10:01 masak ah. :)
10:01 masak rakudo: sub self() { say "OH HAI" }; &self()
10:02 p6eval rakudo 7ef386: OH HAI␤
10:02 moritz_ but without the parenthesis the built-in takes precedence, if it's parsed as term (and not as function)
10:02 moritz_ std: self ~~ 1
10:02 p6eval std : ok 00:01 106m␤
10:02 moritz_ std: sub a { }; a ~~ 1
10:02 p6eval std : [31m===[0mSORRY![31m===[0m␤Preceding context expects a term, but found infix ~~ instead at /tmp/HX05nDhQTe line 1:␤------> [32msub a { }; a ~~[33m⏏[31m 1[0m␤FAILED 00:01 105m␤
10:03 moritz_ and you see that STD.pm doesn't parse self as a function
10:03 masak right. it's a term.
10:11 payload joined #perl6
10:15 alexn_org joined #perl6
10:15 Alias joined #perl6
10:19 Baggio_ joined #perl6
10:20 ejs joined #perl6
10:27 IllvilJa mathw: Ok, I see.
10:32 flip214 I find that funny how rt.perl.org shortens the domain of the email addresses ... might be good for some confusion.
10:34 moritz_ iirc there are two views; if you're signed in you can see the full email address
10:34 flip214 Well, I *can* see the full email address (without being logged in) ... at least as "client". Only "From" is short.
10:34 flip214 See http://rt.perl.org/rt3/Public/Bug/Display.html?id=71196
10:37 Alias_ joined #perl6
10:42 riffraff joined #perl6
10:45 am0c joined #perl6
11:01 cognominal joined #perl6
11:10 ihrd joined #perl6
11:14 Alias joined #perl6
11:20 Alias_ joined #perl6
11:32 Juerd It seems Perl 5 is settling on reverting [:xxx:] bracket expressions to ascii-only while making \w, \d and \s match unicode stuff.
11:32 mathw interesting
11:33 Juerd I think it's an interesting and acceptable compromise :)
11:33 Juerd Especially because they make the posix-like expressions really posix-compliant now.
11:33 Juerd POSIX doesn't do unicode apparently :)
11:33 Su-Shee practical. I have a bunch of cases where this will come in handy.
11:35 mathw urgh
11:35 mathw I don't like POSIX ones
11:35 mathw but that's just familiarity I think
11:45 colomon joined #perl6
11:51 ejs1 joined #perl6
11:56 c9s joined #perl6
11:56 rodi joined #perl6
11:58 vorner joined #perl6
12:01 alexn_org joined #perl6
12:02 vorner Hello, I'm trying to get some grasp around perl6 with rakudo, but I sometime meet a missing feature. But there is one thing I'm not sure if I do wrong or is missing - the hyper metaoperator works with >>, but not with the unicode version of the characters. Is that expected? Thanks.
12:02 moritz_ vorner: ususally it works, but not from the command line (with -e) or from the interactive environment
12:03 moritz_ rakudo: say (1, 4, 9)».sqrt
12:03 p6eval rakudo 7ef386: 123␤
12:03 moritz_ rakudo: say (1, 4, 9) »+« (-1, 2, -5)
12:03 vorner ah, right, I tried from interactive
12:03 p6eval rakudo 7ef386: 064␤
12:03 broquaint joined #perl6
12:04 colomon_ joined #perl6
12:04 moritz_ p6eval write to a temp file
12:05 vorner Ah, thanks, it works from file now :-)
12:07 vorner left #perl6
12:08 pmurias joined #perl6
12:08 vorner joined #perl6
12:08 pmurias masak: SMOP is not more C based then parrot
12:09 masak pmurias: but Parrot -is- C-based.
12:09 vorner By the way, are more unicode operators expected? Like → for ->?
12:10 moritz_ vorner: the core language is (mostly) limited to Latin-1 characters
12:10 moritz_ vorner: so "no"
12:11 moritz_ rakudo: say ord '¢'
12:11 p6eval rakudo 7ef386: 162␤
12:11 moritz_ oh, even that's latin-1
12:11 xinming vorner: The unicode version of perl 6 ops are mostly for aliens. :-)
12:11 moritz_ so I guess all of the operators in core are from the Latin-1 subset of Unicode
12:12 pmurias masak: so is SMOP ;)
12:13 vorner ok, so a module with macros to translate them could be a nice excercise, thanks for the info
12:13 moritz_ right, once macros are in place :-)
12:13 moritz_ vorner: out of curiosity, how did you come to play with Perl 6?
12:13 pmurias using none Latin-1 characters for Perl 6 would be good
12:14 pmurias as it would stop anyone for attempting to encode Perl 6 in Latin-1 (which BTW should die)
12:15 vorner moritz_: I'm using perl5 quite a lot and I know about existence of perl6 for some time already, but somehow I found out lately it works mostly now, so I gave it a little try out of curiosity
12:15 moritz_ what's wrong with having an --encoding option to tell the compiler the encoding for the soruce file
12:15 moritz_ vorner: ok, thank you
12:15 masak pmurias: for a while, it sounded like you wanted to point out something about the C-basedness of SMOP and Parrot. but now you just seem to agree with me. :)
12:16 vorner I found it trough parrot when I wanted to know if it runs on ARM (I want to get a touchbook and noticed ghc does not run there)
12:16 moritz_ so, does parrot work on ARM?
12:17 * moritz_ has no idea
12:17 vorner they say it does
12:17 vorner but the touchbook does not arrive yet, so I did not test
12:17 vorner *did not
12:17 moritz_ be sure to let us know the result when you try :-)
12:18 colomon joined #perl6
12:18 vorner I fear the memory needs more than the architecture, but I guess that will get a lot better over the time
12:20 * moritz_ dearly hopes so
12:21 moritz_ compiling rakudo takes much memory, because all the builtins are concatenated into a single source file, and then compiled
12:21 moritz_ I've been wanting to compile the Perl 6 source files separately, but it's non-trivial
12:22 moritz_ because they are notionally all in the same lexical scope, but also each file is a lexical scope itself
12:23 vorner Well, I didn't really talk about compiling rakudo. I tried to parse mbox files with a grammar yesterday and managed to write few versions that took 500MB of ram for 5MB mbox file
12:23 vorner but I guess its partly because I didn't manage to do it using non-backtracking regexes only
12:24 moritz_ did you use NQP? or PGE?
12:24 vorner hmm, I don't know
12:25 vorner I just wrote some grammar { } with some tokens and regexes inside and called parse
12:25 payload joined #perl6
12:25 moritz_ so you used rakudo, ok :-)
12:26 moritz_ I was confused because parrot comes with two grammar engines too
12:26 vorner I guess there's nothing like lazy grammar, that would give the matched parts one by one and it would load the data from file as needed, right?
12:26 moritz_ not yet
12:27 moritz_ but in a perfect Perl 6 you could make a stream from a file handle
12:27 vorner Well, I ment in the specification, I know lazy lists are not yet implemented and everything
12:27 moritz_ http://perlcabal.org/syn/S05.html#Matching_against_non-strings
12:27 ejs2 joined #perl6
12:28 vorner ah, thanks :-)
12:28 moritz_ the idea is that it works just like parsing a string, but the grammar engine calls .moreinput or so if it reaches the end of the current string
12:29 moritz_ and the grammar can contain <cut> assertions to tell it to throw away data that has already been processed
12:29 vorner And the Match object would act lazily too?
12:30 moritz_ if you process such a stream, you wouldn't build the full match object
12:30 moritz_ you'd rather use the reduction methods that you can attach to tokens/regex/rules
12:31 moritz_ so if you parse an mbox file, you'd have something like
12:32 moritz_ grammar MBox { token TOP { ^[ <single_mail> <cut> ]* $ }; ... }
12:32 moritz_ and you'd attach a reduction method to rule single_mail
12:32 moritz_ and whenever that matches successfully, you'd build an EMail object from it, or so
12:33 moritz_ so of course each single_mail rule would build a Match object
12:33 vorner or do whatever I needed with it and throw away, that seems like a really nice thing :-)
12:34 moritz_ but the <cut> tell Perl that it can be thrown away if no other references point to it
12:35 pugs_svn r29316 | pmurias++ | [mildew] t/spec/S04-statements/until.t passes
12:35 pugs_svn r29317 | pmurias++ | [mildew] remove &EXPR
12:35 moritz_ I think grammars are a really nice idea, and will be one of Perl 6's killer features (for certain kind of tasks)
12:36 masak aye.
12:36 moritz_ in Perl 5 regexes are used extensively, but only very few modules on CPAN give you access to well-tested, reusable regexes
12:36 vorner Thanks a lot, I'm looking forward to these features, it looks like lazy programming will work like in haskell but without the inside out thinking
12:36 moritz_ you're welcome
12:36 moritz_ for example Regexp::Common::URI doesn't like https:// URLs
12:37 masak I still think we have a few nasty surprises to discover about laziness. not so sure it'll be all roses. :)
12:37 moritz_ so what I do is my $regex = $REP{URI}{http}; $regex =~ s{http}{https?}
12:37 moritz_ and that's really ugly
12:41 Baggio_ joined #perl6
12:43 pugs_svn r29318 | pmurias++ | [mildew] while works
12:44 masak meta-regexes :)
12:45 moritz_ in Perl 6 I'd just inherit from the grammar, and override token schema
12:45 moritz_ perhaps a few more lines to type, but feels so much cleaner
12:46 masak definitely cleanER, yes. :)
12:46 Wolfman2000 *yawn* morning
12:46 masak but it still suffers from the usual problems of inheritence hierarchies.
12:46 masak Wolfman2000: \o
12:47 Alias joined #perl6
12:51 moritz_ masak: aye
12:52 moritz_ or maybe just my $grammar = URI but { token schema { 'http' s? } };
12:52 masak ooh, that's nice.
12:52 rodi that is pretty.
12:53 masak rakudo: class A { method foo { say "OH HAI" } }; my $b = A but role { method foo { say "OVERRAID" } }; $b.foo
12:54 p6eval rakudo 7ef386:  ( no output )
12:54 masak locally, "The but operator can only be used with a role or enum value on the right hand side"
12:54 masak ...which is nonsensical.
12:54 jnthn Rakudo didn't get anonymous role support yet.
12:54 moritz_ I've seen that message too
12:54 masak jnthn! \o/
12:54 jnthn But yes, that'll work (the variant with role in it) one it does.
12:55 masak jnthn: what would one mix into a grammar?
12:55 masak a grole? :)
12:55 * jnthn groles as masak
12:55 jnthn masak: Just a role :-P
12:55 masak *grol*
12:55 moritz_ I see no reason why roles shouldn't contain regexes
12:56 rodi It's dark.  Your class is likely to be eaten by a grule.
12:56 jnthn They can.
12:56 jnthn lol!
12:56 jnthn Since a regex is "just a method", you'll get the conflict resolution and so on too.
12:56 moritz_ there's got to be a grule against this!
12:56 * masak gruans
12:57 Lorn joined #perl6
12:58 jnthn aww...only one comment on my OO post.
12:58 jnthn On the upside, it doesn't say "lol you sOOk"
12:59 vorner jnthn: You write the advent callendar?
12:59 jnthn vorner: I wrote the lastest post.
12:59 jnthn vorner: Many of us write the advent calendar. :)
12:59 SmokeMachine joined #perl6
12:59 jnthn A group adventure, it is.
12:59 vorner its a nice breakfast reading :-)
13:00 jnthn :-)
13:00 vorner anyway, I didn't manage to introspect the metaclass, Class.^^methods didn't work :-|
13:00 masak it makes me wish Advent came oftener than once a year. :)
13:01 masak vorner: there's only supposed to be one ^
13:01 jnthn oops, did I write ^^
13:01 vorner No
13:01 jnthn no, I writed one.
13:01 vorner but I wanted methods of the metaclass, not the class
13:01 masak it doesn't exactly work like that in Perl 6.
13:01 jnthn ah. :-)
13:01 vorner so I interpolated a little
13:01 jnthn Nice try ;-)
13:01 masak extrapolated. :)
13:01 moritz_ so far jnthn, masak, pmichaud, colomon, PerlJam, mathw and me (did I forget anybody?) wrote for the advent calendar
13:02 jnthn .^^^^^methods # meta-meta-meta-meta-meta-methods!
13:02 masak moritz_: Wolfman2000++
13:02 Wolfman2000 thanks masa
13:02 masak jnthn: you wish :)
13:02 jnthn vorner: You'd want to grab the metaclass explicitly and call on its metaclass.
13:02 jnthn masak: I *so* don't! :-)
13:02 masak Wolfman2000: I don't often get called that. :P
13:02 Wolfman2000 err...whoops
13:02 jnthn vorner: $foo.HOW.^methods
13:02 Wolfman2000 typo
13:02 masak Wolfman2000: :)
13:03 * vorner still has much te learn
13:03 masak Wolfman2000: it's some pidgin for 'master', isn't it?
13:03 masak I prefer to think of myself as a peer.
13:04 Wolfman2000 I don't know
13:04 Wolfman2000 I just forgot the k
13:04 jnthn masak: so it's YOU that's always resetting my connection!
13:04 pmurias jnthn: not only yours!
13:04 masak jnthn: yah, sorry about that. :P
13:06 mberends pmurias++: interesting progress you're making :-) what docs are there for getting mildew or mildew-js running locally?
13:07 pugs_svn r29319 | pmurias++ | [mildew] add is export multis in Test.pm, STD gets to read the used
13:07 pugs_svn r29319 | module
13:08 pmurias mberends: you managed to get it running didn't you?
13:10 mberends pmurias: istr mildew-js was working here (on maybe a different host, not sure) a few weeks back. now trying to make mildew , cannot remember how to put cabal on debian stable.
13:10 pmurias mberends: the hard part right now is that the current mildew can't compile it's CORE
13:11 pmurias so you would need a revision of mildew before the start of porting to STD run make CORE-js and then update it to HEAD
13:12 mberends oh, maybe it's better to just wait until you finish your substantial refactoring. presumably old_VAST/ is doomed.
13:12 pmurias mberends: that would be 29235
13:13 pmurias mberends: old_VAST is leftovers
13:14 pmurias it's only used for coping over code to VAST/
13:14 masak latest bug news: we've passed 550 new/open Perl 6 bugs in RT.
13:14 mberends pmurias: ok, that r29235 is a good idea to try this evening :)
13:14 masak if ng doesn't merge this month, we might make 600! \o/
13:14 takadonet joined #perl6
13:15 Wolfman2000 that doesn't soud good
13:15 pmurias mberends: try 29234 as you don't want the first broken revision
13:15 moritz_ masak: if ng merges this month, we also might make 600 :-)
13:15 masak moritz_: win-win :)
13:16 mberends pmurias: thanks
13:16 masak Wolfman2000: it's pretty good. RT tickets means people care.
13:16 moritz_ I expect ng to just have different bugs than master :-)
13:16 moritz_ like, no hashes so far
13:16 masak I hope custom postcircumfix operators will have fewer problems in ng.
13:17 takadonet good morning guys/girls
13:17 masak takadonet: \o
13:17 masak they're very powerful/useful, but they have too many problems right now in Rakudo.
13:34 pugs_svn r29320 | pmurias++ | [mildew] ported over fatarrow and loop {...}
13:34 pugs_svn r29320 | t/loop.t doesn't define it's own return and tests a second iteration
13:34 vorner left #perl6
13:37 vorner joined #perl6
13:45 flip214 masak: is there any hidden meaning in which arm you put up when someone greets?
13:45 JimmyZ joined #perl6
13:46 masak flip214: not beyond the fact that I like to alternate, so one arm doesn't tire.
13:46 flip214 not that relevant, as it's a virtual arm, isn't it?
13:47 moritz_ but the virtual arm is raised by a real person :-)
13:48 masak 'your mind makes it real'.
13:48 carlin masak: another conflict; both november and web have a lib/Tags.pm
13:48 takadonet ...
13:48 masak carlin: oh! now, that one is much more interesting.
13:49 masak carlin: because they do completely different things.
13:49 JimmyZ Oh, I can't join parrot :(
13:49 moritz_ why?
13:49 masak carlin: I think Web.pm's is the more official one, and the one in November should really be November::Tags anyway.
13:49 masak carlin: want me to change it right away?
13:50 carlin masak: that'd be good
13:51 * masak does it
13:52 colomon what's the "#?rakudo emit #"  fudge do?
13:54 payload joined #perl6
13:54 colomon Oh, it emits a # in the comments, commenting out the line.  Hmmm... why not skip?
13:55 colomon oh, because the line isn't a Test.pm directive.
13:56 moritz_ glad I was of help, colomon :-)
13:56 colomon moritz_: thanks for listening.  ;)
13:56 * moritz_ just came up with a good name for Web.pm
13:56 moritz_ Ruby on Rails - Perl 6 on Wings
13:57 Su-Shee I just suggested Perl in Oysters in the next door channel. ;)
13:57 eiro jeweb ?
13:57 PerlJam Perl 6 - it gives you wings
13:58 moritz_ what would that be, with security extensions? -T? :-)
13:58 PerlJam oh wait ...  ;-)
13:58 eiro hello world
13:58 moritz_ helleiro
13:58 masak o/ eiro \o
13:59 PerlJam Perl - weapons of mass construction
13:59 masak for those who yearn for their daily dose of type papers, here's an interesting one that I found: "The Expression Problem" by Wadler. http://www.daimi.au.dk/~madst/tool/papers/expression.txt -- it puts words to something that I've sometimes thought about.
14:00 masak moritz_: in fact, my plan was to name the Catalyst-like MVC framefork "Principle".
14:00 masak thus, "Perl 6 on Principle".
14:01 PerlJam masak++
14:01 moritz_ good idea :-)
14:02 masak glad you like it. :)
14:02 moritz_ but it's not good to search for :/
14:02 masak the rest is simple... just a matter of programming. it's the name that's tough. :P
14:02 moritz_ neither is Wings, though
14:02 masak moritz_: if people search for 'perl 6 principle', they're likely to find something.
14:03 * JimmyZ loves native type
14:03 masak even 'perl principle' oughta work.
14:04 Tene ack, I need to write my advent post!
14:04 Tene >.>
14:04 * moritz_ prints out the paper masak++ linked to, for later reading
14:04 PerlJam according to google, "principle" is "gensoku" in japanese.   You could continue the trend of using anglicized japanese words
14:05 pmichaud jnthn: ping
14:05 phenny pmichaud: 09:28Z <masak> tell pmichaud re Pm-13 that Regex ~~ Method feels right to me as well. but why does one call them with /<Grammar::xyz>/ and not with /<Grammar.xyz>/, in that case? I've always been slightly surprised that it's the former syntax.
14:05 masak PerlJam: I'll think about that.
14:06 pmichaud masak:  <Grammar.xyz>  ought to be a xyz method call on the Grammar object.
14:06 pmichaud whereas  Grammar::xyz is looking up the xyz method from Grammar and invoking it on the current cursor
14:07 pmichaud (just as  <xyz>  looks up the xyz method from the current cursor and invokes it on the current cursor)
14:07 jnthn pmichaud: pong
14:07 moritz_ but... Grammar::xyz looks like searching for a symbol in a package
14:07 pmichaud it's the same for     $xyz.Grammar::abc   syntax, though
14:07 moritz_ which would imply that inheritance is not respected
14:07 Tene moritz_: you are.  the symbol is a method.
14:07 pmichaud or, for consistency,   $abc.Grammar::xyz
14:07 pmichaud which looks up the xyz method from Grammar, and then invokes that on $abc
14:08 JimmyZ joined #perl6
14:08 pmichaud and correct, inheritance is not respected in this case.  In fact, the   Grammar::name  syntax is explicitly asking that there be no inheritance below the level of Grammar
14:09 pmichaud (but we'd accept any xyz method that comes from a parent of Grammar, if Grammar doesn't have its own)
14:09 masak pmichaud: thanks. that explains it. more specificallt, 'invoking it on the current cursor' explains it for me.
14:09 moritz_ it explains it, but doesn't make all that happy :-)
14:10 pmichaud well, if you want true inheritance, you just say  <xyz>   instead of <Grammar::xyz>
14:10 pmichaud same as  $abc.xyz   follows inheritance but   $abc.Grammar::xyz  doesn't
14:10 pmichaud (as far as $abc is concerned, that is)
14:10 moritz_ but that only works inside the current grammar
14:10 pmichaud ...does it?
14:10 moritz_ let me rephrase
14:11 moritz_ how do I invoke a rule from a grammar which isn't part of the inheritance hierarchy of the current grammar, and still respect inheritance?
14:11 colomon rakudo: my @a = (); say @a.elems
14:11 pmichaud I don't understand "still respect inheritance" in that case.
14:11 p6eval rakudo 7ef386: 0␤
14:12 colomon ng: my @a = (); say @a.elems
14:12 p6eval ng 2c7750: 1␤
14:12 Tene moritz_: what would "respect inheritance" mean there?  How would oyu expect the behavior to differ between something that does and something that doesn't?
14:12 moritz_ in a class I can simply say $objectFromOtherClass.some-method
14:12 PerlJam moritz_: a concrete example might help
14:13 pmichaud moritz_: oh.  Are you asking about    <OtherGrammar::xyz>  ?
14:13 moritz_ pmichaud: yes
14:13 pmichaud moritz_: that's how you do it.  :)
14:13 moritz_ PerlJam: I'll try to come up with one
14:13 pmichaud <OtherGrammar::xyz>  respects the inheritance tree of OtherGrammar
14:13 moritz_ ok
14:14 moritz_ then my question is answered
14:14 moritz_ but I still think that it looks like it doesn't, but maybe that's because I programmed too much in Perl 5
14:14 masak how does one do it while not respecting inheritance, then? :)
14:15 Tene moritz_: what are you thinking it would do, then?  Just fail on an inherited method?
14:15 moritz_ Tene: yes
14:15 Tene Oh.  That would be LTA.
14:15 moritz_ it would
14:15 moritz_ that's how Rakudo did it some time ago
14:16 pugs_svn r29321 | colomon++ | [t/spec] Fudge elems.t for ng.
14:16 moritz_ ng: grammar A { method TOP { <a> }; token a { 'b' }; }; grammar B is A { token a { 'c' } }; say B.parse('c')
14:16 p6eval ng 2c7750: sh: ./perl6: No such file or directory␤
14:16 pmichaud afaik, ng doesn't have grammars yet
14:17 hugh4life joined #perl6
14:17 pmichaud masak: it would be done using a regex interpolation
14:17 masak ah.
14:18 pmichaud (jnthn:  ping response sent via /msg )
14:18 moritz_ ng: grammar A { method TOP { <a> }; token a { 'b' }; }; grammar B is A { token a { 'c' } }; say B.parse('c')
14:18 p6eval ng 2c7750: Method 'isa' not found for invocant of class 'Undef'␤current instr.: 'perl6;Perl6;Actions;_block922' pc 142140 (src/gen/perl6-grammar.pir:29044)␤
14:18 pmichaud afaik, ng doesn't have grammars yet
14:18 moritz_ pmichaud: just wanted to see the error message :-)
14:18 moritz_ it's... curious :-)
14:18 pmichaud agreed ... I'm not sure about that error message :)
14:19 colomon Does ng even have a class Undef?
14:19 pmichaud no, but Parrot does.
14:19 colomon oh.
14:19 pmichaud nqp tends to turn non-existent lookups into Undefs
14:20 colomon moritz_: does test #446 in ord_and_chr.t work for you?
14:21 moritz_ yes. I was just about to ask about that one
14:21 PerlJam Is p6eval's nqp the old nqp or nqp-rx?
14:21 moritz_ curious it works
14:21 moritz_ PerlJam: the shiny, new and improved one. Of course. :-)
14:21 colomon I was just about to unfudge it.  :)
14:21 PerlJam excellent
14:21 moritz_ ng: say "\c[LATIN CAPITAL LETTER A WITH DOT ABOVE]" eq "\c[LATIN CAPITAL LETTER A, COMBINING DOT ABOVE]"
14:21 p6eval ng 2c7750: 1␤
14:22 moritz_ ng: say "\c[LATIN CAPITAL LETTER A WITH DOT ABOVE]" eq "\c[LATIN CAPITAL LETTER A]\c[COMBINING DOT ABOVE]"
14:22 p6eval ng 2c7750: 1␤
14:22 colomon ng: my $rt65172a = "\c[LATIN CAPITAL LETTER A, COMBINING DOT ABOVE]"; say $rt65172a.org
14:22 p6eval ng 2c7750: Method 'org' not found for invocant of class 'Perl6Str'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
14:22 colomon ng: my $rt65172a = "\c[LATIN CAPITAL LETTER A, COMBINING DOT ABOVE]"; say $rt65172a.ord
14:22 p6eval ng 2c7750: Mu()␤
14:22 moritz_ ng: say "\c[LATIN CAPITAL LETTER A WITH DOT ABOVE]".chars
14:22 colomon thought it might be something like that.
14:22 p6eval ng 2c7750: 0␤
14:22 moritz_ colomon: then better skip it
14:22 colomon ought to add test
14:23 colomon ord always has to be > 0, doesn't it?
14:23 masak carlin: pushed s/Tags/November::Tags/
14:23 moritz_ ng: say ord("\c[LATIN CAPITAL LETTER A WITH DOT ABOVE]")
14:23 p6eval ng 2c7750: Mu()␤
14:23 moritz_ ng: say ord("a")
14:23 masak in fact, I'll do the same with a few other classes while I'm in there.
14:23 p6eval ng 2c7750: 97␤
14:23 moritz_ ng: say ord("\0")
14:23 p6eval ng 2c7750: 92␤
14:23 moritz_ ng: say ord(chr(0))
14:23 p6eval ng 2c7750: 0␤
14:23 carlin masak: Thanks :-)
14:24 moritz_ colomon: not always, but most of the time :-)
14:24 colomon well, > 0 if you give it a non-zero character.
14:24 moritz_ right
14:24 moritz_ ng: say("\c[LATIN CAPITAL LETTER A WITH DOT ABOVE]")
14:24 p6eval ng 2c7750: ␤
14:24 colomon my point being we can add a test to make sure that it's not just the ord values that are equal, but that the ord values are also sensible.
14:24 moritz_ colomon: go right ahead :-)
14:25 colomon so skip instead of todo for the passing but wrong test?
14:25 moritz_ colomon: but you see it's the \c interpolation that's not working, not ord()
14:25 moritz_ +1
14:25 colomon oh, so testing that it gets chars > 0 is better.  cool.
14:25 PacoLinux joined #perl6
14:26 moritz_ you can also test for the right ord straight away
14:26 moritz_ rakudo: say ord("\c[LATIN CAPITAL LETTER A WITH DOT ABOVE]")
14:26 p6eval rakudo 7ef386:  ( no output )
14:26 dalek november: 198e75a | masak++ |  (7 files):
14:26 dalek november: renamed s/Tags/November::Tags/
14:26 dalek november: review: http://github.com/viklund/november/commit/198e75a39e1bd5ee35d134f32853535b3ad8d400
14:27 masak dalek: hey, great!
14:27 moritz_ $ perl -Mcharnames=:full  -wE 'say ord("\N{LATIN CAPITAL LETTER A WITH DOT ABOVE}")'
14:27 moritz_ 550
14:27 moritz_ colomon: that's the desired result
14:28 colomon I have to admit I'm not completely comfortable testing for that, in my unicode ignorance.
14:29 moritz_ then I'll do it :-)
14:29 colomon one sec
14:29 moritz_ 1
14:29 moritz_ 0
14:29 moritz_ waited :-)
14:29 pugs_svn r29322 | colomon++ | [t/spec] Refudge incorrectly passing test, add test that indicts why it is incorrect.
14:30 colomon there.
14:32 gbacon joined #perl6
14:34 pugs_svn r29323 | moritz++ | [t/spec] be more explicit when testing for graphemenss
14:36 colomon Teamwork.  :)
14:37 carlin looks like there's more http-daemon stuff in perl6-examples; lib/Test/Harness.pm and lib/Test/Differences.pm
14:39 colomon moritz_: looks like the same thing may be happening in comb.t ?
14:41 dalek rakudo/ng: 6ee78ed | (Solomon Foster)++ | t/spectest.data:
14:41 dalek rakudo/ng: Turn on elems.t.
14:41 dalek rakudo/ng: review: http://github.com/rakudo/rakudo/commit/6ee78ed130086a754c2675ba3d64f952bb22759f
14:42 colomon Yeah, definitely the same thing.
14:43 masak carlin: yes.
14:43 masak carlin: mberends left again, but I think we can safely get rid of it.
14:44 pugs_svn r29324 | colomon++ | [t/spec] Skip test which was incorrectly passing.
14:53 carlin masak: cool
14:53 * carlin deletes
15:05 masak rakudo: class A::B {}; say A::B.new.isa("A::B")
15:05 p6eval rakudo 7ef386:  ( no output )
15:05 masak locally, "0\n".
15:05 masak bug?
15:05 moritz_ that's know and submitted
15:05 masak ok, thanks.
15:08 carlin both perl6-examples and benchmark contain the same Benchmark.pm, alright to delete it?
15:09 masak who wrote it?
15:09 carlin pointme: benchmark
15:09 pointme perlpilot's benchmark is at http://github.com/perlpilot/benchmark/
15:10 colomon_ joined #perl6
15:12 orafu joined #perl6
15:15 alexn_or1 joined #perl6
15:25 mberends joined #perl6
15:26 rgrau joined #perl6
15:27 quantumEd joined #perl6
15:29 JimmyZ joined #perl6
15:38 dalek november: 8dfebd5 | masak++ |  (20 files):
15:38 dalek november: put many modules under the November:: namespace
15:38 dalek november: review: http://github.com/viklund/november/commit/8dfebd5fb2856c51fb129b51db05b26d83d049e2
15:42 Trey joined #perl6
15:43 Astoria` joined #perl6
15:43 Psyche^ joined #perl6
15:44 alexn_org joined #perl6
15:59 jferrero joined #perl6
16:01 plainhao joined #perl6
16:01 guest28 joined #perl6
16:02 guest28 Is there a preferred data serialization format that will likely be used by Perl 6? I've read that YAML has a rather large spec, and JSON seems very nice and simple. But then there's also YAML::Tiny...
16:03 masak guest28: Perl 6 culture is unlikely to choose one format.
16:03 masak guest28: if you're interested in a solution that works now, JSON is it.
16:03 Juerd guest28: Depends on the use case.
16:03 masak guest28: proto uses YAML, but it cheats.
16:03 Juerd guest28: Not every format supports every kind of object
16:03 masak I think I would've chosen JSON if that module existed at that time.
16:04 Juerd masak: It's never too late to change :)
16:04 masak Juerd: true, but I value backwards compatibility more than changing in this case.
16:04 guest28 masak: Yes, never too late to change. :)
16:04 Juerd You could keep compatibility
16:04 masak switching to JSON would mean having to support two formats.
16:04 guest28 I was thinking in terms of needing to spend structured data around, say, via http.
16:04 Juerd Yes
16:04 Juerd spend? :)
16:05 guest28 s/spend/send/
16:05 Juerd guest28: I think JSON is slightly more practical
16:05 moritz_ if you want strings, numbers, booleans, arrays and hashes, then JSON works
16:05 Juerd But of course, a lot of people do prefer XML
16:05 guest28 Hm. Perl 5 modules use a manifest written in yaml I think...
16:05 moritz_ and there's a working JSON module for Perl 6 on github
16:05 Juerd I'm working with an XML format right now and really dislike it.
16:06 guest28 Juerd: Whoa. Let's keep this civil. ;)
16:06 moritz_ guest28: I guess that's going to change too, very slowly
16:06 Juerd guest28: You're right; I'm sorry.
16:06 payload joined #perl6
16:06 moritz_ Juerd: maybe because XML is not a data serialization format, but a markup language :-)
16:06 guest28 Juerd: I meant just *mentioning* XML. ;)
16:06 Juerd moritz_: In this case... I wish it was.
16:06 Juerd moritz_: Effectively, I have to use XML to serialize zone files.
16:08 guest28 moritz: Interesting. That's good to hear, IMO (about changing from yaml)
16:09 Tene Juerd: shame there isn't some sort of standard file format for zone files... ;)
16:09 Juerd YAML with its indentation mess isn't very transfer friendly. It can even break during copy/paste with stupid editors.
16:10 Juerd Tene: Currently I have zonefile -> weird-xml-format implemented by letting Net::DNS::Zone::Parser parse the zonefile
16:10 Juerd I've added methods to the respective Net::DNS::RR::<type> classes, that return the xml-ified version of the RR
16:10 guest28 moritz: re. JSON on CPAN for Perl 6; Oh, didn't realize there were Perl 6 modules on the CPAN. Do you mean this? http://search.cpan.org/~makamaka/JSON/lib/JSON.pm
16:10 Juerd Now I only have to build a class for representing zones, that can also read the XML stuff.
16:10 Juerd So far I haven't needed any real XML, fortunately.
16:11 moritz_ guest28: http://search.cpan.org/~moritz/JSON-Tiny-0.1.2_1/
16:11 moritz_ guest28: the PAUSE indexer can't handle Perl 6 POD, so it looks all messed up
16:11 moritz_ http://github.com/moritz/json <-- source
16:12 Juerd Real programmers read POD in source ;)
16:13 guest28 moritz_: Ok, thanks for the search.cpan link. Funny though, I don't see any obvious indication that it's for Perl 6...
16:13 guest28 I mean, here: http://search.cpan.org/~moritz/JSON-Tiny-0.1.2_1/
16:13 moritz_ guest28: somebody would have to patch significant parts of the CPAN toolchain
16:13 Juerd guest28: "=begin Pod"
16:14 guest28 moritz_: will try it out. Thank you.
16:16 guest28 Are there still plans for some kind of a CP6AN? Or is the current modus operandi to just put Perl 6 modules into the existing CPAN infrastructure?
16:16 Juerd You can theoretically put anything on CPAN
16:17 crythias joined #perl6
16:17 Juerd If you have something really important, that isn't too secret (or is well encrypted), upload it to CPAN and it'll be mirrored to hundreds of sites :D
16:17 moritz_ I think open-source-ness is a requirement for uploading to CPAN
16:17 Juerd It's not IIRC
16:18 masak I think it being Perl is a requirement for uploading to CPAN.
16:18 moritz_ no
16:18 moritz_ well
16:18 guest28 Is anyone working on a "CPAN" strictly for Perl >= 6?
16:18 moritz_ there's a PHP equivalent of Test::More on CPAN ;-)
16:20 pnate2 joined #perl6
16:20 mubot joined #perl6
16:20 pointme joined #perl6
16:21 zaslon joined #perl6
16:23 Juerd guest28: No. Someone is working on CPAN6, and intends it to be used for Perl 6 and perhaps everything else in existence.
16:23 Juerd guest28: However, this is all very detached from the Perl 6 community, XML based, and very capable (read: complex).
16:24 Juerd I have doubts that the community will embrace it.
16:24 Juerd I hope to be proven wrong.
16:24 diakopter Juerd: I thought there were lots of cpan-successor efforts?
16:24 Juerd diakopter: Just one that I know of
16:25 guest28 Found some discussion here: http://perlbuzz.com/2009/02/should-perl-6-use-the-cpan.html
16:32 perlygatekeeper joined #perl6
16:34 guest28 My understanding is that [Proto](http://github.com/masak/proto) is only intended as a stop-gap measure.
16:34 masak correct.
16:47 quantumEd rakudo: say ~~~
16:47 p6eval rakudo 7ef386: say requires an argument at line 2, near " ~~~"␤in Main (file src/gen_setting.pm, line 2593)␤
16:48 jaldhar_ joined #perl6
16:54 * colomon apparently closed all the Perl 6 TextMate windows on his system in an effort to get himself to focus on $work instead of trying "just one more patch"...
16:54 cdarroch joined #perl6
16:54 TimToady apparences can be deceeving
16:59 guest28 left #perl6
17:00 ejs joined #perl6
17:00 masak I'm fascinated by the model of ADTs and classes being easily extensible in different directions: with ADTs, it's easy to add operations, whereas with classes, it's easy to add representations.
17:01 masak inheritance and multimethods help mitigate things for classes, it seems.
17:02 quantumEd joined #perl6
17:04 masak a group of questions for which I still don't have answers: can one create ADTs in Perl 6? would one want to? if it's not possible, what's missing?
17:04 masak it seems that static typing is a necessary condition, but Perl 6 has that, sort of.
17:04 nihiliad joined #perl6
17:06 iblechbot joined #perl6
17:06 pmurias masak: what features of ADTs classes don't have?
17:06 masak pmurias: I wish I could say it better than http://www.cs.utexas.edu/~wcook/Drafts/2009/essay.pdf
17:07 masak pmurias: in many ways, they seem complementary.
17:07 ejs joined #perl6
17:08 jaldhar_ joined #perl6
17:08 PerlJam masak++  (I would have been one of those people he mentions in the introduction)
17:09 masak it's a good read.
17:09 alester joined #perl6
17:09 masak I don't grok all of it, especially not when it goes all type-y and greek on me, but I get the big picture.
17:11 pnate joined #perl6
17:11 thowe joined #perl6
17:12 pmurias i don't feel the paper is any good
17:13 masak why not?
17:17 pmurias what the author claims is that two of his definitions of a concept are different
17:17 pmurias i couldn't care less
17:17 pmurias s/of a concept/of a different concept/
17:17 masak well, he claims that ADTs and objects are more different than commonly acknlowledged.
17:17 pmurias but he doesn't prove that
17:18 masak it can be interesting if he argues it convincingly.
17:18 pmurias he doesn't
17:18 masak I hadn't even drawn a parallel between the two before I read the paper, so I found it enlightening.
17:19 quantumEd well the biggest thing I think of, and this might just be an opinion thing so please point out if so, is that classes are open (you can add more stuff) but the data types like tree or list or whatever are closed (you're never going to have something alist which isn't nil or cons for example)
17:19 masak quantumEd: there is something to that, yes.
17:20 masak am I right in equating ADTs with C structs?
17:20 quantumEd I'm not sure, I've seen people do OO with C structs
17:20 pnate joined #perl6
17:21 masak quantumEd: that's possibly, but you wouldn't get the interface part that the author is talking about. at least I don't think you would.
17:21 quantumEd theres this hack  struct foo { ..; field bar[0]; } you see sometiems (like in the implementation of objective C), which lets you add arbitary more fields to a struct
17:21 ejs joined #perl6
17:21 pmurias masak: most classes don't meet his definition of classes
17:21 masak pmurias: do you have an example?
17:22 quantumEd you alloc one of these with sizeof + n*sizeof(field)
17:22 pmurias masak: you can check the type of an object in most languages
17:23 masak pmurias: well, sure!
17:23 PerlJam It seems to me that the author is saying that int16 would be an ADT, but Int would not necessarily be one.  (it would be more than an ADT)
17:23 masak pmurias: his point seems to be that even OO languages are 'impure' to various degrees, according to his definition of purity.
17:23 masak PerlJam: nod.
17:25 masak I've been talking to Moose people lately who have vented the worry that Perl 6's type system is tangled in with its OO system. (apparently unlike Moose, in which Any is not a class.)
17:28 * thowe is unfamiliar with the term "Moose people".
17:28 masak thowe: oh! Moose is a modern OO framework for Perl 5.
17:29 moritz_ postmodern
17:29 thowe oh.  OK.  What paper are you guys talking about?  I don't know what ADT means either.
17:29 masak moritz_: thanks. I hesitated on just that word.
17:29 masak thowe: 'abstract data type'.
17:29 pmurias masak: what's the problem with that?
17:30 PerlJam thowe: really masak talks to these imaginary Moose in his head.  He calls these "Moose people"  :)
17:30 masak thowe: the paper is at http://www.cs.utexas.edu/~wcook/Drafts/2009/essay.pdf
17:30 thowe thx
17:30 masak thowe: what PerlJam said. :P
17:31 TimToady masak: if you think that's a problem, you should submit a bug report against the design with a test case :)
17:31 PerlJam thowe: (ordinary moose don't talk, but since the talking ones do, you distinguish  them by captializing the M)
17:31 masak pmurias: I'm not competent enough to see the dangers of tangling the OO system and type system. I only know Moose doesn't, as much, and that some of the people involved consider it a feature.
17:31 masak TimToady: yeah, I guess. that would definitely be keeping things concrete.
17:31 TimToady maybe your moose folx can supply such a test
17:31 masak and keeping things concrete is very much needed in discussions about these things. :)
17:32 masak maybe.
17:32 PerlJam masak: People steeped in the culture of Perl tend to like more degrees of freedom rather than less.
17:32 masak PerlJam: yes...?
17:32 PerlJam (perhaps these Moose people you've spoken to have over-applied the philosophy)
17:32 masak ah.
17:33 TimToady well, roles aren't derived from Any, and roles can do other roles
17:33 moritz_ they are always welcome to write their own custom meta class that does it differently :-)
17:33 TimToady not clear what more they want
17:33 pmurias we can define subsets of Mu
17:33 masak well, mostly the thought intrigues me, because I almost cannot imagine a type being on top of the type system and not being a class. :)
17:34 masak to me Mu, formerly known as Object, is the smallest possible thing with substance.
17:34 masak everything else is just air.
17:34 TimToady maybe they're really making the same complaint that moritz_ does, that Any should contain all those extra dwimmifiers
17:34 PerlJam masak: well, for type systems I think a "type" is just a name with some associated behaviors/constraints/etc. and that classes/objects are just a conveinent way to implement types
17:35 masak PerlJam: yes. that echoes some of the points in that paper.
17:35 * moritz_ suddenly feels like a moose poeple
17:35 PerlJam masak: yep.  Though I've never thought it needed some sort of formalism
17:36 moritz_ we already have types that aren't classes
17:36 moritz_ roles, enums, subsets
17:36 masak grammars, metaclass stuff.
17:36 TimToady knowhows :)
17:36 masak I'm not proposing a change or anything. just want to explore the territory a bit.
17:37 masak that's why I've resolved to read the Moose test suite over Christmas. :)
17:37 masak TimToady: where can I learn more about knowhows? :)
17:37 PerlJam that there are other means to obtains types never seemed like it needed saying to me.  I guess Mr. Cook just wants to highlight that  these are separate things.
17:38 pmurias masak: knowhows? the smop or mildew-js source?
17:38 masak PerlJam: actually, Mr. Cook seems to come from a world where objects are frowned-upon and considered a sort of strange ADTs.
17:39 pmurias masak: i think they are a bit implementation specific as they are used to bootstrap OO
17:39 masak pmurias: is there an executive summary, or some docs, or at least source code comments somewhere?
17:40 pmurias masak: not that i'm aware of, you can look at the tests
17:40 pmurias v6/mildew/t/knowhow.t v6/mildew/t/knowhow_attributes.t
17:41 masak thanks.
17:41 TimToady basically, they declare metaclasses
17:42 TimToady see v6/mildew/CORE/*.pm for some examples
17:42 abra1 joined #perl6
17:42 masak those files look like someone took a small example of a class declaration, and did s/class/knowhow/ on it.
17:43 masak I fail to understand the significance.
17:43 TimToady it's probably a circularity saw
17:43 masak that makes at least a fraction of sense.
17:43 TimToady or at least a "CUT HERE"
17:44 masak so knowhows are used to build the system with which we later declare classes?
17:44 TimToady or any other .HOW
17:44 scottman joined #perl6
17:44 TimToady including roles, etc
17:44 TimToady prototype OO if you want it
17:45 scottman im about to start a perl web project, is the web.pm module usable or would it be best to stick with perl 5
17:45 TimToady it might well be that knowhows don't derive from Any, either :)
17:45 masak wow, there's some seriously cool Perl 6 code in mildew. I see now that I should pay more attention to what's happening there.
17:45 ejs joined #perl6
17:45 masak scottman: depends on your sense of urgency.
17:45 PerlJam masak: heh ... I was just writing that
17:46 masak scottman: there are things in Web.pm which are ready for use, but just as surely you will hit snags.
17:46 PerlJam scottman: If you want something that "production ready", then you want to use Perl 5  (probably Catalyst or something too)
17:46 masak PerlJam: I was just writing that. :P
17:47 scottman masak and PerlJam: thanks, i havnt tried the big web frameworks just html::template maybe i could learn that, just wanted to see if perl6 was usable in the web part
17:47 PerlJam Really?  because for me it was like "Depends on your sense ... blah! masak just said it"  :)
17:48 masak :)
17:48 masak scottman: I think it's usable, and that Web.pm is underused.
17:48 PerlJam scottman: it's certainly *usable*
17:48 masak scottman: at the same time, I don't want to trick anyone into trying out Web.pm for me if they're not interested in being alpha testers.
17:49 scottman PerlJam and masak: okay i understand, well this is a 'project' so i can goof around with the web.pm and see if it does the job.
17:50 PerlJam scottman: Have you read "Crossing the Chasm"?  It outlines different kinds of users for products.   If you were to use Perl 6 and Web.pm, you would be a "pioneer" or an "early adopter"
17:50 PerlJam (those two are just before the chasm that takes you to the more main stream)
17:51 masak scottman: even a simple task such as someone hooking up a database to a template engine, would give valuable feedback at this point. it's just not been done much.
17:52 scottman masak: are there any template engines yet?
17:52 masak the documentation is near-nonexistent, so conversations such as this one would be needed.
17:52 masak scottman: yes, I have one very good for you: Hitomi.
17:53 masak http://github.com/masak/web/blob/master/drafts/hitomi-example.xml
17:54 Tene masak: I'm thinking about talking about traits in my advent calendar post... what do you think?
17:54 scottman masak: hmm it looks good
17:54 masak Tene: sure! sounds good.
17:55 Tene Hah, I tricked you!  Now if it goes horribly wrong, you take the blame!
17:55 Tene Bwahahahaha.
17:55 masak :O
17:55 masak scottman: it does, doesn't it? I don't think all of those features work, but consider me eager to implement what's you need quickly.
17:56 masak s/'s//
17:56 scottman masak: yeah i like the xml idea of it
17:56 masak scottman: it's one of the few cases I've seen of XML being used judiciously.
17:57 PerlJam perhaps I've just looked at too much Template::Toolkit, but I can't get enthused about the XML nature of Hitomi
17:57 masak PerlJam: you'll have to guide me through TT some day.
17:57 Su-Shee "the xml idea"? ;) how else would you do contemporary proper html? :)
17:57 masak PerlJam: people keep being excited about it, and I keep not getting it.
17:58 masak Su-Shee: yeah, something in that ballpark.
17:58 PerlJam I've thought about stealing Alias' Template::Tiny for Perl 6  maybe I'll do that over christmas
17:58 Su-Shee ok, then I don't get it too.
17:58 Alias PerlJam: I'm still working on it
17:58 Alias One level deep [% IF %] statements is about as complex as it gets right now
17:58 PerlJam Alias: I know, but you've got enough for now  :)
17:59 masak I know that the current solution in November, which is a crib of HTML::Template from CPAN, disgusts me utterly.
17:59 Alias I'm still trying to work out how the hell to 1) Do recursion 2) Mix IF and FOREACH
17:59 Alias There's a reason that everyone else just tag-flips and converts to code
17:59 Alias It's just SO much easier
18:00 Tene There's also Tags.pm, which is a Perl 6 port of Template::Declare.
18:00 Tene Which I'm so fond of.
18:00 masak it is kinda cute. if you're into that sort of thing. :)
18:00 masak just kidding. Tene++
18:01 Tene html { head { title "Special page" }; body { ul { li "item $_" for 1..10 } } }
18:01 PerlJam I think Tags is cool too, but its main advantage seems to be that it fixes the syntactic deficiences of HTML  :)
18:01 Juerd Alias: The easy way to do those things in to translate the program to a Perl expression and eval that.
18:01 Tene We're Perl Programmers, so let's write our templates in Perl!
18:01 * Tene afk lunch
18:01 Juerd Alias: It works around having to build a programming language.
18:02 Alias Juerd: The tag-flipping solution (i.e. turn it into code) ISN'T the easiest way if you've set yourself an arbitrary memory limit of 100k
18:02 Juerd Oh, that's what you meant
18:02 tann1 joined #perl6
18:02 Su-Shee we have an entire widget set in perl which generates html with cgi.pm ;)
18:03 Juerd What is the memory limit for?
18:03 Alias The ::Tiny suffix
18:03 Alias Well, actually, by my original rules I've got about 230k
18:03 Juerd Is that runtime memory?
18:03 Alias Compile time memory
18:03 Alias i.e. non-recoverable
18:04 Juerd Does a bunch of s/// and an eval really get that big?
18:04 scottman PerlJam and marak: thanks for the help :) im out.
18:04 Alias Well, to implement basic foo.bar expressions, [% and [%-, plus IF/UNLESS/ELSE I get to about 40-50k
18:04 Juerd But that includes evaluating the expressions, right?
18:05 Alias Juerd: But s/// statements seem to chew up a suprising amount
18:05 Juerd Oh
18:05 Alias 10k each in the case if useful ones
18:05 payload joined #perl6
18:06 Alias I tried to preprocess tags and whitespace stuff
18:06 PerlJam Maybe that's a sign that the regex engine is ripe for optimization (again).
18:06 Alias Dunno
18:07 Alias PerlJam: Most of the time optimisation involves consuming MORE memory :)
18:07 * Juerd wrote the documentation for a module that's yet to be written and already has 11 caveats.
18:07 PerlJam ah, true
18:07 Juerd I wonder what I'll run into during implementation.
18:07 PerlJam (because we're usually optimizing for speed, but what if there were a switch,  recall  use less qw/memory/   ?
18:07 Juerd It sounded like such a simple task. Translate zonefiles to some XML format. Turns out the XML format doesn't support half of what's possible in zonefiles.
18:07 PerlJam )
18:08 masak we lost scottman.
18:08 masak I'll be going home now, and will be mostly gone for the weekend.
18:08 moritz_ have a nice weekend!
18:08 PerlJam masak: have a great weekend !
18:08 masak will backlog from behind the curtain.
18:08 masak thanks :)
18:10 Alias PerlJam: I'd love a generic switch
18:10 ShaneC joined #perl6
18:10 Alias Although it's tricky
18:10 Alias There's a tradeoff yes?
18:10 PerlJam always
18:10 Alias Who's to say that saving 25% of memory and adding 400% CPU is really worth it
18:11 Alias But for Padre, every time we spawn a thread, there's a ton of copying
18:11 Alias So saving 1k means more like saving 5k
18:12 kaare joined #perl6
18:13 Alias My biggest problem now is that regex don't support recursion
18:13 Alias Perl's non-regular expressions DO, but doing it with only Perl 5.005 is ... troublesome
18:13 TimToady P5 regex don't... :)
18:14 Alias TimToady: I really should get you to help with this... :/
18:14 dbrock joined #perl6
18:14 TimToady and how would you do that?  :)
18:14 Alias Ask nicely
18:15 PerlJam TimToady: well, you do want Perl 6 to have a nice editor, right?  :)
18:15 TimToady I don't think there's any amount of asking nicely that'll get me back into hacking the p5 core
18:15 PerlJam a nice, friendly editor that even non-gurus can use.
18:15 PerlJam One with a butterfly for a logo
18:15 PerlJam :)
18:16 Alias I don't want someone to hack it, just to recommend how the match EITHER the inner or outer pairing in [% IF foo %] [% IF bar %] [% END %] [% END %]
18:17 Alias Assuming that the outer pair isn't the ONLY pair in the text
18:17 Alias i.e. [% IF foo %] [% IF bar %] [% END %] [% END %] [% IF foo %] [% END %]
18:18 TimToady TheDamian gave a talk about how to work around p5 regexe's recursion problems to write parser that would actually return data
18:18 TimToady I think it's a CPAN module now, but I don't remeber its name
18:18 Alias In his usual "This talk shalt not be recorded" terms I assume
18:18 Alias Text::Balanced?
18:18 TimToady don't thinkso
18:19 Alias As it happens, I ended up the maintainer for that one
18:19 moritz_ Regexp::Grammars
18:19 Alias hrm
18:19 Alias I shall look
18:20 Alias I'm guessing this doesn't work in Perl 5.005 :)
18:20 Alias I guess I'll just tag-flip... sigh
18:21 TimToady I'm guessing I don't care whether much of anything works in 5.005  :)
18:21 TimToady but I don't mind if you care
18:21 PerlJam Does Padre really run on 5.005?
18:21 Alias TimToady: I only care in ::Tin
18:21 Alias ::Tiny
18:22 Alias PerlJam: Padre it 5.008005 for the unicode sanity
18:22 Alias is
18:22 PerlJam okay, so the 5.005 requirement is just for ::Tiny
18:22 TimToady maybe ::Tiny should turn into an XS module :P
18:22 hanekomu_ joined #perl6
18:22 Alias TimToady: XS is against the rules as well :)
18:23 TimToady I said "should", not "will".  :)
18:23 TimToady I always love that that word has two different meanings...
18:24 TimToady "Yes, it *should* work."
18:24 Alias The maybe confuses that sentence if you take the pure form of should
18:25 Alias Or at least, my upside down English doesn't parse it anyway
18:26 TimToady it's not a subjunctive, just a modal that in Amerika is interchangeable with 'oughta'
18:26 PerlJam Get to the correct hemisphere so that your english isn't upside-down.  :)
18:26 rodi try teaching that to a two-year-old. At least he wishes he *were* correctly.
18:26 Alias I just need to go check Google Dictionary for "subjunctive", "modal" and "oughta" and I'll get back to you with a response :)
18:27 TimToady those aren't the words I used...the equator must've modified them.
18:27 Alias Note: Never argue semantics with a linguist
18:27 PerlJam Alias: s/semantics//
18:27 Alias heh
18:27 Juerd s/with a linguist// perhaps.
18:28 Alias Juerd: No, because s/with/as/
18:28 PerlJam Alias: they know enough language to twist the argument in their favor.
18:28 Alias Anyways, bed
18:29 TimToady g'night
18:29 rodi rakudo: (" " ~~ m/<ws>/).say
18:29 p6eval rakudo 7ef386:  ␤
18:29 rodi rakudo: (" " ~~ m/<ws>*/).say
18:29 p6eval rakudo 7ef386:  ( no output )
18:30 rodi std: (" " ~~ m/<ws>*/).say
18:30 p6eval std : ok 00:01 108m␤
18:47 Tene ARGH, I forgot about this.  You can't wrap a sub from a trait handler.
18:47 Tene ><
18:47 Tene Okay, different examples needed. :P
18:57 TimToady phenny: tell masak if you call it Rocket Art you can say it's not rocket science...
18:57 phenny TimToady: I'll pass that on when masak is around.
18:59 coke__ joined #perl6
18:59 [Coke] anyone interested in working on perl6 vim syntax highlighting bugs? =-)
19:01 TimToady we need a .vim emitter for viv
19:02 rachelBROWN joined #perl6
19:02 [Coke] viv?
19:02 rachelBROWN :Z
19:03 PerlJam TimToady: that would be awesome
19:04 stephenlb joined #perl6
19:04 TimToady std: :Z
19:04 p6eval std : ok 00:01 105m␤
19:05 [Coke] https://docs.google.com/Doc?docid=0ARm1zTZwW0VHZHdnajRkeF8xMzdyNTJwcGRy&amp;hl=en
19:07 mathw [Coke]: Ouch
19:07 TimToady no highlighter is going to highlight Perl correctly without understanding terms vs infixes
19:09 TimToady [Coke]: the original intent of viv is to translate p6 to p5 better than gimme5 does
19:10 [Coke] ... it's "six five", isn't it. :P
19:10 PerlJam [Coke]: Does it still highlight that way if you use "< 1" instead of "<1" ?
19:11 [Coke] aha! no.
19:11 [Coke] how sad that I will now format my code to make the highlighter happy. =-)
19:11 TimToady yes, well, it's cheating, and cheaters always get caught eventually
19:12 mathw although you should have spaces around your infix comparison operators, IMO
19:12 TimToady if it assumes " < " is an infix then what does it do with < a b c > ?
19:12 dbrock what would a .vim emitter do?
19:12 TimToady presumably write a Perl parser in vim macros  :)
19:13 PerlJam but it would only have to parse Perl in the same sense that PPI does
19:13 dbrock haha, I see
19:13 mathw Doesn't vim have a Perl interface? Can you use that to write syntax highlighters?
19:13 [Coke] TimToady: if I add spaces inside the <> on the line a few down, it seems to treat all the words as keywords.
19:14 TimToady yes, it now thinks that the inside of the <> is code
19:14 TimToady the only way to do it right is to actually parse the code left-to-right, not make guesses by lookahead
19:14 mathw Clearly what we really need to do is plug Rakudo into vim, and get that to do the parsing :)
19:15 PerlJam mathw: See Padre :)
19:15 TimToady well, but the rakudo parser isn't correct either
19:16 PerlJam it would be correct for the langauge that Coke is using perhaps
19:16 TimToady touché
19:18 [Coke] (yah, I'm actually writing nqp-rx, not p6)
19:18 rachelBROWN Does anyone know where to find cool perl one liners/obfuscated code?
19:18 [Coke] google for JAPH
19:18 [Coke] or "perl golf"
19:18 PerlJam rachelBROWN: You should probably ask #perl instead of #perl6
19:19 diakopter std.vim would be a few MB
19:19 mathw hmm and vim scripts don't run all that fast
19:19 [Coke] (ask in #perl) ... i wouldn't wish that on anyone. =-)
19:19 PerlJam diakopter: not after the optimization pass!  :)
19:19 rachelBROWN lol
19:20 TimToady Perl 6 tends to have different cool one-liners than Perl 5 does
19:20 PerlJam quite
19:20 TimToady rakudo: sub postfix:<!> ($n) { [*] 1..$n }; say 10!
19:20 p6eval rakudo 7ef386: 3628800␤
19:21 PerlJam TimToady: that's *exactly* the example that came to my mind. :)
19:22 TimToady rakudo: sub postfix:<!> ($n) { [*] 2..$n }; say 10!
19:22 p6eval rakudo 7ef386: 3628800␤
19:22 TimToady rakudo: sub postfix:<!> ($n) { [*] 2..$n }; say 1!
19:22 p6eval rakudo 7ef386: 1␤
19:22 diakopter rakudo: sub postfix:<!> ($n) { [*] 1..$n }; say 0!
19:22 p6eval rakudo 7ef386: 1␤
19:22 diakopter rakudo: sub postfix:<!> ($n) { [*] 2..$n }; say 0!
19:23 p6eval rakudo 7ef386: 1␤
19:23 PerlJam rakudo: say [*] ()
19:23 diakopter ok..
19:23 p6eval rakudo 7ef386: 1␤
19:23 PerlJam magic!  :)
19:23 TimToady rakudo: say [*]
19:23 PerlJam ([*]).say
19:23 p6eval rakudo 7ef386: say requires an argument at line 2, near " [*]"␤in Main (file src/gen_setting.pm, line 2593)␤
19:23 TimToady boo
19:24 PerlJam rakudo: ([*]).say
19:24 p6eval rakudo 7ef386: Syntax error at line 2, near "([*]).say"␤in Main (file <unknown>, line <unknown>)␤
19:24 diakopter rakudo: [*].say
19:24 TimToady rakudo: say ()
19:24 p6eval rakudo 7ef386: Use of uninitialized value␤␤
19:24 p6eval rakudo 7ef386: ␤
19:24 PerlJam rakudo: ([*]()).say
19:24 p6eval rakudo 7ef386: 1␤
19:24 PerlJam well, it's still magical  :)
19:24 TimToady rakudo: ([*]).say
19:24 p6eval rakudo 7ef386: Syntax error at line 2, near "([*]).say"␤in Main (file <unknown>, line <unknown>)␤
19:24 PerlJam std: ([*]).say
19:24 p6eval std : ok 00:01 106m␤
19:25 TimToady it's just a listop, and listops are allowed to have no args
19:25 TimToady so rakudo fail
19:25 TimToady ng: say [*]
19:25 p6eval ng 6ee78e:  ( no output )
19:25 PerlJam ng: say [*] 1..4
19:25 p6eval ng 6ee78e: Confused at line 1, near "say [*] 1."␤current instr.: 'perl6;HLL;Grammar;panic' pc 519 (src/stage0/HLL-s0.pir:336)␤
19:26 PerlJam oh, ng doesn't grok Ranges yet does it?
19:26 diakopter rakudo: (([*])).say()  # TimToady
19:26 TimToady ng: say [*] 1,2,3,4
19:26 p6eval rakudo 7ef386: Syntax error at line 2, near "(([*])).sa"␤in Main (file <unknown>, line <unknown>)␤
19:26 p6eval ng 6ee78e: Confused at line 1, near "say [*] 1,"␤current instr.: 'perl6;HLL;Grammar;panic' pc 519 (src/stage0/HLL-s0.pir:336)␤
19:26 diakopter rakudo: (([*])).say()
19:26 p6eval rakudo 7ef386: Syntax error at line 2, near "(([*])).sa"␤in Main (file <unknown>, line <unknown>)␤
19:26 diakopter meh
19:26 diakopter rakudo: (([*])).say
19:26 p6eval rakudo 7ef386: Syntax error at line 2, near "(([*])).sa"␤in Main (file <unknown>, line <unknown>)␤
19:27 PerlJam rakudo: ([*]+[][*]).say
19:27 p6eval rakudo 7ef386: 1␤
19:27 PerlJam *grin*
19:27 diakopter rakudo: ([*] ()).say
19:27 p6eval rakudo 7ef386: 1␤
19:27 TimToady rakudo: [*]1
19:27 p6eval rakudo 7ef386:  ( no output )
19:28 TimToady rakudo: say [*]1
19:28 p6eval rakudo 7ef386: 1␤
19:28 TimToady that's also wrong, space is required after a listop
19:28 PerlJam rakudo: ([*][][*]).say
19:28 TimToady or parens
19:28 colomon joined #perl6
19:28 p6eval rakudo 7ef386: ␤
19:28 TimToady or end of listop
19:28 PerlJam rakudo: ([*][*]).say
19:28 diakopter std: [*]1
19:28 p6eval rakudo 7ef386: Syntax error at line 2, near "([*][*]).s"␤in Main (file <unknown>, line <unknown>)␤
19:28 p6eval std : [31m===[0mSORRY![31m===[0m␤Two terms in a row at /tmp/YYsgFwv4VL line 1:␤------> [32m[*][33m⏏[31m1[0m␤    expecting any of:␤      POST␤   infix or meta-infix␤        infix stopper␤    postfix␤        postfix_prefix_meta_operator␤       prefix_circumfix_meta_operator__S_259reduce␤
19:28 p6eval ..prefix_postfix_meta_operator␤     …
19:29 TimToady std: [*](1) # fine
19:29 p6eval std : ok 00:01 105m␤
19:29 diakopter std: [*][]
19:29 p6eval std : ok 00:01 104m␤
19:29 TimToady std: [*] 1  # also fine
19:29 p6eval std : ok 00:01 105m␤
19:29 TimToady std: [*]+1  # also fine
19:29 p6eval std : ok 00:01 105m␤
19:30 TimToady should == 2
19:31 TimToady std: [*][*]  # okay, means ([*]).[*]
19:31 p6eval std : ok 00:01 105m␤
19:32 PerlJam rakudo: ([*].[*]).say
19:32 TimToady not very good style, of course
19:32 p6eval rakudo 7ef386: Method 'postcircumfix:[ ]' not found for invocant of class 'Failure'␤in Main (file src/gen_setting.pm, line 324)␤
19:32 dbrock why should [*]+1 == 2?
19:32 PerlJam dbrock: because 1+1 == 2
19:32 PerlJam dbrock: [*] == 1
19:32 TimToady rakudo: say [*]()
19:33 p6eval rakudo 7ef386: 1␤
19:33 dbrock ah, [*] is the product of nothing?
19:33 PerlJam right
19:33 TimToady correct
19:33 PerlJam ng: ([*].[*]).say
19:33 p6eval ng 6ee78e: No applicable candidates found to dispatch to for 'postcircumfix:<[ ]>'␤current instr.: '!postcircumfix:<[ ]>' pc 264447 (src/gen/core.pir:0)␤
19:33 dbrock why is +1 not a term there?
19:34 dbrock (sorry, I'm such a newb)
19:34 TimToady parser is not following STD at that point
19:35 TimToady a listop must have whitespace if it is to have any arguments
19:35 TimToady or be written as a function with ()
19:35 dbrock oh
19:36 TimToady so [*] followed by anything that isn't ( or ws is an argless listop
19:36 TimToady (in STD)
19:36 dbrock I see!
19:36 TimToady rakudo: my $x = 42; say$x
19:36 p6eval rakudo 7ef386: say requires an argument at line 2, near "$x"␤in Main (file src/gen_setting.pm, line 2593)␤
19:37 dbrock wow
19:37 TimToady std: my $x = 42; say$x
19:37 p6eval std : [31m===[0mSORRY![31m===[0m␤Two terms in a row at /tmp/lptS820qMT line 1:␤------> [32mmy $x = 42; say[33m⏏[31m$x[0m␤    expecting any of:␤ POST␤   argument list␤      infix or meta-infix␤      infix stopper␤    postfix␤        postfix_prefix_meta_operator␤       standard stopper␤
19:37 p6eval ..statement modifier loop␤    term…
19:37 TimToady rakudo message is Less Than Awesome
19:38 TimToady we should probably reduce that to a warning
19:39 TimToady then let a "two terms" error blow it up if necessary
19:40 TimToady as it currently stands, the 'say requires an argument' message comes out on most any parsefail following the say, which is suboptimal
19:41 * PerlJam is daunted by STD's panic()
19:43 PerlJam presumably all of the worries and highwater and highmess stuff can be fitted in to rakudo at some point though
19:45 hugh4life_ joined #perl6
19:48 ShaneC joined #perl6
19:50 [Coke] joined #perl6
19:52 ShaneC joined #perl6
19:52 hugh4life joined #perl6
19:52 xinming joined #perl6
19:52 hicx174 joined #perl6
19:52 tarbo2 joined #perl6
19:52 reid06 joined #perl6
19:52 athomason joined #perl6
19:52 ShaneC1 joined #perl6
19:53 dalek joined #perl6
19:55 REPLeffect_ joined #perl6
19:58 broquaint joined #perl6
19:59 brody joined #perl6
19:59 Guest12536 joined #perl6
19:59 BooK joined #perl6
20:00 gabiruh_ joined #perl6
20:04 stepnem joined #perl6
20:11 colomon joined #perl6
20:12 colomon PerlJam: (backlogging) You can use the series op in ng to get a range of ints: 1 ... 4.  But I think you'll find that [*] doesn't work in ng yet...
20:18 sjohnson afternoon guys
20:18 colomon o/
20:18 sjohnson whats the good word for today
20:19 colomon hmmmm....
20:19 PerlJam sjohnson: earlier it was "subjunctive"
20:19 TimToady now it's subjective
20:21 sjohnson i think i had a dream about Perl again
20:21 * PerlJam wonders if people dream about French or English or Japanese
20:22 TimToady they say you aren't fluent until you dream *in* a foreign language
20:22 sjohnson JP yeah if you are learning it on your own
20:22 sjohnson i had a dream just yesterday that I was speaking French to a girl form Quebec near my house in British Columbia
20:23 sjohnson I was speaking French*.
20:23 PerlJam except that dream was more about the girl I suspect :)
20:23 rindolf joined #perl6
20:23 sjohnson * = may not be proper French
20:24 pugs_svn r29325 | lwall++ | [STD] install NLTA warning about bare say/print
20:24 sjn joined #perl6
20:24 athomason joined #perl6
20:24 xinming joined #perl6
20:24 Patterner joined #perl6
20:24 IllvilJa joined #perl6
20:24 drbean joined #perl6
20:24 ascent_ joined #perl6
20:24 c1sung joined #perl6
20:24 huf joined #perl6
20:24 BinGOs joined #perl6
20:24 Woody2143 joined #perl6
20:24 eiro joined #perl6
20:26 sjohnson PerlJam: not to get too off topic.  but i've never been able to "have fun" in a "girl dream".. if you catch my drift
20:27 sjohnson let alone real life
20:27 sjohnson at least Perl puts out in my dreams !
20:28 PerlJam That's the first time I've seen a euphemism really make use of the word.
20:28 dbrock those kinds of dreams happen to me at the most random times
20:28 dbrock (and very rarely)
20:31 pugs_svn r29326 | lwall++ | [S32/IO] reduce bare say/print to warning
20:32 frettled oh no!  Perl 6 explicit nudity!
20:32 frettled That looks like a good title for a talk.
20:32 [Coke] bye
20:33 [Coke] whoops.
20:33 PerlJam frettled: just not for the perl 6 advent calendar
20:33 TimToady as opposed to a title for a good talk
20:33 frettled PerlJam: heh
20:33 TimToady std: print
20:33 p6eval std : ok 00:01 105m␤
20:34 frettled std: say print
20:34 p6eval std : ok 00:01 104m␤
20:34 TimToady hmm, p6eval doesn't give std's version anymore...
20:34 * moritz_ wonders if recent changes to 'make snap' made the version numbers go away
20:35 TimToady lunch &
20:35 dalek nqp-rx: 8ab2413 | pmichaud++ |  (3 files):
20:35 dalek nqp-rx: Start rewriting HLL::Compiler in NQP instead of PIR.
20:35 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/8ab24138893d0f7345e6cf159f9921187f6e33d3
20:42 sjohnson looks like [coke] thought this wasn't a Perl 6 channel ..  oops
20:43 PerlJam nah, Coke knows this is Perl 6 channel.
20:46 colomon joined #perl6
20:48 sjohnson so PerlJam, how's it going
20:49 sjohnson p6 Q:  is there any EZ integer casting methods, for example?
20:49 sjohnson instead of having to use sprintf?
20:50 mathw umm
20:50 frettled rakudo: say 10.5.int;
20:50 mathw what do you mean?
20:51 sjohnson uh oh.. rakudo slept in this morning?
20:51 PerlJam I think we broke rakudo earlier
20:51 sjohnson mathw: like PHP's  (int)(10.5) => 10  type thing
20:51 frettled sjohnson: 10.5.int => 10
20:52 sjohnson will it know what you want 10.5 and not just the .5 chunk?
20:52 frettled Yes, for that particular instance, it will.
20:52 frettled But for rats: (70/3).int
20:52 sjohnson frettled++ # smaat
20:53 sjohnson (my baby talk for smart)
20:53 PerlJam baby talk?
20:54 PerlJam I just thought you were from Boston  :)
20:55 sjohnson heheh
20:56 TimToady I don't think there's a .int method, but there should be a .Int one
20:56 sjohnson my brother asked me if you could do that sort of type casting in p5, but i don't know if you can without CPAN or sprintf.  PerlJam++, what do you think?
20:56 pmichaud joined #perl6
20:56 colomon joined #perl6
20:56 eiro joined #perl6
20:56 Woody2143 joined #perl6
20:56 BinGOs joined #perl6
20:56 huf joined #perl6
20:56 c1sung joined #perl6
20:56 ascent_ joined #perl6
20:56 drbean joined #perl6
20:56 IllvilJa joined #perl6
20:56 Patterner joined #perl6
20:56 xinming joined #perl6
20:56 athomason joined #perl6
20:56 sjn joined #perl6
20:56 BooK joined #perl6
20:56 Guest12536 joined #perl6
20:56 brody joined #perl6
20:56 broquaint joined #perl6
20:56 REPLeffect_ joined #perl6
20:56 dalek joined #perl6
20:56 ShaneC1 joined #perl6
20:56 reid06 joined #perl6
20:56 tarbo2 joined #perl6
20:56 hicx174 joined #perl6
20:56 hugh4life_ joined #perl6
20:56 stephenlb joined #perl6
20:56 rachelBROWN joined #perl6
20:56 hanekomu_ joined #perl6
20:56 abra1 joined #perl6
20:56 iblechbot joined #perl6
20:56 nihiliad joined #perl6
20:56 cdarroch joined #perl6
20:56 jferrero joined #perl6
20:56 Astoria` joined #perl6
20:56 Trey joined #perl6
20:56 mberends joined #perl6
20:56 orafu joined #perl6
20:56 PacoLinux joined #perl6
20:56 Lorn joined #perl6
20:56 pmurias joined #perl6
20:56 rodi joined #perl6
20:56 constant joined #perl6
20:56 Su-Shee joined #perl6
20:56 spinclad joined #perl6
20:56 yath joined #perl6
20:56 cotto joined #perl6
20:56 justatheory joined #perl6
20:56 rgrau_`` joined #perl6
20:56 synth joined #perl6
20:56 pjcj joined #perl6
20:56 RichiH joined #perl6
20:56 obra joined #perl6
20:56 Intensity joined #perl6
20:56 solarion joined #perl6
20:56 cotto_work joined #perl6
20:56 Guest69693 joined #perl6
20:56 dreadpir` joined #perl6
20:56 astrojp joined #perl6
20:56 kcwu joined #perl6
20:56 literal joined #perl6
20:56 lisppaste3 joined #perl6
20:56 PZt joined #perl6
20:56 szabgab joined #perl6
20:56 r0bby joined #perl6
20:56 IMeMyself joined #perl6
20:56 silug joined #perl6
20:56 gfldex joined #perl6
20:56 avar joined #perl6
20:56 [particle] joined #perl6
20:56 viklund_ joined #perl6
20:56 hanekomu joined #perl6
20:56 wolverian joined #perl6
20:56 KatrinaTheLamia joined #perl6
20:56 allbery_b joined #perl6
20:56 zamolxes joined #perl6
20:56 nbrown joined #perl6
20:56 tylerni7 joined #perl6
20:56 p6eval joined #perl6
20:56 Helios joined #perl6
20:56 yves joined #perl6
20:56 renormalist joined #perl6
20:56 betterworld joined #perl6
20:56 awwaiid joined #perl6
20:56 kst joined #perl6
20:56 krakan joined #perl6
20:56 araujo joined #perl6
20:56 tomaw_ joined #perl6
20:56 Khisanth joined #perl6
20:56 hcchien joined #perl6
20:56 sunnavy joined #perl6
20:56 idemal joined #perl6
20:56 avuserow joined #perl6
20:56 bloonix joined #perl6
20:56 omega__ joined #perl6
20:56 moritz_ joined #perl6
20:56 draxil42 joined #perl6
20:56 LionMadeOfLions joined #perl6
20:56 ruz joined #perl6
20:56 mathw joined #perl6
20:56 jimi_hendrix joined #perl6
20:56 buubot joined #perl6
20:56 mdxi joined #perl6
20:56 arthur-- joined #perl6
20:56 stuuf joined #perl6
20:56 Grrrr joined #perl6
20:56 |Jedai| joined #perl6
20:56 he_ joined #perl6
20:56 jeremiah joined #perl6
20:56 hirschnase joined #perl6
20:56 estrabd joined #perl6
20:56 pnu joined #perl6
20:56 dj_goku joined #perl6
20:56 Juerd joined #perl6
20:56 lestrrat joined #perl6
20:56 d^_^b joined #perl6
20:56 nothingmuch joined #perl6
20:56 dukelet0 joined #perl6
20:56 s1n joined #perl6
20:56 hugme joined #perl6
20:56 Cyrus joined #perl6
20:56 ilogger2 joined #perl6
20:56 astinus joined #perl6
20:56 akl joined #perl6
20:56 diakopter joined #perl6
20:56 mtve joined #perl6
20:56 sjohnson PerlJam: plz2look upwards
20:57 frettled TimToady: hmm, just rakudo that's confused, then, I suppose, since it allows it.
20:57 TimToady well, in theory, it would turn it into a native int
20:58 TimToady but generally you want .Int instead
20:58 frettled aha
20:59 TimToady std: print
20:59 p6eval std : Potential difficulties:␤  Unsupported use of bare 'print'; in Perl 6 please use .print if you want to print $_, or use an explicit argument at /tmp/kJjSv164Kk line 1:␤------> [32mprint[33m⏏[31m<EOL>[0m␤ok 00:01 105m␤
20:59 frettled sjohnson: in Perl 5, you'd write int(70/3)
21:01 sjohnson ahh
21:01 sjohnson should actually just try it myself before my brother whines about perl5
21:02 sjohnson cause that is what i would have done
21:02 sjohnson int(5.3434) etc
21:02 frettled yup
21:03 sjohnson he's a very capable C coder from the BBS days so i assumed he would have been smart enough to try that
21:03 frettled keep in mind that int(1.9) = 1 - I don't know what PHP does
21:03 sjohnson perl is teaching me life lessons
21:03 sjohnson frettled: php will do the same, though you must do  (int)(1.9)
21:04 sjohnson not quite sure why you need the (int) and not int()... other than runtime errors
21:04 sjohnson but it does the trick, and will return 1 and 2, frettled
21:05 TimToady interestingly, in Perl 6 you can say (Int)(1.9) and it means the same thing, and so does (((Int)))(1.9)
21:05 frettled nice
21:05 frettled sjohnson: I'm surprised that PHP chose to do it the same way as C does casting.  ;)
21:06 sjohnson frettled: php is a lot like C syntax, esp. when you have things like continue; and break;
21:06 TimToady rakudo: say (Int)(1.9)
21:06 sjohnson but that's about the extent of my C knowledge
21:06 p6eval rakudo 7ef386: invoke() not implemented in class 'Integer'␤in Main (file <unknown>, line <unknown>)␤
21:06 sjohnson TimToady: use PHP;
21:06 sjohnson ( `ー´)
21:06 frettled sjohnson: but not for:  test ? true-value : false-value
21:07 sjohnson i dont know if C does that, but it has that syntax in PHP
21:07 frettled sjohnson: for some reason, PHP chose a different precedence than any other C-like language I know :)
21:08 sjohnson one thing i find cool about PHP is it's $array[] = "goose" // push syntax
21:08 sjohnson that's about the only thing i like about PHP
21:08 PerlJam sjohnson: PHP is an excellent example of many things .... not to do  :)
21:08 frettled heh
21:08 TimToady rakudo: say (Rat)(42)
21:08 frettled but yeah, that push syntax is okay
21:08 p6eval rakudo 7ef386: invoke() not implemented in class 'Rat'␤in Main (file <unknown>, line <unknown>)␤
21:09 * mberends fesses up to losing the std: revision numbers
21:09 TimToady copied the directory?
21:09 pugs_svn r29327 | mberends++ | [src/perl6/Makefile] double the $ for snap Revision that make eated
21:09 TimToady ah
21:10 mberends make. you know.
21:10 TimToady I stared at that line for 5 minutes and didn't see it.
21:10 mberends it was a bit hubristic to replace grep+cut with perl
21:11 sjohnson is the [] syntax too radical for P6?  i suppose .push() is not too shabby
21:12 TimToady s/too radical/too irrational/
21:12 PerlJam yikes codinghorror experienced some real horror.
21:13 arnsholt Heh. Indeed
21:15 sjohnson TimToady has spoken.. i humbly accept his decision
21:16 PerlJam sjohnson: you can modify the grammar if you really want that syntax :)
21:16 sjohnson i won't want to go to Perl hell if i do that... might "go by the book"
21:17 sjohnson only thing i have decided to change is the .vimrc script
21:17 Tene sjohnson: all is fair if you predeclare.
21:17 TimToady on the other hand, @array <<== "goose" might do what you want
21:17 PerlJam TimToady: "But the feed ops are too many characters!"   :)
21:18 frettled Is there a Unicode shortcut for ==?
21:18 PerlJam see?!?
21:18 Tene None defined.
21:18 frettled I see a Quest.
21:18 Tene ⇐ might work for feed?
21:19 Tene .u ⇐
21:19 phenny U+21D0 LEFTWARDS DOUBLE ARROW (⇐)
21:20 japhb joined #perl6
21:20 frettled In my font, it's hard to tell that apart from ←
21:20 Tene .u ←
21:20 phenny U+2190 LEFTWARDS ARROW (←)
21:20 Tene ← ⇐
21:20 japhb seen masak
21:20 sjohnson rakudo: for (@TimToady) { do; }
21:20 p6eval rakudo 7ef386: Symbol '@TimToady' not predeclared in <anonymous> (/tmp/2V34otKldb:2)␤in Main (file <unknown>, line <unknown>)␤
21:20 Tene They're pretty different in mine.
21:21 japhb what's the seen syntax here?
21:21 Tene seen masak?
21:21 frettled japhb: @seen
21:21 Tene phenny: seen masak?
21:21 Tene @seen masak
21:21 japhb @seen masak
21:21 frettled Tene: But yeah, I'm still stuck in the nineties
21:21 japhb Bot got netsplit?
21:21 frettled I think it was @seen, anyway, if the bot is there.
21:21 mberends ENOBOTS
21:21 Tene std: for @*TimToady { do; }
21:21 p6eval std 29327: Undeclared routine:␤  'do' used at line 1␤ok 00:01 107m␤
21:21 frettled ,seen masak
21:22 Tene ¡seen masak!
21:22 frettled heh
21:22 Tene ⦃seen masak⦄
21:22 japhb Tene, and for that, you will have to repay us with fat arrow syntax in NQP-rx.
21:22 frettled japhb: you might just have to search in the IRC log instead, I suppose.
21:23 Tene but no, seriously, he quit 3:09 ago
21:23 japhb frettled, not a big deal, wanted to query him re: the installed-modules journal post
21:23 TimToady http://irclog.perlgeek.de/perl6/2009-12-11#i_1826654
21:23 Tene japhb: I was offering patches to anyone who bought me lunch in #parrot earlier today.
21:24 japhb Tene, I would buy you lunch if you came to my town.  :-)
21:24 Tene Which town are you in?
21:24 japhb Heck, I'd spring for dinner.
21:24 japhb Santa Rosa, CA, USA
21:25 japhb (Everyone stop aiming your ICBMs now.)
21:25 Tene I'm hoping to move to the bay area somewhere in the next year or so.
21:25 * japhb wonders weather the Nuclear War card game is still in print
21:26 japhb Tene, ah, excellent!
21:26 japhb South of here has more jobs, but I'm still happier up here than I was down there.
21:27 Tene japhb: most people only need at most one job.
21:27 japhb Tene, I have several.  I'm just only paid a salary for one of them.  ;-)
21:35 hicx174 joined #perl6
21:35 tarbo2 joined #perl6
21:35 reid06 joined #perl6
21:35 reid06` joined #perl6
21:35 eiro joined #perl6
21:36 Tene ... crap, mathw is planning to talk about traits.
21:36 Tene Oh well.
21:37 huf joined #perl6
21:37 Tene I don't want to do exceptions because exception handlers in master are LTA.
21:37 drbean joined #perl6
21:37 Psyche^ joined #perl6
21:38 xinming joined #perl6
21:39 Tene well, I'll think about it later.  AFK driving home.
21:39 hicx174 joined #perl6
21:39 tarbo2 joined #perl6
21:39 reid06 joined #perl6
21:39 c1sung joined #perl6
21:52 sjohnson sad say in netsplit history
21:52 sjohnson day*
21:53 drbean joined #perl6
21:58 pmichaud joined #perl6
21:58 ash_ joined #perl6
21:58 c1sung joined #perl6
21:58 tarbo2 joined #perl6
21:58 hicx174 joined #perl6
21:58 xinming joined #perl6
21:58 drbean joined #perl6
21:58 huf joined #perl6
21:58 colomon joined #perl6
21:58 BooK joined #perl6
21:58 Guest12536 joined #perl6
21:58 brody joined #perl6
21:58 broquaint joined #perl6
21:58 REPLeffect_ joined #perl6
21:58 dalek joined #perl6
21:58 ShaneC1 joined #perl6
21:58 hugh4life_ joined #perl6
21:58 stephenlb joined #perl6
21:58 rachelBROWN joined #perl6
21:58 abra1 joined #perl6
21:58 iblechbot joined #perl6
21:58 nihiliad joined #perl6
21:58 cdarroch joined #perl6
21:58 jferrero joined #perl6
21:58 Astoria` joined #perl6
21:58 Trey joined #perl6
21:58 mberends joined #perl6
21:58 orafu joined #perl6
21:58 PacoLinux joined #perl6
21:58 Lorn joined #perl6
21:58 pmurias joined #perl6
21:58 rodi joined #perl6
21:58 constant joined #perl6
21:58 Su-Shee joined #perl6
21:58 spinclad joined #perl6
21:58 yath joined #perl6
21:58 cotto joined #perl6
21:58 justatheory joined #perl6
21:58 rgrau_`` joined #perl6
21:58 synth joined #perl6
21:58 pjcj joined #perl6
21:58 RichiH joined #perl6
21:58 obra joined #perl6
21:58 Intensity joined #perl6
21:58 solarion joined #perl6
21:58 cotto_work joined #perl6
21:58 Guest69693 joined #perl6
21:58 dreadpir` joined #perl6
21:58 astrojp joined #perl6
21:58 kcwu joined #perl6
21:58 literal joined #perl6
21:58 lisppaste3 joined #perl6
21:58 PZt joined #perl6
21:58 szabgab joined #perl6
21:58 r0bby joined #perl6
21:58 IMeMyself joined #perl6
21:58 silug joined #perl6
21:58 gfldex joined #perl6
21:58 avar joined #perl6
21:58 [particle] joined #perl6
21:58 viklund_ joined #perl6
21:58 hanekomu joined #perl6
21:58 wolverian joined #perl6
21:58 KatrinaTheLamia joined #perl6
21:58 allbery_b joined #perl6
21:58 zamolxes joined #perl6
21:58 nbrown joined #perl6
21:58 tylerni7 joined #perl6
21:58 p6eval joined #perl6
21:58 Helios joined #perl6
21:58 yves joined #perl6
21:58 renormalist joined #perl6
21:58 betterworld joined #perl6
21:58 awwaiid joined #perl6
21:58 kst joined #perl6
21:58 krakan joined #perl6
21:58 araujo joined #perl6
21:58 tomaw_ joined #perl6
21:58 Khisanth joined #perl6
21:58 hcchien joined #perl6
21:58 sunnavy joined #perl6
21:58 idemal joined #perl6
21:58 avuserow joined #perl6
21:58 bloonix joined #perl6
21:58 omega__ joined #perl6
21:58 moritz_ joined #perl6
21:58 draxil42 joined #perl6
21:58 LionMadeOfLions joined #perl6
21:58 ruz joined #perl6
21:58 mathw joined #perl6
21:58 buubot joined #perl6
21:58 mdxi joined #perl6
21:58 arthur-- joined #perl6
21:58 stuuf joined #perl6
21:58 Grrrr joined #perl6
21:58 |Jedai| joined #perl6
21:58 pnu joined #perl6
21:58 dj_goku joined #perl6
21:58 Juerd joined #perl6
21:58 lestrrat joined #perl6
21:58 d^_^b joined #perl6
21:58 nothingmuch joined #perl6
21:58 dukelet0 joined #perl6
21:58 s1n joined #perl6
21:58 hugme joined #perl6
21:58 Cyrus joined #perl6
21:58 ilogger2 joined #perl6
21:58 astinus joined #perl6
21:58 akl joined #perl6
21:58 mtve joined #perl6
21:58 estrabd joined #perl6
21:58 hirschnase joined #perl6
21:58 jeremiah joined #perl6
21:58 diakopter joined #perl6
21:58 he_ joined #perl6
21:59 ash_ is it just me or did like 100 people get kicked and rejoin the irc channel?
22:00 Woody2143 joined #perl6
22:00 dbrock haha
22:00 Lorn_ joined #perl6
22:00 armagad joined #perl6
22:00 armagad freenode is having pain today
22:00 brrant joined #perl6
22:00 armagad left #perl6
22:00 wolverian joined #perl6
22:00 jan_ joined #perl6
22:00 ash_ just curious, whats the state on <== (feed operators)? the spec (especially S07) has a number of todo's marked in there regarding them
22:03 pnate joined #perl6
22:03 pugs_svn r29328 | pmurias++ | [mildew] add missing file
22:03 pugs_svn r29329 | pmurias++ | [mildew] port over module Foo {...}
22:03 sjohnson ash_: maybe someone lied and said perl 6 was released today
22:06 ash_ sjohnson: i am just wondering if anyone's working on that issue currently, thats all
22:07 pmurias std: our sub foo {};module Foo {our sub foo {}}
22:07 p6eval std 29327: [31m===[0mSORRY![31m===[0m␤Illegal redeclaration of routine 'GLOBAL::<&foo>' (from line 1) at /tmp/vFi4pzzVht line 1:␤------> [32mour sub foo {};module Foo {our sub foo[33m⏏[31m {}}[0m␤    expecting new name to be defined␤FAILED 00:01 106m␤
22:07 drbean_ joined #perl6
22:07 BinGOs joined #perl6
22:07 sjn joined #perl6
22:07 IllvilJa joined #perl6
22:07 pmurias shouldn't it be equivalent to
22:07 sjohnson ash_: there might be a freenode ircop type chan somewhere on this irc network
22:07 pmurias std: sub foo {};module Foo {sub foo {}}
22:07 sjohnson ims ure they know something is up by now
22:07 p6eval std 29327: ok 00:01 104m␤
22:08 dalek nqp-rx: 8010f63 | pmichaud++ | src/HLL/Compiler.pm:
22:08 dalek nqp-rx: Add src/HLL/Compiler.pm, omitted from previous commit.
22:08 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/8010f6355e411990e31d6d329994f3e24d6c76b9
22:10 TimToady pmurias: yes, something definitely wrong with STD there
22:11 sjohnson std: oiwejgeowijgweoigjeagoijewag@#@$E@f32
22:11 p6eval std 29327: [31m===[0mSORRY![31m===[0m␤Confused at /tmp/kPplX7Mb6g line 1:␤------> [32moiwejgeowijgweoigjeagoijewag[33m⏏[31m@#@$E@f32[0m␤    expecting any of:␤  POST␤   argument list␤      infix or meta-infix␤      infix stopper␤    postfix␤        postfix_prefix_meta_operator␤
22:11 p6eval ..standard stopper␤       statement modifier …
22:12 sjohnson TimToady: is your current .vimrc up publicly somewhere?
22:13 rodi left #perl6
22:13 TimToady no, still using the old one from pugs/util
22:14 sjohnson i was wondering if i could take a peek at it
22:20 ash_ is the std.pm located in the pugs repository?
22:20 ash_
22:20 rindolf rakudo: [1 .. 100].sum()
22:20 p6eval rakudo 7ef386: Method 'sum' not found for invocant of class 'Perl6Array'␤in Main (file src/gen_setting.pm, line 324)␤
22:20 rindolf rakudo: sum(1 .. 100)
22:20 p6eval rakudo 7ef386: Could not find non-existent sub sum␤in Main (file src/gen_setting.pm, line 324)␤
22:20 ash_ rakudo: say [+] 1..100;
22:20 p6eval rakudo 7ef386: 5050␤
22:21 mberends ash: STD.pm is in pugs/src/perl6
22:22 ash_ mberends++ thanks
22:23 mberends ash_: 169kB, happy reading ;-)
22:23 ash_ lol, more just want to test syntax without spamming irc
22:24 mberends ash_: run 'make' in that dir after installing Moose, YAML::Syck etc
22:25 ash_ will do, thanks for the tip
22:25 colomon Tene: ping
22:26 Tene yes?
22:27 Tene colomon: pong
22:27 colomon How's the Advent post coming along?
22:27 Tene still trying to work out what to talk about.
22:28 Tene I had a decent post about traits coming together, and then noticed that mathw is talking about traits.
22:28 colomon Do you want to run moritz_'s stashed post for day 12 and give yourself another day?
22:29 Tene colomon: I'm home from work and have no other obligations tonight, so I've got plenty of time.
22:29 colomon okay, then I'll let you get to work.  :)
22:29 Tene If all else fails, I'll just steal gather/take from moritz. ;)
22:30 colomon oooo, gather/take.  :)
22:30 Tene I was kind of considering talking about HLL interop.
22:30 Tene but that's more parrot than perl 6.
22:30 ash_ does gather/take work in rakudo?
22:30 Tene Yes.
22:31 rindolf Hi Tene
22:31 Tene I first implemented it in rakudo on September 13, 2008.
22:31 Tene hi rindolf.
22:31 Tene (I already had a git log up, and I was curious)
22:33 ash_ lol, was about to say Tene you must be very meticulous
22:34 ash_ but doing my @a = gather for 1..4 { take $_; }; say +@a; #=> 1, shouldn't that be 4?
22:34 vorner joined #perl6
22:35 ash_ rakudo: my @a = gather for 1..4 { take $_; }; say +@a;
22:35 p6eval rakudo 7ef386: 4␤
22:35 ash_ hmm
22:35 ash_ i am a lair
22:35 ash_ or a liar
22:35 ash_ ng: my @a = gather for 1..4 { take $_; }; say +@a;
22:35 p6eval ng 6ee78e: 1␤
22:36 ash_ there be my problem
22:37 rindolf I'm getting : <<< I'm missing some needed files from the Parrot installation:\n /usr/src/parrot >>> on Mandriva Cooker.
22:37 rindolf I used Configure.pl --gen-parrot.
22:38 mberends rindolf: check that you have subversion working (svn --version)
22:38 rindolf mberends: OK.
22:38 rindolf svn, version 1.6.6 (r40053)
22:39 mberends hmm
22:39 IllvilJa joined #perl6
22:41 dalek rakudo/ng: 77ed1d4 | tene++ | src/core/IO.pm:
22:41 dalek rakudo/ng: Minor fix for IO.get
22:41 dalek rakudo/ng: review: http://github.com/rakudo/rakudo/commit/77ed1d4a46df63453e55a5790ceb42cd6c3a1802
22:41 rindolf Hmmm... seems like the Parrot makefile kept thinking I'm still on perl-5.10.0
22:42 rindolf I deleted the Parrot dir.
22:42 jimi_hendrix joined #perl6
22:43 mberends rindolf: for the superstitious, 'make realclean && rm -rf parrot parrot_install' before --gen-parrot
22:52 hanekomu_ joined #perl6
22:58 Psyche^ joined #perl6
23:02 jlaire joined #perl6
23:02 athomason joined #perl6
23:02 am0c joined #perl6
23:02 slavik joined #perl6
23:11 Limbic_Region joined #perl6
23:11 Limbic_Region left #perl6
23:17 rindolf rakudo: say ([1..5] * 6)
23:17 p6eval rakudo 7ef386: 30␤
23:17 meppl joined #perl6
23:20 rindolf rakudo: ([[1,7],2,3,4,5] >>*<< [[100,7],200,300,400,500]).perl.say
23:20 p6eval rakudo 7ef386: [[100, 49], 400, 900, 1600, 2500]␤
23:25 pugs_svn r29330 | lwall++ | [STD] generalize say/print warning to anything a p5er might try that might be in p6
23:27 Wolfman2000 evening. Perl 6 stuff from me is kind of on hold while I deal with this: http://github.com/wolfman2000/pumpproedits/  If any of you guys want to contribute to this...well, PHP app, let me know.
23:29 rindolf Wolfman2000: Symfony, heh. That brings back memories.
23:30 Wolfman2000 I believe I know where I'll move my websites to. This host accepts Symfony apps (I called, they answered quickly)
23:31 Wolfman2000 anyway, semi afk: going full screen on my VM
23:36 TimTom joined #perl6
23:43 TimToady rakudo: ([[1,7],2,3,4,5] <<*>> [[100,7],200,300,400,500]).perl.say
23:43 p6eval rakudo 7ef386: [[100, 49], 400, 900, 1600, 2500]␤
23:43 TimToady it would appear that rakudo only knows the dwimmy semantics
23:44 TimToady ng: say +(1..4)
23:44 p6eval ng 77ed1d: Method 'Num' not found for invocant of class 'Range'␤current instr.: 'perl6;Mu;' pc -1 ((unknown file):-1)␤
23:45 TimToady ng: my @a = 1..4; say @a[0]
23:45 p6eval ng 77ed1d: sh: ./perl6: No such file or directory␤
23:45 Tene ng is still waiting on the lists refactor from pm.
23:46 TimToady std: say exp
23:46 p6eval std 29329: ok 00:01 106m␤
23:52 ash_ joined #perl6

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

Perl 6 | Reference Documentation | Rakudo