Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-07-05

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:05 whiteknight joined #perl6
00:11 UncleFester6 left #perl6
00:23 DeltaZero joined #perl6
00:40 tokuhiro_ joined #perl6
00:59 kst joined #perl6
01:00 scott__ joined #perl6
01:15 cognominal_ joined #perl6
01:16 cognominal__ joined #perl6
01:25 ItchyNose joined #perl6
01:34 cognominal_ joined #perl6
01:37 colomon sorear: already had it started before I had to go play the concert tonight.
01:58 colomon r: say sprintf("%e", 100000)
01:58 p6eval rakudo 810e61: OUTPUT«1.000000e+05␤»
02:00 dayangkun joined #perl6
02:06 c1sung joined #perl6
02:20 * colomon now has sprintf passing all tests again, including the new %e, %E, %f, %F, %g, and %G tests he added.  This is kind of scary on some level, because he's pretty sure he doesn't actually have sprintf working correctly yet.
02:27 colomon r: say sprintf("%10%")
02:27 p6eval rakudo 810e61: OUTPUT«'%' is not valid in sprintf format sequence '%10%'␤  in sub sprintf at src/gen/CORE.setting:2067␤  in block <anon> at /tmp/i3xhuGgoqC:1␤␤»
02:27 colomon r: say sprintf("%%")
02:27 p6eval rakudo 810e61: OUTPUT«%␤»
02:27 colomon nr: say sprintf("%10%")
02:28 p6eval niecza v19-7-g5e25209: OUTPUT«%␤»
02:28 p6eval ..rakudo 810e61: OUTPUT«'%' is not valid in sprintf format sequence '%10%'␤  in sub sprintf at src/gen/CORE.setting:2067␤  in block <anon> at /tmp/WWOPBAZkA5:1␤␤»
02:28 colomon interesting... looks like rakudo is correct on that one, at least according to general definitions of sprintf
02:31 dalek roast: eb74863 | (Solomon Foster)++ | S32-str/sprintf.t:
02:31 dalek roast: Add a bare minimum of tests for %e, %E, %f, %F, %g, and %G.
02:31 dalek roast:
02:31 dalek roast: More tests here are definitely needed.
02:31 dalek roast: review: https://github.com/perl6/roast/commit/eb74863a64
02:38 colomon sorear: I've committed my first batch of sprintf changes locally, but I'm not going to push them until I'm more confident I haven't broken something that used to work.
02:47 odoacre joined #perl6
02:49 scott___ joined #perl6
03:02 cognominal__ joined #perl6
03:13 smash joined #perl6
03:52 eiro joined #perl6
03:54 dalek star: 8101c73 | pmichaud++ | Makefile:
03:54 dalek star: Sort MANIFEST to get sane order of files in tarball.  Possible fix to RT #113992.
03:54 dalek star: review: https://github.com/rakudo/star/commit/8101c73de6
04:46 thou joined #perl6
05:17 birdwindupbird joined #perl6
05:32 moritz \o
05:38 daxim joined #perl6
05:39 adu joined #perl6
05:41 dalek doc: 11712c1 | moritz++ | lib/Pod/To/SectionFilter.pm:
05:41 dalek doc: [p6doc] avoid warnings if requested method was not found
05:41 dalek doc: review: https://github.com/perl6/doc/commit/11712c17d1
05:43 kaare_ joined #perl6
05:45 szabgab joined #perl6
05:45 szabgab communicating via email is slow
05:46 szabgab moritz: gm, I have some question regarding p6doc and the the REPL
05:47 szabgab I tought it would be nice to allow p6doc to allow   ./bin/p6doc chomp
05:47 szabgab or p6doc $*PROGRAM_NAME
05:48 szabgab pr just p6doc PROGRAM_NAME
05:48 szabgab s/pr/or
05:49 moritz well, p6doc PROGRAM_NAME and p6doc routine_name might very well clash
05:49 szabgab qo the queestion 1) where should the docs for global variables go?
05:49 kaleem joined #perl6
05:49 moritz oh, you meant literal $*PROGRAM_NAME :-)
05:49 moritz szabgab: doc/variables.pod
05:49 szabgab 2) it would be nice if p6doc could index all the pods so it will have an easy way to look up where a keyword is documented
05:50 moritz agreed
05:50 szabgab should it be   p6doc --index   or an external script?
05:51 szabgab oh and I think it would be nice (and probably faster?) if p6doc had and interactive mode
05:52 szabgab so you launch it and it gives you a prompt for searching and displaying docs
05:54 moritz szabgab: htmlify has some code that might be used for indexing
05:55 moritz szabgab: I guess we'll need to factor out some of that into a module, and then ... yes, probably a separate script
05:55 moritz szabgab: oh, and we don't have a mechanism yet for running arbitrary commands during the 'make' step, nor for installing data files
05:55 moritz szabgab: so, fun times ahead :-)
05:55 szabgab I'll look at that though I wonder what should be considered a keyword  values of   =item  and =head2 ?
05:56 szabgab or is there and X<> ?
05:56 moritz szabgab: as for integrating with the rakudo REPL: would be nice, but I don't have particular plans yet
05:57 szabgab can p6doc also refactored to be in a module?
05:57 moritz sure
05:57 dalek doc: 8e1102b | moritz++ | lib/Str.pod:
05:57 dalek doc: [Str] make pod for words and flip more consistent
05:57 dalek doc: review: https://github.com/perl6/doc/commit/8e1102b5a9
05:57 moritz I just started with the simplest thing that could possibly work
05:57 szabgab and stuff like dir() ?
05:57 szabgab where should that be?
05:57 szabgab in lib/IO.pod ?
05:57 moritz lib/IO.pod
05:58 moritz today or tomorrow I want to try to generate per-routine html files
06:00 szabgab in the backlogs I saw that there was certain dislike regarding the pod processor I started to write but no one told *me* anything
06:00 moritz htmlify.pl lines 31 to 44 are what can be the base for indexing
06:00 szabgab what's the story? Besides me writing crappy Perl6 code?
06:00 moritz szabgab: I didn't notice dislike, just curiosity
06:01 szabgab so what is this --doc thing?
06:01 moritz that uses rakudo's built-in pod parser
06:01 szabgab and what kind of parameters can it accept?
06:01 moritz (which tadzik++ wants to refactor into a module at some point)
06:02 moritz if you call  perl6 --doc=Foo file   it will try to load  Pod::To::Foo and call Pod::To::Foo.render(@pod_chunks)
06:02 szabgab was there something about the case of how I wrote Pod ?
06:03 szabgab aha, this snippet of information could be added to   perl6 -h :)
06:03 moritz +1
06:03 moritz szabgab: oh, about your email about broken Pod
06:04 moritz szabgab: I think =cut is really a left-over from the p5 days
06:04 szabgab I was searching all over in the rakudo source cod for the keywords :)
06:04 szabgab Oh that reminds me I though something about exceptions
06:04 moritz szabgab: but there's a small curiosity in p6 pod which makes it legal
06:05 moritz you can write   =ANYTHING  and it is treated like   =block  ANYTHIING # or some such
06:05 moritz which allows us to write  =TITLE in pod/*.pod
06:05 szabgab is it possible to write some simple Exception code that can be esily told to 1) either really throw the exception  2) just give a warning   3) do nothing
06:05 moritz erm, lib/*.pod
06:06 szabgab so I can add Exception...throw  in my code and control the above behavior from the outside
06:06 moritz well
06:06 szabgab or is this a stupid idea?
06:07 moritz sub mydie($x) is hidden_from_backtrace { given $*EXCEPTION_BEHAVIOR // 'die' { when 'die' { $x.throw }; when 'warn' { warn $x }; default { } } }
06:07 am0c joined #perl6
06:08 moritz and then you can set   my $*EXCEPTION_BEHAVIOR = 'warn';   on the outside
06:08 szabgab I think I saw that =ALLUPPERCASE and =alllowercase are reserved in pod6
06:08 moritz hm
06:08 szabgab moritz: thanks, I'll try that
06:08 moritz not sure if warn() and Exception objects work together yet
06:10 moritz szabgab: if you want a Pod parser in user space with minimal effort, you look at rakudo's src/Perl6/Grammar.pm lines 193 to 389, extract that into a separate grammar, and fake up any dependencies to other parts of the grammar
06:14 szabgab moritz: thanks, I think I have plenty of material now to try to work through
06:14 kaleem joined #perl6
06:16 moritz szabgab: though of coure an independent interpretation of S26 would shake up ambiguties
06:16 adu hi ALL
06:17 szabgab I don't understand grammers yet, that's why I went for the plain code I have in that parser
06:17 adu crap I didn't mean caps
06:17 adu sry
06:17 adu plain code = +++awsome++
06:17 adu ++++awesome++++
06:20 moritz szabgab: I haven't look at your code yet
06:20 moritz szabgab: I just remember that the reason that tadzik's pod parsing code in Perl6/Grammar.pm looks "fancy" is all those indeting rules
06:24 masak morning, #perl6
06:25 jnthn morning, masak
06:25 jnthn how strange to be awake so early... :P
06:25 sorear morning masak
06:28 moritz \o masak, jnthn, szabgab
06:29 szabgab moritz: I am trying to implement a recursive &dir
06:30 szabgab but if I am not mistaken, with the current &dir  I cannot do that as it is a sub and not a multi sub, right?
06:30 dayangkun_ joined #perl6
06:30 masak it should be a multi.
06:30 masak <szabgab> in the backlogs I saw that there was certain dislike regarding the pod processor I started to write but no one told *me* anything
06:30 masak wut?
06:31 masak did I miss this 'certain dislike' when backlogging? it sounds very un-#perl6.
06:31 szabgab maybe I misinterpreted the surprise
06:32 masak well, surprise != dislike
06:32 tadzik hello
06:32 szabgab gm
06:32 szabgab gm tadzik
06:33 masak tadziku! \o/
06:33 szabgab so is it ok if I chnage the dir to be multi   in core/IO.pm ?
06:33 szabgab is that the right place to do it anyway?
06:34 masak yes.
06:34 masak just run the spectests before you commit ;)
06:34 masak there might be some silly reason it's not a multi today.
06:35 szabgab and I also see unlink and rmdir are plain 'sub' s
06:35 masak yeah; should be multis, too.
06:35 masak szabgab: re grammars and parsing POD; since POD is line-based the need for a grammar doesn't seem as overwhelming as otherwise.
06:35 masak but I bet you'll want to migrate to a grammar as it gets more complex ;)
06:36 moritz szabgab: you might need to write a custom proto sub when you make them multis, because proto auto-generation doesn't work in the setting
06:36 szabgab masak: I have one big issue in he pod parser that I am not sure yet how to handle: is when tou have   =head1    and then the text is on the next line
06:37 szabgab masak: for now I'd be happy to build up a test suite for the pod parser
06:37 szabgab and figure out how the output should look
06:38 masak szabgab: sounds to me like 'and then the text is on the next line' would be eminently handled by a grammar, yes.
06:38 masak but it takes time to learn how to write grammars, too.
06:38 masak and there are fewer established guidelines, and they are less well-known.
06:38 szabgab my interest is being practical - parse the pods as they are used now
06:38 szabgab not the theoretical limits of pod-writing
06:40 szabgab anyway, I'd better disconnet and go back to my IRC-less mode or I won't get anything done today
06:40 szabgab see you another time
06:40 szabgab and thanks for the directions so far
06:41 jnthn commute &
06:43 masak it's not so much about 'theoretical limits of pod-writing' as getting the parser to behave well in all known cases.
06:43 masak tests help with this, but few things are as valuable as a solid underlying model.
06:44 masak commute &
06:46 fridim_ joined #perl6
06:52 fhelmberger joined #perl6
06:56 tadzik commute
06:56 tadzik &
06:58 sorear pmichaud++
07:05 brrt joined #perl6
07:27 muixirt joined #perl6
07:37 muixirt moritz: hi, what's the status/plans of/for perl6/doc/htmlify.pl?
07:38 moritz muixirt: hi. Did you read my blog post?
07:39 muixirt not well enough?
07:39 moritz muixirt: well, I want to create nice URLs
07:39 moritz like doc.perl6.org/routine/$routinename
07:39 moritz doc.perl6.org/SOMETHING
07:39 moritz etc.
07:40 moritz so I want to hack htmlify.pl to do that
07:40 moritz so that's part of the plan
07:40 moritz I also want to add some navigation links etc.
07:40 moritz (which might involve hacking Pod::To::HTML)
07:40 moritz muixirt: does that answer your question?
07:41 muixirt moritz: I was under the impression that htmlify already works
07:41 muixirt moritz: yes (sort of)
07:41 moritz muixirt: well yes, it generates the pod files on doc.perl6.org
07:41 moritz muixirt: but it's less than awesom
07:41 moritz e
07:41 daxim moritz, can you please add a notice to the footer: this is a work in progress, blah blah, about 8% done. help welcome [link]. about/how to use/instructions [link]. documentation overview [http://perl6.org/documentation/].
07:42 moritz daxim: well, that's part of adding documentation links etc.
07:43 muixirt interesting: my @source = dir('lib').grep(*.f).grep(rx{\.pod$}); # doesn't work here (the *.f part)
07:43 moritz muixirt: you need a sufficiently new rakudo
07:44 muixirt I have 2012.06
07:44 moritz muixirt: that's not new enough :/
07:45 dakkar joined #perl6
07:48 dalek doc: f169ca1 | moritz++ | htmlify.pl:
07:48 dalek doc: [htmlify] refactor pod generation a bit
07:48 dalek doc: review: https://github.com/perl6/doc/commit/f169ca1ca9
07:50 adam7504 joined #perl6
07:57 hoelzro hey guys, I tried installing Panda last night (Panda: 2ce433c, Rakudo: 2012.06) and I got the following error: No such method 'basename' for invocant of type 'Str' in File::Find
07:59 moritz hoelzro: rakudo star comes with panda already
07:59 moritz hoelzro: current panda requires a newer rakudo
07:59 hoelzro huh.
07:59 hoelzro moritz: thanks!
07:59 moritz hoelzro: the last panda that works with rakudo star 2012.06 is 30a73cae58bca562019250cbff76ff950c640a2c
08:01 dalek doc: b0ff873 | moritz++ | htmlify.pl:
08:01 dalek doc: more pod creation refactoring
08:01 dalek doc:
08:01 dalek doc: block, heading and item are now all available as pod-$element subroutines
08:01 dalek doc: review: https://github.com/perl6/doc/commit/b0ff873d11
08:05 hoelzro I just realized that undef is implemented as the prototypical object so that my Int $i = Int type checks.
08:05 hoelzro that.
08:05 hoelzro awesome.
08:05 hoelzro is.
08:12 fhelmberger joined #perl6
08:22 huf joined #perl6
08:33 hoelzro I wrote this dumb little script, and it's failing with an interesting message: https://gist.github.com/3052303
08:33 hoelzro the message is use of uninitialized variable $!n of type Any in numeric context  in method is-counting at counter.p6:13
08:33 moritz hoelzro: that's just a warning, not a failure
08:33 hoelzro and if I change line 6 to has $.n, it works just fine
08:33 hoelzro sorry, I meant warning
08:34 moritz hoelzro: http://faq.perl6.org/#privattr
08:34 hoelzro moritz: thanks
08:34 hoelzro oooooooh
08:34 hoelzro I figured I was just understanding wrong, thanks again!
08:37 daxim how do I read "so"?  is that a mnemonic for something?
08:37 brrt so is boolean context
08:37 moritz daxim: as opposite of "not"
08:38 moritz flussence: I get a curious error from Pod::To::HTML
08:39 moritz Type check failed for return value; expected 'Str' but got 'Pod::Block::Para' in sub twine2text at lib/Pod/To/HTML.pm:136
08:39 moritz flussence: and when I enable debugging, I get (among others)
08:39 moritz missing a node2text multi for Pod::Heading.new(level => 1, config => ().hash, content => Array.new(Pod::Block::Para.new(config => ().hash, content => Array.new("Bool"))))
08:40 moritz flussence: does that mean I'm putting a heading somewhere where a plain text block is expected instead?
08:40 moritz (I generate the pod tree myself... )
08:46 moritz oh yes, looks like :/
08:48 timotimo t/panda/fetcher.t .... fatal: repository 't/' does not exist - but still "all tests succesfull"?
08:50 moritz timotimo: looks like https://github.com/tadzik/panda/issues/4
08:50 timotimo ah, i see
08:52 timotimo how come muevent isn't in panda yet? is there a good reason?
08:53 timotimo the api seems to be stable, no api change in at least 8 months ;)
08:56 timotimo can i tell perl to look at ./lib, too? i don't want to copy lib/* into my "system"-lib/ just to run test suites
08:56 moritz (re muevent) no idea
08:56 moritz timotimo: perl6 -Ilib t/yourfile.t
08:57 moritz timotimo: if you use an ufo-generated makefile, 'make test' will do that for you
08:57 moritz (well, it sets PERL6LIB, which is equivalent)
08:58 timotimo oh, cool
08:59 moritz prove -Ilib -e perl6 -r t/ # might also work
09:11 dalek doc: 7a224ae | moritz++ | sync:
09:11 dalek doc: add shell script to copy docs over to doc.perl6.org
09:11 dalek doc: review: https://github.com/perl6/doc/commit/7a224ae32e
09:12 dalek doc: 202b165 | moritz++ | htmlify.pl:
09:12 dalek doc: write per-routine HTML files
09:12 dalek doc: review: https://github.com/perl6/doc/commit/202b1659e6
09:13 kresike joined #perl6
09:13 kresike hello all you happy perl6 people
09:16 brrt hello happy kresike
09:16 kresike hello brrt o/
09:20 dalek doc: 2e9729b | moritz++ | sync:
09:20 dalek doc: [sync] use full domain name
09:20 dalek doc: review: https://github.com/perl6/doc/commit/2e9729bfe1
09:20 dalek doc: 4f074fe | moritz++ | htmlify.pl:
09:20 dalek doc: [htmlify] fix link
09:20 dalek doc: review: https://github.com/perl6/doc/commit/4f074fe3b1
09:22 moritz r: my ($a, $b) = <a b>; say "$a#$b";
09:22 p6eval rakudo 810e61: OUTPUT«===SORRY!===␤Confused␤at /tmp/Wl8Rb8LLrG:1␤»
09:22 moritz n: my ($a, $b) = <a b>; say "$a#$b";
09:22 p6eval niecza v19-7-g5e25209: OUTPUT«a#b␤»
09:23 moritz r: my ($a, $b) = <a b>; say "$a#{$b}";
09:23 p6eval rakudo 810e61: OUTPUT«===SORRY!===␤Confused␤at /tmp/O9rzSrLuci:1␤»
09:23 moritz r: my ($a, $b) = <a b>; say "{$a}#$b";
09:23 p6eval rakudo 810e61: OUTPUT«a#b␤»
09:26 dalek doc: 321b666 | moritz++ | htmlify.pl:
09:26 dalek doc: [htmlify] *really* fix link
09:26 dalek doc: review: https://github.com/perl6/doc/commit/321b66645f
09:26 moritz ok, URLs like http://doc.perl6.org/routine/count work now
09:27 moritz they just aren't linked to from anywhere
09:27 tadzik timotimo: it's not in ecosystem?
09:27 tadzik ha, indeed
09:30 Pleiades` joined #perl6
09:32 dalek doc: af090f6 | (Gabor Szabo)++ | / (2 files):
09:32 dalek doc: indexing =head and =item elements and allowing the user to type  "p6doc chomp"
09:32 dalek doc: review: https://github.com/perl6/doc/commit/af090f650d
09:32 dalek doc: b92758e | (Gabor Szabo)++ | / (3 files):
09:32 dalek doc: Merge branch 'master' of github.com:perl6/doc
09:32 dalek doc: review: https://github.com/perl6/doc/commit/b92758e54b
09:34 moritz szabgab++
09:36 mucker_ joined #perl6
09:38 GlitchMr joined #perl6
09:41 dalek doc: 9bcbe6b | moritz++ | htmlify.pl:
09:41 dalek doc: include routines on the front page
09:41 dalek doc:
09:41 dalek doc: this might change in future when we have too many of them
09:41 dalek doc: review: https://github.com/perl6/doc/commit/9bcbe6b872
09:43 mucker joined #perl6
09:44 moritz and yes, I know that the prefix:<?> link is broken
09:44 moritz that needs proper URI escaping in Pod::To::HTML
09:45 moritz s/proper<(/ and magical/
09:46 dalek doc: 9c873e0 | GlitchMr++ | lib/Str.pod:
09:46 dalek doc: Remove %m modifier properly
09:46 dalek doc: review: https://github.com/perl6/doc/commit/9c873e045d
09:50 GlitchMr perl6: $*OUT.WHAT
09:50 p6eval rakudo 810e61, niecza v19-7-g5e25209:  ( no output )
09:50 GlitchMr perl6: say $*OUT.WHAT
09:51 p6eval niecza v19-7-g5e25209: OUTPUT«TextWriter()␤»
09:51 p6eval ..rakudo 810e61: OUTPUT«IO()␤»
09:51 GlitchMr Should it be IO() or TextWriter()?
09:51 moritz I expect it'll soon become IO::Handle
09:51 GlitchMr I guess IO()
09:51 moritz don't trust S16 :-)
09:54 GlitchMr perl6: Mu.print
09:54 p6eval niecza v19-7-g5e25209: OUTPUT«Use of uninitialized value in string context␤  at /home/p6eval/niecza/lib/CORE.setting line 1263 (warn @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 268 (Mu.Str @ 15) ␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /home/p6eval/niecza/lib/CORE.setting…
09:54 p6eval ..rakudo 810e61: OUTPUT«use of uninitialized variable $v of type Mu in string context  in block <anon> at /tmp/FnxdaiUXqM:1␤␤»
09:54 GlitchMr perl6: Mu.printers
09:54 p6eval niecza v19-7-g5e25209: OUTPUT«Unhandled exception: Unable to resolve method printers in type Mu␤  at /tmp/zj_CQVBpy_ line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3918 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3919 (module-CORE @ 562) ␤  at /home…
09:54 p6eval ..rakudo 810e61: OUTPUT«No such method 'printers' for invocant of type 'Mu'␤  in block <anon> at /tmp/RYnMw3Y2e2:1␤␤»
09:55 GlitchMr So, I guess that .print is in Mu?
09:55 muixirt r: circumfix:«( )»('a', 'b', 'c') #from operators.pod
09:55 p6eval rakudo 810e61: OUTPUT«===SORRY!===␤:\xAB( )\xBB cannot be resolved at compile time␤»
09:55 GlitchMr Uhmmm... why it cannot be resolved at compile time?
09:57 * moritz has no idea what means
09:57 moritz r: circumfix:<( )>('a', 'b', 'c')
09:57 p6eval rakudo 810e61: OUTPUT«===SORRY!===␤:<( )> cannot be resolved at compile time␤»
09:57 GlitchMr He called circumfix:<( )>
10:00 mucker joined #perl6
10:03 dalek doc: 564243f | moritz++ | lib/Exception.pod:
10:03 dalek doc: document Exception
10:03 dalek doc: review: https://github.com/perl6/doc/commit/564243fbc3
10:03 GlitchMr perl6: 42.note
10:03 p6eval rakudo 810e61: OUTPUT«No such method 'note' for invocant of type 'Int'␤  in block <anon> at /tmp/QKkIISwQJK:1␤␤»
10:03 p6eval ..niecza v19-7-g5e25209: OUTPUT«Unhandled exception: Unable to resolve method note in type Int␤  at /tmp/TNvqeGRvs9 line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3918 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3919 (module-CORE @ 562) ␤  at /home/p6…
10:03 GlitchMr perl6: '42'.note
10:03 p6eval niecza v19-7-g5e25209: OUTPUT«Unhandled exception: Unable to resolve method note in type Str␤  at /tmp/L2p9zf7hVp line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3918 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3919 (module-CORE @ 562) ␤  at /home/p6…
10:03 p6eval ..rakudo 810e61: OUTPUT«No such method 'note' for invocant of type 'Str'␤  in block <anon> at /tmp/6XC4YRj4fz:1␤␤»
10:05 dalek doc: fdc5992 | GlitchMr++ | lib/Mu.pod:
10:05 dalek doc: Fix whitespace
10:05 dalek doc: review: https://github.com/perl6/doc/commit/fdc5992996
10:05 dalek doc: 71e0f14 | GlitchMr++ | lib/Mu.pod:
10:05 dalek doc: Add printing methods to Mu
10:05 dalek doc: review: https://github.com/perl6/doc/commit/71e0f14a5c
10:05 dalek doc: f4aa1c3 | (Gabor Szabo)++ | .gitignore:
10:05 dalek doc: gitignore the temporary index file so we wont commit it by mistake
10:05 dalek doc: review: https://github.com/perl6/doc/commit/f4aa1c316a
10:05 dalek doc: 3b8af6d | (Gabor Szabo)++ | lib/variables.pod:
10:05 dalek doc: add some more  variables
10:05 dalek doc: review: https://github.com/perl6/doc/commit/3b8af6da8d
10:05 dalek doc: da65497 | (Gabor Szabo)++ | / (2 files):
10:05 dalek doc: index the X<> tags as well and display the whole section. Use as    p6doc '$_' and p6doc '$*OS'
10:05 dalek doc: review: https://github.com/perl6/doc/commit/da65497169
10:05 dalek doc: 48f27ec | (Gabor Szabo)++ | / (3 files):
10:05 dalek doc: Merge branch 'master' of github.com:perl6/doc
10:05 dalek doc: review: https://github.com/perl6/doc/commit/48f27eca1a
10:05 dalek doc: 2c8b442 | (Gabor Szabo)++ | lib/Mu.pod:
10:05 dalek doc: Merge branch 'master' of github.com:perl6/doc
10:05 dalek doc: review: https://github.com/perl6/doc/commit/2c8b44234a
10:05 GlitchMr "Merge branch 'master' of github.com:perl6/doc"
10:06 moritz GlitchMr: note that say and print also both have sub forms, and that they differ in the way the stringify things
10:06 GlitchMr I still don't know how to avoid this error. Somehow I avoid it on GitHub on Windows, but what about avoiding it when I don't use it?
10:06 dalek doc: 37dfbc1 | (Gabor Szabo)++ | lib/variables.pod:
10:06 dalek doc: add more X<> tags
10:06 dalek doc: review: https://github.com/perl6/doc/commit/37dfbc1ead
10:06 moritz GlitchMr: it would be nice if you could add that do the docs you just inserted
10:07 moritz GlitchMr: (re branch merges) that happens when somebody does 'git pull' instead of 'git pull --rebase'. In this case it was Gabor, not you
10:07 GlitchMr I know, but sometimes I do it in other repositories
10:07 GlitchMr But thanks
10:09 GlitchMr <moritz> GlitchMr: note that say and print also both have sub forms, and that they differ in the way the stringify things
10:09 GlitchMr Also, how they differ?
10:09 GlitchMr I guess it's some edge case, but still
10:10 moritz GlitchMr: http://faq.perl6.org/#say
10:10 moritz nr: print Int
10:10 p6eval rakudo 810e61: OUTPUT«use of uninitialized variable $v of type Int in string context  in block <anon> at /tmp/07uLZFSoif:1␤␤»
10:10 p6eval ..niecza v19-7-g5e25209: OUTPUT«Int()»
10:10 moritz r: say Int
10:10 p6eval rakudo 810e61: OUTPUT«Int()␤»
10:10 moritz rakudo++ is correct here
10:12 GlitchMr r: say Mu.Str
10:12 p6eval rakudo 810e61: OUTPUT«use of uninitialized value of type Mu in string context  in block <anon> at /tmp/8dGCffuLQF:1␤␤␤»
10:16 tyatpi joined #perl6
10:18 muixirt so what's wrong with circumfix:«( )»('a', 'b', 'c')
10:18 moritz I have no idea
10:24 Psyche^ joined #perl6
10:26 dalek doc: e973f74 | (Gabor Szabo)++ | lib/ (2 files):
10:26 dalek doc: start writing IO.pod
10:26 dalek doc: review: https://github.com/perl6/doc/commit/e973f748f0
10:26 sisar hi #perl6 !
10:26 moritz \o sisar
10:27 dalek doc: 32cd75a | GlitchMr++ | lib/Mu.pod:
10:27 dalek doc: Fix .print and .say description
10:27 dalek doc: review: https://github.com/perl6/doc/commit/32cd75a214
10:27 dalek doc: c7b75de | GlitchMr++ | lib/Mu.pod:
10:27 dalek doc: Add stringification methods on Mu.
10:27 dalek doc: review: https://github.com/perl6/doc/commit/c7b75ded53
10:27 GlitchMr perl6: print circumfix:«( )»('a', 'b', 'c')
10:27 p6eval niecza v19-7-g5e25209: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤      'circumfix:«( )»' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1402 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) …
10:27 p6eval ..rakudo 810e61: OUTPUT«===SORRY!===␤:\xAB( )\xBB cannot be resolved at compile time␤»
10:27 * sisar still fails to grasp why @moritz++ et al write docs in pod then html-ify them
10:27 sisar I guess I'm missing some important point here.
10:27 moritz sisar: what else should I do?
10:28 GlitchMr sisar, because POD is parsable
10:28 GlitchMr There is p6doc tool which doesn't use HTML (at least I think so)
10:28 moritz sisar: write code in HTML, and then parse it for the command line client, and turn it back into plain text?
10:28 sisar moritz, GlitchMr: no (more)
10:28 moritz sisar: and my time is too valuable to manually HTML-escape the code I write
10:28 GlitchMr Or less
10:28 GlitchMr my $pager = %*ENV<PAGER> // ($*OS eq 'MSWin32' ?? 'more' !! 'less');
10:29 GlitchMr But seriously, what's this?
10:29 sisar ooc, ain't there a html parser for terminal ?
10:29 sisar gah, that was written poorly
10:29 daxim does `lynx -dump` count?
10:29 sisar ooc, ain't there a html renderer for terminal ?
10:30 arnsholt GlitchMr: It selects the appropriate program to display a long file
10:30 moritz GlitchMr: http://www.slackbook.org/html/file-commands-pagers.html
10:30 moritz sisar: for which terminal?
10:30 sisar daxim: i'm sorry, i don't know anything about lynx, let me check it out
10:30 GlitchMr Well, I just don't like OS specific code...
10:30 GlitchMr But whatever
10:30 daxim http://lynx.browser.org/
10:31 sisar daxim: thanks, let me look
10:31 arnsholt Sometimes you can't avoid OS-specific stuff
10:31 GlitchMr Especially as I have "less" on my Windows installation
10:31 arnsholt Especially to handle the differences between Windows and Unix
10:31 daxim http://www.greenwoodsoftware.com/less/
10:31 moritz GlitchMr: there's no sub form of Str
10:32 moritz GlitchMr: because it would collide with the type Str
10:32 sisar GlitchMr: in a conversation here in IRC, how would one indicate that "Hey, this sentence is not enough, i want to say more before you comment on it" in an OS neutral way ?
10:32 dalek doc: 02d2a9e | GlitchMr++ | lib/Mu.pod:
10:32 dalek doc: There is no Str sub
10:32 dalek doc: review: https://github.com/perl6/doc/commit/02d2a9eb8c
10:33 daxim perhaps add an ellipsis at the end…
10:33 daxim so you know I'm going to finish in the next line
10:33 daxim or perhaps not
10:33 daxim does it matter?
10:33 tadzik append (more) at the end?
10:33 tadzik pm usually does that
10:33 GlitchMr Hello (more)
10:33 GlitchMr world.
10:34 sisar :-)
10:34 sisar tadzik: that's what i did, but GlitchMr++ got confused by that :)
10:35 daxim then you have to make it look like in nethack --MORE--
10:35 GlitchMr Well, (more) in short sentence is well...
10:35 daxim You die.
10:35 daxim DYWYPI?
10:36 * sisar retreats back in confusion
10:36 daxim http://nethackwiki.com/wiki/DYWYPI
10:36 GlitchMr Do you want your possessions identified?
10:47 seldon joined #perl6
10:59 dalek doc: 396295f | GlitchMr++ | lib/Int.pod:
10:59 dalek doc: Add integer methods.
10:59 dalek doc: review: https://github.com/perl6/doc/commit/396295f504
11:01 GlitchMr Also, I have noticed a small problem
11:01 GlitchMr http://doc.perl6.org/
11:01 GlitchMr prefix:<?> link doesn't work
11:01 cognominal__ joined #perl6
11:06 fridim_ joined #perl6
11:24 moritz GlitchMr: http://irclog.perlgeek.de/perl6/2012-07-05#i_5786510
11:24 GlitchMr Proper URI escaping...
11:25 GlitchMr <GlitchMr>30 ,eval encodeURIComponent('prefix<?>')
11:25 GlitchMr <YIBotDev> 'prefix%3C%3F%3E'
11:25 GlitchMr Something like this I guess
11:25 moritz GlitchMr: there's no need for those Int method, since they are all inherited from or provided by other roles
11:25 moritz (in the abstract, at least; the implementation details aren't relevant for user documentation)
11:27 dalek doc: cb9871d | moritz++ | htmlify.pl:
11:27 dalek doc: recursive dirwalking
11:27 dalek doc: review: https://github.com/perl6/doc/commit/cb9871d094
11:30 moritz nr: say gist(1.2)
11:30 p6eval rakudo 810e61, niecza v19-7-g5e25209: OUTPUT«1.2␤»
11:30 dalek doc: 18953db | moritz++ | lib/Mu.pod:
11:30 dalek doc: [Mu] communicate intent of methods Str and gist
11:30 dalek doc: review: https://github.com/perl6/doc/commit/18953dbed3
11:31 GlitchMr Thanks, moritz++ :)
11:33 dalek doc: 5a48dad | moritz++ | lib/Int.pod:
11:33 dalek doc: [Int] remove methods again
11:33 dalek doc:
11:33 dalek doc: they are all (at least notionally) provided by superclasses or roles
11:33 dalek doc:
11:33 dalek doc: We need some way to also display those methods along with a class,
11:33 dalek doc: but repeating them in every class is definitely the wrong way
11:33 dalek doc: -- it simply does not scale
11:33 dalek doc: review: https://github.com/perl6/doc/commit/5a48dada67
11:34 dalek doc: d8168af | moritz++ | README:
11:34 dalek doc: document that methods from superclasses should not be included
11:34 dalek doc: review: https://github.com/perl6/doc/commit/d8168af59e
11:36 GlitchMr But, yeah, Perl 6 needs good documentation
11:36 timotimo that's almost an universal truth in software development and such
11:36 timotimo especially in open source software ;)
11:36 moritz GlitchMr: sorry for reverting one of your commits; its a bit of a danger when contributing to an early stage project
11:36 GlitchMr No problem
11:36 moritz GlitchMr: other than that one, I really liked your patches so far
11:37 GlitchMr Well, it's Git
11:37 GlitchMr It's always possible to revert or improve things
11:39 spider-mario joined #perl6
11:42 dalek doc: e5b9ea7 | moritz++ | TODO:
11:42 dalek doc: add a TODO list for known missing types
11:42 dalek doc: review: https://github.com/perl6/doc/commit/e5b9ea718a
12:19 mikemol joined #perl6
12:20 dalek doc: 7ce5e95 | moritz++ | htmlify.pl:
12:20 dalek doc: fix escaping of routine names
12:20 dalek doc: review: https://github.com/perl6/doc/commit/7ce5e95e1e
12:20 dalek doc: 036f15f | moritz++ | htmlify.pl:
12:20 dalek doc: properly handle multi-joined type names
12:20 dalek doc: review: https://github.com/perl6/doc/commit/036f15faeb
12:20 dalek doc: 1c81143 | moritz++ | lib/X/AdHoc.pod:
12:20 dalek doc: document X::AdHoc
12:20 dalek doc: review: https://github.com/perl6/doc/commit/1c81143ea2
12:24 moritz n: say Match ~~ Capture
12:24 p6eval niecza v19-7-g5e25209: OUTPUT«False␤»
12:26 dalek doc: b59ba22 | moritz++ | lib/IO.pod:
12:26 dalek doc: [IO] small language fixes
12:26 dalek doc: review: https://github.com/perl6/doc/commit/b59ba22723
12:43 tyatpi joined #perl6
12:54 PacoAir joined #perl6
12:57 mucker joined #perl6
13:01 moritz todays' autopun spotted in the perlmonks chatterbox: [Corion] Aah, the Blame Game! I would play too, but [tye]'s preventing it!
13:06 cognominal joined #perl6
13:10 * [Coke] just skips all backscroll, thanks to adu and diakopter.
13:11 [Coke] Happy day after beer and blowing things up day from the US.
13:11 moritz [Coke]: today's backscroll (as the IR clog splits it up) is free of finance/politics stuff :-)
13:15 [Coke] ah, thanks.
13:16 GlitchMr perl: my *star = sub { "A star!" }; star
13:17 sergot joined #perl6
13:17 sergot hi o/
13:17 GlitchMr wrong channel
13:17 GlitchMr lol
13:17 [Coke] moritz++
13:25 colomon nr: say sprintf('%-10s', 'string')
13:25 p6eval rakudo 810e61, niecza v19-7-g5e25209: OUTPUT«string    ␤»
13:26 colomon nr: say sprintf('%-10d', 42)
13:26 p6eval rakudo 810e61: OUTPUT«42        ␤»
13:26 p6eval ..niecza v19-7-g5e25209: OUTPUT«        42␤»
13:26 colomon nr: say sprintf('%-010d', 42)
13:26 p6eval rakudo 810e61: OUTPUT«42        ␤»
13:26 p6eval ..niecza v19-7-g5e25209: OUTPUT«0000000042␤»
13:27 * colomon wishes he had a handy C REPL...
13:28 arnsholt Hmm. Maybe you could set up something like that with some LLVM/clang magic?
13:29 moritz http://root.cern.ch/drupal/content/cint
13:29 colomon http://neugierig.org/software/c-repl/
13:29 moritz colomon: I was about to post that next :-)
13:30 colomon alas, their link for code doesn't seem to work?
13:32 tyatpi joined #perl6
13:34 bluescreen10 joined #perl6
13:37 * [Coke] hates reading #p5p. Coke wonders why he's doing it
13:38 skids joined #perl6
13:48 telex joined #perl6
13:58 arnsholt "Or just use it as a simple calculator, content in knowing it is much faster than your neighbors using irb, like driving a Ferarri on city streets." ^_^
14:00 kresike "Ferrari on city streets" = "the strongest chick magnet ever" :)
14:00 * moritz wonders how much of that is /urban/ legend
14:02 * [Coke] wonders how one causes small land fowl to be magnetized.
14:05 seldon By feeding them iron.
14:07 dalek doc: 821d556 | moritz++ | htmlify.pl:
14:07 dalek doc: [htmlify] small code simplification
14:07 dalek doc: review: https://github.com/perl6/doc/commit/821d556e4e
14:11 * brrt wondered for a very long time why small land fowl should be magnetic at all
14:11 brrt before he read what kresike said
14:12 atrodo joined #perl6
14:13 * kresike wonders how much wondering he has started
14:14 seldon I wonder if a magnetic chicken delivery system would make a farmer's life easier.
14:14 colomon egg delivery, maybe.  can't see how chicken delivery would help....
14:15 seldon Maybe if only one gender were magnetic, you could build automatic chick sexing machines.
14:15 * moritz thinks that large kitches could benefit from a magnetic chicken delivery system
14:15 seldon Do Ferraris only work on female chicks?
14:15 * [Coke] imagines an egg rail gun.
14:16 seldon Careful, that might backfire.
14:16 * kresike rotfl
14:16 [Coke] only really useful on halloween.
14:16 moritz [Coke]: it'd have to accellerate very carefully :-)
14:16 seldon And you'd have egg all over your face.
14:16 moritz well, or for unloved politicians
14:16 seldon ...which would be several hundred meters behind your body at that point.
14:16 moritz especially if it also supports tomatoes
14:17 seldon What about pumpkins?
14:17 kresike what about cakes ?
14:17 moritz I don't think the standard cake is aerodynamically optimized for railgun firing
14:18 seldon I would buy at a baker who delivered his cake by railgun.
14:19 * moritz wants a city-wide people delivery system based on trebuchets on the sender side and big nets on the receiver sides
14:19 arnsholt Perhaps tube-mail is a more viable option than railguns? =)
14:19 arnsholt Or trebuchets, for that matter
14:20 seldon Couldn't you combine tube mail and railguns?
14:20 moritz at least trebuchets don't exclude people with pacemakers and defibrilators :-)
14:20 seldon Yeah, trebuchets suck.
14:21 arnsholt I don't think you could make a railgun-powered tube-mail system
14:21 seldon Oh, you wrote "exclude". I read "explode".
14:21 moritz seldon: :-)
14:22 seldon Okay, so you could use trebuchets as a backup source of kinetic power.
14:22 seldon I believe they'll be harder to hook up to the tube mail system than railguns, though.
14:23 sergot left #perl6
14:23 kresike we can conclude that getting from a Ferrari on city streets to trebuchets exploding people with pacemakers takes a lot of wondering :)
14:23 moritz it just takes a few geeks :-)
14:23 seldon moritz: How would you feel about replacing the trebuchet with a ballista?
14:24 moritz seldon: bad. I like trebuchets.
14:25 moritz r: say Parcel ~~ Positional
14:25 p6eval rakudo 810e61: OUTPUT«True␤»
14:25 pmichaud good morning, #perl6
14:25 seldon Morning
14:25 moritz good am, pm
14:27 huf fire the trebuchet from a ballista
14:28 seldon That's one big ballista.
14:28 fglock joined #perl6
14:28 huf or a small trebuchet
14:28 seldon Where'd be the fun in that?
14:28 huf baby trebuchets are cute!
14:29 MayDaniel joined #perl6
14:29 seldon I think it would be better to fire a bunch of ballistas from a trebuchet.
14:30 seldon Not for the purposes of tube mail, though.
14:31 huf that'd be "bute-mail"
14:31 huf wait, no, tube it is
14:31 seldon brute mail, perhaps.
14:32 * sisar just spotted http://blog.livedoor.jp/dankogai/archives/50312761.html
14:32 sisar Don't ask me how ;)It's in Japanese !
14:33 moritz if you're interested in Japanese Perl 6 stuff, search for 'perl6' on twitter
14:34 dalek doc: 85cc9db | moritz++ | lib/Parcel.pod:
14:34 dalek doc: initial Parcel documentation
14:34 dalek doc: review: https://github.com/perl6/doc/commit/85cc9dbde2
14:34 seldon I wonder what ε(     v ゚ω゚) means.
14:35 sisar moritz: oh !
14:35 sisar seems like people are using Perl6 in Japan and blogging about it ! Nice !
14:35 moritz now if only we could encourage more interaction between the English and Japanese Perl 6 communities...
14:36 sisar do we have any Japanese speakers here ?
14:38 pmichaud moritz: ping
14:38 moritz pmichaud: pong
14:38 pmichaud for the 2012.06 star release, did you create the tarball by hand, or use the 'make release' command to do it?
14:38 colomon Firing ballistas from a trebuchet totally sounds like something that should have happened in my old RPG "Blaze of Glory".  (Because for a split second there, if stabilized correctly, the ballista would have a really good shot at the target, right?)  I'm surprised the players never thought of it....
14:39 moritz pmichaud: I created the tarball by hand. I wasn't even ware of a 'make release' command
14:39 pmichaud aha
14:39 moritz *aware
14:39 pmichaud okay, that explains a bit then :)
14:39 moritz we clearly need a release guide
14:40 pmichaud moritz++ pmichaud--
14:40 moritz and I've meant to write one for months
14:40 pmichaud I've meant to write one for longer than that.  I'll write one.
14:40 * sisar Pins the tab https://twitter.com/#!/search/realtime/perl6
14:40 * pmichaud checks his calendar
14:41 pmichaud I'll commit to doing the 2012.07 star release.
14:41 vmspb joined #perl6
14:41 moritz \o/
14:41 pmichaud I'll also commit to having the guide written up so others can try it.
14:42 pmichaud As part of this month's release I also want to publish a Windows/MSI distribution.
14:43 pmichaud (and a process for doing that regularly also)
14:43 pmichaud moritz: okay, thanks.  :)
14:43 moritz pmichaud: what's the singificance of running 'make tarball' instead of tar xcf rakudo-star-2012.06.tar.gz rakudo-star-2012.06/  ?
14:44 pmichaud well, for one, the manual tar command ends up including all of the .git directories :-)
14:44 moritz oh
14:44 kresike bye all
14:44 moritz that'd explain its size
14:45 pmichaud 'make release' also creates the MANIFEST
14:45 pmichaud and builds the tarball directly from the MANIFEST
14:46 moritz pmichaud: starting from 2012.04, I've started to tag the star releases
14:46 pmichaud okay
14:46 moritz I'm not aware of any problems this might have caused
14:46 pmichaud tagging shouldn't be an issue
14:47 moritz (iirc the github download page used to mix up tag-based tarballs and "real" downloads, or so, and thus confused our users)
14:48 pmichaud how does tagging assist there, ooc?
14:48 brrt left #perl6
14:48 brrt joined #perl6
14:49 moritz it doesn't. It's just interesting historical information.
14:49 pmichaud okay.
14:52 HarryS joined #perl6
14:53 moritz completely different question: exactly what methods does the Positional role supply?
14:54 tokuhiro_ joined #perl6
14:58 pmichaud just 'of', afaik.
14:58 pmichaud Positional is used primarily as a constraint
14:58 moritz that seems a bit weak, API-wise
14:58 pmichaud what are you expecting it to do?
14:59 moritz intuitively I'd expect Positional (and thus the @ sigil) to guarantuee .[] indexing, iteration and the ability to flatten
14:59 moritz at least
14:59 pmichaud sure, but Any also guarantees .[] indexing
15:00 pmichaud iteration is guaranteed by the Iterable role
15:00 moritz yes, but it only supplies a rather weak form of it
15:00 dalek doc: 7fd6d67 | (Gabor Szabo)++ | lib/IO.pod:
15:00 dalek doc: add documentation about file test operators
15:00 dalek doc: review: https://github.com/perl6/doc/commit/7fd6d6713e
15:00 dalek doc: 0144fda | (Gabor Szabo)++ | / (7 files):
15:00 dalek doc: Merge branch 'master' of github.com:perl6/doc
15:00 dalek doc: review: https://github.com/perl6/doc/commit/0144fda6b8
15:00 pmichaud not everything that is Iterable is Positional
15:02 pmichaud thus flattening is handled by the Iterable type
15:03 moritz does Positional imply support for list assignment?
15:03 pmichaud no.
15:03 pmichaud my %h = 1, 2, 3, ...
15:04 pmichaud (although %h is not Positional, there)
15:04 moritz erm
15:04 moritz a counter example would be to name a Positional type which doesn't support list assignment
15:05 pmichaud Range
15:05 moritz good one
15:06 dalek doc: ddc9f0c | moritz++ | lib/Int.pod:
15:06 dalek doc: [Int] mention Int literals
15:06 dalek doc: review: https://github.com/perl6/doc/commit/ddc9f0c964
15:06 pmichaud the Positional type basically says "can bind to @-variable", and implies an ability to do .[] more than the basic Any form.
15:10 colomon r: say sprintf('%20.2g', -3.1415e30)
15:10 p6eval rakudo 810e61: OUTPUT«            -3.1e+30␤»
15:11 colomon n: say -3.1415e30
15:11 p6eval niecza v19-7-g5e25209: OUTPUT«-3.1415E+30␤»
15:11 colomon r: say -3.1415e30
15:11 p6eval rakudo 810e61: OUTPUT«-3.1415e+30␤»
15:20 szabgab joined #perl6
15:22 szabgab r: say IO::Path.new(dir => "a/b/c").perl
15:22 p6eval rakudo 810e61: OUTPUT«Could not find symbol 'IO::&Path'␤  in block <anon> at /tmp/M9DuMc6wK3:1␤␤»
15:22 szabgab oh
15:22 szabgab it worked on my rakudo
15:23 szabgab r: say IO::Dir.new(dir => "a/b/c").perl
15:23 p6eval rakudo 810e61: OUTPUT«Could not find symbol 'IO::&Dir'␤  in block <anon> at /tmp/rIrVPXqzMP:1␤␤»
15:23 tadzik szabgab: safe mode, I think
15:24 szabgab ok, anyway this         say IO::Path.new(qqrq => "a/b/c").perl
15:24 szabgab also worked
15:24 szabgab which surprised me
15:26 szabgab should a class limit the keys I can supply to the attributes?
15:26 szabgab *shouldn't  >
15:26 pmichaud szabgab: in general, any method is expected to be able to accept keys it doesn't understand.
15:27 pmichaud in the case of .new, it might need to also deal with keys for attributes in super/sub classes.
15:28 szabgab oh right, that tripped me in Moose as well
15:28 thelazydeveloper joined #perl6
15:29 szabgab anyway I suddenly have to go and take my daughter to some show, back later
15:44 skids joined #perl6
15:46 Andrew joined #perl6
15:48 alester joined #perl6
15:48 am0c_ joined #perl6
15:51 colomon r: say sprintf("%05f", -1.1)
15:51 p6eval rakudo 810e61: OUTPUT«-1.100000␤»
15:51 colomon r: say sprintf("%020f", -1.1)
15:51 p6eval rakudo 810e61: OUTPUT«-000000000001.100000␤»
15:52 geekosaur hm, shouldn't obsolete syntax go away at some point?
15:52 hoelzro ]jobs
15:52 hoelzro oops
15:52 hoelzro wrong window =/
15:53 geekosaur leading zero as a printf-spec option flag has problems and was deprecated, I thought
15:53 [Coke] geekosaur: double check the spec?
15:54 geekosaur [Coke], I don't mean the perl6 spec, I mean the *printf* spec.  specifically the original (ANSI C)
15:55 geekosaur which noted the conflict inherent in using '0' as a formatting flag and deprecated it.  yet nobody else has deprecated it.   the conflict is considered a feature in every language other than ANSI C?
15:55 seldon It's not deprecated in C99.
15:55 geekosaur ...realy?  thought ANSI introduced the deprecation in the first place.  maybe they gave up
15:56 seldon Well, I don't have a copy of C11 here, but it's very much there in C99, and no deprecation notice.
15:56 pmichaud even if C deprecates it, it still exists in Perl 5, which is the printf on which Perl 6 is currently based.
15:56 seldon Compare ISO/IEC 9899:1999 7.19.6.1 (6)
15:57 geekosaur whatever, forget I said anything.  it's still a wart but I guess everyone gave up on trying to fix it
15:59 seldon How is it a wart?
16:01 Ulti http://www.perl6.org/archive/rfc/63.html  in the $SIG{__DIE__} section on here the paragraph just ends mid sentence...
16:02 Ulti out of interest what is going to be done about problems with localising a sig die handler, as I ran into a lot of problems recently with a library globally swallowing die
16:02 Ulti is it just going to be left up to people not doing something stupid?
16:03 brrt left #perl6
16:05 pmichaud Ulti: I suspect handlers in Perl 6 are dynamically scoped.  Synopsis 17 speculates there's a %*SIG variable that contains the currently active handlers.
16:06 * moritz doesn't know how a dynamic variable can sanely map to something that is actually per-process
16:07 pmichaud the process-level handler might be something that does the dynamic mapping
16:08 moritz it still doesn't make any sense to me
16:08 moritz consider %*ENV, which is probably the easiest to understand
16:08 sergot joined #perl6
16:08 moritz if you create a new { my %*ENV = (PATH => "foo") }
16:09 moritz does it change the per-process environment variables?
16:09 moritz if so, how does the compiler know how to do that?
16:09 moritz my special-casing the name %*ENV ?
16:10 pmichaud the model I was using would set up the per-process env variables to match %*ENV whenever doing something that would "leave" the Perl 6 realm
16:10 thou joined #perl6
16:10 moritz and if it doesn't change the per-process environment variables, what's the use of having a dynamic variable for it?
16:10 pmichaud (nom does something entirely different, I notice, but I haven't wanted to go through and mess with it yet)
16:10 moritz that would make NCI calls and calls to other languages on the same VM quite expensive
16:11 pmichaud I agree, I didn't say it was a good model :)
16:11 moritz you'd have to re-check $*CWD, %*ENV, $*PID and all the other variables before each invocatio
16:11 moritz n
16:12 pmichaud I'm not sure there really is a $*CWD, fwiw.
16:13 pmichaud the only places it appears in the synopses are all speculative, afaict
16:17 geekosaur moritz, for envars I can see it; it changes a stash which is only referred to when spawning external subprocesses, in which case you can certainly use a lexical instead of a process-wide stash.  there is of course the question of extrenal libraries that use envars, but (a) those can be problematic anyway (b) %*GLOBAL::ENV or something?
16:23 dalek star: d794b43 | pmichaud++ | Makefile:
16:23 dalek star: Update creation of MANIFEST in 'make release' target to better handle files with leading dot.
16:23 dalek star: review: https://github.com/rakudo/star/commit/d794b436b1
16:24 moritz geekosaur: indepently of whether env vars are affected or not, that model seems to assume that IO only happens through very limited channels
16:24 simcop2387 joined #perl6
16:24 moritz geekosaur: and I believe that to be false, in the light of calls across different languages
16:25 pmichaud sounds like a spec ticket :)
16:25 moritz also it changes the cost to O(system calls + process state changes) when it coudl be O(process state changes)
16:25 moritz pmichaud: ok, I'll open one
16:26 geekosaur cross-language call could certainly be made to fit.  (I'm not arguing for this, just noting that it is doable.  there would certainly be overhead)
16:27 pmichaud the overhead could be minimized to some extent by keeping track of the identity of the %*ENV object used to populate the current process environment.  But yes, there's still a check.
16:28 geekosaur (I have actually had a use for that kind of environment management.  Not nearly often enough for its overhead to be standard, I think)
16:31 dalek doc: 7edf743 | pmichaud++ | lib/Parcel.pod:
16:31 dalek doc: [Parcel] Add 1-element Parcel example.
16:31 dalek doc: review: https://github.com/perl6/doc/commit/7edf7432e0
16:32 pmichaud should the p6doc IO documentation have a note that we expect IO to undergo further changes?
16:33 snearch joined #perl6
16:33 moritz yes
16:34 pmichaud in p6doc I disagree somewhat with 5a48dad (removing methods that override superclass methods).  Whenever a method has a unique semantic, I think it needs documenting.
16:35 colomon joined #perl6
16:35 pmichaud since Int.Bool is different from List.Bool, they should both be documented.
16:35 pmichaud (although Int.Bool might really be Numeric.Bool, in which case I withdraw my objection)
16:36 moritz it is Numeric.Bool, at least notionally
16:36 pmichaud okay, I just misread the commit log then.
16:36 pmichaud moritz++
16:36 moritz same for Str and gist
16:38 mucker joined #perl6
16:38 * sisar just spilled [Coke] over my touchpad :/
16:38 * sisar curse Coke
16:38 sisar ;p
16:39 sisar oh, the cola not the drug !
16:40 flussence I've read somewhere that the acid in that stuff makes it an effective drain unblocker. You probably don't want it getting in your laptop...
16:40 moritz https://github.com/perl6/specs/issues/14
16:41 sisar flussence: :) don't worry, i activated my ninja-mode, and cleaned is JIT :)
16:41 moritz oh, and the phosphorus might dope your chips :-)
16:42 seldon flussence: Your source may be questionable.
16:42 * sisar looks up chemical composition of Coke
16:42 moritz (if implanted by an ion beam, not by merely spilling coke on it)
16:42 moritz water, sugar, phosphoric acid # 3 most important components, chemically speaking
16:43 seldon It looks like a variation of the "cola will dissolve a tooth overnight" urban legend.
16:45 moritz I'm sure it does... if you cook it under pressure at 200°C for the night :-)
16:46 sisar huh. My coke bottle just says "Contains Caffeine" in all caps, but doesn't say how much caffeine. I used to think they are supposed (by regulation) to mention it on the bottle.
16:46 * sisar looks up Food and drinks Regulations rules of his country
16:54 dalek doc: 31dc410 | pmichaud++ | README:
16:54 dalek doc: Add a wishlist section to README.  (This could be factored to somewhere else; but the README is short enough that it makes sense here for now.)
16:54 dalek doc: review: https://github.com/perl6/doc/commit/31dc410612
16:55 tokuhiro_ joined #perl6
16:57 domidumont joined #perl6
16:58 sorear good * #perl6
17:03 * sisar realises that finding the law on a specific question is not one of his skills :|
17:03 sisar sorear: hi !
17:06 sisar szabgab++ (https://twitter.com/szabgab/status/220893466543140869 )
17:12 dalek rakudo/nom: 58d9852 | pmichaud++ | src/core/IO.pm:
17:12 dalek rakudo/nom: Update IO.s to return file size.
17:12 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/58d9852d0d
17:14 pmichaud 58d9852 seems to resolve some todo's spectests, but I won't be able to get to them for a few hours.  Others are welcome to beat me to that.  :)
17:14 pmichaud afk
17:16 xinming joined #perl6
17:24 sisar joined #perl6
17:25 atrodo_ joined #perl6
17:26 domidumont joined #perl6
17:31 oshanz joined #perl6
17:43 atrodo joined #perl6
17:56 dalek rakudo/nom: 6ec88fa | duff++ | src/core/Main.pm:
17:56 dalek rakudo/nom: Set $PROCESS::ARGFILES after command line processing
17:56 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6ec88fad2b
18:01 masak good evening, #perl6
18:02 PZt joined #perl6
18:02 colomon \o
18:03 seldon o/
18:05 * masak dinners
18:08 jnthn evening o/
18:08 sorear good day masak, jnthn, colomon, seldon
18:08 sorear welcome to #perl6, seldon, I do not think I have seen you here before
18:09 seldon I only started with perl6 a few days ago.
18:11 colomon sorear: seldon has been providing very helpful feedback on sprintf details.
18:12 * seldon blushes.
18:13 fgomez joined #perl6
18:15 colomon okay, so here's a very real question for sprintf in perl6 -- what happens if you use an unsigned format but pass a negative number?
18:15 colomon rn: say sprintf("%b", -1)
18:15 p6eval rakudo 6ec88f, niecza v19-7-g5e25209: OUTPUT«11111111111111111111111111111111␤»
18:15 colomon that's just crazily wrong in a world of bigints
18:21 seldon %b doesn't have to be unsigned, does it? -6 could come out as -110. %u is tricky though, if you want to support it.
18:23 sorear colomon: perl 6 should not have any unsigned formats imo.
18:23 sorear %u is needed in C because only of the lack of runtime types
18:23 colomon sorear: in C (and in p6 specs), %b, %o, %x, etc are all unsigned formats
18:24 colomon But I'm inclined to agree we ought to respec them as signed.
18:25 domidumont joined #perl6
18:25 seldon %b doesn't exist in C. But there is the question of whether all C format strings should be supported in perl6. If so, one could ditch only the unsigned constraints and make %u an alias of %d.
18:25 seldon As well as %ld, %lld and whatnot.
18:26 colomon I'm inclined to dump %ld, %lld, and whatnot.  :)
18:26 seldon If you don't want to preserve compatibility to C, dump %u as well.
18:26 colomon that's where my brain is going at the moment, yup.
18:27 mucker joined #perl6
18:27 colomon we've already lost (for instance) %p
18:27 seldon It's probably best to start that way. You can later still decide to add things, but dumping them is harder.
18:28 colomon forgiveness is easier than permission?
18:28 seldon ?
18:29 sorear dropping things tends to break compatibility
18:29 colomon seldon: I'm giving people a quick chance to objet before I just start deleting things from the spec.  ;)
18:29 seldon Ah.
18:30 colomon *object
18:30 sorear de-lete! de-lete! de-lete!
18:30 colomon let's see, where did I put the spec on my computer?
18:30 seldon Somewhere under /var?
18:31 seldon :P
18:31 colomon ~/tools/specs, actually
18:31 masak yeah, I have a good feeling about seldon. he seems compatible with our cultural features and quirks. :)
18:32 masak I might be biased, because apparently he played my adventure game yesterday :P
18:33 colomon dang it, forgot to pull before starting to edit.
18:33 timotimo stash, pull, pop?
18:34 seldon I still have to fence that butterfly, masak.
18:34 colomon pop?  I used stash apply
18:34 timotimo stash pop will remove the entry from the stash additionally
18:35 colomon timotimo: ah.  learn something every day
18:35 * masak .oO( fence that butterfly? is that slang for pushing drugs? :P )
18:36 masak guys, I love my job. jnthn and I have been spending a whole day in a meeting room in a relaxed atmosphere with our laptops, walking back and forth between our chairs and the whiteboard, literally figuring out how to write better software.
18:36 dalek specs: 7ccf428 | (Solomon Foster)++ | S32-setting-library/Str.pod:
18:36 dalek specs: Make unsigned sprintf types signed, remove modifiers entirely.
18:36 dalek specs: review: https://github.com/perl6/specs/commit/7ccf428428
18:36 masak not all days are like this. but still!
18:36 seldon I have a question about the hanoi minigame, though: How come I can move the disks around if all but the tiny disk are too heavy to carry?
18:36 masak seldon: hehehe
18:37 [Coke] "there's this machine in the wall..."
18:37 colomon seldon: with the greatest effort you can move them from one pole to another. carrying them further would just be impossible
18:37 masak seldon: I imagine that the player is only just able to shove them over to another rod.
18:37 masak right. what colomon said.
18:37 seldon I could roll them, though.
18:37 masak we just spare the human player all the messages about how bloody heavy the disks are.
18:38 * colomon is hoping for a No-Prize.
18:38 pmichaud the disks are square.  masak has been squaring the circle, too.
18:38 [Coke] "with herculean effort, you move the small disk."
18:38 masak seldon: no, rolling is not an operation of the game. :) you're still bounded by the Laws of Adventure Physics. :P
18:38 masak pmichaud++ # :)
18:38 seldon Okay, then.
18:38 pmichaud the disks are especially sensitive to the Higgs field.
18:38 masak hahaha
18:39 seldon I sense a whole new class of "your mom" jokes.
18:40 pmichaud "Mr. Scott:  I canna change the laws of physics, Captain!"    "Captain Masak:  Oh yes we can!"
18:40 * masak wonders at which point during the 1900's prof. Higgs got tired of hearing "your mom" jokes
18:40 masak pmichaud: I like that attitude. I'll try and embody it as best I can.
18:41 pmichaud I think Perl 6 has much the same attitude.
18:41 pmichaud "You *really* can't build an entire parser supporting a fully extensible grammar in Perl 6."   "Perl 6:  Oh yes we can."
18:42 harmil1 hmmm Solomon Foster: why does Perl 5 have signed format specifiers in sprintf? I'd like to know that for sure before we scrap them from Perl 6. Initially I wrote the sprintf format spec to pretty closely match what Perl 5 did, not that that's the only guidepost, but it seemed to make sense to be a feature superset.
18:43 harmil1 I'm not against throwing away Perl 5 isms if we don't need them, but I'm not sure we know why Perl 5 needs that particular one yet....
18:43 harmil1 er "signed" should be "unsigned", above
18:44 harmil1 *side note: I give up on getting my name right. IRC keeps changing it even if I use a password. I'm tempted to /nick a random string every time
18:45 sorear harmil1: it's not always harmil?
18:45 harmil1 well, it was harmil when I logged in. now it's harmil1
18:45 harmil1 and I used harmil1 because it kept bumping me off of ajs
18:45 sorear harmil1: TimToady told me once that the only reason Perl 5 has 'goto' is for compatibility with sed
18:45 harmil1 er I used harmil
18:46 sorear harmil1: about two days ago, you lost connection to the server, and became harmil1 on reconnect because harmil was taken
18:46 harmil1 sorear: exactly, I'm not convinced that Perl 5 has any sane reason to have unsigned sprintf formats, but I'd like to know what sane or insane reason there was
18:46 sorear if this bothers you, I don't know what to say
18:47 harmil1 sorear: name *shrug* not my biggest problem today ;)
18:48 harmil1 I mean if it's just in Perl 5 to avoid sprintf("%u", $x) from having to be sprintf("%d", abs($x), then I say nuke it, but that's probably worth looking into
18:49 sorear eval sprintf("%u", -1)
18:49 buubot_backup sorear: 4294967295
18:49 sorear it's not abs
18:49 sorear eval sprintf("%d", 2**31)
18:49 buubot_backup sorear: -2147483648
18:50 masak I never feel a need for 'goto', in Perl 5 or Perl 6. I'm pretty sure there are some legitimate uses where the total complexity of the code is smaller with 'goto' than with Structured-Programming solutions... but I find I don't solve such problems much.
18:51 masak in some sense, 'goto' represents a kind of thinking that I've taught myself to avoid in favor of higher-level problem-solving constructs.
18:51 harmil1 I'm guessing that the Perl 5 reason is that an IV and a UV aren't the same datastructure
18:51 masak man, I sound pretentious. :) 'goto' is fine, I guess.
18:51 harmil1 given that Perl 6 doesn't have that kind of representational issue, as it relies on an at least somewhat abstract implementation layer (e.g. Parrot), this is a non-concern
18:52 harmil1 Probably worth poking p5p over, though
18:52 masak 'while' loops and 'if' statements are just 'goto' singularities nicely wrapped up into Structured black holes.
18:53 harmil1 masak: goto in Perl 5 was sometimes essential to avoid code duplication due to the lack of macros, especially in error handling. Better exceptions and real macros eliminate the need as far as I can tell
18:53 sorear masak: seems I find situations that call for 'goto' once a month or so.  maybe I'm just not as good at this 'Structured' stuff :p
18:53 masak sorear: :D
18:54 masak sorear: I'm more inclined to think you're solving different problems.
18:54 colomon sorear: remind me again how to call a p6 function from C# code in niecza?
18:55 masak harmil1: it would be interesting to see an example of where 'goto' eliminates code duplication and macros would've helped. if you find one, please let me know.
18:55 harmil1 specifically, I recall using goto in File::Copy because a function call in the middle of an IO-related problem posed some interesting potential failures and there was no other way to cleanly preserve $! in the face of other errors. I think $! handling got more sophisticated after that, though (this was circa 5.001)
18:55 sorear Builtins.InvokeSub(sub, args...)
18:55 sorear note: this is a fairly new helper and is not used much yet
18:55 moritz harmil1: well, we have LEAVE and UNDO phasers and such things
18:56 seldon How did that argument about phaser scopes the other day end, by the way? Because goto could create some problems there.
18:56 colomon sorear: I misspoke.  How about a p6 method?
18:56 harmil1 moritz: I already said that I don't see the need for goto in P6. I was just introducing context for why it was more or less required in P5
18:56 sorear Builtins.InvokeMethod("foo", self, args...)
18:56 harmil1 at least back in the day
18:56 colomon sorear++
18:57 harmil1 When was 5.001? 1994ish?
18:57 harmil1 *shudder*
18:57 sorear whenever people say 'goto is not required because $new_feature', it... rubs me the wrong way
18:57 moritz I know of exactly one legitim use case of goto
18:58 seldon Perl 5.001 was released on March 13, 1995.
18:58 moritz if you have a list of variables to local()/temp()ize
18:58 moritz and if you do any normal loop, the localization is limited to the loop body
18:58 harmil1 sorear: well, goto is required when you need to absolutely preserve the current state and jump, seamlessly to a new pc. If your language provides workarounds for all edge cases that require those features then goto becomes obsolete
18:59 moritz but you want it to persist after the loop, you have to make the loop with goto
18:59 geekosaur wasn't goto there specifically for sed support?  (s///t and b)
18:59 sorear harmil1: exactly, workarounds
18:59 moritz oh, and if you generate code, goto is perfect
18:59 sorear harmil1: sometimes I don't like workarounds, they complicate stuff.
18:59 harmil1 geekosaur: that's probably why it was added. that doesn't mean that's why it was needed.
19:00 sorear 11:45 < sorear> harmil1: TimToady told me once that the only reason Perl 5 has  'goto' is for compatibility with sed
19:00 harmil1 sorear: exactly
19:00 sorear of course goto is not *needed*.
19:01 sorear you can write any control structure using only $i++, $i--, @a[$i]++, @a[$i]--, and while(@a[$i]) { ... }
19:01 harmil1 sorear: um… no, I disagree. In so far as anything beyond Turing completeness is "needed" goto's on the list unless you provide tools to solve all of the problems that goto is used for.
19:01 geekosaur more to the point, there used to be an ominous warning that goto was only guaranteed to behave as expected with respect to s2p
19:02 geekosaur (all of ths ignores goto &SUB which is a different kettle of fish)
19:02 harmil1 geekosaur: I think that error was with respect to specific hoary edge cases of using goto in ways that were evil
19:02 sorear i'm not going to stop using goto just because folks like harmil1 tell me I should be using macros instead
19:03 harmil1 sorear: no, I didn't say that
19:03 harmil1 I said that macros combined with other language features give you the tools that goto is a universal workaround for. Not quite the same.
19:03 harmil1 real exception handling is the real kicker, not macros
19:05 shachaf joined #perl6
19:06 harmil1 heehee, my goto is still there in File::Copy in 5.12 ;-)
19:07 harmil1 a great example of just how long it takes for the std library to take advantage of new features. That really should be done as an exception, now.
19:09 seldon Which goto is yours there?
19:09 harmil1 the fail_open one
19:09 colomon sorear: is it kosher to make changes to BigInteger.cs?
19:09 GlitchMr joined #perl6
19:10 seldon There's a fail_open1 and fail_open2 in 5.14.2
19:10 harmil1 yeah
19:11 harmil1 that's it. basically, the goal was to try to call close while preserving $! which, today, would be much easier, but $! was much more fragile back then
19:11 seldon It looks very much like the attempts to recreate something RAII-ish inC.
19:11 masak sorear: the debate about 'goto' got sensitive in the late 1960's and never stopped being sensitive. in here today are some of the most level-headed opinions I've seen about it. reducing things to Turing-completeness feels like the equivalence of Godwin's Law for programming languages, though. ;)
19:12 harmil1 masak: wow, I don't know how I feel about any rhetorical technique that manages to draw a line (no matter how dotted) between Turing and Hitler o.O
19:13 seldon Turing did contribute to Hitler's downfall; there's a line right there.
19:13 harmil1 I also don't want to know what the CS definition of Godwin completeness would be ;-)
19:14 harmil1 Would a Godwin machine be called an Enigma?
19:14 harmil1 back to $job
19:15 harmil1 Oh, before I go, yes, I've convinced myself that the UV/IV spit in P5 is why perl5 sprintf has %u, and unless Parrot can give us silently unsigned values which misbehave when treated as signed, I think we're clear to dump %u from P6
19:16 seldon A Godwin machine would either accuse people of being nazis all day or accuse them of accusing other people of being nazis. "Enigma" doesn't seem to be a good comparison, but you could market it as "the Pundit".
19:16 harmil1 seldon: haha
19:17 harmil1 s/parrot/whatever underlies and implementation/
19:17 sorear colomon: making changes in BigInteger.cs?  best avoided, but I already had to make one change (adding bounded-serialization support)
19:17 sorear colomon: tell me more about what you want to do
19:17 colomon sorear: all I did was make a private function public
19:18 colomon sorear: for some reason they make it very hard to get .... er, wait, shouldn't this already work?
19:18 sorear colomon: ?
19:18 colomon rn: say 458423756872568724896743289456789237689532.base(3)
19:18 p6eval rakudo 6ec88f, niecza v19-7-g5e25209: OUTPUT«1102021211011202000111021121211221120012102200221100221101112222022201022122202102010022␤»
19:19 colomon sorear: yeah, I may have overlooked something.
19:20 colomon oh, I take it back.  Int.base is implemented in p6.
19:22 colomon sorear: I'm trying to get at BigInteger.ToString(Int radix, blah)
19:22 sorear go ahead
19:22 [Coke] n:say 4584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237568725687248967432894564584237
19:23 * [Coke] is reminded to build a local copy of niecza again
19:23 * [Coke] missed a space but won't resend that. ;)
19:26 * [Coke] has no desire to finish the work day.
19:27 colomon ugh, BigInteger.ToString prepends 0s on hex numbers.
19:29 harmil1 "0s" or "multiple of character '0'"?
19:30 sudokode joined #perl6
19:30 harmil1 side topic: I'm working on the Python that reads the JSON result of my Perl 6 parser for my Domain-Specific Language… to say I'm having some context switching headaches would be a very mild understatement…
19:31 [Coke] harmil1: I took it to mean a single 0 for each hex number.
19:31 seldon The python code doesn't really care where the json comes from though, does it?
19:32 harmil1 no, but I have to keep working in all 4 languages as I find bugs in the Python code, the JSON representation that it's reading, the DSL parser in Perl 6 and the spec for the DSL
19:33 harmil1 it's worst after I go get a cup of coffee and come back to a screen full of code and try to remember what language it's written in
19:35 MayDaniel joined #perl6
19:35 harmil1 Oh, BTW, I wrote up that blog about packaging Perl 6 with Python's setuptools. I'll be posting that when I get a non-work tui
19:35 harmil1 *tuit
19:36 thou joined #perl6
19:37 harmil1 It's really nice to be able to just sling some P6 into a Python project.
19:40 birdwindupbird joined #perl6
19:43 harmil1 left #perl6
19:44 harmil1 joined #perl6
19:44 diakopter [Coke]: "...finish the work day." heh
19:45 stephenlb joined #perl6
19:50 masak did you know that almost all instances of the number '0' in code are in octal? :P
19:51 harmil1 left #perl6
19:53 [Coke] 0_0;
19:53 harmil joined #perl6
19:53 harmil Hello again, trying out new IRC client *crosses fingers*
19:54 masak rn: say 0_0
19:54 p6eval rakudo 6ec88f, niecza v19-7-g5e25209: OUTPUT«0␤»
19:55 sorear hello harmil.
19:55 sorear a new irc client won't solve the 'harmil1' problem
19:55 harmil hey, glad to see I can still see… (or is "hear" the correct metaphor?)
19:55 sorear that is a fundamental limitation of the protocol
19:56 harmil Yeah, but I was having other (major) problems. That was just the last straw. Adium seems fine for chat, but its IRC support is oddly quirky
19:57 harmil At least now Aaron Sherman shows up as my full name, not "Adium User" (which did not change when I edited the preference)
19:57 sorear I do not know much about colloquy
19:58 harmil Nor I. It literally just won the google vote :-/
19:59 harmil which is a literal google vote, but a figurative vote? Hmm… *goes off to ponder literal vs. figurative googling"
20:01 colomon n: say (1, 1, *+* ... *)[100]
20:01 p6eval niecza v19-7-g5e25209: OUTPUT«573147844013817084101␤»
20:01 colomon n: say (1, 1, *+* ... *)[200]
20:01 p6eval niecza v19-7-g5e25209: OUTPUT«453973694165307953197296969697410619233826␤»
20:02 brrt joined #perl6
20:03 harmil How does that bot work? Does it run a new interpreter for each command?
20:03 moritz yes
20:03 moritz github.com/perl6/evalbot
20:03 harmil I suppose that makes the most sense
20:04 colomon n: say 453973694165307953197296969697410619233826.base(2)
20:04 p6eval niecza v19-7-g5e25209: OUTPUT«1010011011000011011110110010010011111011100010110000111011001101110011001010011001110100101011101101011001111110001010100110101011000100010␤»
20:05 masak n: 4294967296.base(2)
20:05 p6eval niecza v19-7-g5e25209:  ( no output )
20:05 masak n: say 4294967296.base(2)
20:05 p6eval niecza v19-7-g5e25209: OUTPUT«100000000000000000000000000000000␤»
20:08 * colomon can only type with his left hand, because Pingu just got scary.
20:08 dalek ecosystem: 880796e | (Timothy Totten)++ | META.list:
20:08 dalek ecosystem: Reverting HTTP::Easy repo URL.
20:08 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/880796e161
20:09 colomon n: say 453973694165307953197296969697410619233826.base(8)
20:09 p6eval niecza v19-7-g5e25209: OUTPUT«12330336622373426073156312316453553176124653042␤»
20:10 masak Pingu... got scary? that's interesting to try to imagine.
20:10 masak guess my limits for scary have been pushed quite a bit over the past 30 years...
20:11 colomon masak: 3-year-olds can be scared of all sorts of weird things
20:11 masak that's good to know.
20:13 moritz a year ago, $daughter was terribly scared of the vacuum cleaner. Now she laughs with delight when I switch it on
20:13 colomon stupid BigInteger doesn't properly handle negative signs for non-decimal numbers.
20:14 colomon moritz: $son spent a lot of time over the last week telling us how he now loved scary things.   didn't make any difference when vaguely threatening shadows appeared in Pingu.
20:15 masak maybe 'love scary things' simply means 'seeks out scary things in order to be properly scared by them' :P
20:16 lestrrat joined #perl6
20:18 tadzik wassup?
20:19 masak tadzik! \o/
20:20 colomon n: say 453973694165307953197296969697410619233826.base(16)
20:20 p6eval niecza v19-7-g5e25209: OUTPUT«5361BD927DC58766E6533A576B3F1535622␤»
20:21 masak tadzik: http://www.youtube.com/watch?v=NsJLhRGPv-M ;)
20:22 flussence r: say pack('n', 1024).perl # do we have pack() yet?
20:22 p6eval rakudo 6ec88f: OUTPUT«Buf.new()␤»
20:22 flussence ooh
20:22 masak tadzik: I didn't find that clip so funny when I saw it at the movies many years ago. I can see the humor now, though.
20:22 flussence r: say pack('n', 1024).bytes
20:22 p6eval rakudo 6ec88f: OUTPUT«2␤»
20:22 masak flussence: have pack, but not so much :/
20:23 sisar joined #perl6
20:24 tadzik masak: hehe, I don't think I've seen the movie actually
20:24 * flussence is thinking of making a module that does both pack and printf things in a p6ish way
20:25 moritz form!
20:25 colomon form!
20:25 tadzik oh, supernovus's back into hacking?
20:26 moritz aye
20:26 masak \o/
20:26 moritz and I'm glad to return HTTP::Easy into his maintenance
20:28 harmil Inside CATCH, I get a contextualized $_ … where do I look for what I can do with that (other than simply convert it to a string)?
20:28 flussence Form looks interesting... but I want something a lot more huffmanised :)
20:29 moritz harmil: S32::Exception
20:29 crab2313 joined #perl6
20:29 moritz and p6doc Exception
20:29 harmil I was afraid you'd say that ;)
20:29 moritz http://doc.perl6.org/type/Exception
20:29 moritz why?
20:30 harmil it's just largish. I was hoping someone had hacked together a common uses kind of thing
20:30 * colomon notes Pingu just got scary again, but not so scary $son has to grab my hand for comfort.
20:31 pmichaud p6doc Exception doesn't look that large
20:31 harmil I'll look
20:31 harmil thanks
20:35 * moritz has another p6doc question
20:35 moritz should we document literals along with their types? or rather separately?
20:35 moritz for example I want to write Signature.pod
20:35 moritz with the Signature API
20:36 moritz but there's also a lot of syntax for signatures and parameters
20:36 pmichaud I'd put that one where it feels natural for now.
20:37 pmichaud for the more general question; I think we'd have to wait and see.  Other literals might be better placed in a "syntax" section.
20:37 moritz maybe that's a place where the P<> links will come in handy
20:38 pmichaud Indeed.  Overall I think p6doc will be somewhat organic for a while, with refactorings at various times.
20:38 masak maybe something like '*' should at least contain a reference to the Signature API.
20:39 masak organic++
20:39 pmichaud oooh, we need a Whatever.pod
20:39 moritz aye
20:39 pmichaud I have to leave now :-( but maybe I can draft that one when I get back.
20:39 pmichaud Unless others beat me to it.  That one feels like -Ofun ish
20:44 dalek doc: ae479a7 | moritz++ | lib/Signature.pod:
20:44 dalek doc: start to document Signature
20:44 dalek doc:
20:44 dalek doc: no signature literals yet
20:44 dalek doc: review: https://github.com/perl6/doc/commit/ae479a729a
20:46 dalek doc: bc2ebb1 | moritz++ | lib/Parcel.pod:
20:46 dalek doc: [Parcel] reorder examples by number of elements
20:46 dalek doc: review: https://github.com/perl6/doc/commit/bc2ebb11d5
20:55 dalek doc: b9e3cd0 | pmichaud++ | lib/Parcel.pod:
20:55 dalek doc: [Parcel] Grammatical typo fix.
20:55 dalek doc: review: https://github.com/perl6/doc/commit/b9e3cd0143
20:58 cj diakopter: uhrm...
20:58 cj diakopter: was that you the other night?
20:58 diakopter ?
20:58 dalek doc: 1c279b0 | pmichaud++ | lib/Signature.pod:
20:58 dalek doc: [Signature] Grammatical fixups.
20:58 dalek doc: review: https://github.com/perl6/doc/commit/1c279b0b1e
20:58 cj meet-up with xamarin in Seattle
20:59 cj I met a Matthew who said he worked on EC2
20:59 cj I googled, and it looks like his last name is Wilson
20:59 cj I have no idea what you look like, and you might look like he looks like.
20:59 diakopter no; I'm in sfbay, but I happened to be in Seattle last Sunday-Wed
20:59 diakopter I have a photo on twitter
20:59 cj ;-)
21:00 cj it looks like his middle name starts with an S
21:00 diakopter oh, me too.
21:01 diakopter yeah his linkedin thing is matthewswilson
21:01 cj whee.
21:02 diakopter I'm trying to figure out mine
21:02 cj I've been chatting with a guy named John Curran about networking stuff.  I needed his email address so I checked gmail.  And found a guy who looked about right.  his email address was even @arin.net, so I *knew* he was involved in networking.
21:02 cj turns out they're probably not the same guy.
21:02 cj one of them happens to be the president and ceo of ARIN, though, and replied.  And didn't tell me I had the wrong guy.  But I bet he was confused.
21:03 diakopter oh, my linkedin thing is mattswilson
21:04 cj the context was about right for it to be you.  Related to mono.  about the right age, I'd think.  a programmer.  hangs out on freenode.
21:04 cj launchpad says his nick on freenode is msw, but he's not here, afaict.
21:05 colomon rn: say sprintf("%d", -1.1)
21:05 p6eval rakudo 6ec88f, niecza v19-7-g5e25209: OUTPUT«-1␤»
21:05 colomon rn: say sprintf("%d", -.9)
21:05 p6eval rakudo 6ec88f, niecza v19-7-g5e25209: OUTPUT«0␤»
21:08 dalek doc: b901d46 | moritz++ | lib/Signature.pod:
21:08 dalek doc: [Signature] start talking about literals
21:08 dalek doc: review: https://github.com/perl6/doc/commit/b901d4613e
21:08 dalek roast: 13e241a | (Solomon Foster)++ | S32-str/sprintf.t:
21:08 dalek roast: Lots more sprintf tests.  But we could still use even more!
21:08 dalek roast: review: https://github.com/perl6/roast/commit/13e241ab0b
21:16 dalek niecza: e862bf2 | (Solomon Foster)++ | lib/Printf.cs:
21:16 dalek niecza: Refactor sprintf internals a bit.  Probably still needs work on edge cases.
21:16 dalek niecza: review: https://github.com/sorear/niecza/commit/e862bf2669
21:16 dalek niecza: 4b9c017 | (Solomon Foster)++ | lib/ (2 files):
21:16 dalek niecza: Major refactor for sprintf.  Now handles all floating point directives (though %g and %G may still be a bit off) and big ints / Rats in integer formats.
21:16 dalek niecza: review: https://github.com/sorear/niecza/commit/4b9c017ca6
21:17 sorear colomon++
21:18 colomon sorear: the code's still kind of ugly, but it handles a lot more cases now.
21:19 adu joined #perl6
21:26 brrt left #perl6
21:31 pyrimidine left #perl6
21:31 pyrimidine joined #perl6
21:32 sorear colomon: any advice for getting git and mono working on a mac? :D
21:33 harmil sorear: git on mac is just ports, right?
21:33 harmil idk if mono is in ports, but I would not be shocked
21:34 shachaf sorear: Someone once told me to use "brew", at least for git, which seemed to work reasonably well.
21:34 geekosaur git coems from macports or form xcode 4.x
21:34 geekosaur if you have a modern xcode there should be no reason to install git from any package system.
21:34 harmil yes, though Xcode won't (I'm pretty sure) contain mono...
21:34 shachaf Ah, Xcode.
21:35 sorear i'm very new to this whole thing
21:35 geekosaur mono is definitely in macports; note that mono-sgen currently has a tendency to drop core
21:35 sorear also, I asked colomon
21:35 sorear geekosaur: what version of mono is in macports?
21:35 geekosaur also note that installing mono for OS X via go-mono.org or whatever it is installs a /usr/bin/pkg-config that will make working with any OS X packaging system difficult or impossible
21:36 geekosaur I show 2.10.9 but I havent updated this machine in a while (and wont be able to for a while)
21:37 sjohnson git kicks ass
21:38 sjohnson i use it often!
21:38 sjohnson oh, you meant mono.
21:38 * sjohnson has no experience with that
21:39 colomon sorear: remember, my mono hasn't had all the proper libraries installed since I last updated it.
21:40 colomon anyway, the most recent time around I downloaded mono from the mono website, and git from... I'm not sure were.
21:40 colomon *where
21:40 colomon but macports would probably work fine in both cases, I think that's what I did on my last MBP.
21:41 colomon http://git-scm.com/download/mac
21:42 colomon http://www.go-mono.com/mono-downloads/download.html
21:47 harmil question about attribute access: it seems that if I mix-in a role that uses Q:PIR to do a get attribute on self, it can grab $! private attributes from the "roled" class. Is this expected/supported behavior (if unclean)
21:48 sorear expected yes, supported probably not
21:48 jnthn If you use Q:PIR you can do everything, but we will rip the rug from under you whenever we feel like.
21:49 harmil OK, so PIR has no protected access for private members, then, we're just creating that fiction in P6 itself?
21:49 jnthn Right.
21:50 jnthn Note that Q:PIR will probably need a pragma at some point soon.
21:50 harmil OK, as long as I can get buffered IO into 2012.07, I don't care if this breaks down the road.
21:51 harmil Right now I'm ripping $!PIO out of $*IN and $*OUT using the hack mentioned above.
21:52 jnthn Ah, I see
21:53 harmil I have to admit that I was kind of surprised and impressed when it worked. Mixing in parrot byte code to an instantiated object was fun to watch
21:54 sorear macports versus fink versus homebrew?
21:55 harmil I've only used macports… seems pretty reliable
22:41 skids joined #perl6
23:01 adu joined #perl6
23:03 adu joined #perl6
23:05 adu joined #perl6
23:07 adu joined #perl6
23:15 masak lol, I blogged! \o/ http://strangelyconsistent.org/blog/july-5-moving-around-ii-up-down-in-out
23:17 masak good night, #perl6
23:34 whiteknight joined #perl6
23:54 Entonian joined #perl6

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

Perl 6 | Reference Documentation | Rakudo