Camelia, the Perl 6 bug

IRC log for #perl6, 2009-09-01

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs

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

All times shown according to UTC.

Time Nick Message
00:04 KatrinaTheLamia hmm... how are OpenGL bindings in Perl 6? Because I got a joke project that I am sure everybody would easily get behind.
00:04 KatrinaTheLamia a Duke Nukem Forever fan game in Perl 6 ^.^ lol
00:04 wayland76 ..combined with e17? :)
00:05 KatrinaTheLamia wayland76: hmm... we may be able to work something here.
00:05 literal running on GNU Hurd
00:05 KatrinaTheLamia LMFAO!!!!!!
00:06 KatrinaTheLamia alright we have our work cut out for us people ^.^
00:08 wayland76 Maybe we could program some parts in ALGOL :)
00:08 Juerd Good night, brightly coloured butterfly people.
00:08 wayland76 Good morning :)
00:08 KatrinaTheLamia damn it... does this mean I'll need to do up a Perl 6 float in the next pride parade >.>
00:09 * wayland76 carefully restrains from mentioning "whatever floats your boat"
00:10 pugs_svn r28151 | lwall++ | [S02,S06] make 'is context' implicit on $*foo variable declarations
00:10 pugs_svn r28151 | orthogonalize readonly semantics to rely on ::= initialization
00:12 japhb KatrinaTheLamia, the OpenGL bindings are passable for simple stuff.  The bigger problem is that Rakudo is fairly slow right now, so to get any decent speed for complex stuff (like particle systems), you need to do some inline PIR here and there.  But if you're just calling a few display lists each frame, you should be fine.
00:13 sjohnson 1hi
00:13 wayland76 2hi
00:14 sjohnson heh
00:14 KatrinaTheLamia 3error
00:14 sjohnson ++hi
00:14 colomon rakudo: my Num $t = 434.3; say int($t);
00:14 p6eval rakudo e00587:  ( no output )
00:15 KatrinaTheLamia japhb: I was only half serious. I am just thinking of some rather Discordia style jokes to apply to Perl 6 ^.^
00:21 colomon Hi all.  I've tracked down my Temporal.t hang, and it seems to be occurring at "$t = int($t / 60); # $t is now epoch minutes" in the test_gmtime function.  Does that ring any bells for anyone?
00:21 colomon Where is int()?
00:23 TimToady really should be Int()
00:23 TimToady since int is a native type
00:24 colomon int lower-case is all over the Temporal.t test code./
00:25 kst joined #perl6
00:25 wayland76 Well, I'd guess that was written by autarch
00:25 wayland76 and I'm not sure how good his p6 skills are
00:27 alester joined #perl6
00:28 wayland76 (I'm only guessing that, but that's because he dropped by p6 and did a bunch of the Temporal stuff for us, thanks to his relevant expertise from P5)
00:28 colomon What does int() do at the moment?  Is it just a misspelled Int()?
00:29 TimToady it would coerce to a native type int
00:30 colomon rakudo: say time.int.WHAT
00:30 p6eval rakudo e00587:  ( no output )
00:30 TimToady but in the case above, you're probably running into the fact that we just redefine Int / Int to return Rat
00:31 colomon Yes, that's the problem, but I don't understand why: $t is supposed to be a Num.
00:31 TimToady you probably want $t div= 60
00:32 TimToady though that won't work if $t is Num
00:33 colomon Yeah, that appears to be the issue -- sometimes it's a "real" Num, and sometimes it's an int being treated as a Num.  Or something like that.
00:34 TimToady what does / 60.0 do?
00:34 colomon Oh, I've got it.
00:35 colomon $t = int(int($t) div 60) works just fine, and makes all tests pass.
00:35 colomon rakudo: my $t = 36.5; say int($t);
00:35 p6eval rakudo e00587:  ( no output )
00:36 colomon rakudo: my $t = 36.5; say Int($t);
00:36 p6eval rakudo e00587:  ( no output )
00:36 colomon :O
00:36 TimToady NYI
00:37 TimToady invoke() not implemented in class 'Integer'
00:37 TimToady so one of those parrot impedance mismatches
00:37 TimToady I suspect
00:37 SmokeMachine joined #perl6
00:41 colomon TimToady++
00:52 japhb joined #perl6
00:53 pmichaud We don't have a good way to implement postcircumfix:<( )> on the builtin types at the moment.
00:54 pmichaud that makes things difficult for Int($x), Num($x), etc.
00:55 pmichaud Also, the specification doesn't really provide much guidance about how we map the postcircumfix:<( )> to constructors.
00:56 TimToady somehow it always ends up my fault.  :)
00:57 pmichaud :)
00:57 pmichaud there's a fine line between "blame" and "credit" :)
00:59 FCO joined #perl6
01:00 pmichaud going from what I read in S13:200...
01:00 pmichaud if someone writes   Dog($spot)
01:00 pmichaud and there's no postcircumfix:<( )> defined for the Dog class
01:00 pmichaud then it defaults to Dog.new($spot)
01:00 pmichaud and so unless there's been a single-argument version of Dog.new defined, it would fail to bind.
01:00 TimToady which, of course, is nonsense
01:01 pmichaud S13 is nonsense, or what I'm writing is nonsense?  ;-)
01:01 TimToady I don't see any substitute for someone writing the body of the conversion
01:01 pmichaud right
01:01 TimToady to at least turn it into .new(value => $spot)
01:01 pmichaud okay, that at least helps resolve my difficulty a bit
01:01 TimToady see above for who to blame :)
01:02 pmichaud well, the fallback would seemingly work if someone defined Dog.new($x), though, without needing to also define the postcircumfix:<( )> method as well.
01:02 pmichaud that would seem useful.
01:03 TimToady one would maybe like to get Array.new(1,2,3) to fall out of it somehow too
01:03 pmichaud hmmm
01:04 pmichaud well, since postcircumfix:<( )> grabs a capture, it could interpolate that capture to .new
01:04 pmichaud so that  XYZ(1,2,3)  falls back to   XYZ.new(1,2,3)
01:04 TimToady but it implies enough introspection into to representation to get a list of storage locations
01:04 TimToady s/to/the/
01:04 pmichaud oh, I think that someone still has to write the .new
01:05 pmichaud (to handle the positional forms of .new)
01:05 pmichaud instead of trying to auto-generate it
01:05 pmichaud so if  Array has    method new (*@values)  { ... }    then perhaps Array(1,2,3)  ends up dtrt
01:06 TimToady well, if one could introspect all the round holes, one could *attempt* to shove square pegs in, but it wouldn't work a lot of the time
01:06 TimToady but certainly we can go for explicit until we run into combinatorics
01:07 kst joined #perl6
01:07 pmichaud on a similar note,   should there be a   Rat.new(Num)  defined, that builds a Rat from a numeric like  1.23?
01:08 TimToady I think .new guarantees a new object, whereas Rat(Num) merely guarantees that what is returned does Rat
01:08 TimToady for some handwavey definition of Rat and Num
01:08 pmichaud oops
01:08 pmichaud I guess I should've asked about Rat.Num(...)
01:08 TimToady maybe not specifically for those types
01:08 pmichaud oops
01:08 pmichaud I guess I should've asked about Num.Rat(...)
01:09 pmichaud (argggh :-)
01:09 TimToady 1.23.Rat should presumably be made to work
01:09 pmichaud sure
01:09 TimToady same as Rat(1.23)
01:09 pmichaud and end up with 123/100 or something like that
01:10 TimToady well, I'm inclined to think that 1.23 should bias towards 123/100 to begin with
01:11 TimToady and the coercion to Num be facilitated where necessary
01:11 pmichaud That's reasonable also, although not currently speced
01:11 TimToady it's the way I've been inclining this past week :)
01:12 TimToady I hate throwing away precision based on a false assumption
01:12 TimToady I actually had the spec change edited in, and backed it out till I thought more about MMD
01:13 s1n pmichaud: which hp do you have? i was looking at a mini
01:13 TimToady possible that Num comprises both Rat and Flt (and Fix?)
01:13 pmichaud I have the expensive HP -- Elitebook 2530p
01:13 pmichaud Wonderful machine.  Not cheap.
01:14 TimToady or Real can pun either to Rat or Num, looking at it a different way
01:15 lisppaste3 colomon pasted "spectest failure" at http://paste.lisp.org/display/86335
01:15 colomon Does that error look familiar to anyone?
01:15 colomon I vaguely remember someone mentioning it today?
01:16 s1n i got approval to bring another laptop to work, hp have decent linux support (mini 1120) ?
01:16 s1n and does rakudo compile reasonably quick with only 1 gig of memory?
01:17 pmichaud I compiled Rakudo in a virtual machine with 768M without too much difficulty.  (On a 5-year old laptop to boot.)
01:17 pmichaud Still, I'm not sure how quick a Mini would be at compiling tasks; I think they can be a little on the slow side.
01:18 colomon Ah, it's the broken $_ % * thing.
01:23 s1n pmichaud: btw, did you read my scrollback from yesterday to you?
01:24 pmichaud s1n: didn't see it yet
01:28 s1n pmichaud: http://irclog.perlgeek.de/​perl6/2009-08-31#i_1447266
01:30 SmokeMachine joined #perl6
01:31 sparc joined #perl6
01:32 sparc joined #perl6
01:42 TimToady chow &
01:50 nbrown joined #perl6
01:51 molaf_x joined #perl6
01:54 rhr_ joined #perl6
01:56 agentzh joined #perl6
02:25 SmokeMachine joined #perl6
02:32 kst joined #perl6
02:36 agentzh joined #perl6
02:36 sri_kraih joined #perl6
02:36 xinming joined #perl6
02:36 jan_ joined #perl6
02:36 ewilhelm joined #perl6
02:36 breinbaas joined #perl6
02:36 lisppaste3 joined #perl6
02:36 xalbo joined #perl6
02:36 nsh joined #perl6
02:45 s1n hmm, i don't have +o anymore?
02:50 meppl joined #perl6
02:50 pugs_svn r28152 | lwall++ | [STD] change to new definitions for contextuals and readonly binding
02:51 s1n yay :)
02:57 zaphar_ps joined #perl6
02:57 zaphar_ps hello
02:57 zaphar_ps are there any yaml perl6 libraries or grammars out there yet?
03:01 TimTom joined #perl6
03:03 xinming_ joined #perl6
03:05 TimTom_ joined #perl6
03:18 asciiville joined #perl6
03:18 kst joined #perl6
03:20 TimTom rakudo: say qw(foo bar baz)
03:20 p6eval rakudo e00587: OUTPUT«Could not find non-existent sub baz␤»
03:20 TimTom ... okay, so it's not just my installation.  Did the meaning of qw change?
03:20 donaldh joined #perl6
03:22 asciiville rakudo: say qw(foo bar baz);
03:22 p6eval rakudo e00587: OUTPUT«Could not find non-existent sub baz␤»
03:22 TimTom rakudo: say <foo bar baz>
03:22 TimTom still works as normal
03:22 p6eval rakudo e00587: OUTPUT«foobarbaz␤»
03:22 asciiville :(
03:22 TimTom pugs: say qw(foo bar baz)
03:22 p6eval pugs: OUTPUT«*** No such subroutine: "&qw"␤    at /tmp/yeWNvXh2oo line 1, column 5 - line 2, column 1␤»
03:23 TimTom Well at least it's in good company I suppose :)
03:23 asciiville rakudo: <foo bar baz>.say
03:23 p6eval rakudo e00587: OUTPUT«foobarbaz␤»
03:24 asciiville :)
03:25 asciiville I still haven't learned to keep a space between 'if' and '(' when coding in rakudo
03:26 TimToady better to just drop the parens
03:26 asciiville ah!
03:30 asciiville proving order of precendence with symbols is overrated :)
03:31 TimTom Well unless you write 5 * 5+5 and don't get what your implicit spacing would represent
03:32 asciiville but corporate didn't give us enough time to code it right in the first place
03:32 TimTom Well that's why you're programming in perl.  It lets you work around silly time constraints
03:33 asciiville you got that right!
03:35 TimTom Yay.  Array autovivication works, although I still can't seem to give it a strict type.  I can remove my sad face comment from my test program
03:39 asciiville I have a maybe not Rakudo question: If I have a <program>.pir that is loaded into Rakudo with a use statement, is it theoretically possible to have it compiled into PBC and live in Parrot land and still be accessible to Rakudo?
03:43 pugs_svn r28153 | lwall++ | [STD] only default package declarations to 'our'
03:45 TimToady std: say qw(foo bar baz)
03:45 p6eval std 28152:  ( no output )
03:45 TimToady ,,
03:45 TimToady std: say qw(foo bar baz)
03:45 p6eval std 28152: OUTPUT«Undeclared routines:␤  bar used at 1 ␤   baz used at 1 ␤   foo used at 1 ␤   qw used at 1 ␤ok 00:02 37m␤»
03:46 TimTom Looks like progress to me.  We get better errors now.  Even if they're wrong
03:46 TimToady no, they're right
03:46 TimToady foo() is always a function call in p6
03:46 TimToady even if foo is otherwise a keyword
03:46 TimTom So is qw no longer quote words?
03:46 TimToady it does, just don't use parens
03:47 TimToady rakudo: say qw[foo bar baz]
03:47 TimTom ah, okay.  makes sens
03:47 p6eval rakudo e00587: OUTPUT«foobarbaz␤»
03:47 TimToady or leave a space
03:47 TimToady rakudo: qw (foo bar baz)
03:47 p6eval rakudo e00587:  ( no output )
03:47 TimToady std: if(42) { say 'hi' }
03:47 p6eval std 28152: OUTPUT«[31m===[0mSORRY![31m===[0m␤if() interpreted as function call at line 1 ; please use whitespace instead of parens␤Unexpected block in infix position (two terms in a row) at /tmp/FdROm0hjMy line 1:␤------> [32mif(42) [33m⏏[31m{ say 'hi' }[0m␤    expecting any of:␤
03:47 p6eval ..bracketed i…
03:48 TimToady eventually rakudo will get error messages like that
03:49 TimTom I have another problem I'm encountering with multi-dimensional array assignment, but I haven't managed to reproduce it in a one liner yet.
03:50 asciiville rakudo: {{},{}}.say
03:50 p6eval rakudo e00587: OUTPUT«_block50␤»
03:50 Eevee_ rakudo: ((<H l o> «~» <e l ,>, [~] <! d l r o w>.reverse).join ' ').say
03:50 TimToady rakudo doesn't autovivify correctly yet
03:50 p6eval rakudo e00587: OUTPUT«Statement not terminated properly at line 2, near "' ').say"␤in Main (src/gen_setting.pm:3454)␤»
03:50 asciiville ok. it's consistent with my local late model rakudo
03:50 Eevee_ rakudo: ((<H l o> «~» <e l ,>, [~] <! d l r o w>.reverse).join: ' ').say
03:51 p6eval rakudo e00587: OUTPUT«He ll o, world!␤»
03:51 Eevee_ oh whoops
03:51 TimTom Ah.  Okay, It was looking like it was working.  I actually reverted my code to the old version that had a loop that assigned arrays to it, but it doesn't help
03:51 Eevee_ rakudo: (([~] <H l o> «~» <e l ,>, <! d l r o w>.reverse).join: ' ').say
03:51 p6eval rakudo e00587: OUTPUT«Hello,world!␤»
03:52 mepplock joined #perl6
03:52 TimTom there we go
03:53 TimToady rakudo's errors would be much improved if we merely s/Statement not terminated properly/Confused/
03:53 Eevee_ 20:51 < Eevee_> rakudo: ((map { [~] $_ }: <H l o> «~» <e l ,>, <! d l r o w>.reverse).join: ' ').say
03:53 Eevee_ whoops
03:53 Eevee_ rakudo: ((map { [~] $_ }: <H l o> «~» <e l ,>, <! d l r o w>.reverse).join: ' ').say
03:53 p6eval rakudo e00587: OUTPUT«Statement not terminated properly at line 2, near ": <H l o> "␤in Main (src/gen_setting.pm:3454)␤»
03:53 TimTom rakudo: { my Array @ints; @ints[0] = (); @ints[0][0] = 0; say @ints; }
03:53 p6eval rakudo e00587: OUTPUT«Method 'postcircumfix:[ ]' not found for invocant of class 'Failure'␤»
03:53 TimToady std: ((map { [~] $_ }: <H l o> «~» <e l ,>, <! d l r o w>.reverse).join: ' ').say
03:53 p6eval std 28152: OUTPUT«ok 00:03 42m␤»
03:54 Eevee_ rakudo: ((<H l o> «~» <e l ,>, <! d l r o w>.reverse).map: { [~] $_ }.join: ' ').say
03:54 p6eval rakudo e00587: OUTPUT«No applicable candidates found to dispatch to for 'map'␤in Main (/tmp/IG3W2r8tXR:2)␤»
03:54 Eevee_ haha didn't expect that to work
03:54 TimTom std: { my Array @ints; @ints[0] = (); @ints[0][0] = 0; say @ints; }
03:54 p6eval std 28152: OUTPUT«ok 00:03 38m␤»
03:54 TimTom ... I suppose that didn't prove anything since it was a runtime error...
03:55 TimToady nod
03:55 molaf joined #perl6
03:55 TimTom I do know that block of code worked about 2 months ago
03:55 Eevee_ how do I get a reference to a reduce operation?
03:56 TimToady in theory, prefix:<[op]>
03:56 asciiville Maybe Rakudo errors can take on an Oracle database model and just spit out a code: ora-00600 doesn't say much but we know its very bad. :)
03:56 Eevee_ does that actually work in rakudo?
03:56 Eevee_ well let's find out
03:56 Eevee_ rakudo: ((<H l o> «~» <e l ,>, <! d l r o w>.reverse).map(prefix:<[~]>).join: ' ').say
03:57 p6eval rakudo e00587: OUTPUT«Statement not terminated properly at line 2, near "(prefix:<["␤in Main (src/gen_setting.pm:3454)␤»
03:57 Eevee_ rakudo: prefix<[~]>
03:57 Eevee_ er
03:57 p6eval rakudo e00587: OUTPUT«Could not find non-existent sub prefix␤»
03:57 Eevee_ rakudo: prefix:<[~]>
03:57 p6eval rakudo e00587: OUTPUT«Statement not terminated properly at line 2, near ":<[~]>"␤in Main (src/gen_setting.pm:3454)␤»
03:57 TimToady would have to be &prefix:<[~]>
03:57 carlin joined #perl6
03:58 Eevee_ rakudo: ((<H l o> «~» <e l ,>, <! d l r o w>.reverse).map({ [~] $_ }).join: ' ').say
03:58 p6eval rakudo e00587: OUTPUT«He ll o, w o r l d !␤»
03:58 alester joined #perl6
03:58 Eevee_ haha I did the same thing again.  oh well
04:00 KatrinaTheLamia «~» <-- um... I don't need to type in those symbols to use Perl 6, do I? I mean, I have no idea where two of them are on my keyboard
04:00 Eevee_ haha no, <<~>> works just as well
04:00 Eevee_ but it's ugly imo
04:00 TimToady in vim you can say ^K<<
04:00 TimToady dunno about emacs
04:00 Eevee_ (compose key)++
04:00 Eevee_ hm, I wonder
04:00 TimToady that too
04:00 TimToady it's what I use
04:01 Eevee_ rakudo: (<1 2 3> ¥ <4 5 6>).say
04:01 p6eval rakudo e00587: OUTPUT«Statement not terminated properly at line 2, near "\x{a5} <4 5 6>)"␤in Main (src/gen_setting.pm:3454)␤»
04:01 TimToady and I'm even one of those dense USians
04:01 Eevee_ aw
04:01 TimToady is now Z
04:01 Eevee_ I know, just wondered if the old op was still valid
04:01 TimToady nope
04:01 Eevee_ I heartily support unicode operators
04:01 Eevee_ $x ♥ 5
04:02 KatrinaTheLamia Eevee_: oh, I would too... if there were a standard way to insert them, that I could explain to people to use
04:02 TimTom emacs is C-x 8 < and C-x 8 >
04:03 Eevee_ KatrinaTheLamia: there's always ctrl-shift-u
04:03 Eevee_ or copy-paste from wikipedia
04:03 KatrinaTheLamia TimTom now explain how that works exactly... what it does.
04:03 KatrinaTheLamia Eevee_: so I could do ^+shift+u no matter where I am... and it would do what exactly
04:04 Eevee_ KatrinaTheLamia: ctrl-shift-u plus four hex characters inserts that unicode codepoint
04:04 KatrinaTheLamia and copy and pasting from wikipedia doesn't help me really... as my clip board can only hold one item on most of my setups
04:04 TimToady but then you have to know the raw codepoint in hex
04:04 KatrinaTheLamia Eevee_: not universally...
04:04 Eevee_ err right.  well in gnome it does
04:05 KatrinaTheLamia left #perl6
04:05 Eevee_ TimToady: that's what http://ian-albert.com/misc/unichart.php is for
04:05 KatrinaTheLamia joined #perl6
04:05 TimToady a compose key seems like the most universal thing currently
04:05 TimToady well, I just use a program to grep the unicode tables, myself
04:05 KatrinaTheLamia yeah... ^+shift+u seems to crash the tab I was chatting with
04:05 Eevee_ does windows support compose key?  I'm vaguely aware it supports dead keys
04:05 TimTom hmm... the emacs bindings are actually fairly intuitive.  Who would have thought.  You can even press C-x 8 C-h for a listing
04:06 KatrinaTheLamia and I am using XFCE for my DE... which is close enough, that it should work if "it works all over gnome"
04:06 Eevee_ TimToady: actually I have a firefox bookmark keyword for searching unicode
04:06 kst joined #perl6
04:06 KatrinaTheLamia prolly a better solution would need to be part of freedesktop, before I'd consider it more >.>
04:06 TimToady :digraph for vim's
04:07 Eevee_ KatrinaTheLamia: the compose key is part of X
04:07 Eevee_ and you can define your own compositions
04:07 TimToady I've never had luck defining my own, but the built-in compose sequences are handy
04:08 Eevee_ TimToady: are you using scim?
04:08 TimToady »ö«
04:08 TimToady yes, but I don't think that matters for this
04:08 KatrinaTheLamia um... which key on the keyboard is the "compose" key? I mean I pressed ^+shift+u and it produced and underline u and crashed the tab I was chatting in.
04:08 Eevee_ it does
04:08 Eevee_ scim has its own compose table and ignores .Xcompose apparently
04:08 Eevee_ found this out recently, it was ignoring mine too
04:08 KatrinaTheLamia like my chat client still operates.. just had to close that tab >.>
04:08 TimToady well, that might explain why I couldn't change it :)
04:09 Eevee_ had to switch to uim, which is slightly more awkward  (anthy toolbar doesn't seem to autohide)
04:09 Eevee_ KatrinaTheLamia: you might have to pick one yourself.  right alt is the default I think?
04:09 TimToady I use my right Menu key
04:10 Eevee_ I have right alt as compose and right super as third level chooser for historical reasons
04:10 TimToady used to use right Alt on a machine without a Menu key
04:10 Eevee_ (i.e., there was no compose sequence for × and I haven't fixed that yet)
04:10 * KatrinaTheLamia checks
04:10 KatrinaTheLamia okay this keyboard _does_ have a right alt
04:11 Eevee_ it might be dependent on the keyboard or layout, or I might be totally wrong
04:11 Eevee_ and I have no idea how you'd pick such a key in xfce
04:12 KatrinaTheLamia so... then how do you know it is a feature of X?
04:12 dalek rakudo: 9bcba63 | pmichaud++ | src/parser/grammar.pg:
04:12 dalek rakudo: "Statement not terminated properly" --> "Confused"  # TimToady++
04:12 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/9​bcba631a4c13f3608cb8657564612b96f96ad1d
04:12 Eevee_ the interwebs told me so
04:13 Eevee_ also custom compose sequences are defined in ~/.Xcompose
04:13 Eevee_ and the default list is somewhere in X shared files
04:14 KatrinaTheLamia you do realise, that trying to tell people how to do this will lead only to two things: 1) Completely inconsistant code. and 2) People who think Perl 6 is needlessly complicated, and have no desire to code it, right?
04:14 Eevee_ that's probably why ¥ is now Z
04:14 TimToady which is why we always have an ASCII story
04:15 TimToady even if it's ugly
04:15 KatrinaTheLamia yeah... how about just a not ugly ASCII story?
04:15 Eevee_ perl 6 has approximately eight trillion operators
04:15 TimTom Besides, it's a good early check to make sure the parser enjoys unicode symbols
04:15 Eevee_ there are only so many pretty combinations of keyboard symbols
04:15 KatrinaTheLamia Eevee_: lies
04:16 KatrinaTheLamia there are not eight trillion operators
04:16 Eevee_ perhaps we need APL on Parrt
04:16 Eevee_ very approximately
04:16 KatrinaTheLamia unless it has drastically updated since the last time the periodic table of operators has been made
04:16 asciiville maybe eight trillion combinations of operators?
04:16 KatrinaTheLamia also what could  you possibly do with eight trillion operators?
04:17 TimTom 8 trillion things
04:17 KatrinaTheLamia okay... how many words does the average person have in their vocabulary... normally about 2500. Now what happens when they try to read a word they have no clue as to what it is.
04:17 TimToady std: [>>RX!%<<]()
04:17 p6eval std 28153: OUTPUT«ok 00:02 39m␤»
04:18 KatrinaTheLamia TimToady: that only makes Intercal look like a more sane language than Perl6
04:18 Eevee_ wait wait you can reduce with hyperoperator?
04:18 Eevee_ well
04:18 TimToady that's one of our goals :)
04:18 Eevee_ I guess that makes sense
04:18 Eevee_ that's awesome
04:19 asciiville hyperoperator needs and acronym
04:19 KatrinaTheLamia yeah... I thought you'd be addressing the learning curve here... not forcing people to make jephs to do a blood program
04:19 TimTom They are, they just have spiffy features for those willing to learn the extra amount
04:20 TimTom you can always just stick to less compact representations of code
04:20 TimToady and people will just cargo-cult the rest
04:20 KatrinaTheLamia TimTom: just applying occam's chainsaw here... how often, in production code, does the more spiffy versions of a language get used.
04:20 Eevee_ in my experience it tends to be libraries that like to use spiffy features
04:20 TimToady "does get used" is the present.  We can't say how often "will get used" because we don't know yet
04:21 KatrinaTheLamia TimTom: I mean, if I had to show a boss one program in Python and another in Perl 6, doing the eight trillion operator thing.. which is going to get the go ahead?
04:21 TimTom If it's me... depends on whether or not someone besides me is expected to see it
04:21 Eevee_ KatrinaTheLamia: depends, are you using nested list comprehensions and metaclasses in your python?
04:21 KatrinaTheLamia Eevee_: standard PEP-8 Python.
04:22 Eevee_ so "if you had to show your boss readable code and unreadable code"
04:22 KatrinaTheLamia in short yes
04:22 jrtayloriv KatrinaTheLamia, show your boss something which uses less idiomatic Perl 6, and the Perl 6 would probably be as readable and more concise.
04:22 asciiville it may not matter if your boss only did COBOL
04:22 Eevee_ imo reduction operators and hyperoperators are a good thing in that they let me express an idea succinctly without translating it into less intuitive procedural code
04:23 Eevee_ they are nestable, sure, but that's just because perl tends to not place arbitrary restrictions
04:23 TimToady we expect programmers to exercise their discretion, and we provide the tools to write very readable code
04:23 Eevee_ I don't think most people would want to use [«op»] in production code
04:23 TimToady we also provide the tools to nuke your feet off
04:23 Eevee_ but [+] <1 2 3> is reasonable
04:23 Eevee_ and better communicates how I actually think about the problem
04:23 Eevee_ "add up all this stuff"
04:24 KatrinaTheLamia I dunno, it is all lovely and  all... but if I cannot use it in production code... why am I using it.
04:24 asciiville say [+] < 1 2 3>
04:24 KatrinaTheLamia Eevee_: your [+] <1 2 3> example is a tangent, as it is plain ASCII
04:24 asciiville carp
04:24 TimToady because the parts you *do* use are still more expressive than Python
04:24 Eevee_ KatrinaTheLamia: err but there are no unicode-only operators
04:24 asciiville rakudo: say [+] <1 2 3>
04:24 p6eval rakudo e00587: OUTPUT«6␤»
04:24 TimTom You can use it in production, you just have to know that your audience will understand
04:25 Eevee_ KatrinaTheLamia: <<op>> ≡ «op»
04:25 Eevee_ I just write the latter because I think it's more readable and obscures the operator far less
04:25 jrtayloriv KatrinaTheLamia, You seem to be assuming that you will be writing production code in Perl 6 for people that don't understand Perl 6.
04:25 jrtayloriv And that don't make no sense at all.
04:25 KatrinaTheLamia Eevee_: yeah, and I am saying: there are ways to make it readable and less obscure, without going into unicode
04:26 Eevee_ KatrinaTheLamia: like what?
04:26 KatrinaTheLamia Eevee_: well, perhaps we need to go over that as we are designing this further.
04:27 Eevee_ (incidentally, double angle brackets are also in iso 8859-1)
04:27 TimToady most of these things do have wordy variants if you want them
04:27 KatrinaTheLamia Eevee_: simply half assing the ASCII version (for no apparent reason), simply because UNICODE is available, is not the way to go
04:27 TimToady reduce, map, etc
04:27 KatrinaTheLamia jrtayloriv: what I am suggesting is that we make it so that Perl 6 is easier to understand for people who don't understand Perl 6... making them desire to learn it more
04:28 KatrinaTheLamia TimToady: ah, there we go
04:28 TimToady how do you define "half assing"?
04:28 jrtayloriv KatrinaTheLamia, It is if you want it to be.
04:28 KatrinaTheLamia TimToady: well, Eevee_ has been saying, "there is an ASCII operator you know", followed by "the ASCII operators are ugly"
04:28 TimToady different people like different things
04:29 TimToady and we still believe in TMTOWTDI
04:29 KatrinaTheLamia TimToady: yeah, but even with Perl, you do find, that people will generally agree that, based on the context, certain ways are better than others
04:29 Eevee_ so use the ASCII and disagree with me, or deal with the ugliness, or don't use hyperoperators
04:29 TimToady the community is encouraged to establish style standards
04:30 KatrinaTheLamia TimToady: apart from nerding it up, what is the point of going all brainfuck with Unicode operators?
04:30 jrtayloriv KatrinaTheLamia, Building limitations into the language is not the way to enforce coding standards.
04:30 TimTom Science and math comunities like writing code like that
04:30 KatrinaTheLamia jrtayloriv: I didn't suggest that now did I?
04:30 TimToady why don't mathematicians write their proofs in English?
04:30 asciiville are there really that many unicode operators beyond the hyperoperators?
04:30 jeekobu Depends on the math
04:31 KatrinaTheLamia asciiville: well claims have been on three trillion unicode operators. I put that to question (quoting the periodical chart) and I was told I was wrong
04:31 TimToady but yes, we're mostly just making sure it's possible to talk about Unicode sanely in Perl 6
04:31 Eevee_ that was a very arbitrary and meaningless number
04:31 TimToady you'll note that the built-in Unicode is even limited to Latin-1
04:32 KatrinaTheLamia Eevee_: yeah, and I responded it was no where near that number, to which point, I was told I was wrong
04:32 TimToady well, as usual, it depends
04:33 TimToady as soon as you allow composability, you theoretically get lots
04:33 TimToady most of which you'll never use
04:33 sjohnson whhi
04:33 sjohnson oops. hi
04:34 TimTom hiya.  Welcome to the perl6 channel, where all your dreams come true :)
04:34 KatrinaTheLamia jrtayloriv: look, I didn't say limit the language. I mean people are talking about how pretty the unicode operators are, and how bad the ASCII ones are. I am not suggesting removing the unicode ones at all. I am merely looking into was that the ASCII can look as good as the Unicode and wordy ones.
04:34 TimToady but the composability is deemed to be more important than telling people what they can and cannot do
04:34 asciiville i guess if you tried to express hyperoperators without unicode you'd step on the shift operators
04:34 sjohnson (´ー` )
04:34 sjohnson sad unicode
04:34 jrtayloriv KatrinaTheLamia, Then I misunderstood you -- sorry.
04:34 TimToady which is why they're now different from << and >>
04:35 TimToady I think we're probably in violent agreement :)
04:35 KatrinaTheLamia TimToady: that happens very often I find... especially amongst geeks ~.^
04:36 KatrinaTheLamia I dunno, looking at how the yen symbol has been turned into Z in instance.. we may be able to look more into that
04:36 KatrinaTheLamia a better solution could prolly be put in that instance... but it is a start
04:37 TimTom Well Z is the zip operator.  It makes sense
04:37 KatrinaTheLamia ah.... so how does the yen symbol fit in?
04:37 TimTom ... It was pretty?
04:37 TimToady it's also the path your eyes travel across the two (vertical) lists
04:37 KatrinaTheLamia thank you TimToady
04:38 KatrinaTheLamia see, what we need to think is more mnemonics with the symbols, rather than making the unicode look like the ascii
04:38 TimToady the uen was a picture of a zipper
04:38 TimToady *yen
04:38 TimToady but the Z was deemed an improved metaphor
04:38 TimToady as well as reminiscent of 'zip'
04:39 KatrinaTheLamia well, now that you explained it as the zipper operator rather than the "yen symbol" it makes a little more sense... something like that could be put into a tutorial when explain it.
04:40 asciiville ok. the yen symbol will never be the same for me now :)
04:40 KatrinaTheLamia what the tutorials would need is mostly "this symbol does this, you can remember it because ..."
04:40 TimToady yes, most of these things have ways of thinking about them than help you detangle them
04:40 TimToady but then that could be called "knowing Perl 6" :)
04:40 * KatrinaTheLamia googles
04:41 TimTom Is there a methods operator so I could do something like 1.methods or Int.methods for explorability?
04:42 TimToady rakudo: say 1.^methods.say
04:42 p6eval rakudo e00587:
04:42 p6eval ..OUTPUT«WHICHperlACCEPTSScalarabsRatStrIntpredsu​ccNumcombfloorroundchopsplitmatchwordscanlcfirstu​csrandComplexkeysmappolarcislogsubstrminmaxpickev​alfiletransfirstIntjoinsubstabselemsendchompindex​ceilingtrimp5chomppairsunpolarordrandtruncatesort​sqrtrindexintgrepvaluescharsrootsreverseisaucf…
04:42 TimTom You even picked my word.  I feel so smart :)
04:43 TimToady either we predicted the future or you postdicted the past :)
04:43 TimTom I'm gonna go with you predicting the future.  Makes perl6 better
04:43 TimToady anyway .^ gets you to the metaclass object
04:44 TimToady kinda like ->meta in Moose
04:44 KatrinaTheLamia well... I am convinced that Perl 6 is the product of an Erisian time paradox, so both of TimToady's suggestions may be right... at the same time (and neither too)
04:45 TimToady "you can say that again"
04:45 TimToady "that goes without saying"
04:45 TimToady funny how those mean the same thing, nearly
04:45 jeekobu That goes without you saying it again
04:46 TimToady but I like quoting myself, since then I'm sure of the attribution
04:46 TimTom Why are there integers in the return value of .^methods? Do they signify anything or are they just noise from the beta-ish state?
04:47 TimToady noise, probably
04:47 TimTom ... actually I don't see them on yours.  Just my computer's output
04:47 jeekobu rakudo: say 1.p5
04:47 p6eval rakudo e00587: OUTPUT«Method 'p5' not found for invocant of class 'Int'␤»
04:47 TimToady we don't have a .perl5 method yet
04:48 TimToady rakudo: say 1.^methods.perl.say
04:48 jeekobu I just figured that was the op out of "...ceilingtrimp5chomp..."
04:48 p6eval rakudo e00587: OUTPUT«[{ ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ...
04:48 p6eval ..}, { …
04:48 carlin ^methods does give some weird results, such as blank entries
04:48 * KatrinaTheLamia reads up more on Perl 6...
04:49 TimToady oh, that's probably p5chomp
04:49 KatrinaTheLamia holy sweet... multidimensional arrays... without making it an array of references to arrays.
04:49 TimToady unfortunately NYI
04:49 carlin rakudo: say Int.^methods.join(', ');
04:49 TimToady but we're getting closer
04:49 mr_ank joined #perl6
04:49 p6eval rakudo e00587: OUTPUT«WHICH, perl, ACCEPTS, 2, Scalar, Rat, Str, Int, pred, succ, Num, ord, chop, 1, 1, roots, uc, reverse, keys, isa, ucfirst, 1, fmt, bytes, pick, 1, join, trim, chr, floor, rand, 1, 1, round, 1, 1, split, 1, grep, words, values, can, lcfirst, 1, srand, 1, map, cis, kv, samecase,
04:49 p6eval ..1, mi…
04:50 KatrinaTheLamia rakudo say Int.^methods.say
04:50 TimToady probably things stored as lists that numerify
04:50 KatrinaTheLamia rakudo: say Int.^methods.say
04:50 p6eval rakudo e00587:
04:50 p6eval ..OUTPUT«RatStrIntpredsuccNumWHICHACCEPTSperlabsS​calarendchompreduceindexceilingp5chomp:dpairs:e:f​combunpolarordchopintcharsrootsucreversekeysisauc​firstsubstrfmtbytespickevalfilejointrimchrfloorra​ndtruncatesortroundsqrtrindexsplitmatchgrepwordsv​aluescanlcfirstsrandComplexpolarmapciskvsameca…
04:50 TimTom Yep.  I just confirmed it
04:51 TimTom "hello".^methods[8 .. 10].say
04:51 TimTom rakudo: "hello".^methods[8 .. 10].say
04:51 p6eval rakudo e00587: OUTPUT«chrpairssamecase␤»
04:51 TimTom shoot.  It's a different order
04:52 TimTom Well anyways, for some reason the Int sub was being converted to an int when it was joined
04:52 TimTom (as I was using .join("\n").say)
04:52 TimToady probably things that are really Parrot objects behaving funny
04:53 KatrinaTheLamia TimToady: well i would likely be the same internally. As that would be how I'd do it, but how it appears like it will be implemented, will make it so it isn't as bleedingly obvious. I mean... I don't like it in other langauges when, I have to tell each entry in the array that it is another dimension of the array.
04:53 mr_ank I humbly present an alternative design to the perl 6 logo: http://use.perl.org/~ank/journal/39562 (work in progress)
04:54 KatrinaTheLamia in ruby, for example x = Array.new(); x[0] = Array.new(); x[1] = Array.new();... gets a little trite after a while. I kind of want to see this implemented ^.^
04:54 s1n mr_ank: not bad
04:55 mr_ank thanks, s1n, i'm open to suggestion/changes... especially from the TimToady etc... i only put that together in a few minutes; willing to re-do it or change it in whatever way...
04:55 TimToady have you read camelia.txt?
04:55 mr_ank Yes
04:56 mr_ank it's in svn.pugscode, right?
04:56 TimToady nod
04:56 KatrinaTheLamia also, this was never competantly answered on #perl ... what is a decent CMS that is done in Perl 5?
04:56 TimToady that really depends on your definition of "decent"
04:57 TimToady I've heard many talks on the subject, and the mileage varies :)
04:58 KatrinaTheLamia well... I kind of want to have some sort of web based admin interface, a method for multiple people to work on content, abilities for users to comment and able to extend it further via modules/plugins/extensions. Also, we can assume skinable.
04:59 mr_ank TimToady: i'm willing to work on it as much as needed. I believe that the current logo has some attributes that have unintended connotations.
04:59 TimToady then you believe something false, because the connotions are intended :)
04:59 mr_ank Firstly, the primary colours and simple shapes used, especially the butterfly used in that way, is reminiscent of children's literature and products
04:59 TimToady *connotations
05:00 TimToady yes, I want it to appeal to 6 year olds
05:00 s1n mr_ank: if you're into logo design, lemme pitch an idea i had but couldn't design it myself
05:00 quietfanatic joined #perl6
05:00 KatrinaTheLamia Also, I'll likely need to be able to sort through and browse large amounts of content. Not necessarily yet... but that is generally something every CMS should do (even though some don't)
05:00 s1n mr_ank: since P6 is a rebirth of perl, why not a phoenix?
05:00 * carlin likes that idea
05:00 KatrinaTheLamia s1n: cliche... just a little
05:00 mr_ank TimToady: surely you are not being serious, are you?
05:00 TimToady I am deadly serious
05:00 mr_ank can i quote you on that?
05:00 TimToady you bet
05:00 mr_ank that you want perl 6 to appeal to 6 year olds?
05:00 asciiville katrina: CMS as in real CMS?
05:01 mr_ank do you want perl 6 to appeal to 6 year olds primarily, as well?
05:01 TimToady note that I'm not requiring every Perl 6 site to use
05:01 TimToady Camelia
05:01 mr_ank no, of course not
05:01 TimToady it's the Perl 6 logo, not any of its distributions
05:01 KatrinaTheLamia asciiville: well, yes
05:01 TimToady see Red Hat, Ubuntu, etc
05:01 mr_ank right
05:02 * s1n advises TimToady to not make a linux analogy to Perl6
05:02 TimToady I haven't seen anyone laughing away Linux for using Tux
05:02 TimToady smirk
05:02 mr_ank I don't see how that applies
05:02 KatrinaTheLamia I dunno, I kind of prefer TimToady's logo... friendly and humourous.
05:02 jrtayloriv I like butterflies. More than burning birds.
05:02 KatrinaTheLamia mr_ank: Perl 6 would have camilla, where as Pugs, Rakudo, etc., are free to have their own logos.
05:03 asciiville we should steer away from "The Artist Formerly Known as Prince" stuff for logo ideas :)
05:03 mr_ank but it sits in perl6.org
05:03 s1n i prefer the bikeshed blue, but it's just the logo for the language, not the impl
05:03 TimToady so, we'll also have perl6.com, perl6.biz, perl6.info, and these can all have something else
05:04 TimToady as I was mentioning earlier, we can have both Kansas and Oz
05:04 KatrinaTheLamia asciiville: well, a logo should compliment a brand name, rather than replace it... other than that, I do not follow.
05:04 asciiville katrina: just a bad joke on my part :)
05:04 s1n TimToady: it's probably a good idea to have one banner, as to build one brand in developers' minds
05:04 KatrinaTheLamia asciiville: ah, okay ^.^
05:04 TimToady a1n, well, that's Camelia
05:04 TimToady *s1n
05:04 KatrinaTheLamia s1n: yeah, but we are allowed variations of it.
05:04 TimToady unless you can come up with something I like better
05:05 TimToady which will be difficult
05:05 mr_ank oh
05:05 s1n hah
05:05 TimToady which is what the file I sent you to already says
05:05 s1n well, i'm not 6, so i don't see the appeal of a butterfly :/
05:05 mr_ank TimToady:  have you considered the possibility that your own taste in logos might not be good for the community at large?
05:05 asciiville Embarrassed to say I did not "get" Camelia until YAPC this year until I realized it was a variant on Camel.
05:05 TimToady if my taste is not good for the community at large, it's way too late
05:05 KatrinaTheLamia s1n: you see a camel on a programming book... are you going to think of anything other than Perl5? No matter what appearance it is. The butterfly would be the same.
05:06 mr_ank TimToady: also, have you considered that there *are* professional graphic designers around here, hoping to help
05:06 TimToady I'm professional, get over it.
05:06 mr_ank TimToady: no, it's not - i'm talking about taste in logos
05:06 TimToady most corporate logos have no taste whatsoever
05:06 mr_ank Please, I'm pleading here.
05:06 KatrinaTheLamia mr_ank: yeah... considering what I've seen, generally no matter what logo we go with, some graphic artist (prolly several) will complain
05:07 mr_ank KatrinaTheLamia: that's no reason not to use one
05:07 TimToady plead away, I know how to interest the next generation of programmers, and I don't care if it upsets the old geezers
05:07 asciiville after the conversation today the logo could be constructed from unicode art :)
05:07 KatrinaTheLamia mr_ank: I think it is fine, to be honest... and I've also had some training in graphic design too.
05:08 s1n i propose Nil, the anti-logo logo
05:08 mr_ank TimToady: even if the intention is to show perl 6 to children, the information in that same page is targeted at adults.
05:08 TimToady so?
05:09 KatrinaTheLamia mr_ank: well, lets deconstruct you logo... is that a lowercase 6 you are using?
05:09 TimToady I don't buy arguments of people being offended on behalf of other people who *might* be offended
05:09 KatrinaTheLamia mr_ank: so? Most adults really have no desire to go around and be adults all the time... most adults I like tend to be the ones who are more than willing to be silly
05:09 mr_ank it's coherence, I couldn't care less about offending an imaginary person.
05:09 s1n mr_ank: face it, we are collectively less intelligent than larry, thus we deserve to have content geared towards us created by him appear as childrens' literature because that's all our tiny brains can handle :)
05:09 TimToady Camelia is quite coherent
05:10 KatrinaTheLamia mr_ank: so, you are offended then?
05:10 asciiville I like Camelia. She's friendly and says "code me"
05:10 mr_ank not at all
05:10 KatrinaTheLamia I am going to have to agree with asciiville
05:10 asciiville She right?
05:10 mr_ank What I mean is that the logo, the brand, marketing, etc - would work better by having a professional who can manage that. I am not that person, but I'm sure you can find it.
05:10 TimToady yes, she's a she
05:10 KatrinaTheLamia I'd prefer something friendly and cute. Rather than something adult, for the sake of adult
05:10 asciiville whew!
05:11 TimToady I alread found that person, and it's me
05:11 mr_ank Respectfully, I suggest you look into you and try and think if someone else might do the job better.
05:11 s1n TimToady: need a little grease to get your head through the door? :)
05:11 KatrinaTheLamia mr_ank: okay, so first you say that TimToady's design isn't professional, then you say, you are not professional enough to make a design decision?
05:11 TimToady s1n: :)
05:11 mr_ank KatrinaTheLamia: no, i'm saying i'm not a marketing professional
05:12 TimToady I am
05:12 mr_ank i expect someone much better than me to handle perl
05:12 mr_ank ok
05:12 mr_ank TimToady: there are a number of reasons why you are not, even if you believe you are
05:12 KatrinaTheLamia mr_ank: okay then. First we need to determine who the logo is aimed at. The demographic. I think TimToady has it right, where we work on modifying the logo slightly depending on the audience
05:12 s1n TimToady: but marketing professionals don't even believe in their own product, they hate commercials just as we do
05:12 TimToady you don't think Perl 5 got where it is entirely on its merits, do you? :)
05:13 mr_ank TimToady: I think the JPL did a great job paying for it
05:13 mr_ank (see, i can pick arbitrary causes too)
05:13 mr_ank anyway, this is not constructive.
05:13 mr_ank thank you for listening what I had to say.
05:14 TimToady you're welcome
05:14 TimToady sorry I'm so hardheaded on this one
05:14 mr_ank no need to apologize
05:15 s1n mr_ank: you had little chance in changing his mind, there were tons of responses on p6l and in the end larry just said "thanks for the input but i'm keeping what i have" heh
05:15 KatrinaTheLamia mr_ank: I look at your logo, and I think: "very quick mock up for some cheap client in a company." Really, that is the first thing I think of. Even though it is a butterfly, it is exactly what every 3rd rate company would do  for a butterfly. (con't)
05:15 mr_ank KatrinaTheLamia: i made it in about 5 minutes, just to foster talk, etc
05:15 TimToady for good or ill, I have a stubborn streak
05:15 TimToady but it's one of the reasons I'm still working on Perl 6
05:16 KatrinaTheLamia mr_ank: meanwhile with Camelia, in its current state (from the context I've seen) is mostly for usages on pages, where they need to say, "hey, we are not teaching you how to code something that looks like line noise"
05:16 KatrinaTheLamia mr_ank: from what TimToady has suggested, in other contexts, Camelia will appear slightly different.
05:17 s1n let's see if there's a happy medium, TimToady, think you would let someone with really good graphics skills touch up Camelia (polish, not re-envision)?
05:18 TimToady well, I don't really like the plastic looks very much, but for some contexts it would work
05:18 KatrinaTheLamia mr_ank: on ther perl6.org page, it is mostly there to express that Perl6 is simple. Compare your logo to what TimToady did. Now ask, which makes the language not look like the horrid line noise language that people see perl as.
05:18 mr_ank seriously? mine, hacked in 5 minutes
05:19 asciiville A Camelia Bobblehead would set it in stone for everyone
05:19 mr_ank I really have nothing positive to say about Camelia, i'm truly sorry about that.
05:19 TimToady do you read comics?
05:19 mr_ank Sometimes
05:19 TimToady so toons can be for adults
05:19 mr_ank absolutely
05:20 TimToady Camelia can be a toon for aduls
05:20 mr_ank things like Maus, for instance
05:20 mr_ank one of the best comics ever.
05:20 mr_ank consistently rated 3
05:20 mr_ank #1
05:20 TimToady and I think Americans can learn to tolerate "cute" from the Japanese men
05:20 mr_ank sure
05:20 s1n TimToady: in all fairness, modern comics are much more viceral (spelling?) than their predecessors
05:20 mr_ank If you are referring to me - I'm not American, I was born in Argentina.
05:20 KatrinaTheLamia mr_ank: how about cartoons from the 1980s and 1990s, that generally look kiddy.... some can contain some very adult ideas.
05:21 TimToady sure, but Camelia is not supposed to be about angst
05:21 mr_ank KatrinaTheLamia: from that era, the most important was probably Watchmen
05:21 mr_ank It redefined the superhero genre
05:21 agentzh1 joined #perl6
05:21 mr_ank It's from ~1985 iirc
05:21 mr_ank let's talk about art, then
05:21 KatrinaTheLamia mr_ank: I'd prolly have included Earthworm Jim, Tick and Freakazoid as my favourite cartoons of that era, that could potencially present some adult ideas... just in a silly manner
05:22 mr_ank i'm not against "silly manner"
05:22 mr_ank ook
05:22 KatrinaTheLamia Camelia is not about angst. Watchmen present a bad  picture of he state of the world. Maus presents the crap of WWII
05:22 mr_ank Look
05:22 mr_ank http://boring3d.com/ << i love that page
05:22 KatrinaTheLamia mr_ank: maybe we need to present an silly adult form we can agree on?
05:22 s1n i'm pretty sure the guy that did the Tick would put a chair for a head on camelia
05:23 mr_ank I have the complete collection of The Tick
05:23 KatrinaTheLamia s1n: naw... that is limiting him too much
05:23 asciiville How about Franklin, Phineas, Fat Freddy, and Fat Freddy's Cat?
05:23 mr_ank I also have absolutely nothing against funny or simple or things for kids
05:24 mr_ank or silly adult - that's good too
05:24 KatrinaTheLamia mr_ank: well, I had the three seasons of the cartoon, and the live action series... with none of the comics though
05:24 KatrinaTheLamia Franklin? I always hated that one >.>
05:24 asciiville :)
05:25 KatrinaTheLamia hmm... but following this more... maybe lets pulls something from Dr. Seuss or Bearenstein Bears... Dr. Seuss was a graphic designer in WWII... I cannot remember much about Bearenstein Bears (much less how to spell it)
05:25 mr_ank Dr. Seuss stuff is brilliant
05:26 mr_ank I wouldn't mind having this as logo for perl 6 http://www.creativityforkids.com/ASSETS/28FB432​BCDC14B18A158001B97129B6C/dr.seuss%20final.jpg
05:26 s1n nintendo has long had a slogan "there is a kid turning 6 everyday". given their success, maybe we should call it Perlii and use a faceless/limbless avatar or Mario for the logo
05:27 kst joined #perl6
05:27 KatrinaTheLamia also keep in mind, Walt Disney is famous for saying: "if I made stuff for kids, I wouldn't have succeeded"--if we follow this, we may be able to apply the Disney effect to the Perl 6 logo
05:27 asciiville s1n: :)
05:28 TimToady well, cat-comes-back is not quite the same as metamorphosis :)
05:28 s1n KatrinaTheLamia: don't tempt me to make a dumbo joke :)
05:28 mr_ank ok, now let's review: how far away do you think Camila is to Dr. Seuss?
05:28 mr_ank in terms of taste and quality
05:29 * s1n wonders what a butterfly tastes like...
05:29 * KatrinaTheLamia grabs up the perl6.org
05:29 s1n i'll be here all week folks :)
05:29 TimToady I think there are a lot of grinches trying to steal Christmas :)
05:29 KatrinaTheLamia well, if we really wanted to make it adult we could replace butterfly in "camelia the butterfly" for the german word for butterfly.
05:30 KatrinaTheLamia seriously: translated anything into german would make it sound hardcore
05:30 mr_ank btw, TimToady - how are your eyes? i remember reading about the surgery etc years ago, sounded painful
05:31 KatrinaTheLamia TimToady: looking at it... well, the wings could use a little work... the patterns don't look... clean...
05:31 s1n mr_ank: ehhh, off topic?
05:31 asciiville Off the subject: Is Rakudo's "setting" considered a noun or verb?
05:31 TimToady had cataract surgery on both eyes since then, but that was a piece of cake compared to the transplant
05:31 TimToady noun
05:31 pmichaud noun
05:31 TimToady they're lumpy on purpose
05:32 asciiville ah! The terminology had me confused.
05:32 TimToady as in the setting of a play
05:32 KatrinaTheLamia hmmm, could you explain why the sixes are lumpy?
05:32 carlin Here's my rough logo idea: http://theintersect.org/images/p6logo.jpg
05:32 TimToady one of the many little built-in asymmetries
05:32 mr_ank that will attract kids!
05:32 s1n carlin: haha
05:33 pmichaud we will likely change "setting" to be something else whenever Perl 6 decides what it's ultimately going to be called :)
05:33 mr_ank except for the ones that prefer nintendo
05:33 s1n carlin: paint it blue and ship it!!
05:33 KatrinaTheLamia carlin: paint it blue, and put "free candy" on the side, and we are sold
05:34 KatrinaTheLamia TimToady: asymmetry is not normally noted for making things look cute
05:34 mr_ank left #perl6
05:34 TimToady it was to make the patterns look more organic
05:34 TimToady like butterfly wings really are
05:34 KatrinaTheLamia TimToady: so are we going for cute.. or organic?
05:35 asciiville we were kind of questioning the naming convention of "setting" at the hackathon last saturday
05:35 TimToady it's supposed to look like the P6 is sort of accidental
05:35 s1n or more like it was drawn with Paint? :/
05:35 TimToady organic can't be cute?
05:35 asciiville thinking of setting like a stage makes sense now
05:35 KatrinaTheLamia hmm.. six is kind of accidental... maybe I need to look at this further
05:35 TimToady actually, they are rather carefully done pairs of splines
05:36 s1n KatrinaTheLamia: barking up the wrong tree
05:36 carlin I still like s1n's phoenix idea, p6 could be in fire on the wings
05:36 TimToady anyway, I can tell you that constant width looked bogus
05:37 carlin maybe that could be rakudo's logo; a firey parrot
05:37 KatrinaTheLamia TimToady: ah in that case the sixes don't match the rest of the wings, the green arcs, and the circles... as they don't look organic
05:37 pmichaud Rakudo will likely s/setting/core/
05:37 asciiville pm: now that makes even more sense
05:37 KatrinaTheLamia TimToady: yeah, I could see how the constant width would look poorly.
05:37 pmichaud yes; at the time we created the directory the CORE namespace wasn't yet in the spec
05:38 TimToady I think the arcs and ovals can be found in nature
05:38 TimToady esp the ovals
05:38 TimToady the arcs are arguable
05:38 pmichaud so the best we could go with was "setting" at the time, thinking that it would correspond to the SETTING pseudonamespace
05:39 TimToady which is usually, but not always, CORE
05:39 KatrinaTheLamia TimToady: well, the ovals could be worked with... the arcs need something done with them
05:39 pmichaud right
05:39 s1n asciiville: pugs called it Prefix iirc
05:40 pmichaud "prelude"
05:40 TimToady prelude
05:40 s1n ahh right
05:40 TimToady but that's wrongish
05:40 TimToady since it's more of a lexical wrapper in Perl 6
05:40 TimToady the implicit loop of -n or -p goes around the user's code, not just before it
05:40 KatrinaTheLamia TimToady: yeah... work with the arcs in the wings, you'll prolly be fine.
05:41 TimToady and setting was the least overloaded word we found
05:41 s1n crap it late
05:41 KatrinaTheLamia anyways... now I  have the urge to design an angsty version of camelia >.
05:41 s1n bed&
05:41 KatrinaTheLamia >.>*
05:41 finanalyst joined #perl6
05:41 TimToady quietfanatic is working on an angry one :)
05:42 TimToady he just showed it to me across the room
05:43 quietfanatic Here: http://wall.org/~lewis/stuff/img/camelia-angry.pdf ;)
05:43 KatrinaTheLamia I really should work on an EWJ style one ^.^... however my scanner isn't working... and I couldn't properly mouse draw (vector or raster) the EWJ style
05:43 KatrinaTheLamia pdf?
05:43 KatrinaTheLamia oh dead...
05:43 * KatrinaTheLamia runs wget on that
05:43 TimToady more like grumpy, I think
05:43 quietfanatic It was a real quick piece of work.
05:44 quietfanatic "Cargo-cult art"
05:44 pmichaud I wouldn't want to be confronted with that bug.
05:44 quietfanatic I just flipped the mouth and changed one of the segments in each of the eyes to be straight.
05:44 TimToady esp since she has a 3 meter wingspan
05:44 pmichaud either grumpy or angry, it says "get out of my way or I'll squash you like a..."
05:44 TimToady actually, she'll probably just suck your liver
05:44 carlin her wings are metamorphic right? Should flare red when she's angry
05:44 quietfanatic My liver is quivering.
05:45 TimToady yes, she has conscious control of the colors in her wings, but not her face
05:45 KatrinaTheLamia well, I am just happy she isn't going to suck the bergamont out of my spleen. Means I can trust her not to give my slack up to the evil conspirators.
05:46 asciiville Angry Camelia: too funny!
05:47 asciiville actually angry camelia should popup after a compiler error
05:47 TimToady no, that should be sorry camelia
05:47 asciiville haha
05:47 sjohnson haha he looks mean
05:47 TimToady she
05:47 sjohnson she*
05:48 asciiville are there any sorry camelias to be posted tonight?
05:48 TimToady prolly not
05:49 TimToady maybe after an error we should have a camelia with bruises and crumpled wings
05:49 quietfanatic Aww...that'd make me feel even worse. :(
05:49 sjohnson asciiville: do you listen to alphaville?
05:49 TimToady and a bandaid
05:50 asciiville sjohnson: actually no
05:50 quietfanatic A butterfly's wings are its life.  If its wings are broken it can't live.
05:50 TimToady er, Band-Aid®
05:50 TimToady this one will get better
05:50 sjohnson looks like Joe Camel missed his chance at being the Perl 6 mascot
05:51 quietfanatic ...I guess she is magical after all.
05:51 TimToady I can just hear the parents of the 6-year-old warning them not to go anywhere near that rough Perl 6 crowd...
05:52 TimToady (if we had Joe Camel)
05:52 asciiville the angry camelias will probably by in a B-movie on SyFy at some point
05:53 KatrinaTheLamia just grabbing the camelia I did up... most to mock the idea of making her more adult
05:53 TimToady I wonder how many we could fit into the sewers of LA?
05:53 TimToady you could go for the Tammy Faye look
05:54 asciiville tammy faye camelia?
05:54 asciiville tammy faye camelia == alice cooper camelia
05:55 TimToady vampire camelia
05:57 KatrinaTheLamia and uploading ^.^
05:57 asciiville timtoady: camelias potential is enormous
05:57 sjohnson TimToady: you are probably right
05:59 KatrinaTheLamia http://nimhlabs.com/assets/im​ages/perl6/mock_camelia.jpeg << appologies for the quality... my scanner isn't working so I ended up using my camera
06:00 KatrinaTheLamia (that was more meant to mock ank TBH)
06:00 pmichaud reminds me of "Scream"  :)
06:01 KatrinaTheLamia well, atleast I managed to resemble some form of art ^.^
06:01 KatrinaTheLamia that I just did up quickly... I dunno, maybe if I put a little more effort into it, you could tell those are fishnet stockings.
06:02 TimToady maybe it really was The Scream--wasn't that stolen some time ago?
06:02 pmichaud yes, "The Scream" -- I got the name wrong
06:02 pmichaud reportedly it was stolen, yes.
06:02 TimToady and now you know why Camelia keeps her legs behind her :)
06:02 pmichaud twice.
06:02 pmichaud http://en.wikipedia.org/wiki/The_Scream
06:03 asciiville katrina: almost a mae west camelia
06:03 KatrinaTheLamia well, this does kind of prove how much potencial Camelia does have.
06:04 KatrinaTheLamia I mean, TimToady hasn't started cursing my ancestors at me drawing it yet... so that surely is a good sign
06:04 asciiville that should be the next Perl 6 user project: a website that allows you to dress Camelia
06:04 TimToady now you're getting silly
06:05 asciiville yes, indeed
06:05 sjohnson that might be a hit in japan
06:05 KatrinaTheLamia naw... we could make  a dress up game for Camelia... IN PERL 6
06:05 KatrinaTheLamia sjohnson: only if we subjected Camelia to tentacles.
06:05 sjohnson i wonder if To Catch A Predator ever has spies in this channel
06:05 sjohnson that might give Perl some worldwide coverage
06:06 sjohnson "i want to dress you up like a butterfly..."
06:06 KatrinaTheLamia well, it would certain cause us to get raided
06:06 KatrinaTheLamia lol
06:06 sjohnson "and other strange conversations..."
06:07 KatrinaTheLamia I just realised something. I could mix the blush and cheek bones to make small sixes in my poor poor bastardisation of camelia.
06:08 pmichaud afk  # sleep
06:08 TimToady afk  # run away in fright
06:08 sjohnson afk  # watching anime
06:08 KatrinaTheLamia afk # chasing after TimToady with chainsaw
06:09 sjohnson oops, you missed one space character there
06:09 KatrinaTheLamia wait?
06:14 * TimToady is not waiting for a chainsaw...
06:15 KatrinaTheLamia but but but... it is Occam's Chainsaw... it is like Occam's Razor.. but BETTAH!
06:16 TimToady I'm afraid you'll use it on my Unicodes
06:17 * KatrinaTheLamia throws Occam's Chainsaw aside
06:18 KatrinaTheLamia I am just glad nobody on this channel has tried to use unicode or ascii as a bad pickup line yet >.>
06:19 asciiville give it time :)
06:19 TimToady hopefully lots of time
06:20 carlin this looks like a job for Character Map
06:20 KatrinaTheLamia oh no...
06:21 carlin ⌂ unicode has a house symbol, that will make things slightly easier
06:21 TimToady it has better symbols than that, but I'm not going to help you
06:24 KatrinaTheLamia what have I caused?
06:24 TimToady we're trying to keep things appropriate for 6-year-old girls, not 13-year-old boys
06:25 KatrinaTheLamia TimToady: well, we could work this into a form of Disney effect type thing.. where it is appropriate for adults and 6a girls... but 13a boys will get lost at every turn
06:25 TimToady or the large number of older boys who think they're still 13 :)
06:25 iblechbot joined #perl6
06:25 KatrinaTheLamia ah, well... I don't fall into that demographic
06:26 TimToady well, now that Disney has bought Marvel...
06:26 sjohnson carlin: that is a cute house
06:26 TimToady it needs a pony
06:26 sjohnson i remember you could get that in the dos days by hitting ctrl-backspace i think
06:26 * sjohnson needs a girlfriend pretty badly
06:26 KatrinaTheLamia TimToady: My Little Pony?
06:27 sjohnson KatrinaTheLamia, you're a silly one
06:27 carlin Ⴚ ◎ ㈲ ☎ ﹟
06:27 sjohnson on the topic of cute characters, this one is the cutest of all kanjis
06:27 KatrinaTheLamia carlin: uh... 867 5309?
06:28 sjohnson
06:28 sjohnson looks like a space invader with antennaes and legs
06:28 KatrinaTheLamia looks more like a cake to me
06:28 TimToady I think of it as a music stand
06:28 carlin all of them are unicode 1.1
06:28 TimToady so I can get both "curve" and "melody" from it
06:29 sjohnson 点 == tank
06:29 sjohnson well, not in meaning, but it looks like a tank
06:29 sjohnson reminds me of the tank on that Apple //e game Star Blazer
06:30 sjohnson i am going to get a professional sign made that says "TANK MEAL coming soon" and post it near my house
06:30 sjohnson i love signs that don't make any sense
06:31 moritz_ good lolcattime() everyone
06:31 moritz_ so (5 div 3) should return 1, right?
06:31 moritz_ how do I get floating point division? 5.Num / 3 ?
06:32 TimToady that's one way
06:32 sjohnson rakudo: say 5.0 / 3.0
06:32 TimToady or Num(5/3)
06:32 p6eval rakudo 9bcba6: OUTPUT«1.66666666666667␤»
06:32 TimToady or that way
06:32 sjohnson ( `ー´)
06:33 asciiville say (5/3)
06:33 asciiville carp
06:33 asciiville rakudo: say (5/3)
06:33 p6eval rakudo 9bcba6: OUTPUT«1.66666666666667␤»
06:35 asciiville hmm. I get invoke() not implemented in class 'Float' for Num(5/3) on my local Rakudo
06:36 TimToady it's a theoretical construct
06:36 asciiville ok
06:36 moritz_ rakudo: say (5/3).Num
06:36 p6eval rakudo 9bcba6: OUTPUT«Method 'Num' not found for invocant of class 'Float'␤»
06:37 moritz_ rakudo: say (5 div 3).Num
06:37 TimToady rakudo: say +(5/3)
06:37 p6eval rakudo 9bcba6: OUTPUT«1.66666666666667␤»
06:37 p6eval rakudo 9bcba6: OUTPUT«1.66666666666667␤»
06:37 TimToady we confused it
06:37 asciiville rakudo: say Num
06:37 p6eval rakudo 9bcba6: OUTPUT«Num()␤»
06:39 krunen joined #perl6
06:39 jeekobu rakudo: say say
06:39 p6eval rakudo 9bcba6: OUTPUT«say requires an argument at line 2, near ""␤in Main (src/gen_setting.pm:2550)␤»
06:39 jeekobu aw
06:43 quietfanatic rakudo: say 5 div 3
06:43 p6eval rakudo 9bcba6: OUTPUT«5/3␤»
06:44 TimToady it's still got the backward semantics
06:44 quietfanatic I see.
06:48 sjohnson rakudo: say 5/3.Num
06:48 p6eval rakudo 9bcba6: OUTPUT«1.66666666666667␤»
06:49 sjohnson rakudo: say (5 div 3).Num
06:49 p6eval rakudo 9bcba6: OUTPUT«1.66666666666667␤»
06:50 JimmyZ_ rakudo: (5 / 3).say;
06:50 p6eval rakudo 9bcba6: OUTPUT«1.66666666666667␤»
06:50 JimmyZ_ rakudo: (5 div 3).say;
06:50 JimmyZ_ rakudo: (5 div 3).INT.say;
06:50 pugs_svn r28154 | carlin++ | [perl6.org] Added description meta tag, feel free to alter, remove or revert as needed
06:50 p6eval rakudo 9bcba6:  ( no output )
06:50 p6eval rakudo 9bcba6: OUTPUT«Method 'INT' not found for invocant of class 'Rat'␤»
06:50 JimmyZ_ rakudo: (5 div 3).Int.say;
06:50 p6eval rakudo 9bcba6: OUTPUT«1␤»
06:51 moritz_ carlin++
06:51 Su-Shee joined #perl6
06:51 Su-Shee good morning :)
06:52 moritz_ oh hai Su-Shee
06:52 JimmyZ_ Is 'div' the same as '/' ?
06:53 TimToady we just changed their definitions, but rakudo hasn't caught up quite
06:53 TimToady they're supposed to be differnet
06:53 TimToady *different
06:53 TimToady Int / Int is now supposed to produce Rat
06:54 TimToady Int div Int is now supposed to do integer division
06:54 moritz_ which it does here (locally)
06:55 sharada joined #perl6
06:55 JimmyZ_ rakudo: (5 / 3).INT.say;
06:55 p6eval rakudo 9bcba6: OUTPUT«Method 'INT' not found for invocant of class 'Float'␤»
06:55 moritz_ there's no INT
06:55 TimToady there is no such thing as INT
06:56 JimmyZ_ yes, I want to get the error message
06:56 JimmyZ_ rakudo: (5 div 3).INT.say;
06:56 p6eval rakudo 9bcba6: OUTPUT«Method 'INT' not found for invocant of class 'Rat'␤»
06:56 moritz_ there's still no INT ;-)
06:56 TimToady you gotta admit, it's one letter shorter than .WHAT
06:57 TimToady but then .X is three shorter
06:57 TimToady and the .say is unnecessary
06:57 JimmyZ_ moritz_: yes. I still want to get the error message ;)
06:57 TimToady rakudo: say 42.X
06:57 p6eval rakudo 9bcba6: OUTPUT«Method 'X' not found for invocant of class 'Int'␤»
06:58 JimmyZ_ seems that div is for Rat ?
06:58 JimmyZ_ and '/' is for Float
06:59 TimToady no, div is for any type to define how it wants
06:59 TimToady and / is for "real" division
06:59 TimToady producing either Rat or Num as appropriate
06:59 TimToady that's how it's specced now
07:00 JimmyZ_ I see. thanks, TimToady.
07:01 fooozzzzbar joined #perl6
07:03 TimToady agh, how did it get to be September already?
07:03 TimToady I'd better go to bed...
07:03 Su-Shee TimToady: the time short before christman is shorter than the rest of the year. because of the shorter days.
07:04 TimToady another good reason for sleeping more :)
07:05 TimToady one the other hand, wayland76 will tell you the days are longer around Christmas
07:06 TimToady after a long day at the office I feel like sleeping more too
07:06 TimToady hmm, maybe I just always feel like sleeping more
07:06 moritz_ good night
07:06 sjohnson i slept for four hours last night, woke up at 8am and programmed like a madman
07:06 sjohnson it's amazing how efficient you can get work done when you think your job is on the line
07:06 TimToady night all
07:06 TimToady zzz &
07:07 sjohnson night night toady
07:11 pugs_svn r28155 | carlin++ | Move Camelia's border settings to CSS
07:13 drbean joined #perl6
07:15 kst joined #perl6
07:20 donaldh joined #perl6
07:30 moritz_ who is our Temporal overlord? mberends?
07:40 jeekobu joined #perl6
07:47 wayland76 The days are longer around Christmas
07:47 wayland76 But they're too hot to do much in :)
07:47 wayland76 The Temporal overload is autarch
07:47 wayland76 moritz_: ^^
07:48 moritz_ because I need somebody to fix it :-)
07:48 wayland76 He's the one who made the DateTime modules for P5.  I hacked together the basic Temporal page, and then autarch redid it
07:48 jferrero joined #perl6
07:49 wayland76 What, the tests need fixing?
07:49 wayland76 Oh, wait, I'm talking about the spec, though
07:49 moritz_ no. The meaning of infix:</> and infix:<div> have changed
07:49 wayland76 I don't know who's in charge of the Rakudo Temporal stuff
07:50 moritz_ and we have a patch in RT that applies the changes to rakudo and the test suite
07:50 moritz_ and that breaks Temporal.{pm,t} and I don't know why.
07:50 moritz_ actually the patch simplifies Temporal.pm, because it uses integer division in many places
07:51 finanalyst joined #perl6
07:52 wayland76 Beyond me, then, I'm afraid.
07:56 rbaumer joined #perl6
08:05 rbaumer joined #perl6
08:09 M_o_C joined #perl6
08:10 kst joined #perl6
08:14 jrtayloriv joined #perl6
08:30 Khisanth joined #perl6
08:33 spinclad somehow i find the mouth-shape more convincing on camelia-angry; the asymmetry seems better motivated, and the strong curvature at one end works better with my image of the facial muscles, than on camelia-0.
08:34 spinclad (oh, and mae-west camelia ++)
08:36 moritz_ http://use.perl.org/~ank/journal/39562
08:40 Su-Shee looks like the padre butterfly but it blue.
08:45 dakkar joined #perl6
08:53 M_o_C joined #perl6
08:57 RonOreck_ joined #perl6
09:07 colomon moritz_: not sure if my second patch went through?  I actually fixed the Temporal.t hang in my patch.
09:08 colomon (And I should be back in bed now...)
09:14 RonOreck joined #perl6
09:16 kst joined #perl6
09:18 masak joined #perl6
09:18 masak good late morning, #perl6.
09:19 frettled Indeed!  Good something!
09:20 * masak is quietly amused by the amount of energy outsiders can spill on expressing their dissatisfaction with the perl6.org colour scheme or the Perl 6 logo
09:20 masak is there something else we can turn into pastel colours to further annoy them?
09:21 frettled masak: psychedelic Perl 5 camel?
09:21 masak afraid that's kinda outside our jurisdiction.
09:21 frettled it's open sores, mon!
09:21 * masak buckles down to minimize last night's scary bug
09:21 carlin rakudo.org needs pastel colours
09:21 rbaumer joined #perl6
09:22 masak carlin: I like the way you're thinking.
09:22 Su-Shee masak: on the other hand do a bunch of interesting groups like it.. women for example or a bunch of mac-ruby-fellows I know..
09:22 masak Su-Shee: that's great!
09:23 ejs joined #perl6
09:23 masak Su-Shee: do they express their satisfaction in blogs and irc logs and stuff?
09:23 Su-Shee masak: that's what I was thinking while skimming comments..
09:23 wayland76 I've been thinking we should do a vampire Camelia to pick up on the Twlight-teenage-girl-programmer demographic
09:23 Su-Shee masak: some msg-ed me.
09:24 masak Su-Shee: you could contrast the two groups in a blog post of yours.
09:24 Su-Shee masak: and honestly.. _I_ consider "the style is gay" a compliment..
09:24 masak it means they care, for one thing.
09:25 Su-Shee masak: exactly.
09:25 M_o_C Well, it certainly is  colorful after all ;)
09:25 wayland76 Yes, "colours bright and gay" and all that :)
09:25 Su-Shee masak: and it means that we might not suit the traditional taste of manly male hetero old school techies but a more postmodern one. ;)
09:26 masak big, bulky organizations elect a committee, and the committee arrive at a slick, abstract drab blob which offends no-one and touches no-one at heart. we're a bunch of scattered volunteers, not a big, bulky organization.
09:26 Su-Shee masak: interestingly, at least 3 women made a connection to audreyt and contemporary gender-philosophy stuff an declared that the style and especially the butterfly reflects that...
09:26 zamolxes joined #perl6
09:27 masak Su-Shee: cool. I hadn't made that connection until now.
09:27 Su-Shee so I personally don't see any reason to frantically adjust a design what's not final anyway...
09:27 carlin as much as I like Camelia etc. I would like an alternative before Perl 6 clothing hits ... :p
09:28 wayland76 Well, that link moritz_ pasted had an alternative :)
09:28 huf i always found the name of the language in a nice font is better than an animal
09:28 huf altho i guess that's "boring"
09:28 Su-Shee and I don't care as long as the stuff is cool.. I mean, I use slackware and love it - and check their "design". ;))
09:29 wayland76 What kind of font is nice?  Are we talking about Linux Libertine, or one of those highly decorative ones with vines growing onit?
09:29 huf fixed? i really like fixed.
09:29 huf ;)
09:29 carlin Slackware's "logo" isn't bad
09:30 wayland76 Well, if it's not broken, don't fix it :)
09:30 carlin I doubt they've ever had heated flamewares over who hates/loves it though
09:31 Su-Shee carlin: they pretty much don't care and do so deliberately. they simply ignore all issues which are discussed in the perl community in terms of "marketing"
09:31 Su-Shee it's a total focus on the project.
09:32 M_o_C wayland76: Can you give that link of moritz_ please?
09:32 wayland76 M_o_C: http://use.perl.org/~ank/journal/39562
09:32 M_o_C Thanks
09:33 wayland76 Perl takes people into account :)
09:33 Su-Shee so does slackware, but in an entirely different way..
09:34 Su-Shee and the perl community saying "we don't care for design and marketing and focus on the projects" would have been an entirely valid option.
09:34 wayland76 But what would be bikeshed about then?
09:35 carlin how much we don't care
09:35 wayland76 What, you mean "I think we should not care in a sort of mauve-green"?  :)
09:37 masak no, I think we should not care in a sort of vermillion.
09:37 ejs1 joined #perl6
09:38 carlin vermillion? How will we market how much we don't care using vermillion?
09:39 masak I just don't think mauve-green conveys how we don't care in a sufficient way.
09:40 carlin mm, green conveys jealousy more than not-caring
09:41 Su-Shee isn't not caring dull grey? ;)
09:41 masak yes, that could be it!
09:41 masak a dull grey, a bit like asphalt...
09:42 Su-Shee (which looks great with jealous green or even envy-bile-green-yellow ;)
09:42 huf dark blue text on black. you cant beat that at not caring
09:43 frettled http://jani.at.ifi.uio.no/tmp/pastel-rakudo.png
09:43 carlin frettled++
09:44 Su-Shee huf: excellent choice!
09:45 huf Su-Shee: yes, it shows that i care
09:52 masak frettled: how exquisitely tasteless! bravo!
09:52 frettled thank you, thank you, I'll be here all week.
09:53 frettled (and they say that techies can't do design, hah!)
09:53 masak :D
09:54 Su-Shee I personally like the "my grandmother's blouse" color scheme... it really speaks to the elderly perl people...
10:01 colomon moritz_: ping
10:02 eMaX joined #perl6
10:06 kst joined #perl6
10:07 M_o_C frettled: Using pastel colors doesn't even look so bad if you omit the beveled stripes: http://moc.coders-haven.net/tmp/rakudo-logo.png
10:07 M_o_C If you ignore the strange aliasing...
10:07 masak rakudo: class B { method Str() { my @a = 1..3; @a[9].x; 'OH HAI' } }; B.new.say
10:08 p6eval rakudo 9bcba6:  ( no output )
10:08 masak rakudo: class B { method Str() { my @a = 1..3; 'OH HAI' } }; B.new.say
10:08 p6eval rakudo 9bcba6: OUTPUT«OH HAI␤»
10:08 masak as you see, the '@a[9].x' causes the Str method not to print anything.
10:08 masak is this desired behaviour?
10:08 wayland76 M_o_C: Those colours are a little too vibrant to be pastel
10:09 M_o_C I already thought so... Still, it's exactly the ones camelia uses.
10:11 wayland76 Su-Shee's original perl6.org design was using the Camelia colours.  It's the revised version that uses more pastel colours.
10:12 jnthn oh hai
10:12 masak hm, I guess it is desired behaviour, now that I think about it.
10:12 masak jnthn: o/
10:13 M_o_C Ok, wayland76.
10:15 * jnthn looks around at use.perl.org and is a little bewildered by the dicussions...
10:16 carlin Argh
10:16 masak & # lunch
10:16 jnthn Meh.
10:16 * carlin doesn't know how many times he has typed @array.push instead of @array.pop
10:16 * jnthn decides to stay out of 'em.
10:17 carlin but jnthn, the bikeshed could end up as a colour you don't like!
10:17 wayland76 but jnthn, they might paint the bikeshed the wrong colour :)
10:17 wayland76 phooey, too slow :)
10:17 carlin haha
10:17 carlin wayland76++ # great minds
10:17 wayland76 great minds, etc :)
10:17 wayland76 ouch, this is getting scary ;)
10:18 wayland76 ( jnthn++ for doing things instead of bikeshedding :) )
10:19 jaffa8 joined #perl6
10:19 wayland76 moritz_: Is there a way we could have multiple theme options for perl6.org?
10:23 M_o_C The correct question is: Who has the means to implement it?
10:24 M_o_C :)
10:24 wayland76 Well, I really meant, is there an *easy* way
10:24 wayland76 Otherwise there's no point me making a vampire camelia :)
10:25 M_o_C Hrm, if it's only a color related change it should be easy since all you'd have to do is to create a new stylesheet and implement a way to switch the stylesheet...
10:26 M_o_C However if you intend to change it to some wickedly complicated design it probably is a little harder.
10:26 M_o_C Scratch the "little" ;)
10:27 rbaumer joined #perl6
10:27 wayland76 Well, colour, and logo.  And if I could change the title too, that would be good
10:28 M_o_C Well, title change can't (or shouldn't, I'm not certain if it can
10:28 M_o_C 't) be implemented via CSS
10:29 wayland76 I'm sure you can if you try hard enough, but some browsers may not support it :)
10:30 wayland76 (afk, will backlog &)
10:32 Su-Shee yes, there is a way for multiple themes, because it's pure css strictly separated from html structure and the content.
10:33 mikehh rakudo (9bcba63) builds on parrot r40902 - make test / make spectest (up to r28155) PASS - Ubuntu 9.04 amd64 (g++)
10:34 carlin the doctype could be changed to XHTML strict
10:35 carlin but I don't see a lot of point
10:42 M_o_C Su-Shee: The only problem right now is the logo (src HTML attribute).
11:03 eMaX joined #perl6
11:05 wayland76 well, as I said, if the logo can't change, no point in me making a vampire camelia pic :)
11:05 mberends joined #perl6
11:06 carlin that shouldn't be hard to change
11:06 KatrinaTheLamia are we _still_ talking about this?
11:06 wayland76 carlin: Who has the power?
11:06 carlin No
11:06 carlin Not we are discussing the ability to dyanamically alter the colour of the bikeshed
11:07 wayland76 KatrinaTheLamia: now we're talking about multiple themes.  That's completely different than arguing over the theme :)
11:07 carlin s/Not/Now
11:07 KatrinaTheLamia I mean, if wayland76 does his vampyr Camelia picture, I clearly need to do up my Mae West one and allow it to be seen on the site :)
11:07 * jnthn suggests a #perl6-bikeshedding channel to do this stuff on.
11:07 jnthn (OK, I only half-seriously suggest it.)
11:07 carlin No, the channel should just be called #perl6-bikeshed
11:07 wayland76 jnthn: Basically, I'm hoping that the muiltiple themes thing will mean that people will do themes instead of talking about them :)
11:07 jnthn ...
11:08 kst joined #perl6
11:08 KatrinaTheLamia jnthn: yeah, but then we'd need to set up #perl6-bikeshed-meta shortly afterwards.
11:08 carlin wayland76: anyone with pugs commit access can change it
11:08 M_o_C But he wants a theme switcher
11:08 M_o_C Not a permanent switch.
11:09 jnthn KatrinaTheLamia: Wonder how long until the levels of meta are so deep you exceed the maximum channel name length...
11:09 jnthn ...and how many hours it'd take people to get there... ;-)
11:09 wayland76 Btw, I have ops on #perl6-bikeshed :)
11:09 KatrinaTheLamia I don't know why, but that scares me
11:10 KatrinaTheLamia jnthn: just going to test something
11:10 jnthn ;-)
11:11 carlin M_o_C: Yes, but part of doing that would involve making camelia appear via css
11:11 KatrinaTheLamia joined #perl6
11:13 KatrinaTheLamia note: testing how many -meta until the channel limit is exceeded cased freenode to kick me off due to flooding
11:13 jnthn lol
11:14 pmurias joined #perl6
11:16 M_o_C Where in the pugs repo is the perl6.org code located?
11:16 carlin docs/feather/perl6.org
11:20 Juerd Which syllable in "rakudo" is stressed?
11:22 donaldh joined #perl6
11:22 Su-Shee 2nd, if I remember my little japanese correctly and all is pronounced rather short
11:23 wayland76 I've been saying raah-KOO-doh
11:24 KatrinaTheLamia wayland76: generally he "u"s in Japanese words tends to be silent, and means only the previous consenent is to be pronounced
11:26 wayland76 Well, I suppose I'm influenced by the fact that I once made a language that can be represented roughly in English as "rakugo", but you have to swallow all the letters to make it sound like it was supposed to
11:27 KatrinaTheLamia joined #perl6
11:27 wayland76 KatrinaTheLamia: Are you logged in as root? :)
11:27 * carlin probably pronounces it completely wrong
11:28 KatrinaTheLamia wayland76: nope
11:29 KatrinaTheLamia wayland76: I only look like I am logged in as root to mess with people
11:29 sri_kraih joined #perl6
11:30 wayland76 KatrinaTheLamia: I'd considered that possibility -- that's why I asked :)
11:31 KatrinaTheLamia though it has been a while since anybody has actually mentioned anything about it
11:32 KatrinaTheLamia the fun thing is: if you whois me, my name is apparently Admiral Katherine Janeway. A Real Name not usually associated with the root account
11:35 M_o_C Btw: Why is the link to the perl6 chan black?
11:36 M_o_C (On perl6.org)
11:38 wayland76 M_o_C: They all are on my browser
11:38 wayland76 M_o_C: Are you hacking on the p6 website at the moment?
11:39 M_o_C No.
11:39 KatrinaTheLamia well, perl6.org was looking into making itself more diverse... don't worry we plan to add yellow links and purple links into it... I'd prolly add hispanic, but I have no idea the colour normally associated with hispanic people.
11:39 wayland76 ok, just checking :)
11:39 DanielC joined #perl6
11:39 KatrinaTheLamia hmm... tasteless image idea: clansman camelia.
11:40 M_o_C Well, at least not remotely, I am working on a patch for the CSS based logo.
11:40 wayland76 M_o_C: Oh, ok.  I'll stop working on that then :)
11:40 KatrinaTheLamia M_o_C: CSS based logos generally are a pain in the ass. It would likely be easier to use some manner of CGI or ECMAscript
11:41 mberends hi DanielC
11:41 M_o_C Hm... But then you'd have to create a new template for each theme...
11:41 DanielC o/ mberends
11:41 wayland76 KatrinaTheLamia: That might make it harder to create new themes though
11:41 jnthn mberends: Hi! :-)
11:41 M_o_C And start using a template engine...
11:41 mberends hi jnthn!
11:42 DanielC mberends: How is life? How is the parrot-module-lib project?
11:42 lisppaste3 MoC pasted "Logo to CSS transition" at http://paste.lisp.org/display/86357
11:43 M_o_C That's what I came up with. I'm not sure though, wether it's abusing the a tag :)
11:44 KatrinaTheLamia wayland76: M_o_C: naw.. just have the img tag itself point to a CGI file that redirects or paints the image. In the same URL that decides what style you are using, it directs the image where to go.
11:44 mberends DanielC, life is good, glad to see you had a terrific honeymoon. I was waiting with parrot-module-lib for your return, and a few related developments need to be taken into account.
11:44 * KatrinaTheLamia clicks
11:44 DanielC mberends: ok
11:45 DanielC mberends: So what are those developments?
11:45 mberends DanielC: freezing Rakudo's bytecode is broken, so the safest thing to file is the PIR level.
11:45 DanielC ok
11:46 mberends DanielC: and at YAPC::EU there was a strong recommendation *not* to lose the source code
11:46 * masak looks forward to the continuation of mberends++' and DanielC++'s work on parrot-module-lib
11:46 mberends hi masak!
11:46 DanielC o/ masak
11:46 masak mberends, DanielC: oh hai :)
11:46 KatrinaTheLamia M_o_C: yeah... that is not going to work for CSS in a lot of browsers. For one, the img tag in there already will overlay it. If you remove that, you will have some issues having the "a" appear in the first place
11:47 DanielC mberends: Keeping the source code seems sensible.
11:47 KatrinaTheLamia anyways... I've got to get some rest
11:48 mberends DanielC: the amount of file space should not be a concern, so I was considering a change to the file format to store 3 blobs per module: source, PIR, PBC, and we switch to using the PBC when Parrot freeze works.
11:49 DanielC Is it a good idea to store the source code as a blob?
11:50 DanielC Would it be possible to make a directory where we keep all the packages in their original format?
11:50 mberends I was hoping to have one file for all code
11:50 DanielC Ok.
11:51 mberends to avoid the Unicode file naming problem
11:51 DanielC Is there an advantage to that? I figured that the reason to keep the source code was for backup.
11:52 DanielC Also, should we be worried about file size? I don't know what the file size limit in Windows is.
11:52 moritz_ if your goal is a distribution system for open source software, keeping the source is kind of indisputable, no?
11:52 mberends some people thought the "you're screwed" Q&A you wrote was rather funny, but the source allows you to regenerate lost metadata.
11:53 mberends DanielC: you're pretty much guaranteed 2GB file size anywhere
11:54 DanielC Is there a risk that installed modules might go over that if we stored source code + PIR + PBC ?
11:54 mberends unlikely
11:54 DanielC ok
11:55 DanielC Did the other guys at the conference like the idea of a single file for everything including source code? I'm sure that you guys understand the pros and cons better than I do.
11:56 DanielC So I'll trust your judgment on this.
11:57 DanielC Wait... if you lose the metadata file, how are you going to find the source code? The metadata file is what tells you where each blob starts and ends...
11:57 masak Hidden Markov Models? :P
11:57 mberends it wasn't discussed anywhere, so it may be just my personal preference. It is the one I want to build, and use the opportunity to open the module hooks in Rakudo. If someone else wants to link a different module loader to the hooks later on, that's fine by me.
11:59 mberends DanielC: good point. we may need some kind of delimiter between source, PIR and PBC records. PBC's are also strings...
11:59 DanielC Unless I'm missing something, the source code only serves as a backup if it is in a separate file from the metadata and the big file with all the modules...
12:00 DanielC Delimiter: ok
12:00 mberends the big file is what wer'e making accessible, so it would be great if the source could live there.
12:01 kst joined #perl6
12:01 DanielC In general a module is composed of several source code files... Do you think that might present a problem? (ie. we'll lose that organization in the big file).
12:03 DanielC Or maybe I'm wrong and a module is always just one file.
12:03 mberends Is a module not just 1 file? I know there's a module declaration distinct from package. I'd settle for a 1:1 mapping module:file initially.
12:03 DanielC I'm probably wrong.
12:03 DanielC If it's just one file, that makes things easier.
12:03 DanielC Can a module have binary blobs like images?
12:03 mberends I don't remember either :)
12:04 moritz_ mberends: that's the choice of the author
12:04 moritz_ a file can contain multiple module declarations
12:04 DanielC moritz_: Can a module declaration cover two files?
12:04 DanielC e.g. through some sort of "include" command?
12:05 moritz_ well, you can augment classes (and maybe modules) in other files
12:05 moritz_ and you can always read and eval files, though that's discouraged
12:06 DanielC This might make the module library a bit more tricky.
12:06 masak I say make the design simple for now.
12:06 masak one-file-one-module is one of those 99% things.
12:06 DanielC masak: Do you think it's ok to assume a 1-to-1 map between files and modules?
12:07 masak I do.
12:07 DanielC ok
12:07 masak there are examples of cases where both directions break...
12:07 masak ...but I don't think they merit consideration in the design.
12:07 DanielC How about binary blobs like images? Can modules have those?
12:07 masak that's not for me to say. :) I only deal in text.
12:09 moritz_ DanielC: distributions might contain those
12:09 DanielC mberends: If we are going to store the source code in the Big File, we might as well also store a second copy of the metadata. So each module would be represented as <delimiter> + <metadata> + <source> + <PIR> + <PBC>
12:10 DanielC The <metadata> tells you the location of <source>, <PIR> and <PBC>.
12:10 DanielC moritz_: Ok. Then we'll have to keep that in mind and find a way to store those too.
12:10 mberends DanielC: an excellent idea!
12:11 DanielC :-D
12:11 mberends but that's an easy change. the area that need the most work is interpretation of wildcard module specifiers
12:11 DanielC ok
12:11 moritz_ what kind of blobs are you folks talking about? tar archives?
12:11 mberends eg (from S11) use Dog:ver(v1.2.1..^v1.3);
12:12 mberends moritz_: the frozen or stringified compiled module PBC code
12:13 mberends ugh, what an unwieldy way to say that
12:14 moritz_ DanielC's proposal read as if there were mutliple logical files in a single blob
12:15 mberends in some sense there would be
12:15 mberends a module lib maintenance tool would have to do a kind of concatenate
12:16 moritz_ that's why I asked about tar
12:16 DanielC moritz_: For the parrot-module-lib we were talking about storing all the modules inside a single big huge file. Then using a metadata file to locate the start and end of each of the original files in the distribution.
12:16 moritz_ it does such concatenation already
12:16 mberends we discussed tar but shrank away from the exact file layout requirements
12:16 DanielC moritz_: The problem with that is that if you lose the metadata file, the Big file becomes useless.
12:17 moritz_ that's why you pack the meta data into the Big File
12:17 moritz_ and end up with... a typical archive :-)
12:17 DanielC moritz_: And that leads into what we are talking about right now. :-)
12:17 mberends tar files have Unix specific fields
12:17 drbean joined #perl6
12:18 DanielC moritz_: So now we are talking about storing both metadata and the original source code in the Big File.
12:18 moritz_ hey, you could use AVI as a container file format :-)
12:19 moritz_ that can store meta data and blobs
12:19 moritz_ (ok, I'm not entirely serious here)
12:19 DanielC moritz_: The idea of a separate metadata file is to speed up data retrieval. The metadata file is small and fast to read and it tells you the byte offsets where you can find the stuff you need. So you can just do a disk seek which is fast and cheap.
12:20 mberends to avoid repetition, the design so far is here: http://www.gitorious.org/parro​t-module-lib/main/trees/master
12:20 DanielC So, having the metadata inside the Big File is meant as a backup.
12:21 mberends the metadata will be very useful for arbitrary utilities
12:21 takadonet joined #perl6
12:21 takadonet morning all
12:22 masak takadonet: o/
12:22 DanielC o/
12:22 takadonet how are you masak?
12:22 masak takadonet: I'm greatly enjoying my short existence here in the physical world. how about you?
12:23 takadonet masak: Nice and tired from biking into work but feel great
12:23 masak I realized today that the rest of my life will only have more and more of Perl 6 in it. that made me happy.
12:23 takadonet Noticed that people are still visiting my blog even if it been over a month since I last posted anything
12:24 pmurias ruz_: ping
12:25 colomon moritz_: I've integrated your patch to my patch, and made a bunch of other improvements to the Rat stuff as well, most notably a huge performance improvement in extreme cases.
12:26 colomon I've also got a couple of minor Complex patches mixed in at the moment.  I need to learn git's branching features yesterday, apparently.
12:27 moritz_ colomon: it'll be another 3 hours or so until I can take a look, presumably
12:27 colomon I'm running spectest right now, but I expect the only failures will be because of your div and big numbers, and the $_ % * test added yesterday.
12:29 colomon I may need some help sorting out the right way to send in the patches.  But I can certainly wait 3 hours.
12:31 payload joined #perl6
12:31 moritz_ we your spectest is over, I can surely help you. I just don't have the time and concentration to review patches right now
12:34 ejs1 joined #perl6
12:34 mberends DanielC: I plan to work on proto for a bit, and then get back to parrot-module-lib maybe tomorrow. The HOWTO has some older comments for you.
12:35 ruz_ pmurias: pong
12:35 DanielC mberends: ok
12:45 masak rakudo: class A { has $.foo; method Bool() { $.foo } }; say A.new(:foo(False)).Bool; say A.new(:foo(False)) ?? "OH NOES" !! "OH HAI"
12:45 p6eval rakudo 9bcba6:  ( no output )
12:45 masak hm, grr.
12:46 masak it says "OH NOES" on my box.
12:46 sri_kraih joined #perl6
12:47 masak aha, it's .true I need to override.
12:47 masak all these twin methods (.list and .List, .true and .Bool, .int and .Int) confuse me.
12:48 moritz_ aye
12:48 moritz_ rakudo: say int(3.4)
12:48 p6eval rakudo 9bcba6: OUTPUT«3␤»
12:48 moritz_ that's going away soon.
12:48 masak that's fine.
12:48 masak what I would like is a consistent approach to casting.
12:48 masak more precisely, which methods call which.
12:49 masak to me, it felt perfectly sensible to override .Bool just now and have it implicitly call that in the trinary operator.
12:49 masak but it didn't; it was .true I should override.
12:49 masak and there's (as far as I know) no simple principle to tell me why I should use one and not the other.
12:58 psychoschlumpf joined #perl6
13:01 pmurias ruz_: how's your tisql thing going?
13:01 pmurias s/going/doing/
13:03 kst joined #perl6
13:05 masak my first 'literate Perl 6' blog post draft now works. http://gist.github.com/178765
13:05 masak i.e. when you run it with perl6-literate, it prints an ASCII labyrinth for you.
13:06 ruz_ pmurias: busy with clients, but it works and I'm going to work on it more soon
13:06 mberends masak++: :) reminds me of a Maze program in MS Basic decades ago
13:07 masak I haven't finished editing the post yet -- will do that tonight when I'm off-duty. however, it would be nice to receive early feedback on the post. in particular, I'd like it if someone tried running the post with perl6-literate. http://github.com/masak/perl6-literate/
13:07 masak mberends: thanks. :)
13:07 ruz_ pmurias: going to look at Devel::Declare to replace the currently bad looking structs based API
13:08 mberends masak: will test it this evening. got a few mins for proto discussion?
13:08 masak always. :)
13:09 mberends :) I would like to keep the project download directories separate from .ecosystem, and use 'make install' to selectively copy files across. is that your expectation?
13:10 moritz_ that's pretty much what CPAN.pm does
13:10 mberends indeed
13:10 moritz_ (except with a different name)
13:10 moritz_ and I think that's sane
13:10 ruz_ pmurias: are you interested in something particular?
13:10 masak mberends: yes, that is my expectation.
13:11 masak mberends: at the very least, there must be some distinction between modules that aborted during installation, and modules that succeeded.
13:12 mberends ok, and 'make test' also verifies useable code.
13:12 mberends ok, then every project needs to 'make install' proto's way, implying a $ECOSYSTEM target directory
13:12 masak aye.
13:12 masak basically, it means that we'll have one more step than we do now.
13:13 masak right now 'install' means 'download'.
13:13 mberends so this change will also break all projects until they respect $ECOSYSTEM
13:13 masak aye.
13:13 masak that is to be expected.
13:13 ruoso joined #perl6
13:13 mberends ok, that's all I was worried about :)
13:13 masak as long as we warn and explain, the users will be alright.
13:14 PerlJam masak++ "...and found total happiness."      :)
13:14 masak :)
13:15 mikehh_ joined #perl6
13:16 moritz_ masak++ "Exponents kill."
13:16 PerlJam heh, I was just about to do that too!
13:17 masak thanks for positive acclaim. please also tell me what you find difficult to understand.
13:17 PerlJam nothing so far
13:17 moritz_ masak: why is init-cells-and-walls a submethod?
13:17 moritz_ it seems to me that it could very well be an ordinary method
13:17 masak moritz_: because it is called by a submethod.
13:18 pmichaud Good morning, #perl6
13:18 masak pmichaud: morning!
13:18 moritz_ masak: does that mean it must be a submethod?
13:18 masak moritz_: dunno, it felt right. checking S12 now.
13:18 jnthn pmichaud: morning
13:18 moritz_ masak: I could see how a subclass might want to call it itself
13:20 masak moritz_: seems I imagined the directive in S12 that said submethods should only call submethods. I'll change it to being a method instead. thanks.
13:20 moritz_ masak: but please test first :-)
13:20 masak aye.
13:21 asciiville joined #perl6
13:21 PerlJam BTW, look at http://panelpicker.sxsw.co​m/ideas/index/interactive  Search for perl or python or ruby or php.   Hopefully the same ratios hold for the panels that make  :)
13:21 masak you folks should try writing an executable blog post. it's exhilirating to change something in it and then just run it. :)
13:22 masak yup, still works with 'method'. moritz_++
13:22 PerlJam also btw, if we want to market perl, SXSW is a good place for that.
13:24 pmurias ruz_: was thinking of working on the Devel::Declare layer
13:25 pmurias ruz_: is the code avalible somewhere?
13:26 ruz_ oh, I can use a hand on that, have read D::D's docs, but not close to 100% understanding
13:26 ruz_ sure it's in jifty's svn
13:26 pmurias url?
13:26 moritz_ masak++ # very nice blog post
13:26 masak \o/
13:26 ruz_ pmurias: a sec
13:27 masak I still need to write a bit more about the speed analysis, and some sort of conclusion. will do that tonight.
13:27 ruz_ pmurias: http://svn.jifty.org/svn/jifty.org/Jifty-DBI/
13:28 PerlJam masak: btw, wrt your comment on map blocks.  That's the one thing my coworkers have commented on about my code is that I use map (perhaps too much) and they have difficulty understanding what I'm doing.   I prefer to think that it's just their lack of familiarity with map  :)
13:29 PerlJam (granted, this is in perl 5)
13:29 masak PerlJam: map is definitely an idiom. I guess unfamiliarity with that idiom would make it harder to read.
13:29 moritz_ aye
13:29 dakkar do Perl 6 "foreach" loops return the list of results from the block?
13:29 moritz_ I usually also prefer for-loops if they are nested
13:30 masak dakkar: aye.
13:30 moritz_ dakkar: it should. It doesn't yet in Rakudo
13:30 masak that's another reason I didn't use them. :)
13:30 dakkar uh. so one of map/foreach can be a macro defined in terms of the other one
13:30 masak I also use 'is also' everywhere. and an unnecessary couple of assignments in BUILD.
13:31 dakkar I thought that map was more like gather { foreach { take ... } }
13:31 dakkar i.e. that foreach did not return anything useful
13:31 masak dakkar: 'foreach' is spelled 'for' in Perl 6, btw.
13:31 masak dakkar: but no, they're semantically identical. except that for-loops aren't expressions by default, so you have to 'do' them.
13:32 dakkar oh. ok.
13:32 moritz_ std: my @a = for 1..4 { $_ }
13:32 p6eval std 28155: OUTPUT«[31m===[0mSORRY![31m===[0m␤for() interpreted as function call at line 1 ; please use whitespace instead of parens␤Unexpected block in infix position (two terms in a row) at /tmp/2YRboi9Icg line 1:␤------> [32mmy @a = for 1..4 [33m⏏[31m{ $_ }[0m␤    expecting any of:␤
13:32 p6eval ..bracke…
13:32 dakkar re: the renaming, I knew it existed, I just rememberd it the other way around…
13:32 dakkar uh??
13:32 moritz_ std: my @a = do for 1..4 { $_ }
13:32 p6eval std 28155: OUTPUT«ok 00:02 38m␤»
13:32 moritz_ that's what masak meant, I guess
13:33 masak aye.
13:33 moritz_ but the error mesage is less than awesome
13:33 PerlJam dakkar: he's showing that "map" is a shortcut for "do for"  :)
13:33 dakkar right
13:33 moritz_ "please use whitespace instead of parens" - which parens did I use?
13:33 masak TimToady: LTA error above! ^
13:34 pmichaud wow, very interesting backscroll this morning :)
13:34 masak we aim to please. :)
13:35 * masak wonders how the synonymity between 'do for' and 'map' squares with the '-> {}' special case we discussed after YAPC::EU
13:35 masak IIRC, pmichaud opined that a '-> {}' block after a for-loop, if it wasn't a compile-time error, should consume elements. I opined that it shouldn't.
13:36 dakkar I don't remember your rationale (and I was there…)
13:36 pmichaud (rats):   I find it a little jarring that   say 1.2 + 3.4;  will end up producing "23/5".
13:36 masak my rationale is simple: consume nothing is what it says it does. :)
13:37 moritz_ pmichaud: aye
13:37 moritz_ me too
13:37 moritz_ I never liked that in pugs
13:37 pugs_svn r28156 | mberends++ | [Temporal.t] replace soon-to-be-deprecated int() with floor()
13:37 dakkar masak: yes, perfectly rational. my take was "consume nothing, and give a big warning"
13:38 moritz_ I always have to ask it a second time to get a result with which I can work
13:38 masak a warning would perhaps be fine. unless there's a legitimate use for that idiom.
13:38 jnthn Why would 1.2 + 3.4 produce a rat? Does 1.2 not give a Num? :-/
13:38 pmichaud that's not the current thinking
13:38 pmichaud the current thinking is that 1.2 would become 6/5
13:38 jnthn ...
13:39 masak afk &
13:39 moritz_ well, the current thinking, but the spec still says Num, no?
13:39 jnthn .oO( sometimes I'd rather there were less thinking )
13:39 pmichaud the spec is largely silent
13:39 pmichaud there's one paragraph that implies it's a Num
13:39 moritz_ well, the test suite then.
13:39 jnthn I thought you'd have to ask for a rat?
13:39 jnthn e.g. write 6/5 if that's what you wanted...
13:39 pmichaud well, we've seen how the test suite can change quickly....    infix:</>  versus infix:<div>  :)
13:40 jnthn div is integer division, no?
13:40 pmichaud when given integers
13:40 jnthn And infix:</> ?
13:40 pmichaud is "numeric division"
13:41 pmurias ruz_: does tisql have any docs?
13:41 jnthn *nod*
13:41 jnthn And new Rat(3,4) is the way to make a rational?
13:41 jnthn erm
13:41 jnthn Rat.new(3,4)
13:41 pmichaud 3/4  works
13:41 moritz_ 3 / 4 is a Rat
13:41 moritz_ as an operator
13:41 moritz_ and 3/4 is a literal
13:41 moritz_ 3.0 / 4 is a Num
13:41 moritz_ (in my thinking)
13:42 jnthn 3 / 4 and 3/4 would parse differently, then?
13:42 pmichaud yes
13:42 * PerlJam wonders when fortran started sneaking into perl
13:42 jnthn What about $x/$y and $x / $y ?
13:42 pmichaud in STD.pm, they already do.
13:42 pmichaud $x/$y is always a infix:<div>
13:42 pmichaud sorry, infxi;</>
13:42 jnthn OK
13:42 pmichaud sorry, infix:</>
13:42 jnthn I think I can cope with that.
13:42 jnthn But 3.4 becoming a Rat feels...odd.
13:42 pmichaud in particular,   +"3/4"  produces a Rat
13:43 moritz_ but I don't see much sense in the 3/4 special case anymore
13:43 pmichaud and +"4+5i" produces a Complex
13:43 moritz_ since it produces a Rat anyway
13:43 jnthn At least, not without a declaration in a use statement or something saying "I want Rat by default" or so.
13:43 jnthn I think otherwise it's going to be rather surprising...
13:43 jnthn As in, too surprising.
13:44 pmichaud on the plus side -- the recent spec changes that TimToady++ made to contextual variables means we can haz context vars real soon.  Like possibly even today.
13:44 moritz_ woot
13:44 diakopter use Rizzo;
13:44 pmichaud diakopter++  # muppets!
13:44 jnthn pmichaud: That would be The Awesome.
13:45 jnthn pmichaud: In Rakudo / NQP first, and then later in regexes, I guess?
13:45 dalek rakudo: 4c08564 | mberends++ | src/setting/Temporal.pm:
13:45 dalek rakudo: [Temporal.pm] replace soon-to-be-deprecated int() with floor()
13:45 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/4​c08564108f7aaab568b72e1efa3d6b222cde837
13:45 pmichaud jnthn:  regexes not today, but very quickly
13:45 jnthn \o/
13:45 pmichaud jnthn: the new declaration format is *much* easier to handle
13:46 jaffa8 what is context vars?
13:46 diakopter how recent were those dynamic scoped vars changes?
13:46 * jnthn didn't see 'em.
13:46 pmichaud yesterday
13:46 diakopter (looking for diff/url)
13:46 diakopter oh
13:46 pmichaud essentially:    my $var is context<rw> = 4;   is now    my $*var = 4;
13:46 moritz_ mberends: btw we'll soon have a "div' operator that does integer division, so you can get rid of most of the floor() calls anyway
13:47 diakopter ok. marking it in the name makes it much easier to implement.
13:47 ruz_ pmurias: doc/tisql/
13:48 colomon moritz_: I'm back and ready to work on this thing a bit.
13:48 jnthn pmichaud: Ah, that is rather easier.
13:48 diakopter jaffa8: a separate stack of dynamically scoped vars
13:48 dakkar wasn't '*' the twigil for globals? (I keep getting behind on the specs)
13:48 jnthn pmichaud: And in regex, :my $*var = 4 ?
13:48 pmichaud jnthn: Yes.
13:48 jnthn pmichaud: Heh. Nice. :-)
13:48 colomon Though I'm afraid my patch will have conflicts with mberends' recent.
13:48 moritz_ dakkar: globals and context vars were unified some time ago
13:49 pmichaud dakkar: yes, '*' was "global", but is now "contextual"
13:49 kst joined #perl6
13:49 ruz_ pmurias: no api docs at the moment, but probably you want to look at Q/C it exports functions and replace them with nice DD based things
13:49 colomon (And when I say "ready", I mean, modulo distractions by a screaming small child.)
13:49 dakkar pmichaud: did we lose direct access to globals, or something replaced it?
13:50 mberends colomon: the floor() change was minor, mainly to help you get away from int() problems reported earlier
13:50 colomon mberends: I already had a work-around, but I'm sure your way is much cleaner.
13:50 pmichaud dakkar: GLOBAL::<$var>
13:50 antiphase left #perl6
13:51 dakkar ok, good enough: people shouldn't use globals
13:52 colomon mberends++, I should have said.
13:54 colomon rakudo: say :16<dead_beef.face>;
13:54 p6eval rakudo 4c0856: OUTPUT«3735928559␤»
13:55 jnthn pmichaud: ping
13:55 pmichaud jnthn: pong
13:55 colomon I don't understand that notation, but isn't that wrong?
13:55 colomon rakudo: say :16<dead_beef>;
13:55 jnthn pmichaud: Regarding Parrot's CallSignature thing
13:55 p6eval rakudo 4c0856: OUTPUT«3735928559␤»
13:55 pmichaud rakudo: say :16<a.a>
13:55 moritz_ I think the . should be a decimal separator
13:55 p6eval rakudo 4c0856:  ( no output )
13:55 moritz_ so it's wrong
13:56 pmichaud rakudo:  say :10<3.4>;
13:56 p6eval rakudo 4c0856: OUTPUT«3␤»
13:56 jnthn pmichaud: In Perl 6 you can have multiple named parameters passed with the same name.
13:56 pmichaud looks wrong to me.
13:57 jnthn pmichaud: Parrot plans to put those in a Hash, apart from it would appear that this allows one thingy per name.
13:57 jnthn pmichaud: And also, lose the ordering.
13:57 pmichaud I've said repeatedly "that's wrong" but allison++ doesn't seem to notice
13:57 jnthn *sigh*
13:57 pmichaud I want to be able to access the calling arguments directly, not intermediated through some other control structure
13:58 pmichaud If a CallSignature ends up creating a Hash for every subroutine call, we're hosed.
13:58 jnthn Well, in some senses we do need a common structure to get at them from, whether they originated from PIR or C or whatever.
13:59 pmichaud the current implementation doesn't require putting the arguments into a hash
13:59 pmichaud I don't see why CallSignature needs to do that
13:59 jnthn That is, you'd rather see that those were just sequences of name, value, name, value, etc?
13:59 pmichaud I'd like them to end up being Parcels
13:59 jnthn heh
14:00 pmichaud (yes, name, value, name, value)
14:00 PacoLinux joined #perl6
14:00 jnthn I think allison is rather keen on array of positionals + hash of nameds.
14:00 pmichaud right now in Parrot I think I can do:     foo('a' => 3, 'a' => 4)
14:00 jnthn You can
14:00 jnthn However, it'll ignore the 3
14:00 jnthn I guess.
14:00 kidd_ joined #perl6
14:00 colomon rakudo: say :2<1.111>
14:00 p6eval rakudo 4c0856: OUTPUT«1␤»
14:00 jnthn Or at least, the binder will bind the 3 to a, and then re-bind the 4 to a.
14:01 pmichaud right, but the 'a' => 3 argument still appears in the calling arguments list
14:01 moritz_ rakudo: sub foo(*%a) { }; foo(a => 3, a => 4)
14:01 p6eval rakudo 4c0856:  ( no output )
14:01 moritz_ rakudo: sub foo(*%a) { say %a.perl }; foo(a => 3, a => 4)
14:01 p6eval rakudo 4c0856: OUTPUT«{"a" => 4}␤»
14:01 jnthn pmichaud: Right.
14:01 pmichaud and a custom get_params opcode would be able to get at the calling argument if wanted
14:01 jnthn *nod*
14:02 pmichaud anyway, here's my (not well thought out) take
14:02 pmichaud at this stage, I'm not sure I want to throw a lot of issues at allison; I think she'll just deflect them
14:02 pmichaud so I'd rather see *something* land in a state where we can start to fix it, rather than try to point out all of the problems up front (and delay any sort of landing any further)
14:03 jnthn Aye.
14:03 colomon rakudo: say 16 ** 4
14:03 p6eval rakudo 4c0856: OUTPUT«65536␤»
14:04 pmichaud i.e., the "everything into a hash" isn't what we'll ultimately need, but it's pretty close to what Parrot is presently providing
14:04 jnthn If the Hash was replaced by a second array, that we knew was of the form "name, value, name, value, etc..." then we'd be fine.
14:04 pmichaud we can probably make that case to allison, yes.
14:04 jnthn So in that sense, it could be a relatively small change afterwards, I agree.
14:04 cognominal_ what is a :my ?
14:05 pmichaud istr there's also been some discussion about changing Perl 6's interpretation of multiple-same-named-arguments
14:05 dakkar cognominal_: variable declaration inside a regex
14:05 pmichaud so, it's all enough in flux that I'll wait for a few other pieces to land
14:05 cognominal_ I have seen that in STD but not in the specs
14:06 jnthn Sure, I'm just trying to get a sense of overall direction, and know how much I need to worry about various things.
14:06 moritz_ cognominal_: aye, it needs more specs
14:06 cognominal_ why and how  should "my" be any different in rules?
14:07 jnthn Basically, so long as Parrot doesn't document that "it's a hash under the hood", we're likely fine to be able to change as needed later.
14:07 pmichaud I think we'll be able to get it changed no matter what happens :)
14:08 PerlJam cognominal_: what do you mean?
14:08 jnthn True, but having to argue against giving something we didn't want in the first place a deprecation cycle would be silly.
14:09 pmichaud hopefully we'll have at least 2 months to make that argument before the deprecation cycle hits
14:09 jnthn But I agree, it's probably close enough that we can just say "land it and we'll clean up afterwards".
14:09 masak did someone report the :16<a.a> bug?
14:10 jnthn i can haz ticket? ;-)
14:10 moritz_ masak: dontthinkso
14:10 * masak does it
14:11 ejs1 joined #perl6
14:11 cognominal_ Perljam, sorry, I opened STD.pm and it makes sense to me.
14:12 colomon mberends++ # His version of Temporal.t works even with the div and / swap
14:13 mberends phew ;)
14:14 colomon mberends: What a nice feeling that was!  I reverted my changes to yours, and ran the test prepared to spend another twenty minutes fighting with it again... and it just worked right away!
14:15 mberends colomon++
14:15 masak \o/
14:15 masak I look forward to merging those changes with my temporal-flux fork :)
14:15 SmokeMachine joined #perl6
14:16 masak ...a fork which I wouldn't mind sharing with a collaborator, by the way.
14:16 masak would be nice to toss some ideas around.
14:21 jauaor joined #perl6
14:22 Psyche^ joined #perl6
14:22 masak ah. here's a better way to highlight the perceived inconsistency of different conversion methods at present: if I do $obj.say, the $obj.Str method is implicitly called. however, if I do ?$obj or $obj ?? 'foo' !! 'bar', the $obj.Bool method is _not_ called, as one might perhaps generalizingly think. instead, the $obj.true method is called.
14:23 pmichaud masak: this has been a longish discussion topic in previous months
14:23 pmichaud masak: so far I haven't gotten a clear resolution
14:23 pmichaud I've made the same points.
14:23 masak ISTR precious discussion, yes.
14:23 masak today is the first time I've been bitten by it.
14:24 masak I would like to see some kind of consistent rule-of-thumb around the conversion methods.
14:24 pmichaud Same here.
14:25 jnthn Same here too.
14:25 pmichaud (looking for previous discussion)
14:25 PerlJam I thought TimToady was leaning towards adverbials for that.
14:25 PerlJam could be my imagination though
14:25 * jnthn also remembers being in these discussions.
14:27 pmichaud ugh, no good way to search irclogs for ".true"
14:27 kst joined #perl6
14:28 pmichaud small reference at http://irclog.perlgeek.de/​perl6/2009-06-13#i_1238313
14:30 masak well, let it be known: I, as a warrior, would like more clarification in this matter.
14:31 diakopter pmichaud: http://irclog.perlgeek.de/perl6/2008-11-06
14:31 pmichaud some discussion at http://irclog.perlgeek.de/​perl6/2009-04-30#i_1107895   (possibly not latest discussion)
14:32 masak not only .true and .Bool, but also .list and .List, I'd say.
14:32 masak and what does .int do that .Int doesn't?
14:32 pmichaud I know the answer to the last one
14:32 pmichaud .int -> coerce to native int
14:33 masak ah.
14:33 pmichaud .Int -> coerce to Int type
14:33 diakopter pmichaud: ^^ my url above... lots of .true
14:33 masak well, that does make sense.
14:33 pmichaud diakopter: yes, thanks.  I know there have been  at least a few discussions of .true since 2008-11, though :)
14:33 diakopter oh :P
14:34 ejs2 joined #perl6
14:35 masak I liked what pmichaud said in 2008-11-06, though.
14:35 masak eliminate .true and be done with it.
14:35 masak also, eliminate .list
14:36 masak keep .int, since it actually does another type of conversion.
14:36 pmichaud I'm not sure that eliminating .list is right
14:36 pmichaud .list is what we get when we put something into list context
14:36 pmichaud but what it returns is not necessarily a List
14:36 masak oh, interesting.
14:36 masak never thought of that.
14:36 masak but wouldn't @() be enough?
14:37 pmichaud yes, but @() needs to transform to a method of some sort
14:37 pmichaud s/needs to/ought to/
14:37 masak prefix:<@>? :)
14:37 nihiliad joined #perl6
14:37 alester joined #perl6
14:37 pmichaud nope,  iirc   @( ... ) is syntactic
14:38 carlin rakudo: class Foo { method bar { } }; Foo.bar("Lorem ipsum");
14:38 p6eval rakudo 4c0856: OUTPUT«positional inside named args at position 2␤in method Foo::bar (/tmp/dktEvjVyYb:2)␤called from Main (/tmp/dktEvjVyYb:2)␤»
14:39 pmichaud from STD.pm:           | <sigil> <?before '<' | '('> <postcircumfix> {*}           #= $()
14:39 pmichaud i.e., it's not prefix:<@> :-)
14:40 jhorwitz joined #perl6
14:40 masak oki.
14:42 JimmyZ joined #perl6
14:42 JimmyZ rakudo: (2 ** 65).say;
14:42 p6eval rakudo 4c0856: OUTPUT«3.68934881474191e+19␤»
14:43 JimmyZ rakudo: (2 ** 65).perl.say;
14:43 p6eval rakudo 4c0856: OUTPUT«3.68934881474191e+19␤»
14:48 __ash__ joined #perl6
14:51 _jaldhar joined #perl6
14:52 JimmyZ rakudo: (^1).perl.say;
14:52 p6eval rakudo 4c0856: OUTPUT«0..^1␤»
14:52 JimmyZ rakudo: (+^1).perl.say;
14:52 p6eval rakudo 4c0856: OUTPUT«-2␤»
14:52 pugs_svn r28157 | colomon++ | [t/spec] Check in some skipped Complex.sin tests.
14:53 meppl joined #perl6
14:55 mikehh_ rakudo (4c08564) builds on parrot r40912 - make test / make spectest (up to r28156) PASS - Ubuntu 9.04 amd64 (gcc)
14:58 masak o_O
14:58 masak -2?
14:58 TimToady prefix:<+^>
14:58 pmichaud rakudo:  (+(^1)).perl.say
14:58 p6eval rakudo 4c0856: OUTPUT«1␤»
15:00 masak ah.
15:00 masak masak parsefail.
15:00 JimmyZ yes, -2
15:00 colomon moritz_, pmichaud: I just sent an updated version of the div versus / patches to perl6-bugs-followup.  It still needs a bit of work on the div function, other than that it seems to work well.
15:01 JimmyZ masak: I don't know why. rakudo: (^1).perl.say; is 0...^1
15:02 masak JimmyZ: what TimToady said.
15:02 pmichaud JimmyZ: what are you expecting?
15:02 masak JimmyZ: +^ is a prefix operator.
15:03 pmichaud rakudo:  (+ ^1).perl.say
15:03 moritz_ colomon: great. Will look into it in a while
15:03 p6eval rakudo 4c0856: OUTPUT«1␤»
15:03 JimmyZ ah, I understood as separate operator.
15:03 pmichaud rakudo:  (+^ 1).perl.say
15:03 p6eval rakudo 4c0856: OUTPUT«-2␤»
15:04 colomon moritz_: And I will work on $work in the meantime.  :)
15:04 JimmyZ I want to translate these spec to chinese, and upload to pugs svn.
15:04 JimmyZ s/spec/specs/
15:04 jnthn std: sub head(*[$head, @tail]) { return $head }
15:04 p6eval std 28157: OUTPUT«ok 00:03 39m␤»
15:05 jnthn std: sub head(*$head, *@tail) { return $head }
15:05 p6eval std 28157: OUTPUT«ok 00:03 39m␤»
15:05 * jnthn wonders if we may consider those two equivalent.
15:05 jnthn That is, the second is syntactic sugar for the first.
15:05 moritz_ JimmyZ: there's already a start in docs/zh-cn/
15:07 pmichaud I don't think I've ever seen a   *[$head, @tail]  form.
15:07 jnthn std: sub compare (|$args (Num $x, Num $y --> Bool)) { ... }
15:07 p6eval std 28157: OUTPUT«ok 00:03 40m␤»
15:08 jnthn pmichaud: I wasn't expecting it to parse, actually.
15:09 jnthn pmichaud: I was kinda pondering that we'd compile it as an unpack.
15:09 jnthn pmichaud: That is, an unpack of the slurpy.
15:09 jnthn I thought *[...] was invalid.
15:09 jnthn But apparently it at least works syntactically.
15:09 JimmyZ moritz_: yes, I see it.
15:12 kst joined #perl6
15:12 cdarroch joined #perl6
15:17 JimmyZ rakudo: $_ =2; (* * *).say; #  hadn't implement it?
15:17 p6eval rakudo 4c0856: OUTPUT«!whatever_closure␤»
15:18 JimmyZ rakudo: $_ =2; (* - 1).say; #  hadn't implement it?
15:18 p6eval rakudo 4c0856: OUTPUT«!whatever_closure␤»
15:18 moritz_ uhm, what did you expect?
15:18 moritz_ you are creating a closure, and trying to print it without executing it first
15:19 moritz_ rakudo: say (* * *).WHAT
15:19 JimmyZ moritz_: it's from S02
15:19 p6eval rakudo 4c0856: OUTPUT«!whatever_closure␤»
15:19 moritz_ if it were not implemented, my starry obfu wouldn't work :-)
15:19 moritz_ S02 says
15:19 moritz_ so * * * translates to { $_ * $_ }.
15:20 moritz_ it doesn't say that it's executed immediately
15:21 donaldh joined #perl6
15:21 JimmyZ moritz_: I understood that was wrong
15:25 JimmyZ rakudo: (* * *).perl.say;
15:26 p6eval rakudo 4c0856: OUTPUT«{ ... }␤»
15:26 frodwith joined #perl6
15:32 payload joined #perl6
15:57 kst joined #perl6
15:58 masak TimToady: I can't fit my counter-reply into 140 chars. :) The principle of non-action probably applies to those who complain about colors and mascot choice. I think that might be some people's way of starting to pay attention, and that's fine by me.
15:59 masak As long as we give them an easy conduit from the pastel rage to the cool stuff, like grammars, junctions and parameter handling.
16:00 takadonet joined #perl6
16:00 jnthn TimToady: About?
16:00 TimToady I don't know what I'm about
16:01 masak a.k.a "if you think Camelia is the most exciting news we have for you, boy do we have news for you" :)
16:01 jnthn I wish English had a particle indicating I only expected a yes/no answer. ;-)
16:01 jnthn TimToady: I'm looking at unpacking in S06.
16:01 masak "about, eh?"
16:01 TimToady actually I was about to take a shower :)
16:01 jnthn If we consider:
16:01 jnthn oh
16:01 TimToady go ahead
16:01 jnthn ok
16:01 jnthn sub quicksort ([$pivot, *@data], $reverse?, $inplace?) {
16:02 jnthn }
16:02 TimToady yes, one mandatory, to optional
16:02 cotto joined #perl6
16:02 jnthn Here, we can basically make a temporary array @worreva and then use it like |@worreva and bind against :($pivot, *@data)
16:02 jnthn Which works out quite nicely.
16:03 TimToady *two
16:03 jnthn That is, we can just treat what's inside [...] as a nested signature. Does this fix so far with what you had in mind?
16:03 TimToady yes
16:03 jnthn OK, good. :-) So...another one:
16:03 jnthn sub traverse ( BinTree $top ( $left, $right ) ) {
16:03 jnthn }
16:03 TimToady [] just emphasizes that you're thinking of it as a list
16:04 jnthn So in here, I guess it's like we have a signature :( $left, $right )
16:04 TimToady which is applied as an additonal constraint
16:04 jnthn *nod*
16:05 jnthn My question in this second example is, what happens if BinTree had, say, a .middle attribute too?
16:05 jnthn That is, does this signature have some implicit slurpy in it?
16:05 jnthn Or is the way we bind somehow different?
16:06 TimToady I can argue that one both ways
16:06 jnthn Because S06 seems to suggest that here, you'd unpack $left and $right (I guess :(:$left, :$right) woulda done the same) but it'd not matter if there were any other things that oculd be unpacked.
16:06 TimToady does one way make more sense to you?
16:06 jnthn I'd generally argue in the direction of consistency.
16:06 jnthn But we're already consistently inconsistent. :-)
16:07 TimToady well, yes, consistent with what?
16:07 jnthn (e.g. a method will by default get a *%_ unless it has a *%something)
16:07 TimToady but we can't assume *%_ in more than one subsig
16:07 jnthn I'm not sure I follow why?
16:08 TimToady name conflict
16:08 TimToady like sub foo ($a, $a)
16:08 TimToady so I think if we want generic code we should probably force people to write their own *%foo *%bar
16:09 jnthn OK, so when you have a subsignature, the binding of its parent signature is dependent on the binding of the subsignature in some deeper way?
16:09 jnthn That is, other than "here is the hash/array/object that we need to unpack, use this to unpack it")?
16:09 TimToady well, the overall binding fails if the subbinding fails
16:09 jnthn Right, that makes sense.
16:09 jnthn Actually, the one that is really confusing me is:
16:10 jnthn multi traverse ( NAry $top ( :kids [$eldest, *@siblings] ) ) {
16:10 jnthn And this call to it
16:10 jnthn traverse(:kids(@siblings));  # (binds @siblings to $top)
16:10 TimToady that seems kinda bogus
16:10 jnthn That is, binding can't just say "OK, I have an NAry, now I hand it off to the subsignature to unpack"
16:11 jnthn I'd really love it to be.
16:11 TimToady but I'll have to think about it more
16:11 jnthn OK, that's fine, I'm not in a hurry.
16:11 pmichaud TimToady: let us know when you start running out of things to be thinking about :)
16:12 jnthn Anyway, that and the "do you have to write *%foo in there" are probably my most pressing questions.
16:12 TimToady rub it in, why dontcha
16:12 jnthn I'd really kinda like it if the binding of a signature could treat a sub-signature as a black box.
16:12 TimToady I'd say yes on *%foo for now
16:12 pmichaud TimToady: I just want to make sure you know how much we value your input :) :)
16:12 jnthn OK
16:13 TimToady the underlying question is the extent to which the subsignature can coerce different kinds of objects to look like a Capture
16:13 jnthn I can see your point on the naming conflict with *%_ by the way - was a tad slow there. :-)
16:13 jnthn Well, yes.
16:13 jnthn And with a hash and an array that's not so hard.
16:13 kidd_ joined #perl6
16:13 jnthn Because we already define that.
16:13 jnthn But for an object it's a bit more interesting.
16:14 TimToady maybe only for types that define a method defining coercion to Capture
16:14 jnthn Do you see |%hash as being like Capture(%hash) and thus %hash.Capture, BTW?
16:14 TimToady does that sound sane?
16:15 jnthn Well, hmm
16:15 TimToady are you meaning | as rvalue?
16:15 jnthn It'd be nice if you could unpack without having to worry about writing said coercion.
16:15 TimToady or as decl?
16:15 jnthn The first
16:15 jnthn foo(|%foo)
16:15 jnthn erm, too much foo :-)
16:16 jnthn (I know it means something different inside a signature.)
16:16 jnthn I think coerce to capture sounds like a clean design overall though.
16:16 TimToady not sure, might be mediated through Parcel first before turning into Capture, but I could be wrong
16:17 jnthn I've not really grokked the relationship between those yet.
16:17 TimToady well, the Capture coercion might be deducable for some types
16:17 TimToady but we'll have to define that, if so
16:17 jnthn I figure that you can only for attributes unpack things with accessors anyway, otherwise encapsulation is broken.
16:17 TimToady for now we can say there has to be an explicit Capture coercion, or fail
16:17 jnthn We can certainly define it in terms of introspection.
16:18 TimToady yes, esp with mapping attrnames to named params
16:18 jnthn Aye
16:18 TimToady some amount of dwim might be useful there
16:18 jnthn Well, plus it's something we can just define in Object (or Any).
16:18 KyleHa joined #perl6
16:18 jnthn And can define in terms of primitives we already have.
16:18 TimToady but I'll not be disappointed if it's not in 6.0.0
16:19 TimToady mostly just need to have a story on tree matching patterns
16:19 jnthn I'm going to be dealing with unpacking when I re-do signatures, which will be Oct/Nov. :-)
16:19 jnthn Thus why I'm starting to think about this now.
16:19 TimToady okay.  I'm starting to think about taking a shower. :)
16:19 jnthn :-)
16:20 jnthn Thanks for the input, I've got a decent sense of where things are likely head now.
16:20 jnthn *heading
16:20 pugs_svn r28158 | fglock++ | mp6 - updated mp6-rakudo
16:20 TimToady bbl &
16:21 pugs_svn r28159 | fglock++ | mp6 - mp6-p6parrot.pl is now mp6-rakudo.pl
16:24 molaf joined #perl6
16:36 kst joined #perl6
16:38 robertttt joined #perl6
16:39 moritz_ colomon: is the current version of your patch in RT?
16:45 colomon I e-mailed it, but I don't know if it got there.
16:45 colomon The current e-mail has four files attached, I believe.
16:49 colomon It doesn't look like it is.  Arrrgh.
16:50 colomon I get the impression RT is horribly clunky?
16:50 colomon If you send me an e-mail (at the address those patches were sent from) I will send you the latest directly.
17:01 moritz_ colomon: moritz@faui2k3.org
17:02 quietfanatic By the way, floor() is not the same as int()
17:03 quietfanatic The latter ought to be truncate() I think, according to spec...
17:03 moritz_ aye
17:03 quietfanatic rakudo: truncate(5/3)
17:03 p6eval rakudo 4c0856:  ( no output )
17:03 quietfanatic rakudo: truncate(-5/3)
17:03 p6eval rakudo 4c0856:  ( no output )
17:04 moritz_ but in this case they were equivalent
17:04 quietfanatic rakudo: say truncate(-5/3)
17:04 p6eval rakudo 4c0856: OUTPUT«-1␤»
17:04 quietfanatic Oh, okay
17:04 quietfanatic say floor(-5/3)
17:04 quietfanatic rakudo: say floor(-5/3)
17:04 p6eval rakudo 4c0856: OUTPUT«-2␤»
17:05 colomon yes, I'm hoping the time doesn't go negative...
17:05 colomon ;)
17:05 quietfanatic That'd be bad in all sorts of ways.
17:05 maerzhase1 joined #perl6
17:07 iblechbot joined #perl6
17:08 robertttt left #perl6
17:14 justatheory joined #perl6
17:15 Hashwolf joined #perl6
17:16 moritz_ colomon: the patches you sent by mail seem to be based upon older patches - the question is which one(s)?
17:17 moritz_ colomon: if you could nopaste the first 6 or 7 items from 'git log' that would help
17:18 jnthn Is there a large version of the Rakudo logo somewhere?
17:18 colomon moritz_: I think 0001 is probably identical to the first patch sent, 0002 from my second e-mail, and 0004 mostly (entirely?) your patch.
17:19 * jnthn has hunted high and low on rakudo.org
17:19 lisppaste3 colomon pasted "local git log" at http://paste.lisp.org/display/86376
17:20 colomon The ".sin and .cos methods for Complex." is the one I didn't send along.
17:20 moritz_ yes
17:20 moritz_ the 0001 you sent me is Fix-Rat.perl etc., so I'll need to get the previous one from RT
17:21 moritz_ man, we should just give you commit access
17:21 moritz_ or clone, and branch
17:23 colomon I'd be happy to branch in github and push the changes to it... think I can I figure out how to apply the patches again on my end.
17:23 moritz_ that would be great
17:23 colomon I guess clone / branch -- not quite down with the lingo yet.  :)
17:23 colomon Okay, let me see what I can do...
17:24 somberes joined #perl6
17:24 __ash__ joined #perl6
17:24 moritz_ ok, mberend++'s patch to Temporal.pm conflicted with your first patch
17:25 moritz_ so I branched off locally from before that point
17:25 colomon So should I branch from yours?
17:26 kst joined #perl6
17:26 colomon Or is locally actually on your machine?
17:26 colomon Fork!  Fork is the word I wanted.  ;)
17:27 jnthn language! ;-)
17:27 moritz_ ok, I just pushed the branch div-slash-changes to github
17:29 DanielC joined #perl6
17:30 colomon moritz_: Found it on github.  Should I fork that, then?
17:31 moritz_ colomon: dunno, maybe just wait. If the spectests are positive (except for arith.t) I'll merge or rebase, resolve the conflict and be happy
17:31 colomon moritz_: okay, waiting.
17:37 __ash__ anyone getting this error when they build?     Malformed declaration at line 976, near "Rat multi "
17:38 * moritz_ not
17:40 sahadev2 joined #perl6
17:40 colomon Is there a recommended git book?  I see "Pragmatic Version Control with" which would match my old Subversion book, but I also see an O'Reilly book, and I've trusted them ever since I first read the Camel book...
17:40 somberes i'd know for svn
17:40 somberes not for git though
17:41 moritz_ colomon: I can recommend http://ftp.newartisans.com/​pub/git.from.bottom.up.pdf + the manual pages ;-)
17:41 literal http://progit.org/book/
17:41 literal this is a recent one
17:41 literal written by one of the developers, I think
17:42 literal I think this site links to pretty much all you need to know about git(including the book above): http://gitready.com/
17:42 jaffa8 joined #perl6
17:42 __ash__ hmm.... i just did a git pull then make and its failing to build, did a distclean and reconfigured and it still failed
17:44 PerlJam __ash__: what rev?
17:44 __ash__ git commit  4c08564108f7aaab568b72e1efa3d6b222cde837
17:45 __ash__ specifically: /Users/john/Projects/rakudo​/parrot_install/bin/parrot  perl6_s1.pbc --target=pir src/gen_setting.pm > src/gen_setting.pir is what fails
17:45 PerlJam mine is doing that right now.
17:45 PerlJam and it looks like it didn't fail.
17:45 moritz_ __ash__: the error seems to be related to Rat stuff, which is going to get changed in 20 minutes anyway
17:46 __ash__ okay, never mind then, i'll wait and see
17:46 moritz_ __ash__: so maybe wait a bit more, maybe the changes-to-come will fix your problem magically. If not, feel free to bother again ;-)
17:55 colomon moritz_++, literal++ # even though neither is a hardcopy that I can easily read away from the computer over the holiday weekend  :)
17:56 moritz_ is_approx(1i, (-1+0i)**(1 div 2), '...')
17:56 moritz_ "not quite"
17:57 gbacon joined #perl6
17:57 colomon :O
17:57 colomon Where is that one?
17:57 moritz_ anyway, that's easily fixed
17:57 moritz_ arith.t
17:58 colomon ah, I see.  I was a bit too fast with the cut and paste there.
17:58 colomon I mean search and replace.
17:59 colomon would be interesting to just make it **(1 / 2) -- in the long run that should work....
17:59 moritz_ colomon: any objections to squashing those four commits into one before pushing?
18:00 colomon moritz_: Not at all!
18:00 colomon I don't know how to squash commits yet.
18:01 moritz_ dammit, I broke it :/
18:01 moritz_ history rewriting should only be done by those who can work with it ;-)
18:02 colomon Woah, Pro Git is on-line and printed.  Spiffy.
18:04 pugs_svn r28160 | lwall++ | [S32] clean up some numeric spec fossils
18:05 PerlJam colomon: do you know about the R operator prefix?
18:05 colomon PerlJam: Errrr... reverses list operators?
18:05 PerlJam $a R* $b is the same as $b * $a
18:07 PerlJam colomon: Just a random though, but you could use it in defining the dual (Int,Rat)  (Rat,Int)  (i.e., just define one of those and then do $a R<op> $b for the other
18:07 colomon Yes, yes you could.  Fascinating...  ;)
18:08 colomon I shouldn't be making changes until the big merge is done, though.
18:10 __ash___ joined #perl6
18:11 moritz_ I think I've sorted it all out. Just a large build + Temoporal.t test...
18:12 kst joined #perl6
18:12 TimToady but using R* involves an indirection, which is why we defined multisigs (Int,Rat)|(Rat,Int) that use the same body
18:12 colomon Just ordered Pro Git.  And my wife started making bad jokes about the name right away.
18:13 colomon TimToady: Do tell more?
18:13 moritz_ colomon: NYI in rakudo
18:14 colomon Blast!
18:14 colomon But sounds like a nice concept, anyway.
18:14 moritz_ from the past!
18:15 pmichaud jnthn: (rakudo logo) ... how large, what format?
18:15 TimToady std: multi infix:<*> (Rat $x, Int $y) | (Int $y, Rat $x) { ... }
18:15 p6eval std 28159: OUTPUT«ok 00:03 40m␤»
18:16 eternaleye joined #perl6
18:16 TimToady gah, still haven't finished backlogging *yesterday's* backlog
18:17 PerlJam my goal was to corrupt colomon with knowledge and it looks like I accidently succeeded beyond my expectations  :)
18:18 pmichaud rakudo:  (<1 2 3>.join ' ').say
18:18 colomon TimToady++ # very cool syntax for something I've needed to do a zillion times.
18:18 p6eval rakudo 4c0856: OUTPUT«Confused at line 2, near "' ').say"␤in Main (src/gen_setting.pm:3454)␤»
18:18 pmichaud (just checking.)
18:18 colomon PerlJam++ # for accidentally improved corruption.
18:18 TimToady rakudo: <1 2 3>.Str.say
18:18 pmichaud "Perl 6 allows you to corrupt things beyond your expectations."
18:19 p6eval rakudo 4c0856: OUTPUT«1 2 3␤»
18:19 pmichaud Ummm. or something like that.
18:19 TimToady std: (<1 2 3>.join ' ').say
18:19 p6eval std 28159: OUTPUT«[31m===[0mSORRY![31m===[0m␤Two terms in a row at /tmp/0uTXiVU1OB line 1:␤------> [32m(<1 2 3>.join [33m⏏[31m' ').say[0m␤    expecting any of:␤ bracketed infix␤  infix stopper␤    standard stopper␤ statement modifier loop␤  terminator␤FAILED 00:02 37m␤»
18:19 moritz_ STD.pm's errors are more awesome ;-)
18:20 pmichaud agreed
18:20 TimToady well, but at least parrots says where it's confused
18:20 TimToady *parrot
18:21 dalek rakudo: 39c3f4b | (Solomon Foster)++ |  (5 files):
18:21 dalek rakudo: infix:</>(Int, Int) creates a Rat, infix:<div>(Int, Int) an Int, as per latest S03
18:21 dalek rakudo: Also fix depending code, namely Temporal.pm
18:21 dalek rakudo: Fix Rat.perl to return "N/M" rather than "Rat.new(N,M)".
18:21 dalek rakudo: Switch GCD routine to use % instead of -, for a vast performance increase on widely mismatched numbers. Add Rat * Int, Int * Rat, Rat / Int, and Int / Rat overloads.
18:21 dalek rakudo: Patch mostly by colomon++, with some minor contributions and cleanups by moritz
18:21 dalek rakudo: See RT #68898 for discussion.
18:21 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/3​9c3f4b6d5f2a702f336d33e79d23391adf36980
18:21 dalek rakudo: 4b9cd2d | moritz++ | docs/ChangeLog:
18:21 dalek rakudo: [docs] ChangeLog updates
18:21 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/4​b9cd2db307d19d7f7c9b84b39448982be4c5dbb
18:21 colomon moritz_++ indeed!
18:22 pugs_svn r28161 | moritz++ | [t/spec] correct meaning of infix:<div> and infix:</>. Patch courtesy (mostly) by colomon++
18:23 moritz_ I think it's a good sign that these changes made Temporal.pm more elegant ;-)
18:23 rindolf joined #perl6
18:23 rindolf Hi all.
18:24 pmichaud I don't think that infix:<div> and infix:<mod> need to be added to gen_metaop_pir.pl in order to work
18:24 pmichaud I might be mistaken, but I think that once an operator is in the setting the metaops are generated automagically for them.
18:24 colomon moritz_: Yes, that's always a good sign.
18:24 moritz_ pmichaud: without it >>div<< gave parse errors
18:24 pmichaud although the 0-argument forms might not be
18:24 frederico joined #perl6
18:24 pmichaud okay, I'll look into that.
18:25 colomon The unicode form of >>div<< worked, however, which definitely had me puzzled.
18:25 pmichaud right, that means there's a bug in the gen_hyperop subroutine in Rakudo then
18:28 * moritz_ is curious how much fallout his latest patch will cause in various apps
18:28 moritz_ s/his/our/
18:29 colomon moritz_: If anything doesn't work, blame TimToady.  ;)
18:29 TimToady "I am too soon old, and too late smart"
18:30 colomon Error validating server certificate for 'https://svn.parrot.org:443':
18:30 colomon - The certificate is not issued by a trusted authority. Use the
18:30 colomon fingerprint to validate the certificate manually!
18:30 colomon I don't remember getting that message previously?
18:30 moritz_ colomon: it's pretty new, and known to the parrot folks
18:30 colomon K.
18:31 pmichaud parrot's certificate expired this past week
18:31 ispy_ joined #perl6
18:32 moritz_ http://moritz.faui2k3.org/tmp/out.svg that's what rakudo does to my poor SVG::Plot module ;-)
18:32 moritz_ (notice the y axis labels on the left)
18:33 colomon :)
18:34 pmichaud I don't mind if .Str omits the /1 for cases where the denominator is 1
18:34 moritz_ that's a good idea, actually
18:34 colomon I'd be happy to make that change as soon as I've got the new build up and running.
18:35 colomon Agreed that it is a good idea.
18:37 colomon Errr... but only for .Str, right?  .perl should still be "N/1".
18:38 pmichaud correct
18:38 pmichaud we want to preserve Rat status with .perl
18:39 Tene joined #perl6
18:41 ispy_1 joined #perl6
18:41 FCO joined #perl6
18:41 moritz_ I wouldn't be opposed to makeing .Str the equivalent of .Num.Str
18:42 moritz_ that would imply the least breakage for existing code
18:42 pmichaud I want to know what the spec will say on the topic, and do that.
18:42 moritz_ although it looks hackis
18:42 moritz_ h
18:43 pmichaud aha
18:43 pmichaud the problem with >>div<< versus »div« appears to have something to do with prior invocations of the hyperop
18:44 pmichaud rakudo: multi sub infix:<xyz>($a,$b) { $a+$b };  say (1,2,3) >>xyz<< (4,5,6);  say (1,2,3) >>xyz<< (4,5,6);
18:44 p6eval rakudo 4c0856: OUTPUT«579␤ResizablePMCArray: Can't pop from an empty array!␤in Main (/tmp/c5nhEEMkCp:2)␤»
18:44 TimToady I think Str should be .Num.Str
18:45 TimToady use .perl to get the rat back out
18:45 jnthn pmichaud: huh?! :-/
18:45 * jnthn wonders what on earth could cause a bug like that
18:45 pmichaud I don't know either
18:45 colomon rakudo: multi sub infix:<xyz>($a,$b) { $a+$b };  say (1,2,3) >>xyz<< (4,5,6);
18:45 jnthn rakudo: multi sub infix:<xyz>($a,$b) { $a+$b }; sub foo{ say (1,2,3) >>xyz<< (4,5,6);  say (1,2,3) >>xyz<< (4,5,6); }; say "alive"
18:46 p6eval rakudo 4c0856: OUTPUT«579␤»
18:46 p6eval rakudo 4c0856: OUTPUT«alive␤»
18:46 pmichaud TimToady: so   ~(1/3)  would output  "0.333333" ?
18:46 jnthn Ah, certainly not a parse error then.
18:46 jnthn :-/
18:46 frettled phew :)
18:46 TimToady yes, I don't think people want to see rats accidentally :)
18:46 pmichaud jnthn: no, it's an invocation error.  in my earlier example it did execute once
18:47 moritz_ TimToady: ok, I'll implement that.
18:47 pmichaud it's only the second invocation that fails
18:47 jnthn pmichaud: ah, yes, I missed that
18:47 TimToady and in the case of /10 it comes out exact anyway
18:47 jnthn epic wtf
18:47 colomon moritz_: It will break many (all?) of the rat.t tests, I think.
18:47 pmichaud colomon: I would hope not
18:47 * pmichaud checks rat.t
18:47 frettled TimToady: there's (almost) too much -Ofun with rats.
18:47 moritz_ colomon: I'll take a look. If it does, the tests are not very good
18:48 moritz_ ui
18:48 pmichaud oh yes, the tests are testing for strings
18:48 colomon pmichaud: Tests are based on .Str being a fraction, I think.
18:48 TimToady well, that's bad, I think, from a usability point of view
18:48 colomon I mean, easy enough to switch to the .perl form for them.
18:48 pmichaud colomon: it depends on what aspect you're testing
18:48 moritz_ rakudo: say Rat.new(2, 3) == 2 / 3
18:48 p6eval rakudo 4c0856: OUTPUT«1␤»
18:48 pmichaud if you're testing stringification, you should test for strings
18:48 pmichaud if you're testing .perl, you test .perl
18:48 moritz_ colomon: beware, the .perl function is not canonical
18:49 pmichaud so the real question is.... what is the test attempting to test?
18:49 moritz_ for example "Rat.new(2, 3)" is an allowed outcome
18:49 frettled rakudo: multi sub infix:<xyz>($a,$b) { $a+$b };  say (1,2,3) >>xyz<< (4,5,6); say (1,2,3) »xyz« (4,5,6);
18:49 p6eval rakudo 4c0856: OUTPUT«579␤ResizablePMCArray: Can't pop from an empty array!␤in Main (/tmp/ei9wrvYltJ:2)␤»
18:49 frettled aha
18:49 frettled rakudo: multi sub infix:<xyz>($a,$b) { $a+$b };  say (1,2,3) »xyz« (4,5,6); say (1,2,3) »xyz« (4,5,6);
18:49 sharada left #perl6
18:49 TimToady (2/3).nd returns 2 elems maybe?
18:49 p6eval rakudo 4c0856: OUTPUT«579␤ResizablePMCArray: Can't pop from an empty array!␤in Main (/tmp/SREHnWW2DM:2)␤»
18:49 sharada joined #perl6
18:50 frettled aha²
18:50 pmichaud ".nd"  reminds me a bit of :nd
18:50 TimToady was thinking more of .kv
18:50 pmichaud right
18:50 colomon You can certainly test that the numerator and denominator are correct.
18:50 colomon But that's a lot more verbose, for sure...
18:50 pmichaud I first saw it as  (2).nd
18:51 TimToady so combining .nu and .de would give use .nude
18:51 frettled /o\
18:51 jnthn want
18:51 jnthn ;-)
18:51 frettled Nude Klingon Perl 6
18:52 frettled I see a talk coming up.
18:52 TimToady I think /o\ looks like an orz head-on
18:52 frettled expn orz?
18:52 pmichaud here it looks a bit like a lamp shade
18:52 TimToady it doesn't expn
18:52 TimToady it's a pic
18:52 pmichaud or like someone has put his hands over his head
18:52 frettled pmichaud++
18:53 TimToady orz is a guy bowing down to the left and banging head on floor
18:53 pmichaud I'd be find with Rat.nd for now
18:53 pmichaud *fine
18:54 colomon Do we have == for Rat yet?
18:54 moritz_ rakudo: say 2/3 == 4/6
18:54 p6eval rakudo 4b9cd2: OUTPUT«1␤»
18:54 frettled TimToady: ah, like _/\o
18:55 colomon Aren't 2/3 and 4/6 not Rats?
18:55 pmichaud they're rats
18:55 colomon rakudo: say 2 / 3 == 4 / 6
18:55 p6eval rakudo 4b9cd2:  ( no output )
18:55 zamolxes joined #perl6
18:55 pmichaud rakudo should be numifying each value and comparing that
18:55 colomon rakudo: say (2 / 3) == (4 / 6)
18:55 p6eval rakudo 4b9cd2: OUTPUT«1␤»
18:55 colomon Ah.
18:56 colomon I suppose if they the same num and den, they will map to the same Num, yes?
18:56 pmichaud supposedly
18:56 moritz_ aye
18:57 colomon Worthwhile for "efficiency" to overload anyway?  Is overloading == even possible at the moment?
18:58 frettled rakudo: say (4/2 / 6/2) # Is this 4/2/6/2 or (4/2) / (6/2)?
18:58 p6eval rakudo 4b9cd2: OUTPUT«1/6␤»
18:58 frettled yay
18:58 colomon 4/2/6/2, eh?
18:59 frettled :)
18:59 pmichaud rakudo is likely wrong there.
18:59 pmichaud I suspect that should be 2/3
18:59 frettled is the rat supposed to have lower precedence?
18:59 pmichaud rakudo:  say ((4/2) / (6/2))
18:59 p6eval rakudo 4b9cd2: OUTPUT«2/3␤»
18:59 pmichaud rats are terms
18:59 frettled the rat division, even.
18:59 pmichaud 4/2 is a term,    4 / 2   is a division
18:59 colomon What about 4 / 2 / 6?
19:00 pmichaud 4 / 2 / 6   is the same as   4 * 1/2 * 1/6
19:00 frettled rakudo: say 4 / 2 / 6
19:00 p6eval rakudo 4b9cd2: OUTPUT«1/3␤»
19:00 pmichaud oh, wait
19:00 pmichaud right, it'd be  (4 / 2) / 6
19:00 colomon but why should you prefer that to 4 / (2 / 6)?
19:00 frettled rakudo: say 4 / 2 / 6 / 2
19:00 pmichaud because division is left associative
19:00 p6eval rakudo 4b9cd2: OUTPUT«1/6␤»
19:01 TimToady but yes, 4/2 is a Rat literal
19:01 TimToady at least according to STD
19:01 pmichaud in perl5, 4 / 2 / 6 gives me 0.333333333333333333
19:01 frettled Cool.  Yet another thing for obfuscated Perl 6 coding contests.  Muahahaha.
19:01 pmichaud Rakudo just does the same :)
19:03 TimToady likewise 1+2i is supposed to be a complex literal
19:03 TimToady looks like S02 is deficient in stating that
19:04 pmichaud also, we noticed yesterday that S05 doesn't have :my
19:04 TimToady nodnod
19:04 moritz_ isn't it ':'\w .*? ';' being a Perl expression?
19:04 moritz_ modulo one-pass parsing
19:05 TimToady no
19:05 frettled TimToady: oh, right, that was that complex number spec thingy that I was supposed to come up with a proposal for.
19:06 TimToady moritz_: but I'm not quite sure what you're really asking
19:07 pugs_svn r28162 | colomon++ | [t/spec] Fixed dead_beef.face, prior version relied on div of two integers producing a fractional number.
19:07 moritz_ TimToady: I thought that under some circumstances ':' in regexes allow inline Perl 6 code
19:07 moritz_ arbitrary code, that is
19:07 colomon moritz_: Are you working on cleaning up rat.t, or would you like me to do that (now that I've spectest'd my shiny new rakudo clone)?
19:08 TimToady colomon: it's kinda fun to stir the ant nest and see all the ants scurrying around :)
19:08 moritz_ colomon: I'm currently rather distracted, so feel free
19:08 TimToady moritz_: oh, that, yes; sorry I dropped the context on the floor
19:09 TimToady but I think the \w must be a known declarator
19:10 ispy_ joined #perl6
19:10 TimToady (one can always use a :my ($) = side_effect; where the declaration is just a peg for the init.)
19:10 TimToady in fact, I was very happy when I figured out that one could use a null record for that in Ada
19:12 TimToady (to have side effects during elaboration)
19:16 colomon rakudo: say 4/5;
19:16 p6eval rakudo 4b9cd2: OUTPUT«4/5␤»
19:16 moritz_ rakudo: say -4/-5
19:16 p6eval rakudo 4b9cd2: OUTPUT«4/5␤»
19:20 donaldh joined #perl6
19:22 colomon Okay, if I implement Rat.nude, what's the cleanest way to check that two arrays match in Test.pm?
19:23 colomon Rat.new(1,4).nude.perl eq (1,4).perl ?
19:23 moritz_ is_deeply Rat.new(1,4), [1, 4], 'description';
19:24 colomon you mean s_deeply Rat.new(1,4).nude [1, 4], 'description';   right?
19:24 colomon s/s/is/
19:24 moritz_ yes
19:24 moritz_ but with a comma added ;-)
19:24 colomon gotcha
19:29 pmichaud is  Rat.new(1,4).nude, (1,4), 'description'    is what I'd be after
19:30 colomon why the differences?
19:30 pmichaud I don't think we need is_deeply here.  we're just testing equivalence of two immutable lists
19:30 colomon and as long as I've got you there, why $!numerator instead of $.numerator in Str?
19:30 colomon Rat.Str, I mean.
19:31 moritz_ pmichaud is right
19:31 pmichaud in .Str I was avoiding the method call
19:31 pmichaud but I agree with TimToady++ that  Rat.Str should forward to Num.Str
19:32 colomon Right, I just wanted to make sure it was okay if I used $.numerator elsewhere in the class def.
19:32 pmichaud sure, it's fine.  It does impose an extra method call at the moment
19:32 jaffa8 God++
19:32 jaffa8 ++++
19:33 pmichaud we'd want to use $.numerator if we think Rat will be used in another class composition where .numerator might be overloaded, though :)
19:33 lisppaste3 colomon pasted "Rejiggered rat.t" at http://paste.lisp.org/display/86387
19:34 colomon Can you guys take a quick look at that and make sure it looks reasonable to you?
19:34 pmichaud +1
19:36 maerzhase joined #perl6
19:37 moritz_ colomon: in the first few cases I'd make the second argument to is() a string literal
19:37 pmichaud that's fine with me also
19:37 colomon moritz_: I didn't do that because I don't want to lock in a particular way of stringifying the number
19:37 moritz_ colomon: the prepend at least a ~
19:38 pmichaud I'd put ~ in front of the second argument
19:38 colomon Okay, can do.
19:38 moritz_ I don't think it makes much of a difference, but testing a stringification against a string seems much saner ;-)
19:38 pmichaud then you know that you're making sure they stringify ..... what moritz++ types faster than me
19:38 colomon Fair enough!
19:39 colomon is(~(Rat.new(1,4)), ~(0.25), "Rats stringify properly");
19:39 colomon etc.
19:39 moritz_ +1
19:40 kst joined #perl6
19:40 colomon multi method nude() { [$.numerator, $.denominator]; }
19:40 colomon Is that okay?  I'm never sure about returning arrays...
19:40 moritz_ I'd try without the brackets first
19:40 colomon (It does work, all the new tests pass now.)
19:41 moritz_ so that 'for Rat.new(2, 3).nude { .say }' prints two lines
19:41 colomon I mean, it works with brackets, trying without now.
19:41 moritz_ that's how I understood it, yes ;-)
19:42 colomon Ah, yup, works without brackets too.  moritz_++
19:42 maerzhase joined #perl6
19:45 eternaleye_ joined #perl6
19:46 hugme joined #perl6
19:47 moritz_ hugme: show json
19:47 hugme moritz_: the following people have power over 'json': masak, moritz_, viklund
19:47 moritz_ hugme now with more introspection[tm]
19:47 jnthn hugme: hug me
19:47 * hugme hugs me
19:48 jnthn aww
19:48 frettled hugme: show up
19:48 hugme frettled: sorry, I don't know anything about 'up'
19:48 TimToady eliza was smarter than that
19:48 frettled bah :)
19:48 frettled TimToady: yup :)
19:48 icwiener joined #perl6
19:49 [1]jaffa8 joined #perl6
19:49 TimToady or maybe hugme is a creature out of Babel-17
19:50 hugme joined #perl6
19:50 moritz_ hugme: hug me
19:50 * hugme hugs moritz_
19:50 moritz_ better? ;-)
19:50 TimToady hugme: hug yourself
19:50 * hugme hugs yourself
19:50 frettled haha
19:50 frettled hugme: hug hugme
19:50 * hugme hugs hugme
19:51 frettled hugme: hug hugme hugs hugme
19:51 * hugme hugs hugme
19:51 kidd_ joined #perl6
19:51 TimToady hugme, hug metoo
19:51 * hugme hugs metoo
19:51 TimToady just testing :)
19:52 frettled hugme, hug ¹²³
19:52 * hugme hugs ¹²³
19:55 lisppaste3 colomon annotated #86387 "Rejigger rat.t, take 2" at http://paste.lisp.org/display/86387#1
19:56 rindolf hugme: hug TimToady
19:56 * hugme hugs TimToady
19:56 moritz_ colomon: +1
19:57 rindolf There was something about a blogger putting "Everyone needs a hug." in his blog comment form by default, and reducing the amount of trolls considerably.
19:58 frettled haha
19:58 frettled that's a good one
19:58 [1]jaffa8 hugme� hug frettled
19:58 [1]jaffa8 hugme: hug frettled
19:58 * hugme hugs frettled
19:58 arnsholt rindolf: I am definitely stealing that idea! =D
19:58 diakopter hugme: hug gmail
19:58 * hugme hugs gmail
19:58 rindolf arnsholt: it's yours!
19:59 arnsholt Yeah, gmail looks like it needs a hug
19:59 [1]jaffa8 hugme: hug perl6
19:59 * hugme hugs perl6
19:59 TimToady hugme, hug Camelia gently
19:59 * hugme hugs Camelia
19:59 diakopter hugme: hug hugs hugs hugs hugs hugs hugs hugs hugs
19:59 * hugme hugs hugs
19:59 * moritz_ stops pointing out that hugme also has a serious function
20:00 moritz_ but since I wrote it nobody has asked for commit access to perl6-examples :)
20:01 TimToady we're all too busy hugging the bikeshed
20:02 [1]jaffa8 What serious function_
20:02 [1]jaffa8 ?
20:02 moritz_ [1]jaffa8: adding contributors to github projects
20:03 [1]jaffa8 What github projects?
20:03 moritz_ hugme: list projects
20:03 hugme moritz_: I know about these projects: json, perl6-examples, proto, svg-matchdumper, svg-plot, tufte
20:04 mr_ank joined #perl6
20:04 [1]jaffa8 you mean perl6 related projects
20:04 moritz_ currently, yes
20:04 frettled hugme: hug [1]jaffa8
20:04 * hugme hugs [1]jaffa8
20:05 [1]jaffa8 maybe I can spare a small time to create an example
20:05 frettled hugme: show perl6-examples
20:05 hugme frettled: the following people have power over 'perl6-examples': TimToady, [particle], masak, moritz_, pmichaud
20:05 frettled hugme: show proto
20:05 hugme frettled: the following people have power over 'proto': TimToady, [particle], masak, moritz_, pmichaud
20:05 moritz_ I can add more people to these lists on demand
20:05 [1]jaffa8 What examples are left to do?
20:06 * TimToady boggles
20:06 moritz_ the only requirement is that they have to be registered with freenode
20:06 jaffa8 is it automatic_
20:06 jaffa8 ?
20:07 moritz_ if it were manual, I wouldn't have written a bot for it.
20:07 eternaleye joined #perl6
20:07 TimToady hugme, hug all the unwritten examples of the world
20:07 * hugme hugs all the unwritten examples of the world
20:07 frettled TimToady: hee-hee, nicely caught
20:08 moritz_ that would have been my recommended workaround too ;-)
20:08 frettled hugme, hug Camelia warmly
20:08 * hugme hugs Camelia
20:08 jaffa8 So can I log in?
20:08 frettled hmm, didn't that have the correct nbsp?  hm.
20:08 moritz_ hugme: hug Camelia warmly
20:08 * hugme hugs Camelia warmly
20:09 jaffa8 what about the password?
20:09 jaffa8 IS it the same as here?
20:10 frettled jaffa8: In case you don't already know: http://github.com/perl6/perl6-examples/tree/master
20:11 perl7 joined #perl6
20:11 mr_ank left #perl6
20:13 colomon rakudo: say 2 / .666666
20:13 hercynium joined #perl6
20:13 p6eval rakudo 4b9cd2: OUTPUT«3.000003000003␤»
20:14 colomon rakudo: say 2 / (2 / 3)
20:14 p6eval rakudo 4b9cd2: OUTPUT«3/4␤»
20:14 colomon whoops.
20:14 frettled wow
20:14 colomon nah, it's just a bug of mine.
20:14 SmokeMachine joined #perl6
20:14 frettled oh, because of the div - / change?
20:15 colomon Well, because of writing that portion of Rat.
20:15 donaldh_ joined #perl6
20:15 colomon but the change is why 2 / 3 is a Rat.
20:16 colomon Admit it seems very very crazy that code I wrote is in the p6eval.
20:16 donaldh_ joined #perl6
20:17 colomon Ah, found the bug.
20:17 frettled ?
20:17 kst joined #perl6
20:18 moritz_ multi sub infix:</>(Int $a, Rat $b) { Rat.new($b.denominator, $a * $b.numerator);
20:18 moritz_ }
20:18 moritz_ that should be Rat.new($b.denominator * $a, $b.numerator)
20:18 colomon Right!
20:18 colomon I wasn't finding it because I kept on looking at denominator and numerator to see what was wrong.
20:19 colomon It was the very last test I was going to add today.
20:20 colomon The previous test for that operator was wrong in the exact way needed to hide the bug.  :)
20:20 colomon When I added a new test the problem was obvious.
20:22 frettled Thanks, I think I just might have learned something tonight, too.
20:22 colomon I'm pondering adding a bunch of tests that just compare the results you get with Rat with the Num versions....
20:22 moritz_ sure, good idea
20:23 dalek rakudo: 0d6c42b | moritz++ | src/setting/Rat.pm:
20:23 dalek rakudo: fix infix:</>(Int, Rat)
20:23 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​d6c42bcf0cc5ab01fa439fbfffa021b8360bcef
20:24 colomon Oh ick, now I'll have to figure out how to merge your patch and mine.  :)
20:25 moritz_ sorry :/
20:25 moritz_ colomon: git pull --rebase
20:25 colomon moritz_++
20:28 colomon Took a little fiddling, but that did it.
20:31 aftershock4 Why github?
20:31 aftershock4 Why not something else?
20:32 moritz_ aftershock4: because the projects that we are interested in live on github
20:32 moritz_ s/we/I/ maybe
20:34 colomon say (1/2 2/3 -1/4 4/5 2/7 65/8).perl
20:35 colomon rakudo: say (1/2 2/3 -1/4 4/5 2/7 65/8).perl
20:35 p6eval rakudo 4b9cd2: OUTPUT«Confused at line 2, near "2/3 -1/4 4"␤in Main (src/gen_setting.pm:3454)␤»
20:35 colomon rakudo: say (1/2 2/3 (-1/4)  4/5 2/7 65/8).perl
20:35 p6eval rakudo 4b9cd2: OUTPUT«Confused at line 2, near "2/3 (-1/4)"␤in Main (src/gen_setting.pm:3454)␤»
20:35 moritz_ rakudo: say (1/2, 2/3, -1/4, 4/5, 2/7, 65/8).perl
20:36 p6eval rakudo 4b9cd2: OUTPUT«[1/2, 2/3, -1/4, 4/5, 2/7, 65/8]␤»
20:36 moritz_ you need some kind of operator between them
20:36 colomon moritz_++
20:37 colomon Wow, that added 190 working Rat tests pretty quickly.
20:39 aftershock4 I have already something in perl 6 examples
20:41 aftershock4 moritz_,I have already something in perl 6 examples
20:41 moritz_ nice
20:42 moritz_ aftershock4: do you need commit access?
20:42 eternaleye joined #perl6
20:43 aftershock4 give me one
20:43 aftershock4 i have an account as jaffa4 there.
20:44 moritz_ hugme: add jaffa4 to perl6-examples
20:44 hugme moritz_: successfully added jaffa4 to perl6-examples
20:45 moritz_ aftershock4: welcome! Be kind, and have the appropriate amount of fun
20:45 aftershock4 Be kind?
20:45 aftershock4 what do you mean?
20:45 aftershock4 It is not possible to talk in github.
20:46 moritz_ don't delete other people's stuff, don't break their code
20:47 aftershock4 what is fun?
20:47 moritz_ hugme: add carlins to perl6-examples
20:47 hugme moritz_: successfully added carlins to perl6-examples
20:47 moritz_ hugme: add szbalint to perl6-examples
20:47 hugme moritz_: successfully added szbalint to perl6-examples
20:48 moritz_ szbalint: I found that you were forking perl6-examples on github - now you're a committer and push your stuff directly
20:54 moritz_ (I just merged your changes BTW)
20:54 moritz_ hugme: add Util to perl6-examples
20:54 hugme moritz_: successfully added Util to perl6-examples
20:54 colomon moritz_: I've got my patches ready for Rat, but gmail is on the fritz, alas.
20:55 pmichaud hugme:  hug moritz_
20:55 * hugme hugs moritz_
20:55 aftershock4 Is it true? there is no %, any more.
20:56 TimToady S03:748
20:58 kst joined #perl6
21:00 aftershock4 What is 748?
21:01 TimToady line #
21:01 TimToady you can view the pods directly, or go to the irclog site and click on that, which turns into link
21:01 frettled «Mr. Jaffa?  Important call on line number 748.»   ;)
21:01 M_o_C joined #perl6
21:02 moritz_ aftershock4: if you look at the IRC logs (link in the channel topic), the S03:748 is a link to the correct line in S03
21:03 colomon What's the rakudobug e-mail address?  I'm helpless without gmail to handle my address book....  ;)
21:03 aftershock4 I usually use the html eversion
21:03 moritz_ colomon: rakudobug@perl.org
21:04 colomon moritz_++  # trying to get pine to send in this patch for me on my backup e-mail account
21:07 r0bby joined #perl6
21:07 colomon Okay, with any luck that worked.
21:08 colomon #68926
21:11 Chillance joined #perl6
21:35 pugs_svn r28163 | moritz++ | [t/spec] completely overhaul Rat tests, patch courtesy by colomon++
21:35 pugs_svn r28164 | moritz++ | [t/spec] more diagnosis output in rat.t
21:35 pugs_svn r28165 | moritz++ | [t/spec] fix Rat stringification in num.t
21:37 colomon moritz_++ # gack, I forgot to check the spectest after the changes!
21:38 dalek rakudo: ba10463 | last.of.the.careless.men@gmail.com++ | src/setting/Rat.pm:
21:38 dalek rakudo: Move Rat.Str to new standard, add Rat.nude.
21:38 dalek rakudo: Signed-off-by: Moritz Lenz <moritz@faui2k3.org>
21:38 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/b​a10463f51e252cb7d7d383c7a925ef2697e5fd1
21:39 tak11 joined #perl6
21:47 tak11 joined #perl6
21:47 r0bby joined #perl6
21:48 kst joined #perl6
21:55 masak joined #perl6
21:56 masak blog post ahoy! http://use.perl.org/~masak/journal/39568
21:56 frettled uhoh ;)
21:58 moritz_ masak++
21:58 masak the first blog post that I've written a module for. :)
22:02 frettled masak++ - awesome!
22:02 masak thank you, kind sir.
22:03 moritz_ so what should I blog about this weekend? ;-)
22:03 frettled moritz_: rats and other pests :D
22:04 moritz_ we haven't had a Tidings post in quite some time
22:04 masak true.
22:07 jnthn ooh a masakpost
22:07 masak a longish one. and it's executable!
22:08 jnthn ...if only I could find total happiness as easy as you did... :-)
22:08 masak I don't actually need to point out that all the really cool readers paste the blog post and try running it through perl6-literate, do I?
22:08 masak the reward is an ASCII labyrinth!
22:08 jnthn (mention of qbasic)++
22:09 masak my favourite was always Turbo Basic, though.
22:09 masak it was a few years earlier, and had debugging.
22:09 masak unlike QBasic, it also compiled to .EXE -- Quick Basic did too, IIRC.
22:10 jnthn masak: It wasn't until this post that I actually got what literate programming actually *is*.
22:10 jnthn Wow, such a simple idea. :-)
22:10 jnthn masak: So I just prefix code in the blog post with > ?
22:10 masak jnthn: even this is a distortion of the original idea, mind.
22:11 masak jnthn: yes.
22:11 masak jnthn: and keep blank lines between code and comments.
22:11 jeekobu Such mazes can be generated by random walks with completely local checks
22:12 masak jeekobu: is that so?
22:12 jeekobu Yeah
22:12 moritz_ jeekobu: write a blog post about it!
22:12 jnthn masak: Nice, I may try that.
22:12 jeekobu Give me a little while and I can probably sketch it up
22:12 moritz_ (including Perl 6 code, of course)
22:12 jnthn masak: # RAKUDO: S06/Attributive parameters
22:12 jnthn masak: Those should work in Oct or Nov. :-)
22:13 masak jnthn: I'll change the post then. :)
22:13 jnthn masak: In fact, I already sketched them into my signature refactoring plan. :-)
22:13 masak jeekobu: extraordinary claims require extraordinary evidence. :)
22:13 masak jnthn++
22:16 masak time to go to bed. o/
22:17 masak jeekobu: if you do sketch up something, feel free to phenny-tell me or email me or leave a comment on the blog post or in the backlog. :)
22:17 sahadev2 left #perl6
22:18 jnthn phenny: tell masak "run("rm $tempfile");" in perl6-literate could be unlink($tempfile) and then more portable
22:18 phenny jnthn: I'll pass that on when masak is around.
22:18 Whiteknight joined #perl6
22:23 jeekobu masak: Alright, I'm working on a sketch
22:34 kidd_ joined #perl6
22:39 explorer joined #perl6
22:48 synth joined #perl6
22:49 kst joined #perl6
23:21 donaldh joined #perl6
23:23 japhb phenny, tell masak In http://use.perl.org/~masak/journal/39568 , the paragraph that explains what an equivalence relation means, you have a couple places (in prose and in equations) where you say x but mean z.
23:23 phenny japhb: I'll pass that on when masak is around.
23:35 kst joined #perl6
23:42 jeekobu PerlJam: tell masak I emailed a maze sketch to your gmail
23:42 jeekobu Er crap, sorry
23:43 jeekobu phenny: tell masak I emailed a maze sketch to your gmail
23:43 phenny jeekobu: I'll pass that on when masak is around.
23:43 * jeekobu kicks the tab completion
23:53 TimToady hugme, hug jeekobu for thinking tab completion can read minds
23:53 * hugme hugs jeekobu
23:54 scud joined #perl6
23:55 pmichaud rakudo:  say 1/3
23:55 p6eval rakudo ba1046: OUTPUT«0.333333333333333␤»
23:56 pmichaud rakudo:  say (1/3).WHAT
23:56 p6eval rakudo ba1046: OUTPUT«Rat()␤»
23:57 ihrd joined #perl6
23:58 jeekobu rakudo: say Rat(.25832465412852582852)
23:58 p6eval rakudo ba1046: OUTPUT«invoke() not implemented in class 'Rat'␤in Main (/tmp/U86MeGeobv:2)␤»

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

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs