Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2010-12-16

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:01 skangas left #perl6
00:02 lue It could've been part of the update to Unicode 6. The update happened ~October 2010 IIRC
00:06 flussence I thought all the new unicode stuff was U+1Fxxx
00:06 stkowski_ joined #perl6
00:07 lue There's a changelog floating somewhere on unicode.org.
00:09 stkowski left #perl6
00:09 stkowski_ is now known as stkowski
00:23 Guest87704 left #perl6
00:25 cdarroch left #perl6
00:36 hercynium left #perl6
00:41 lue rakudo: say time; say now;
00:41 p6eval rakudo a95c1d: OUTPUT«1292460064␤Instant:2010-12-16T00:41:4.873248Z␤»
00:42 TimToady I think it should *really* print the time out in Zulu.  :)
00:43 TimToady (along with reformatting your disk)
00:44 felippe joined #perl6
00:44 ch3ck left #perl6
00:44 lopaway is now known as lopnor
00:45 sorear I'm going to have it generate an external TAI64NA blob
00:45 sorear http://cr.yp.to/libtai/tai64.html # least helpful date format?
00:47 orafu left #perl6
00:47 orafu joined #perl6
00:48 TimToady I dunno, they seem to assume you'd never want anything smaller than a nanosecond
00:48 TimToady Perl 6 makes no such assumption :)
00:49 kcwu joined #perl6
00:49 TimToady using integers for instants is Just Wrong
00:49 TimToady it's making the same mistake all over again
00:50 TimToady it might be suitable for an output format though :)
00:50 sorear that's what I meant, the output format
00:50 TimToady I know, I'm just be curmudgeonly.
00:50 sorear say now; # 32 hex digits
00:51 TimToady you could run it through SHA256 while you're at it
00:51 ch3ck joined #perl6
00:52 TimToady oh wait, hex digits
00:52 TimToady hmm
00:52 sorear I'm not that evil
00:52 sorear tai64na blobs at least sort
00:52 flussence .oO( maybe instants should be renamed OpaqueTimePointers )
00:53 sorear (also, did you mean to say attosecond?)
00:53 TimToady whatever, integers are wrong
00:54 TimToady maybe instants should also come with an estimate of clock precision :)
00:54 lue now returns an Instant, time and Integer
00:54 lue s/and/an/
00:55 TimToady now should never return integer
00:56 lue if I had it my way, S32::Temporal would be time dilation-proof
00:56 TimToady that's just asking for encapsulation violation
00:56 sorear why are integers wrong?  because of 1/3 + 1/3 + 1/3 ?
00:56 TimToady this from the person who can't be bothered to enter umlauts?
00:56 lue well, it's going in my (increasingly belated) advent post for now (the integer thing)
00:57 QinGW joined #perl6
00:57 TimToady because all integers assume a precision
00:57 lue maybe I'll add (even though it shouldn't)
00:57 justatheory left #perl6
00:58 TimToady instants must be opaque to math, except for finding differences
00:58 TimToady which is what epochs are, after all
00:59 lue (btw, I only can't be bothered to make entering umlauts easy because keyboard reconfiguration is a nightmare.)
00:59 TimToady and dilation-proofing time is a walk in the park?
01:00 adu joined #perl6
01:00 TimToady not even a walk in the park is dilation proof :)
01:01 flussence the easiest way to solve that would be to move Everything at the same velocity as the perl6 script
01:02 flussence well, not easiest but probably the simplest :)
01:03 lue S32::Temporal:55 : "[time] Returns the current POSIX time as an C<Int>."
01:03 lue It's OK'd by the spec, but I see why it shouldn't.
01:04 TimToady I didn't say it shouldn't
01:04 TimToady time is POSIX based, instants are not
01:04 felippe left #perl6
01:05 TimToady POSIX is cultural and inherently flawed; atomic instants are non-cultural and (in the abstract) completely linear
01:05 TimToady modulo time dilation, of course
01:06 ascent_ left #perl6
01:06 ascent_ joined #perl6
01:06 lue TimToady: of course dilation-proofing isn't a walk in the park. But it's a serious issue for any P6 user going to space anytime soon. :)
01:08 flussence (or hyperspace)
01:09 lue .oO(I do believe S32::Temporal is one of the few things that can spark Instant Discussion™)
01:10 flussence groan... :)
01:17 lue rakudo: my $dw = DateTime.new("1963-11-23T17:15:00Z"); say now - $dw;
01:17 p6eval rakudo a95c1d: OUTPUT«Can't take numeric value for object of type DateTime␤  in 'Any::Numeric' at line 1420:CORE.setting␤  in 'infix:<->' at line 7359:CORE.setting␤  in main program body at line 22:/tmp/NmecrUxEct␤»
01:17 lue Hmm.
01:18 sorear why can't Instants be numeric?
01:18 Guest65806 left #perl6
01:18 [Coke] left #perl6
01:20 lue What I have yet to figure out is how to do darned arithmetic with DateTime.
01:20 TimToady sorear: because I said so!  :)
01:26 Guest65806 joined #perl6
01:26 stkowski left #perl6
01:27 masonkramer joined #perl6
01:27 stkowski joined #perl6
01:27 dalek mu: edd6723 | lue++ | misc/perl6advent-2010/articles/ (2 files):
01:27 dalek mu: Added Pod version of Day 16 post on Temporal, and cleaned up Day 13 article.
01:27 dalek mu: review: https://github.com/perl6/mu/commit/edd6723cad
01:28 lue feel free to look it over before I post it.
01:32 redicaps joined #perl6
01:33 mtk left #perl6
01:36 felliott joined #perl6
01:41 mtk joined #perl6
01:42 joimox left #perl6
01:42 nymacro left #perl6
01:45 shi left #perl6
01:47 felipe left #perl6
01:57 lue afk
02:16 [Coke] joined #perl6
02:34 wamba left #perl6
02:42 masonkramer left #perl6
02:42 masonkramer joined #perl6
02:44 Eevee left #perl6
02:50 Eevee joined #perl6
02:50 am0c joined #perl6
02:53 kfo_ joined #perl6
02:53 ch3ck3r joined #perl6
02:53 whiteknight left #perl6
02:55 kfo left #perl6
02:57 ch3ck left #perl6
03:15 adu left #perl6
03:22 adu joined #perl6
03:22 slavik1 left #perl6
03:22 Kovensky left #perl6
03:23 Kovensky joined #perl6
03:23 IllvilJa left #perl6
03:24 IllvilJa joined #perl6
03:25 slavik1 joined #perl6
03:33 jdv79 left #perl6
03:40 khisanth_ joined #perl6
03:41 khisanth_ is now known as Guest41255
03:42 Khisanth left #perl6
03:52 lopnor is now known as lopaway
04:02 alester left #perl6
04:15 satyavvd joined #perl6
04:21 lopaway is now known as lopnor
04:22 Guest41255 left #perl6
04:22 Guest41255 joined #perl6
04:24 Guest41255 left #perl6
04:25 Khisanth joined #perl6
04:25 Khisanth is now known as Guest73210
04:33 Guest73210 left #perl6
04:33 khisanth__ joined #perl6
04:33 khisanth__ is now known as Khisanth
04:33 justatheory joined #perl6
04:45 lopnor is now known as lopaway
04:57 orafu left #perl6
04:57 orafu joined #perl6
05:01 stkowski left #perl6
05:03 am0c left #perl6
05:42 felipe joined #perl6
06:00 _kaare joined #perl6
06:08 sorear GOOD * #PERL6
06:09 justatheory left #perl6
06:11 stkowski joined #perl6
06:13 diakopter heh
06:24 envi joined #perl6
06:25 lue left #perl6
06:30 lopaway is now known as lopnor
06:32 kjeldahl left #perl6
06:37 nymacro joined #perl6
07:02 wtw joined #perl6
07:10 soroush joined #perl6
07:11 soroush_ left #perl6
07:37 spinclad left #perl6
07:41 stkowski left #perl6
07:46 spinclad joined #perl6
07:54 masak joined #perl6
07:54 masak oh hai, #perl6
07:55 zby_home_ joined #perl6
07:56 sorear hello masak!
07:56 sorear I'm going to be very Perl 6 productive now
07:56 masak sounds good.
07:56 masak I hope to look a bit more at niecza today.
07:58 redicaps std: sub f{}; &.wrap({say "hey"});f;
07:58 p6eval std 01ab3ab: OUTPUT«ok 00:01 123m␤»
07:59 masak I don't think that means what you think it means.
08:00 masak &.wrap would desugar to &(self.wrap)
08:01 redicaps masak: I got a syntax error here:  http://pastebin.com/mC7XXhDu
08:01 * masak looks
08:02 masak huh.
08:02 masak rakudo: sub a { say "a" }; &a.wrap({say "wrap"; nextsame}); a
08:02 redicaps I need a ';' after sub a{} block
08:02 p6eval rakudo a95c1d: OUTPUT«wrap␤a␤»
08:02 masak redicaps: oh, ok.
08:02 masak yes, that's an annoying, but known, syntax bug.
08:03 masak please live with it until someone addresses it :)
08:03 masak the customary thing to do is to insert a comment starting with '# RAKUDO' and the containing the RT ticket number.
08:06 redicaps masak:  Is this already submitted as a bug?
08:06 masak yes, I think so. want me to dig it up for you?
08:06 masak allegedly, RT is hard to naviage :P
08:06 sorear what is the Rakudo bug here?
08:06 moritz_ std: sub a{ }
08:06 p6eval std 01ab3ab: OUTPUT«ok 00:01 118m␤»
08:06 moritz_ rakudo: sub a{ }; say a
08:06 p6eval rakudo a95c1d: OUTPUT«␤»
08:07 redicaps moritz_: one-liner never have this problem
08:07 masak rakudo: sub a { say "a" }␤&a.wrap({say "wrap"; nextsame}); a
08:07 p6eval rakudo a95c1d: OUTPUT«a␤Method 'wrap' not found for invocant of class 'Bool'␤  in main program body at line 23:/tmp/S_Q1H5yPZ4␤»
08:07 masak sorear: that.
08:07 sorear oh.
08:07 sorear actually that's known
08:07 redicaps masak: LoL
08:07 sorear let me find the ticket
08:07 moritz_ does it work with a ; ?
08:07 masak yes.
08:07 moritz_ rakudo: sub a { say "a" }; &a.wrap({say "wrap"; nextsame}); a
08:07 p6eval rakudo a95c1d: OUTPUT«wrap␤a␤»
08:09 am0c joined #perl6
08:09 masak sorear: I might have been thinking about this one: http://rt.perl.org/rt3/Ticket/Display.html?id=76432
08:09 masak it seems to have some additional prereq that isn't manifested here, though.
08:10 masak so maybe a new ticket is in order.
08:12 sorear http://rt.perl.org/rt3/Public/Bug/Display.html?id=79964
08:13 sorear masak:
08:15 * masak looks
08:16 masak yes, that one looks spot on.
08:16 masak sorear++
08:24 sorear masak: so, I've modified niecza to spit out a JSON dump of the internal Metamodel::Unit structure (all classes, all subs, code, etc), and now i'
08:24 sorear m trying to rewrite the CLR code generator in C#
08:25 masak what's the goal?
08:26 sorear 1. interface with System.Reflection.Emit directly and not have to deal with C#'s restrictions
08:26 sorear 2. faster, since generating and parsing 10^5+ lines of C# takes a while
08:26 sorear 3. faster since it's not Perl
08:27 sorear 4. portability is improved since all C# dependancies are forced out of the common codebase
08:27 sorear (the CLR bytecode emitter is only useful on systems with a CLR implementation, so it doesn't need to be portable at all)
08:28 masak is master in a runnable state, or should I go for an older revision?
08:28 sorear master is in a runnable state, cilbackend isn't
08:29 glow joined #perl6
08:34 masak excellent.
08:35 neroxx joined #perl6
08:40 neroxx left #perl6
08:42 zorgnax joined #perl6
08:42 maja joined #perl6
08:43 zorgnax I really dont like the ascii version of our butterfly mascot
08:44 zorgnax looks too much like a goatse or the home alone kid
08:44 masak that's a valid opinion.
08:45 masak and a good reason to usher in the age of Unicode, I guess.
08:45 masak or at least a reason. :)
08:45 lopnor is now known as lopaway
08:45 sorear we have an ASCII version?
08:45 sorear >o< ?
08:45 zorgnax in the title of the room
08:46 masak that's not ASCII.
08:46 masak neither of those three chars are in ASCII.
08:46 masak thought you meant >>ö<<
08:46 zorgnax textual art then
08:46 masak I think it's cute.
08:47 zorgnax maybe if there was a better butterfly body symbol then o-umlauts
08:47 khisanth_ joined #perl6
08:49 sorear ß maybe?
08:50 masak the umlaut signifies the antennae, not the wings.
08:50 masak rakudo: module A { our sub foo { say "A::foo" } }; module B is A { our sub foo { say "B::foo"; nextsame } }; B::foo
08:50 p6eval rakudo a95c1d: OUTPUT«B::foo␤Null PMC access in clone()␤  in 'B::foo' at line 1␤  in main program body at line 22:/tmp/xOo4v12GQ7␤»
08:50 masak rakudo: nextsame
08:50 p6eval rakudo a95c1d: OUTPUT«Null PMC access in clone()␤  in main program body at line 1␤»
08:51 masak rakudo: module B is floozey {}
08:51 p6eval rakudo a95c1d:  ( no output )
08:51 masak rakudo: module B is floozey {}; say "alive"
08:51 p6eval rakudo a95c1d: OUTPUT«alive␤»
08:52 * masak submits rakudobug
08:52 Khisanth left #perl6
08:52 neroxx joined #perl6
08:55 zorgnax Is that supposed to work differently?
08:56 zorgnax nextsame in an inherited module's subroutine
08:56 masak there is no such thing as an inherited module.
08:56 masak that's as good as a contradiction in terms.
08:56 masak inheritance is a relation between OO types such as classes and roles.
08:56 zorgnax right of course
08:57 masak and it is actualized in method dispatch, not sub dispatch.
08:58 maja left #perl6
09:07 adu left #perl6
09:07 masak at $dayjob, I get to acquaint myself a bit with R. it's an interesting platform, full of nice introspection. but I still can't quite get my head around the syntax, especially which things autoquote and which things don't.
09:08 masak there has to be a system, but I just don't see it yet.
09:08 masak but their AST access looks fun and inspiring.
09:12 moritz_ R? that statistical package?
09:13 masak yes.
09:13 masak it's really a Lisp-alike in disguise.
09:13 moritz_ in the sense that everything is a list?
09:13 masak yes.
09:14 masak the source code makes frequent and non-trivial references to Lisp.
09:14 moritz_ Mathematica does that too
09:14 masak oh; didn't know that. sounds about right, though.
09:14 moritz_ if you have a list a = {1, 2, 3}, a[[0]] is List
09:14 moritz_ a[[1]] is 1
09:14 moritz_ etc.
09:15 masak huh.
09:15 moritz_ it's a bit of a different approach than lisp
09:16 masak I'd describe it as less thorough.
09:17 masak real Lisp has the metacircular thing.
09:18 sorear do you mean homoiconicity?
09:19 mtk left #perl6
09:19 masak I didn't, but that's important too.
09:20 masak I think R has homoiconicity.
09:26 mtk joined #perl6
09:27 masak rakudo: try{CATCH {say "caught";}}
09:27 p6eval rakudo a95c1d: OUTPUT«error:imcc:syntax error, unexpected ')' (')')␤    in file 'EVAL_10' line 84422894␤===SORRY!===␤syntax error ... somewhere␤»
09:27 * masak submits rakuodbug
09:28 dakkar joined #perl6
09:28 masak rakudo: CATCH {say "caught";}
09:28 p6eval rakudo a95c1d:  ( no output )
09:28 kensanata joined #perl6
09:29 masak rakudo: try { CATCH {} }
09:29 p6eval rakudo a95c1d:  ( no output )
09:29 masak huh.
09:29 masak rakudo: try{CATCH {}}
09:29 p6eval rakudo a95c1d: OUTPUT«error:imcc:syntax error, unexpected ')' (')')␤    in file 'EVAL_10' line 58970542␤===SORRY!===␤syntax error ... somewhere␤»
09:29 masak rakudo: try {CATCH {}}
09:29 p6eval rakudo a95c1d:  ( no output )
09:29 masak rakudo: try {CATCH {say "caught";}}
09:29 p6eval rakudo a95c1d:  ( no output )
09:30 masak rakudo: try{}
09:30 p6eval rakudo a95c1d: OUTPUT«Could not find sub &try␤  in main program body at line 22:/tmp/OOKCmOQamA␤»
09:30 masak rakudo: try{CATCH{}}
09:30 p6eval rakudo a95c1d: OUTPUT«error:imcc:syntax error, unexpected ')' (')')␤    in file 'EVAL_10' line 44790886␤===SORRY!===␤syntax error ... somewhere␤»
09:31 masak std: try{CATCH{}}
09:31 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared name:␤    'CATCH' used at line 1␤Undeclared routine:␤     'try' used at line 1␤Check failed␤FAILED 00:01 118m␤»
09:31 masak right, so it's not syntactically correct in the first place.
09:31 masak std: try{CATCH {}}
09:31 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'try' used at line 1␤Check failed␤FAILED 00:01 118m␤»
09:32 masak but Rakudo could give a more awesome error indicating that.
09:35 fhelmberger joined #perl6
09:41 moritz_ could it?
09:42 moritz_ and would that more awesome error message still be emitted if a subroutine named try() existed?
09:44 redicaps left #perl6
09:46 masak rakudo: sub try { say "OH HAI" }; try{CATCH { say "caught" } }
09:46 p6eval rakudo a95c1d: OUTPUT«error:imcc:syntax error, unexpected ')' (')')␤    in file 'EVAL_10' line 60798066␤===SORRY!===␤syntax error ... somewhere␤»
09:46 masak doesn't seem to matter at present.
09:48 nero2x joined #perl6
09:49 uasi joined #perl6
09:49 uasi hi all
09:50 masak uasi! \o/
09:50 nero__ joined #perl6
09:50 uasi rakudo: my %a; %a{ CATCH{} }
09:50 p6eval rakudo a95c1d: OUTPUT«error:imcc:syntax error, unexpected ')' (')')␤    in file 'EVAL_10' line 49267820␤===SORRY!===␤syntax error ... somewhere␤»
09:50 moritz_ hi uasi. I've pushed your patch just a few minutes after you left yesterday
09:51 uasi moritz_: thanks!
09:51 neroxx left #perl6
09:51 * masak submits rakudobug
09:51 masak it's the same error, but as far as I'm concerned, that's a different area.
09:51 masak hm. wait.
09:51 uasi CATCH{} inside &postcircumfix:<{ }> emits broken PIR
09:51 moritz_ it's the same. CATCH in subscript
09:51 moritz_ uasi: thank you for the patch
09:52 uasi :)
09:52 masak moritz_: well, you said 'try' was a funcall.
09:52 masak moritz_: then that case is a subscript too.
09:52 * masak renames the ticket instead
09:52 masak uasi++
09:53 nero2x left #perl6
10:01 jest joined #perl6
10:04 sorear I'd like to know how it's even possible for Rakudo to generate PIR syntax errors.
10:04 sorear I thought the point of POST was to make that impossible.
10:06 moritz_ by inline PIR?
10:06 moritz_ also you can say pirop:foo, and if foo doesn't exist, you're screwed
10:06 sorear but... CATCH?
10:07 redicaps1 joined #perl6
10:09 uasi sorear: foo{CATCH{}} generates '$P90 = "!postcircumfix:<{ }>"($P89, )' or something like that
10:10 uasi I have no idea why this happens
10:11 uasi er, trailing comma in argument list is not allowed in PIR
10:12 masak correct.
10:13 dalek niecza/cilbackend: bce76ee | sorear++ | lib/CLRBackend.cs:
10:13 dalek niecza/cilbackend: Start drafting ClrOp layer
10:13 dalek niecza/cilbackend: review: https://github.com/sorear/niecza/commit/bce76ee0a5
10:13 dalek niecza/cilbackend: 5544d25 | sorear++ | lib/CLRBackend.cs:
10:13 dalek niecza/cilbackend: Implement the rest of ClrMethodCall
10:13 dalek niecza/cilbackend: review: https://github.com/sorear/niecza/commit/5544d253bf
10:22 daxim joined #perl6
10:25 jest left #perl6
10:27 uasi std: my %a; %a{CATCH {}}
10:27 p6eval std 01ab3ab: OUTPUT«ok 00:01 120m␤»
10:27 uasi is it syntactically correct?
10:28 moritz_ std says so
10:29 masak I don't see why not.
10:29 moritz_ but it doesn't mean it's semantically valid
10:29 masak I don't see why not there either.
10:29 moritz_ because CATCH is tied to a block
10:29 masak you mean one can't have CATCH at the top level of a program?
10:30 masak that's news to me.
10:30 moritz_ well, that's a block too, conceptually
10:30 masak yes.
10:30 masak and errors can occur (or be passed to) the top level as well as any other level.
10:30 moritz_ but I don't see how a CATCH makes sense that's not directly inside a block
10:30 masak why don't you see that?
10:30 moritz_ does it bind to the outer block?
10:31 QinGW left #perl6
10:31 masak I suppose so.
10:31 moritz_ then it's very confusing
10:31 masak do you also find a BEGIN block at the top level very confusing?
10:32 moritz_ die "foo"; %hash{CATCH { say "OH NOEZ } }; # catches the die()
10:32 masak yes.
10:32 tadzik o/
10:32 moritz_ masak: nope. But a BEGIN block isn't tied as tightly to the outer block
10:32 masak I'd say it's tied exactly as tightly.
10:33 masak or take en END block, if that makes more sense.
10:33 moritz_ a CATCH block modifies how code is executed in the outer block
10:33 moritz_ I don't see how BEGIN or END do that in the normal case
10:34 masak then we mean different things by "modifies how code is executed" :)
10:35 moritz_ masak: in what way do you think that BEGIN and END blocks modify the execution of the surrounding block?
10:36 masak by executing code earlier or later that would otherwise have been executed in the normal flow of the code.
10:37 masak BEGIN in { say "A"; BEGIN { say "B" }; say "C" } modifies the execution of 'say "B"'
10:37 moritz_ but that's only the inner block that's modified
10:37 moritz_ not the outer
10:37 masak well, yes. the inner block belongs with the BEGIN.
10:37 masak similarly, with CATCH { say "whoa" }, it's only the inner block that's modified.
10:38 moritz_ nope
10:38 moritz_ hm
10:38 masak I think I see what you're referring to. you're talking about the conditional triggering of CATCH.
10:38 moritz_ depends on what the CATCH does
10:38 moritz_ right
10:39 sorear CATCH is a phaser
10:39 masak not sure I find that very relevant.
10:39 masak BEGIN and END are phasers too.
10:39 moritz_ it always leaves the outer block, but sometimes violently, sometimes not
10:39 masak sometimes it resumes.
10:39 moritz_ even stronger interaction then
10:39 masak in fact, the rollback is handled after the CATCH.
10:39 masak and only conditionally.
10:40 masak yes, it's mighty strange. I mean to explore this and other phaser interactions in Yapsi.
10:40 masak I bet there's a good lot we don't know about phasers yet.
10:40 sorear masak++ # thinking about Hard Stuff so I don't have to
10:40 masak :)
10:44 * sorear out
10:45 masak I'm really looking forward to the first time I see a PRE { POST {} } construction running correctly.
10:45 moritz_ a postcondition to a precondition?
10:45 moritz_ you're evil :-)
10:46 masak (the POST {} block should be conceuptually hoisted up to the block that surrounds the PRE, but should still retain the lexical environment of the PRE)
10:46 masak hey, it's in the spec!
10:46 masak it's a brilliant idea, since you're often declaring things in PRE that you want to check in POST.
10:47 masak I could even see the same being done with FIRST and LAST... maybe.
10:48 masak it's certainly doable, but its usefulness is perhaps doubtful.
10:52 nero__ left #perl6
10:53 nero__ joined #perl6
10:56 nero2x joined #perl6
10:57 masak perhaps for @items { FIRST { my $first = $_; LAST { say "And remember, the first item was $first!" } }; say $_ } or something like that.
10:57 neroxx joined #perl6
10:58 mathw wouldn't that attach the LAST to the FIRST though
10:58 mathw rather than to the FIRST's container
10:58 masak by current spec it's illegal.
10:58 masak LAST must be directly inside a loop block.
10:59 mathw ah
10:59 masak I'm talking about possibly extending the spec to support this.
10:59 moritz_ first implement it, then spec it :-)
10:59 masak yeah.
10:59 masak also possibly START/LEAVE, ENTER/LEAVE, FIRST/NEXT...
11:00 nero2x left #perl6
11:00 nero__ left #perl6
11:00 masak what's the value of a phaser that hasn't executed yet?
11:00 masak say END { 42 }
11:01 moritz_ (off topic) interestingly, 'ls' doesn't do an opendir on my box
11:01 moritz_ it does an   open(".", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC)
11:03 tadzik same here
11:03 tadzik O_DIRECTORY
11:03 tadzik If pathname is not a directory, cause the open to fail.  This flag is Linux-specific, and was added in kernel version 2.1.126, to
11:03 tadzik avoid  denial-of-service  problems if opendir(3) is called on a FIFO or tape device, but should not be used outside of the imple-
11:03 tadzik mentation of opendir(3).
11:03 tadzik whoops :)
11:04 moritz_ so, ls is cheating.
11:05 moritz_ and won't work on really old kernels
11:05 moritz_ like, ancient
11:06 nymacro left #perl6
11:17 nero2x joined #perl6
11:22 neroxx left #perl6
11:22 nero2x left #perl6
11:29 glow left #perl6
11:37 neroxx joined #perl6
11:38 nero2x joined #perl6
11:40 nero__ joined #perl6
11:41 jaldhar left #perl6
11:42 Trashlord left #perl6
11:43 satyavvd left #perl6
11:43 Trashlord joined #perl6
11:43 neroxx left #perl6
11:43 nero2x left #perl6
11:46 jaldhar joined #perl6
11:50 taljurf joined #perl6
11:52 taljurf guys, is perl-netpacket = http://search.cpan.org/~yanick/NetPacket-1.0.1/lib/NetPacket.pm ?
11:53 TiMBuS i would assume so
11:54 TiMBuS its netpacket-perl in the ubuntu repo, if this is what youre asking
11:55 daxim perl-* is the rpm convention.
11:56 taljurf great, thx guys :)
12:04 agentzh joined #perl6
12:05 jedai_ joined #perl6
12:07 jedai left #perl6
12:07 nero2x joined #perl6
12:11 neroxx joined #perl6
12:11 nero__ left #perl6
12:12 nero2x left #perl6
12:14 Guest87704 joined #perl6
12:24 Chillance joined #perl6
12:34 MayDaniel joined #perl6
12:34 wamba joined #perl6
12:41 moritz_ libthing-perl in debian/ubuntu
12:49 scratchy joined #perl6
12:52 scratchy hi, I just tried to get the signature of &die in order to find out how to suppress the additional rakudo message "in ... at line ..." and got the following: "get_attr_str() not implemented in class 'Sub'"
12:52 scratchy rakudo: say &die.signature
12:52 p6eval rakudo a95c1d: OUTPUT«get_attr_str() not implemented in class 'Sub'␤  in main program body at line 1␤»
12:53 scratchy could anybody give me a hint on what i am doing wrong, or how to achieve this, please?
12:56 moritz_ you get the error because die() isn't written in Perl 6 (yet), so it has no signature you could introspect
12:56 moritz_ and currently there's no way to surpress the stack trace :(
12:57 scratchy thanks, that's okay so then I will use say '...' and exit instead :)
12:58 moritz_ that's fine for scripts, but please don't do that in modules
12:58 moritz_ because exit isn't catchable
12:59 * masak submits rakudobug
13:00 scratchy yes it is in a script, when it gets bad input it exits with some text but should not show the stack trace, in modules i still use die()
13:00 masak I've often wanted a &die that suppresses location too.
13:01 masak I'm fine with &carp and &croak etc. coming in from modules, but I'd really like &die to have suppressable line number and file, like in Perl 5.
13:01 masak it's just that... the solution employed by Perl 5 doesn't feel... "worthy" of Perl 6.
13:01 masak maybe that's just elitism speaking, I dunno.
13:01 moritz_ you know, I've been thinking about exceptions and so for a while
13:01 masak yes?
13:02 moritz_ my idea was that exceptions are something like a smart hash
13:02 moritz_ which have a default stringification
13:03 moritz_ and a simple die("thing", :!trace) would turn into something like  die(Failure.new(message => 'thing', trace => False))
13:03 masak hmm... :!trace... :/
13:03 moritz_ and on the other hand you could smartmatch against certain properties of an error
13:04 moritz_ for example the above would match true against  Failure.new(message => /^th/) or against  Failure.new(trace => {!.so})
13:04 masak it has been said here on the channel, and I think I agree, that nameds that default to Bool::True constitute a design smell.
13:05 moritz_ agreed. 'Twas just an example
13:05 masak ok.
13:05 moritz_ maybe :concise
13:05 masak :brief
13:05 moritz_ the beauty being that the stack trace would still be available from the exception object
13:05 masak :bare
13:05 masak yes, that's nice.
13:05 moritz_ so that if it's caught, the catcher can still decide to print the backtrace
13:06 masak getting the exception system to work really well with given/when is the big thing, IMO.
13:06 moritz_ right, which is why I want to make it simple and general
13:06 masak kudos for that.
13:06 moritz_ in particular I think it's a good idea if the failures and the things you match them against have a very similar structure
13:07 masak have you applied for a grant yet?
13:07 moritz_ nope (due to personal reasons)
13:07 masak ok.
13:07 moritz_ or might even be the same
13:07 masak matching failures against signatures/captures should also work.
13:07 masak and maybe hashes too.
13:08 moritz_ (no secret involved, I just don't know how much time I'll have for programming once our daughter is born. And I sure know that I can't finishe the grant befor her birth)
13:08 masak maybe some of those fall out automatically, by virtue of failures being objects.
13:08 moritz_ masak: that's the plan
13:08 moritz_ actually a failure could inherit from Capture
13:09 takadonet morning all
13:10 masak is a failure a kind of a capture, philosophically (or even OOD-ly) speaking? hm.
13:10 masak takadonet: \o
13:10 takadonet reddit is down :(
13:10 masak then again, I don't think a Hash is a kind of EnumMap, either :)
13:11 moritz_ masak: you want to Capture failure information
13:12 masak moritz_: S02:1289:    Capture     Function call arguments (right-hand side of a binding)
13:12 masak so, unless the throwing of the exception is considered a kind of function-call...
13:12 skangas joined #perl6
13:12 masak (which it might well be, since &return invocations are)
13:12 moritz_ masak: don't take that part of S02 too serious
13:12 taljurf left #perl6
13:13 moritz_ masak: a capture is simply something that has named and positional parts
13:13 masak then S02 should be changed to reflect that.
13:13 moritz_ that's why Match ~~ Capture
13:13 masak aye.
13:14 masak what you just said, though, is like saying "don't take Complex too seriously. it's just two reals".
13:14 moritz_ I might have
13:14 moritz_ actually
13:14 masak :)
13:14 masak well, it isn't.
13:14 moritz_ you know that polygon problem of yours? :-)
13:14 masak ooh
13:14 masak don't say any more :)
13:14 moritz_ I considered using Complex for the coordinates
13:15 moritz_ too late, sorry
13:15 masak unless you're actually *using* the complex rule for multiplication, I'd consider that questionable design.
13:15 masak but I'll shut up too.
13:15 masak we can talk more after 2011-01-14.
13:16 moritz_ heh, that's also a submission deadline for a conference I might attend :-)
13:17 daxim left #perl6
13:18 daxim joined #perl6
13:18 * moritz_ should really submit the solutions he has, and approach the remaining
13:19 masak that seems like a reasonable winning strategy to me.
13:20 masak there's a soft limit of 10 submissions.
13:20 arnsholt_ I need to get started on that as well
13:20 arnsholt_ (And sign up =)
13:20 masak arnsholt_: sign up now.
13:20 arnsholt_ is now known as arnsholt
13:20 moritz_ is a mail contains two solutions, does it count as two submissions?
13:20 moritz_ s/^is/if/
13:20 masak yes. :)
13:21 moritz_ I thought I could cheat you :-)
13:21 masak by "submission" I actually mean "piece of code in a .zip file".
13:21 masak wasn't aware that I did until you asked, though.
13:25 masak ooh, lue++'s post has gone live: http://perl6advent.wordpress.com/2010/12/16/day-16-time-in-perl6/
13:26 masak "it’s time for you to learn of time" -- how very lue... :)
13:26 flussence aww, he changed the title...
13:26 * moritz_ is surprised he doesn't mention the time traveller's guide to the tenses
13:27 masak I'm not sure I agree with the explanation of the difference between 'time' and 'now'.
13:27 masak as far as I understand, 'now' is (as far as is possible) atomic time, whereas 'time' is civil time.
13:28 takadonet http://www.reddit.com/r/programming/comments/emsdo/perl_6_advent_calendar_day_16_time_in_perl6/
13:28 masak urgh. again a "poor man's URL" at the end.
13:28 * masak changes that, at least
13:29 moritz_ woah, today more referrers from HN than reddit
13:29 flussence (as I understand it, Instant is the precise computery format and DateTime is the readable peopley format)
13:29 masak the post mentions Date, but it doesn't mention why Date is sometimes preferable.
13:30 uniejo joined #perl6
13:31 takadonet masak: HN?
13:31 moritz_ hacker news
13:31 moritz_ http://news.ycombinator.com/news
13:31 takadonet reddit has been down for a while so that might have caused it
13:31 takadonet we had lots of comments/upvotes for yesterday post
13:37 MayDaniel left #perl6
13:37 mtk left #perl6
13:37 mathw I thought the post finished a bit early
13:37 mathw something about date manipulation would've been nice
13:39 smash joined #perl6
13:39 smash hello everyone
13:41 takadonet smash: hey
13:42 mathw hi
13:50 masak mathw: agreed. I'll add a bit about why Date is good.
13:58 masak uasi: [たこ焼き] that sounds delicious. I wish I could get some here in .se
14:10 scratchy left #perl6
14:11 sftp left #perl6
14:17 ab5tract joined #perl6
14:18 masak TimToady, diakopter: [backlog] in what sense does Perl 5 have a "very solid implementation of closures"? I understand if they're non-trivial to implement, but are other languages known to do worse in this regard?
14:19 moritz_ it passes the man-or-boy test :-)
14:19 ispeak_ joined #perl6
14:19 masak I'm sorry, but that seems to be a very low bar.
14:19 masak it's also the only one I can think of offhand, besides even more basic stuff.
14:19 uasi masak: hey, why don't you make it yourself? you only need flour, boiled octopus, and ... a takoyaki pan :) http://ja.wikipedia.org/wiki/たこ焼き
14:20 masak uasi: a special pan? rehhh!?
14:20 masak wow, it even looks delicious.
14:21 moritz_ masak: well, if the inner blocks aren't accessible from the outside before run time, there's only so much you can do wrong when implementing closures
14:21 uasi masak: ya http://en.wikipedia.org/wiki/File:Takoyakikado.Pan.jpg
14:21 masak uasi: tell you what. I'll stay on the lookout for octopus, and then maybe I'll try to make it. probably won't find a takoyaki pan in .se, though.
14:21 moritz_ but if you allow named subs as closures, which can be accessed before the outer scope runs... yikes
14:21 masak moritz_: like... in Perl 5? :P
14:21 moritz_ (perl 5 doesn't do that, and if you trick around to achieve it, it warns that "variable will not stay shared" or so)
14:22 masak right.
14:22 masak which causes me to think that considering the shoddy abstraction on which Perl 5 closures are built, the error reporting is great. :P
14:23 moritz_ considering that perl 4 didn't have lexicals... not bad :-)
14:24 moritz_ (but it had the reset() function. yay.)
14:24 moritz_ and it still has
14:24 moritz_ buubot: eval: our $abc = 4; reset 'a'; $abc
14:24 buubot moritz_: No output.
14:24 moritz_ buubot: eval: our $abc = 4; reset 'a'; "abc: " . $abc
14:24 buubot moritz_: abc:
14:24 moritz_ buubot: eval: our $abc = 4; "abc: " . $abc
14:24 buubot moritz_: abc: 4
14:25 sftp joined #perl6
14:25 moritz_ it's kinda hard to believe that a "modern" language still has such a feature
14:25 masak I'm grossed out beyond words.
14:25 leprevost joined #perl6
14:26 bbkr after reading Temporal entry in advent calendar one question popped: is there a quick way to find how many days are in given month? something like MySQL "DAY(LAST_DAY('2010-02-01'))"
14:27 moritz_ rakudo: say Date.today.days-in-month
14:27 p6eval rakudo a95c1d: OUTPUT«31␤»
14:27 tadzik (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)[$k]
14:27 tadzik :)
14:27 masak moritz_++
14:27 moritz_ tadzik: ...except for leap years
14:27 tadzik yeah
14:27 masak rakudo: say DateTime.now.days-in-month
14:27 p6eval rakudo a95c1d: OUTPUT«31␤»
14:27 bbkr moritz++
14:27 moritz_ rakudo: say Date.days-in-month(2010, 12)
14:28 p6eval rakudo a95c1d: OUTPUT«31␤»
14:28 moritz_ rakudo: say Date.days-in-month(2010, 2)
14:28 p6eval rakudo a95c1d: OUTPUT«28␤»
14:28 moritz_ rakudo: say Date.days-in-month(2012, 2)
14:28 p6eval rakudo a95c1d: OUTPUT«29␤»
14:28 masak rakudo: say Date.can('days-in-month')[0].signature
14:28 p6eval rakudo a95c1d: OUTPUT«Null PMC access in invoke()␤  in main program body at line 1␤»
14:28 masak hrm :/
14:28 moritz_ try .^can
14:29 moritz_ rakudo: say Date.^can('days-in-month')[0].signature
14:29 p6eval rakudo a95c1d: OUTPUT«Null PMC access in invoke()␤  in main program body at line 1␤»
14:29 moritz_ rakudo: say Date.^can('days-in-month').WHAT
14:29 p6eval rakudo a95c1d: OUTPUT«Method 'WHAT' not found for invocant of class 'P6Invocation'␤  in main program body at line 22:/tmp/quOiK_RVNs␤»
14:29 moritz_ urks
14:29 masak right.
14:29 masak I really, really need to speak to jnthn about this.
14:29 LoRe rakudo: DateTime.new()
14:29 moritz_ it returns an un-wrapped P6Invocation object
14:29 p6eval rakudo a95c1d:  ( no output )
14:29 takadonet http://try.rakudo.org/ dies when you try : say Date.today.days-in-month :(
14:30 masak and he will probably say "this is all fixed in 6model" :)
14:30 tadzik :)
14:30 tadzik that's what I thought
14:31 fhelmberger left #perl6
14:32 * masak checks the Temporal spec for the signature instead :)
14:32 moritz_ multi method days-in-month($year = $!year, $month = $!month) {
14:32 moritz_ $month == 2        ?? self.is-leap-year($year) ?? 29 !! 28
14:32 moritz_ !! $month == 4|6|9|11 ?? 30
14:32 moritz_ !! 31
14:32 moritz_ }
14:33 agentzh left #perl6
14:33 masak right, that's what I thought.
14:33 mathw \o/ junctions
14:33 masak it feels odd to me that a year could be specified without a month.
14:33 glow joined #perl6
14:33 masak the reverse feels more obvious.
14:33 masak and *none* of this is spec.
14:34 moritz_ well, month without year => fails for February
14:34 masak not if the year then defaults to $!year
14:34 masak rakudo: say DateTime.days-in-month
14:34 p6eval rakudo a95c1d: OUTPUT«Type objects are abstract and have no attributes, but you tried to access $!year␤  in 'days-in-month' at line 6524:CORE.setting␤  in 'days-in-month' at line 6524:CORE.setting␤  in main program body at line 22:/tmp/BNEDwihzkm␤»
14:34 * masak thought so
14:35 masak might be worth making that work, actually.
14:35 * masak submits TODO rakudobug
14:35 moritz_ we really need :U and :D
14:35 moritz_ uhm
14:35 moritz_ what should it do?
14:35 masak rakudo: Date.days-in-month
14:35 p6eval rakudo a95c1d: OUTPUT«Type objects are abstract and have no attributes, but you tried to access $!year␤  in 'days-in-month' at line 6524:CORE.setting␤  in 'days-in-month' at line 6524:CORE.setting␤  in main program body at line 22:/tmp/8gCoFhW0KS␤»
14:35 moritz_ what should it do?
14:35 flussence default to now?
14:36 masak yes, that was my intention.
14:36 moritz_ then you'd say now.days-in-month
14:36 masak right.
14:36 moritz_ "if you mean it, why don't you just say it?"
14:36 masak true.
14:36 masak maybe that would be one way too many to do it.
14:36 flussence the error message should say that then
14:36 masak yes.
14:37 flussence "Did you mean 'now.days-in-month'? It's shorter."
14:37 masak it'll be one of the common pitfalls with Perl 6: that classes won't be designed for both :U and :D use.
14:37 masak at least we can take care to write the CORE classes right :)
14:37 moritz_ masak: that why methods will default to :D
14:37 tadzik :U and :D?
14:37 masak moritz_: oh!
14:37 moritz_ tadzik: undef smilieys
14:38 tadzik :P
14:38 masak tadzik: type objects and "real" instances, respectively.
14:38 flussence Un/Defined
14:39 risou joined #perl6
14:39 mathw what C++ programmers would think of as static and instance methods
14:39 mathw kind of :)
14:40 moritz_ and there's an :A (iirc) which means "Aither"
14:40 moritz_ or "All"
14:40 masak "Awesome"
14:40 mathw or "Hey, bet you can't do this!!!!"
14:41 mathw in some strange universe where that starts with an A
14:41 flussence (anyone got an example of how these get used?)
14:42 masak sure, but the example won't work in Rakudo.
14:42 masonkramer left #perl6
14:42 moritz_ method foo:D($x, $z) { say "this requires a defined invocant" }
14:42 masonkramer joined #perl6
14:42 * masak thought the :D was on the invocant type
14:42 moritz_ or was that method foo(self:D:, $x, $y) ?
14:42 masak yes.
14:43 masak and AFAIK, you can't write 'self' there... :)
14:43 flussence ooh, that's neat.
14:43 moritz_ and then :U is for things like new()
14:43 masak '$self' is fine, though.
14:46 xinming left #perl6
14:47 flussence so if I understand right, "$thing:D" works like "$thing // Bool::False"?
14:47 masak not exactly.
14:47 masak first off, :D is used in signature types.
14:47 masak // is not.
14:48 masak secondly, type objects are undefined, not Bool::False.
14:48 masak they *are* false too, but that's because they're undefined. :)
14:49 xinming joined #perl6
14:49 flussence I think I get it now :)
14:49 moritz_ in rakudo, failed match objects are undefined (because they override .defined), but they are still instances of class Match
14:49 moritz_ (which, thinking more about it, might not be necessary)
14:50 moritz_ but afaiu :D doesn't consider .defined, but real instance-ness
14:50 masak right.
14:51 masak so it's actually a third axis: now we have true/false, defined/undefined, instance/typeobj
14:51 * moritz_ wonders if  $thing.WHAT !=== $thing  is a valid test for "real" instance-ness
14:51 moritz_ masak: .defined ist mean to be "instance/typeobj", but gives you the option to cheat
14:52 moritz_ so although it technically another dimension, it's not meant to be one
14:52 masak right, just as true/false is a slightly broader version of defined/undefined.
14:53 masak most of the time, they collapse to one concept.
14:53 flussence .oO( is there ever a use for something that's both undefined and true at the same time? )
14:53 masak I'm (re-)reading up on Lua right now. Lua has 0 and "" as true values. only false and nil are undefined.
14:54 masak er, s/undefined/false/
14:54 moritz_ I remember that too
14:54 moritz_ empty lists are true too, right?
14:54 masak rakudo: say ?()
14:54 p6eval rakudo a95c1d: OUTPUT«Bool::False␤»
14:54 Lorn left #perl6
14:54 masak oh! in Lua? :)
14:54 masak yes.
14:54 moritz_ right
14:55 masak the rule is that only false and nil are false.
14:55 masak so they must be true.
14:56 Axius joined #perl6
14:57 redicaps1 left #perl6
14:58 masak shortcircuit: do you feel all set for tomorrow's Advent post?
14:59 masak do we have any volunteers for slot #19 on Sunday?
14:59 moritz_ did anybody give shortcircuit write access to the advent calendar?
14:59 moritz_ masak: I might be able to come up with something, but I'd prefer it if somebody else could do it
15:00 masak moritz_: yes, same here.
15:00 masak don't know if shortcircuit ever got Wordpress access.
15:00 PerlJam doesn't look like it.
15:00 PerlJam (good morning btw :)
15:01 ispeak_ left #perl6
15:02 dipthegeezer joined #perl6
15:02 dipthegeezer left #perl6
15:02 dip joined #perl6
15:03 shortcircuit masak: Sure. Though, no, I don't have write access to that WP account.
15:03 shortcircuit er.
15:03 shortcircuit That blog.
15:03 shortcircuit I do have a WP account.
15:04 alester joined #perl6
15:05 masak I think moritz_ can get you one.
15:05 moritz_ shortcircuit: tell (or /msg) me your email address that you used for the wordpress account
15:05 moritz_ then I can add you to the editor's list
15:05 shortcircuit 'mikemol@gmail.com'
15:05 ab5tract left #perl6
15:06 moritz_ shortcircuit: invitation sent. Welcome to the wonderful world of advent :-)
15:06 PerlJam masak: you can too  :)
15:07 masak if you say so :)
15:08 mtk joined #perl6
15:09 shortcircuit What's the posting schedule. (A particular time on the clock I should have WP publish it?)
15:10 moritz_ shortcircuit: 0:00 UTC is preferred
15:10 moritz_ later is fine too
15:13 * [Coke] waves.
15:13 PerlJam greetings Coke
15:15 masak alester: [backlog] I think I'm going to clone your keys/wallet/cell phone habit.
15:15 alester haha, thank you.
15:15 * shortcircuit tries to find verification of what tz the post date option's context is.
15:15 alester I have never ever ever lost my keys or phone or wallet.
15:15 alester once I started doing that.
15:16 masak shortcircuit: I think it's UTC already, actually.
15:17 shortcircuit Looks like it.
15:18 shortcircuit Though I'm not sure if the permalink will be /2010/12/16/day-17-xxx or /2010/12/17/day-17-xxxx, if I use the post scheduling.
15:18 JimmyZ joined #perl6
15:18 shortcircuit Ah, 17.
15:19 JimmyZ left #perl6
15:20 MayDaniel joined #perl6
15:20 shortcircuit Scheduled.
15:21 masak <mdxi> loops that iterate over an incrementor instead of a datastructure are the goto of the 21st century
15:21 masak it's more general than that.
15:21 jasonmay the advent calendar is rocking this year
15:21 masak anythign with and accumulator is Wrong in a parallel setting.
15:21 jasonmay (this is my first year actually looking at advent calendars though...)
15:21 ab5tract joined #perl6
15:21 moritz_ jasonmay: we're glad you like it
15:21 masak jasonmay: glad you like this year. I've been worried we're discussing less "cool" things this year.
15:21 moritz_ last year's advent posting can also be found on the same site
15:22 masak (because we picked many of the LHF topics last year)
15:22 moritz_ it's only going to get worse next year :-)
15:22 masak ss/with and/with an/
15:22 masak moritz_: unless we implement more cool stuff :P
15:23 moritz_ yeah. Like meta-circular MOP and macros
15:23 PerlJam I was thinking that we should have a mid-year advent-like calendar
15:23 masak mdxi: [backlog, Dijkstra] you might have seen this already, but just in case: http://blog.plover.com/prog/Hoare-logic.html
15:24 moritz_ PerlJam: since it's a bit hard to motivate enough people this advent, I think it'll be quite hard to do
15:24 moritz_ and we don't want people to burn out
15:25 masak PerlJam: I still have an unrealized idea about an antipodal Advent calendar, implementing a game in 30-or-so days.
15:26 masak PerlJam: would take about a month of planning though, in order to pre-implement the game :)
15:26 PerlJam masak++  I like the way you think!  :)
15:26 mdxi masak: thanks. i love both mjd and dijkstra :)
15:26 masak basically I've been waiting for the perfect theme/game idea to strike.
15:26 masak mdxi: me too, incidentally :)
15:26 shortcircuit I have a suggestion for an angle of attack, if it helps. Find an unsolved task on RC that looks challenging, and write a post about solving it. :)
15:26 PerlJam the title of mjd's post is a little misleading though.  Dijkstra *was* insane, just for different reasons.
15:26 * moritz_ would take one that isn't too challenging, otherwise it'll take too long to write about it
15:27 masak shortcircuit: I'd suggest faithfully translating a solution from another language, and then golfing/improving it.
15:27 alester The Perl 6 Advent Calendar pleases me, as it is good bite-size chunks of stuff to post to the @perlbuzz stream.
15:27 masak in fact, I even suggest that in topic-brainstorming.
15:27 shortcircuit Has anyone written about applying the X operator against database outputs?
15:28 moritz_ alester: "optimized for the 140 character generation" :-)
15:28 risou_ joined #perl6
15:29 masak rakudo: use v1.0; say "LOL THIS ISN'T PUNIE"
15:29 p6eval rakudo a95c1d: OUTPUT«LOL THIS ISN'T PUNIE␤»
15:30 wtw left #perl6
15:31 risou left #perl6
15:32 molaf joined #perl6
15:33 moritz_ that should be pretty easy to fix
15:33 masak already reported, fwiw.
15:35 moritz_ I know
15:35 PerlJam that would make a good advent post:  what do you do when you find a bug?  (the answer should include debugging, reporting, and possibly fixing I think)
15:35 mdxi masak: one of my favorites: http://www.cs.utexas.edu/users/EWD/transcriptions/EWD10xx/EWD1036.html
15:36 shortcircuit So, the Ackermann function? :D
15:36 moritz_ shortcircuit: why not?
15:36 plainhao joined #perl6
15:36 masak PerlJam: that's not "what can Perl 6 do for you" though, that's "what can you do for Perl 6" :)
15:36 Patterner left #perl6
15:37 masak mdxi: yes, that one's a classic.
15:37 moritz_ shortcircuit: otoh the Perl 6 solution is too simple to make a good post :-)
15:37 shortcircuit masak: Well, to be fair, ease of access to developers and support is pretty important.
15:38 shortcircuit It's more of a meta feature, though.
15:38 masak yes. I'm not saying it's not important.
15:38 moritz_ we already had the community thing though
15:38 masak I'm saying the tagline is "Something cool about Perl 6 every day"
15:38 fhelmberger joined #perl6
15:39 shortcircuit Well, OK, but I still say you guys qualify as 'cool'. :)
15:39 masak :)
15:39 masak though I'm very proud about how bug reporting works in the Perl 6 community, I don't consider it something cool about Perl 6.
15:41 alester Does Perl 6 actualy have strict and warnings?  Or are they just *effectively* on by default?
15:41 PerlJam alester: so far, there's no way to turn them off so ...  :)
15:42 masak alester: warnings are on. the spec doesn't even mention them, AFAIK.
15:42 alester ok.
15:42 masak alester: strict is on, unless you run -e or start with 'v6;'
15:42 masak dunno what happens if you go 'v6;' in the middle of your script.
15:42 * moritz_ doesn't like the 'v6;' part
15:42 PerlJam moritz_: why?
15:42 moritz_ an explicit 'no strict;' would be much more... explicit
15:43 masak 'use sloppy;'
15:43 moritz_ PerlJam: do you want to write the FAQ why 'v6;' and 'use v6;' are so different?
15:43 PerlJam moritz_: I wasn't disagreeing with you. I just wanted to know your reasons in case they differed from mine :)
15:43 moritz_ PerlJam: well, I was phrasing my answer as a question :-)
15:44 flussence rakudo: my $a = 1; v6; say $a;
15:44 p6eval rakudo a95c1d: OUTPUT«Could not find sub &v6␤  in main program body at line 22:/tmp/i_dgthT_3f␤»
15:44 flussence there you go.
15:44 am0c left #perl6
15:44 PerlJam moritz_: my answer is ... I want TimToady to write that FAQ   :)
15:44 ch3ck3r left #perl6
15:45 flussence &v6 should probably be die("You can't do this in the middle of a script, say 'no strict;' instead")
15:45 PerlJam flussence: that seems worse, not better if you ask me.
15:46 masak Perl 6 generally doesn't do such special-casing.
15:46 moritz_ rakudo: v6
15:46 p6eval rakudo a95c1d: OUTPUT«Could not find sub &v6␤  in main program body at line 22:/tmp/3KOsSZqRHO␤»
15:46 masak besides, that assumes that it'd be a runtime error.
15:47 flussence hm.
15:47 * moritz_ would like version literals to be no more special than string literals, for example
15:47 masak another question: does 'v5;' put you in non-strict Perl 5 compaitibility mode? what about 'use v5;'? is it strict by default? :)
15:47 moritz_ and it's only 'use' that special-cases
15:48 moritz_ if the emulated v5 is really 5.12, then it's strict
15:48 PerlJam S11:598 worries me.
15:48 moritz_ $ perl -M5.012 -e\$x
15:48 moritz_ Global symbol "$x" requires explicit package name at -e line 1.
15:49 moritz_ PerlJam: me too
15:49 moritz_ laxness is OK, if we are strict about how to become lax :-)
15:49 Psyche^ joined #perl6
15:49 Psyche^ is now known as Patterner
15:52 masak agreed.
15:52 flussence /use v5.*;/ should probably attempt to emulate how perl5 would handle that line, where "perl5" is "whatever perl5 the implementation bothered to emulate in the first place" :)
15:53 moritz_ std: 6; $x
15:53 masak I don't mind 'v6.0.0;' too much, or 'v6;'. I do mind the other two.
15:53 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Variable $x is not predeclared at /tmp/Wf_YU3Bdl1 line 1:␤------> [32m6; $x[33m⏏[31m<EOL>[0m␤Check failed␤FAILED 00:01 118m␤»
15:53 masak moritz_: that was attempted yesterday, in the backlog. :)
15:53 PerlJam the existing spec is not robust in the face of changing code.   Starting the file with a literal is something that will require a comment around it every time.
15:53 masak moritz_: NYI.
15:53 flussence also, I have no idea what irssi just did, but I forgot to escape the first / in that line...
15:53 abar joined #perl6
15:54 moritz_ masak: I have a patch that makes 'use v5;' barf. Unfortunately it also makes 'use v6.0' barf
15:54 moritz_ use v6; is fine though
15:54 masak huh.
15:55 masak I would argue for 'use lax;' in scripts, and having -e default to lax mode, but allowing 'use strict' and -Mstrict to turn strict mode back on, just as in Perl 5.
15:55 PerlJam "use lax" reads funny
15:55 masak and then dumping the whole thing about the literals in void context, for the reasons PerlJam gave.
15:55 PerlJam "be lax" would be better there
15:55 flussence how about -E for strict?
15:56 masak PerlJam: the same could be said for 'use strict'. just a matter of what you're used to.
15:56 moritz_ means something different in perl 5
15:56 PerlJam I guess so
15:56 moritz_ but at least 'no strict' has the same weirdness (or not) as 'use strict'
15:56 flussence hm, I suppose if someone wants strict in a one-liner then they won't mind a bit more typing anyway...
15:57 moritz_ ie if you read one, you know immediately waht the other does
15:57 moritz_ so 'no strict' feels more symmetric than 'use lax'
15:57 masak yes.
15:58 masak I retract my 'use lax' suggestion in favor of 'no strict'
15:58 masak the rest stands.
15:58 * moritz_ notices that in bokmal, 'lax' means salmon
15:58 moritz_ unless I misremeber the spelling
15:58 BinGOs 'use slacks;'
15:59 PerlJam no pants;
15:59 leprevost left #perl6
15:59 plainhao left #perl6
15:59 plainhao joined #perl6
16:00 flussence .oO( something I realised yesterday: zavolaj will let you write perl6 tests for C functions )
16:00 masak Util: [backlog, #phasers] you say you've made progress on the problems of my contest, and yet I don't see you among the signeds-up. :)
16:01 PerlJam flussence: that sounds advent-worthy to me :)
16:01 masak PerlJam: we just Advent-posted about zavolaj...
16:02 flussence maybe next year :)
16:02 moritz_ did you get the xmms example running?
16:03 moritz_ ===SORRY!===
16:03 moritz_ Unsupported Perl version 'v6', only v6 is supported at line 5732, near ";\n\nrole IO"
16:03 moritz_ :(
16:03 flussence not yet, I think I've got a long weekend after today though to play with it...
16:04 PerlJam masak: perhaps I'm just getting to the point where the scope of the advent calendar is too narrow.  I kind of want to see any and all posts that are Perl 6 related have a forum where they can be shared.
16:04 abar left #perl6
16:04 * PerlJam contemplates perl6experience.wordpress.com
16:05 masak phenny: tell mberends when you have time, I'd like to discuss http://irclog.perlgeek.de/phasers/2010-12-14#i_3087119 with you.
16:05 phenny masak: I'll pass that on when mberends is around.
16:06 masak PerlJam: I think the restriction we're starting to hit is that not enough cool stuff is implemented :)
16:06 masak maybe development speed will pick up in 2011.
16:07 * moritz_ certainly hopes so
16:07 masak I remember December 2009/January 2010 being fairly still too, feature-wise. and then things picked up for April.
16:07 takadonet x-mas really does slow us down
16:08 masak well, pmichaud's presence is a big determinant, it seems.
16:08 moritz_ jnthn's too
16:08 masak yes, our two Bus Number Men.
16:09 PerlJam It is by their will alone that they set Rakudo in motion.  :-)
16:09 masak which is why I'm extra happy every time I see sorear making some commit or other.
16:09 moritz_ \o/ advent post in on no. 6 in r/programming/
16:09 masak \o/
16:09 moritz_ (I hid some other posts, so maybe it's a bit lower for others)
16:09 moritz_ still not bad
16:09 moritz_ PerlJam: will and tuits :-)
16:09 leprevost joined #perl6
16:14 shortcircuit Has anyone done a post on getting-and-setting-up a P6 runtime yet? I don't even know which of my systems has it, if any.
16:16 masak December 1 had such a post.
16:18 shortcircuit Hm.
16:18 PerlJam I wish I knew how to make it work such that when $foo contains the name of a module and that module contains a class Foo, then   require $foo; Foo.new  works
16:19 neroxx left #perl6
16:19 moritz_ std: A::B
16:19 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared name:␤    'A::B' used at line 1␤Check failed␤FAILED 00:01 117m␤»
16:19 moritz_ PerlJam: it won't
16:19 * shortcircuit sees a gentoo ebuild, wishes for an apt repo.
16:20 moritz_ PerlJam: the existance of symbols like Foo is checked at CHECK time (ie before run time)
16:20 shortcircuit Anyway, I need to focus on work stuff for the rest of the day (and week, if at all possible) ... Vacation next week. Yay. :)
16:20 moritz_ PerlJam: and since require hasn't run at that time, the Foo thing will blow up
16:21 moritz_ however 'require $thing; ::Foo.new' should be possible
16:21 moritz_ rakudo: my $x = 'Test'; require $x; plan(5)
16:21 p6eval rakudo a95c1d: OUTPUT«Could not find sub &plan␤  in main program body at line 22:/tmp/xAq856fGAS␤»
16:21 moritz_ rakudo: my $x = 'Test'; require $x; Test::plan(5)
16:21 p6eval rakudo a95c1d: OUTPUT«Can not find sub Test::plan␤  in main program body at line 1␤»
16:21 moritz_ rakudo: my $x = 'Test'; require $x; say ::Test.WHAT
16:21 p6eval rakudo a95c1d: OUTPUT«Method 'WHAT' not found for non-object␤  in main program body at line 22:/tmp/oY1S6IEcTB␤»
16:22 moritz_ hm
16:24 [Coke] masak: why should "use v1.0" die? you're using at least 1.0...
16:25 moritz_ because rakudo doesn't implement punie semantics
16:25 moritz_ put another, rakudo rejects valid perl 1 programs
16:26 [Coke] does perl5 die when you say "use v1.0"?
16:26 moritz_ nope
16:26 [Coke] so that's a change in behavior. is it specced?
16:26 PerlJam [Coke]: it's not the "use" that's the problem, it's "say"
16:26 [Coke] PerlJam: ??
16:27 moritz_ but perl 5 has a different backward compatiblity policy than perl 6
16:27 moritz_ there was no say() in p1
16:27 moritz_ so yes, should be specced
16:28 [Coke] I think making "use <min version>" fail on things that were not valid in that version is insane.
16:28 [Coke] er, s/fail on things/make things fail/
16:29 [Coke] perl -E "use v1.0; say 'hi'" (to show that say also works in that case, not just that the use doesn't complain."
16:29 moritz_ unless you read it as "use <exact version>"
16:30 flussence if you want to set an upper version limit for that, you'd write "no v2". That's probably not valid v1 syntax itself though...
16:31 [Coke] do you expect rakudo to also die on "use v5.12; say 'hi'" ?
16:32 masak [Coke]: if you ask me, supporting anything below v5 in a Perl 6 implementation is (1) not worth it, and (2) asking for trouble.
16:32 [Coke] (perhaps that needs to be 5.10.1 instead...)
16:32 flussence .oO( do we need "use v(5.10 .. 6.0)"? )
16:32 moritz_ [Coke]: I expect it to die if it can't supply the version
16:33 [Coke] use <version> is defined as a minimum version in 5, yes?
16:33 moritz_ yes
16:33 moritz_ by that logic, use v5; shouldn't do anything
16:33 moritz_ because 5 < 6
16:33 [Coke] I would recommend using some other keyword or syntax to indicate that "this section is now being parsed as if it was version <x>"
16:34 moritz_ I think we need a very clear distiniction between exact and minimum versions
16:34 [Coke] moritz_: that seems very reasonable to me.
16:34 moritz_ and the ability to specify both
16:34 [Coke] (that it would do nothing)
16:34 moritz_ [Coke]: but that's not what the spec says
16:34 TimToady std: use v5.10+;
16:34 p6eval std 01ab3ab: OUTPUT«ok 00:01 117m␤»
16:35 moritz_ oh.
16:35 moritz_ we have that :-)
16:36 [Coke] TimToady: so would you expect "use v1.0" to just die in most p6 implementations?
16:37 [Coke] (or use v5.0, for that matter.)
16:37 * [particle] wants a magic punie
16:39 dalek std: 625303c | TimToady++ | STD.pm6:
16:39 dalek std: support require Foo:from[...]; Foo.new
16:39 dalek std:
16:39 dalek std: As with "use", the name given to "require" should be taken as an alias for
16:39 dalek std: whatever is actually located by the from argument.
16:39 dalek std: review: https://github.com/perl6/std/commit/625303c273
16:40 TimToady cosimo: yes, that's what the spec says
16:40 TimToady gah
16:40 TimToady [Coke]: ^^
16:40 TimToady TCF
16:41 TimToady otoh, P5 doesn't understand use v5.* and such
16:41 TimToady otgh, use 'v5' means v5.*
16:42 [Coke] TimToady: it parses. what do you mean "understand" ?\
16:42 PerlJam p5 parses  use v5.*;  ???
16:43 TimToady use v5.*;
16:43 TimToady syntax error at - line 1, near "use v5."
16:43 PerlJam yeah, that's what I thought.
16:44 [Coke] ah, you mean literally.
16:45 TimToady std: use v5.*;
16:45 p6eval std 01ab3ab: OUTPUT«ok 00:01 117m␤»
16:46 TimToady std: require Foo:from<...>; Foo.new;  # parses with patch above
16:46 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared name:␤    'Foo' used at line 1␤Check failed␤FAILED 00:01 119m␤»
16:46 PerlJam use v5; use v5.6;   # does that second one use perl 5 version semantics?  (i.e., "at least 5.6")
16:46 TimToady std: class{}
16:46 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'class' used at line 1␤Check failed␤FAILED 00:01 118m␤»
16:47 TimToady sure would be nice if std updated
16:47 moritz_ tomaw: does that mean that   require Foo:from($package_name) # with an actual variable works?
16:47 moritz_ sorry, meant TimToady
16:47 TimToady moritz_: STD doesn't care :)
16:47 _twitch joined #perl6
16:48 moritz_ well, rakudo will :-)
16:48 TimToady any colonpair will be stripped before the name is added to the symbol table, is all the patch does
16:48 TimToady perhaps :file() would be more appropriate then
16:49 moritz_ well, :file for filenames :-)
16:49 moritz_ but I sure hope that package names will be allowed to
16:50 moritz_ so that the usual module searching is done
16:50 TimToady sure, that's how I was thinking
16:50 TimToady I didn't want to overload :from is all
16:50 moritz_ but :file sounds awefully like a file name
16:50 TimToady I suppose use could support :file too
16:50 moritz_ :source maybe?
16:51 PerlJam :source +1
16:51 moritz_ or maybe :from should really be :lang
16:52 Axius left #perl6
16:52 TimToady I think a preposition reads better there
16:53 PerlJam adverbial prepositions?  :)
16:53 TimToady prepositional phrases may be considered adverbial
16:53 moritz_ std: require Foo:from(my $x);
16:53 p6eval std 625303c: OUTPUT«ok 00:01 121m␤»
16:54 TimToady std: require Foo:from(...); Foo.new;
16:54 p6eval std 625303c: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared name:␤    'Foo' used at line 1␤Check failed␤FAILED 00:01 119m␤»
16:54 TimToady ENOTYET
16:55 TimToady yesterday we suspected it's using the CPAN version
16:55 TimToady std: try{}
16:55 p6eval std 625303c: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'try' used at line 1␤Check failed␤FAILED 00:01 118m␤»
16:55 moritz_ might be the case
16:56 moritz_ something's fishy, that's for sure
16:56 TimToady that's not fixed yet either, and I checked that in yesterday
16:56 justatheory joined #perl6
16:56 PerlJam wrong URL for STD repo maybe?  Does it pull directly from github to update?
16:57 moritz_ url is fine
16:57 moritz_ though the perl might not be
16:57 daxim github fuX0red again?
16:57 moritz_ daxim: there's no reason to believe that
16:58 moritz_ problem is, some compilers want STD installed (like niecza)
16:58 moritz_ and std doesn't want std installed
17:00 TimToady is it just a matter of a ./  ?
17:01 moritz_ p6eval runs it as  $^X $path_to_viv
17:01 moritz_ but viv's "use STD" might pick up the wrong one
17:02 TimToady or $path_to_viv is set using PATH?
17:02 jnthn o/ folks
17:02 jnthn <- alive :)
17:03 moritz_ \o
17:03 jnthn Teaching has been...very distracting. Last day tomorrow, traveling to UK on Sautrday, couple of days of family visiting, then will be back to normal. :)
17:04 jnthn (Yes, some family bits for christmas of course, but I've no $dayjob between tomorrow and January :))
17:05 glow left #perl6
17:05 moritz_ great to hear
17:05 PerlJam jnthn: What reality will you hack into being over the holidays?  :)
17:05 jnthn Also my worklaod in January will be rather reduced. :)
17:06 jnthn PerlJam: Plan to work on 6model stuff, including the Parrot port of it, plus native attribute support, method caching and so forth.
17:06 jnthn I expect to branch Rakudo in January.
17:07 jnthn And start giving it a shove over to the new meta-model implementation.
17:07 PerlJam parrot port of 6model will be essentially nqp-rx ?
17:07 moritz_ there'll be a parrot part too, iiuc
17:08 jnthn Well, I only really meant the name "6model" to be about the meta-model implementation. :)
17:08 jnthn Much of what else is in that repo is really nqpclr :)
17:08 jnthn But yes, nqp-rx is in the process of getting re-built on the new meta-model impl.
17:09 jnthn It'll also get the new Perl 6 multi-dispatch semantics.
17:09 PerlJam I kind of thought the meta-model propigation would flow like dominoes.  parrot, then nqp-rx, then rakudo
17:09 PerlJam (but with a CLR part before parrot)
17:10 jnthn It kinda does.
17:10 jnthn nqp-rx will just be the first consumer of the meta-model impl.
17:11 jnthn But since nqp-rx is bundled with Parrot anyway, then it'll be available to all language implementers.
17:12 PerlJam hmm.  Rakudo doesn't seem to grok  require '/path/to/file'  yet
17:12 moritz_ nope
17:12 moritz_ it just groks   require 'Test'
17:16 MayDaniel left #perl6
17:17 * jnthn -> nomparty
17:18 moritz_ (off-topic, and likely old, but interesting to me): http://the-programmers-stone.com/the-original-talks/day-1-thinking-about-thinking/
17:18 kensanata left #perl6
17:19 PerlJam heh ... "one or two orders of magnitude more useful than most people"
17:21 masak over the years, I've been slowly realizing how true this is.
17:21 masak don't know whether it's because the possible heights of brilliance, or the possible depths of incompetence :P
17:29 PerlJam It boggles me how much "reverence" my coworkers give me when it comes to coding.  The way I look at it, I just move forward with what I know and realize that I don't know everything, but still move forward.
17:29 PerlJam But then for the longest time, I revered pmichaud the same way I think.   He's one of the few people I know smarter than me.
17:32 PerlJam But if Gauss is to be believed, there's a *huge* chunk of people huddled around the average.  :-)
17:33 cdarroch joined #perl6
17:33 cdarroch left #perl6
17:33 cdarroch joined #perl6
17:34 PerlJam perhaps that "one or two orders of magnitude" just means those people are closer to the edges of statistical variance naturally inherent in the population and that there's nothing "special" about them or what they're doing.  They just are what they are.
17:36 daxim left #perl6
17:43 hercynium joined #perl6
17:43 masak PerlJam: perhaps it's simply the fact that the payoff for learning things in the field of programming is unusually large. (to the extent it can even be compared to other fields)
17:44 fhelmberger left #perl6
17:44 MayDaniel joined #perl6
17:44 wamba left #perl6
17:45 tadzik left #perl6
17:46 pmichaud left #perl6
17:47 hatseflats left #perl6
17:48 Juerd left #perl6
17:48 Juerd joined #perl6
17:50 Util left #perl6
17:51 tadzik joined #perl6
17:52 pmichaud joined #perl6
17:53 hatseflats joined #perl6
17:53 Util joined #perl6
17:53 masak nom &
17:53 masak left #perl6
17:54 MayDaniel left #perl6
17:59 Lorn joined #perl6
18:00 dakkar left #perl6
18:02 elb0w joined #perl6
18:02 uasi left #perl6
18:02 moritz_ I guess it's the same in all fields that deal mostly with thoughts
18:02 moritz_ just consider how much more the great mathematicians did than the average math teacher
18:03 moritz_ or how much worthwhile thoughts some really great philosophers published, compared to the big mass of philosophers
18:09 risou_ left #perl6
18:17 wamba joined #perl6
18:19 smash left #perl6
18:26 sorear good * #perl6
18:34 sorear moritz_: there is no opendir(2); ls *has* to use open(2)
18:35 sorear moritz_: on pre-2.1.126 kernels, you use open too, but can't use O_DIRECTORY (so FIFOs will DOS)
18:36 sorear phenny: tell masak I'd especially like to hear your thoughts on S02:2603
18:36 phenny sorear: I'll pass that on when masak is around.
18:42 cibs left #perl6
18:44 uniejo left #perl6
18:45 _twitch left #perl6
18:46 * tadzik back
18:48 sorear moritz_: std will run fine with an installed STD, that is after all how I prepare new STD dists :)
18:48 sorear moritz_: however $^X $path_to_viv is potentially problematic
18:49 sorear moritz_: doing that can break FindBin, which viv uses to detect whether it should use a checkout's STD or the system's STD
18:50 sorear moritz_: $path_to_viv needs to include at least one slash or things will break
19:06 ch3ck joined #perl6
19:06 mtk0 joined #perl6
19:16 tylerni7 left #perl6
19:17 mtk0 left #perl6
19:17 icwiener joined #perl6
19:17 tylerni7 joined #perl6
19:52 envi left #perl6
19:58 cibs joined #perl6
19:58 moritz_ std: say 1
19:58 p6eval std 625303c: OUTPUT«ok 00:01 118m␤»
19:58 moritz_ std: try{}
19:58 p6eval std 625303c: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'try' used at line 1␤Check failed␤FAILED 00:01 118m␤»
19:58 cognominal left #perl6
19:58 moritz_ sorear: now $path_to_viv is ./viv
20:00 Jmax joined #perl6
20:01 Jmax i heard that perl6 is going to be ready for production use in 9 days
20:01 Jmax left #perl6
20:02 moritz_ for some production uses, sure
20:03 Tene I've been using it at work for months.
20:05 plainhao left #perl6
20:06 sorear trolling with a project affiliation cloak?  smooth
20:07 sorear std: try{}
20:07 p6eval std 625303c: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'try' used at line 1␤Check failed␤FAILED 00:01 118m␤»
20:08 mavrc joined #perl6
20:09 Guest65806 left #perl6
20:15 pothos left #perl6
20:15 pothos joined #perl6
20:28 florz left #perl6
20:28 florz joined #perl6
20:33 tadzik what's your favourite presentation tool, #perl6?
20:33 mavrc left #perl6
20:33 * moritz_ has written his own for the last Perl 6 talk
20:34 moritz_ it sucks in general, but did what I needed
20:34 tadzik care to share?
20:34 moritz_ https://github.com/moritz/perltalk/
20:34 tadzik I quite like latex and beamer, but it's lots of typing for a simple things
20:35 moritz_ aye
20:35 moritz_ it's great for physics or math stuff
20:35 moritz_ where you need lots of formulas
20:35 moritz_ for source code, not so
20:41 jaldhar left #perl6
20:50 felliott left #perl6
20:52 Guest87704 left #perl6
20:56 felliott joined #perl6
21:04 alester Yesterday's lesson, codified: http://xrl.us/truelaziness
21:08 flussence alester++, pretty much spot on.
21:08 alester Thankyou.
21:08 alester RT away!
21:08 alester Heck, I didnt' even invoke "premature optimization"
21:09 flussence (I wish stuff would implement JS's ECMAScript5 "use strict" already, I just spent all day attempting to fix old bugs in it)
21:13 khisanth_ is now known as Khisanth
21:17 Jmax joined #perl6
21:17 Jmax nobody got my christmas joke :~(
21:17 diakopter it didn't seem very joke-like
21:17 Jmax i apologize
21:18 diakopter not your fault, were you truly joking, since it's a FAQ to ask "which christmas?" or "really christmas?"
21:19 Jmax of course
21:20 Jmax i suppose irc lacks proper sarcasm conveyance
21:20 diakopter without context, yes :D
21:36 cognominal joined #perl6
21:37 stkowski joined #perl6
21:38 sorear christmas is an in-joke anyway
21:38 sorear it should never have been turned into a rumor
21:38 MayDaniel joined #perl6
21:38 MayDaniel left #perl6
21:38 MayDaniel joined #perl6
21:38 moritz_ .u ellipsis
21:38 phenny U+0EAF LAO ELLIPSIS (ຯ)
21:39 sorear .u DOTS
21:39 phenny U+205E VERTICAL FOUR DOTS (⁞)
21:39 diakopter .u horizontal ellipsis
21:39 phenny U+2026 HORIZONTAL ELLIPSIS (…)
21:40 * moritz_ just presed Ctrl k . . in vim and found it
21:40 Jmax chromeos' term doesn't do utf8 very wekl :\
21:40 moritz_ it seems UTF-8 is not the only thing it doesn't do well
21:40 flussence I still haven't unlearned windows Alt+0133 = ellipsis
21:41 sorear ick
21:41 Jmax yeah, it doesn't do parrot, rakudo, pugs, or anything other than browsing very well :)
21:41 diakopter Jmax: but the web browser is the sole platform of the future ;)
21:42 sorear freenode web gateway!
21:42 Jmax you say that ironically but it's true
21:42 glow joined #perl6
21:42 tadzik Jmax: try try.rakudo.org :)
21:42 moritz_ diakopter: but the future's hereness is unevenly distributed
21:42 diakopter (and forever will be..)
21:42 sorear does chromeos have Silverlight?
21:42 Jmax tadzik: nice.  look for the chromeos UA :)
21:43 Jmax of course not sorear
21:43 Jmax but it does have FLash
21:43 sorear Jmax: why of course not?
21:43 Jmax because chromeos is linux-based
21:43 moritz_ so?
21:43 Jmax tadzik: a serious error has occured
21:44 moritz_ do you think ubuntu and suse ship without flash?
21:44 Jmax flash is not silverlight
21:44 moritz_ it neither is perl
21:44 moritz_ captain obvious greeting
21:44 sorear in ~2 months I should have a Perl 6 implementation that can run with moonlight
21:44 sorear well
21:45 diakopter well....
21:45 diakopter ;)
21:45 sorear actually implementing the browser control is an exercise for someone else.
21:45 flussence "A serious error has occured, please file a bug report describing what happened." ...wha?
21:45 Jmax anyways, i'm getting the same error flussence is getting
21:45 Jmax using: say "Hey world"
21:46 flussence yeah, trying to figure out what that even means... (and who needs a cluebatting for that message)
21:46 diakopter moritz_: I doubt goog would be willing to bundle mono/moonlight
21:46 diakopter crazier things have happened, though.
21:46 flussence server HTTP 500 from a timeout.
21:47 ch3ck3r joined #perl6
21:48 flussence (and yes, I know I was the last one to poke at try.rakudo's code, but it was entirely JS-side)
21:49 kthakore ls
21:49 kthakore Hi there
21:49 flussence . .. cats/
21:50 kthakore http://perl6advent.wordpress.com/2010/12/15/day-15-calling-native-libraries-from-perl-6/
21:50 MayDaniel left #perl6
21:50 felliott left #perl6
21:50 sftp left #perl6
21:50 Helios left #perl6
21:50 HarryS left #perl6
21:50 diakopter left #perl6
21:50 bbkr left #perl6
21:50 jjore left #perl6
21:50 ruoso left #perl6
21:50 phenny left #perl6
21:50 nsh left #perl6
21:50 moritz_ left #perl6
21:50 rbuels left #perl6
21:50 takesako left #perl6
21:50 avuserow left #perl6
21:50 cxreg left #perl6
21:50 patch left #perl6
21:50 cibs left #perl6
21:50 c1sung left #perl6
21:50 eternaleye left #perl6
21:50 mdxi left #perl6
21:50 IRSeekBot left #perl6
21:50 charsbr_ left #perl6
21:50 sjohnson left #perl6
21:50 jerome left #perl6
21:50 alester left #perl6
21:50 zby_home_ left #perl6
21:50 spinclad left #perl6
21:50 Kovensky left #perl6
21:50 [Coke] left #perl6
21:50 Guest1723 left #perl6
21:50 shachaf left #perl6
21:50 wooden left #perl6
21:50 mux left #perl6
21:50 frooh_ left #perl6
21:50 rokoteko left #perl6
21:50 shortcircuit left #perl6
21:50 drbean_ left #perl6
21:50 hudnix left #perl6
21:50 takadonet left #perl6
21:50 ashleydev left #perl6
21:50 Sarten-X left #perl6
21:50 yahooooo left #perl6
21:50 cls_bsd left #perl6
21:50 betterworld left #perl6
21:50 jasonmay left #perl6
21:50 mtve left #perl6
21:50 mj41 left #perl6
21:50 TiMBuS left #perl6
21:50 wolverian left #perl6
21:50 meteorja1 left #perl6
21:50 szabgab left #perl6
21:50 ch3ck left #perl6
21:50 Lorn left #perl6
21:50 Trashlord left #perl6
21:50 saaki left #perl6
21:50 Grrrr left #perl6
21:50 ilogger2 left #perl6
21:50 zostay left #perl6
21:50 pochi left #perl6
21:50 pjcj left #perl6
21:50 broquaint left #perl6
21:50 PZt left #perl6
21:50 renormalist left #perl6
21:50 Maddingue left #perl6
21:50 jql left #perl6
21:50 jrockway left #perl6
21:50 sukria left #perl6
21:50 Patterner left #perl6
21:50 zorgnax left #perl6
21:50 orafu left #perl6
21:50 slavik1 left #perl6
21:50 cosimo left #perl6
21:50 starcoder left #perl6
21:50 robinsmidsrod left #perl6
21:50 stepnem left #perl6
21:50 jfried left #perl6
21:50 horror21 left #perl6
21:50 tylerni7 left #perl6
21:50 Juerd left #perl6
21:50 justatheory left #perl6
21:50 jedai_ left #perl6
21:51 _kaare left #perl6
21:51 TimToady left #perl6
21:51 flatwhatson left #perl6
21:51 plobsing left #perl6
21:51 knewt2 left #perl6
21:51 PacoLinux left #perl6
21:51 szbalint left #perl6
21:51 nperez left #perl6
21:51 mathw left #perl6
21:51 lestrrat left #perl6
21:51 dalek left #perl6
21:51 nadim__ left #perl6
21:51 Raynes left #perl6
21:51 elb0w left #perl6
21:51 Tedd1 left #perl6
21:51 ponbiki left #perl6
21:51 ingy left #perl6
21:51 chitragupt left #perl6
21:51 p6eval left #perl6
21:51 scp1 left #perl6
21:51 PerlJam left #perl6
21:51 frodwith left #perl6
21:51 pnu left #perl6
21:51 JodaZ left #perl6
21:51 hcchien left #perl6
21:51 bartolin left #perl6
21:51 allbery_b left #perl6
21:51 kthakore I am trying that but I can't find use NativeCall
21:51 zby_home_ joined #perl6
21:51 sorear wow.  big split.
21:51 kthakore sorear: where in lib NativeCall
21:51 sorear kthakore: install zavolaj
21:51 kthakore install ?
21:51 kthakore how?
21:51 kthakore ./perl6 install zavloj
21:51 kthakore err
21:51 flussence kthakore: use neutro
21:52 sorear try rtfm.  if that fails, or if tfm doesn't exist, complain loudly to jnthn
21:52 Woody4286 left #perl6
21:52 kthakore flussence: where do I run that
21:52 kthakore I am confused
21:52 orafu joined #perl6
21:52 betterworld joined #perl6
21:52 mathw joined #perl6
21:52 renormalist joined #perl6
21:52 flussence see: http://perl6advent.wordpress.com/2010/12/09/day-9-%E2%80%93-the-module-ecosystem/
21:52 knewt2 joined #perl6
21:53 pochi joined #perl6
21:54 flussence wtf, github.com's not loading for me but their status page says it's up
21:54 dalek joined #perl6
21:54 flussence .oO( that *is* a pretty bad netsplit... )
21:58 sukria joined #perl6
21:58 fhelmberger joined #perl6
21:58 felliott joined #perl6
21:58 cibs joined #perl6
21:58 tylerni7 joined #perl6
21:58 elb0w joined #perl6
21:58 Lorn joined #perl6
21:58 Juerd joined #perl6
21:58 justatheory joined #perl6
21:58 Patterner joined #perl6
21:58 alester joined #perl6
21:58 sftp joined #perl6
21:58 jedai_ joined #perl6
21:58 zorgnax joined #perl6
21:58 spinclad joined #perl6
21:58 slavik1 joined #perl6
21:58 Kovensky joined #perl6
21:58 [Coke] joined #perl6
21:58 Guest1723 joined #perl6
21:58 cosimo joined #perl6
21:58 saaki joined #perl6
21:58 Helios joined #perl6
21:58 shachaf joined #perl6
21:58 starcoder joined #perl6
21:58 Grrrr joined #perl6
21:58 zostay joined #perl6
21:58 wooden joined #perl6
21:58 PacoLinux joined #perl6
21:58 szbalint joined #perl6
21:58 HarryS joined #perl6
21:58 TimToady joined #perl6
21:58 mux joined #perl6
21:58 frooh_ joined #perl6
21:58 robinsmidsrod joined #perl6
21:58 nperez joined #perl6
21:58 shortcircuit joined #perl6
21:58 rokoteko joined #perl6
21:58 drbean_ joined #perl6
21:58 stepnem joined #perl6
21:58 lestrrat joined #perl6
21:58 takesako joined #perl6
21:58 hudnix joined #perl6
21:58 nadim__ joined #perl6
21:58 Raynes joined #perl6
21:58 jfried joined #perl6
21:58 takadonet joined #perl6
21:58 Tedd1 joined #perl6
21:58 ponbiki joined #perl6
21:58 charsbr_ joined #perl6
21:58 ashleydev joined #perl6
21:58 horror21 joined #perl6
21:58 ingy joined #perl6
21:58 flatwhatson joined #perl6
21:58 plobsing joined #perl6
21:58 pjcj joined #perl6
21:58 chitragupt joined #perl6
21:58 diakopter joined #perl6
21:58 scp1 joined #perl6
21:58 Sarten-X joined #perl6
21:58 broquaint joined #perl6
21:58 jjore joined #perl6
21:58 PZt joined #perl6
21:58 ruoso joined #perl6
21:58 yahooooo joined #perl6
21:58 hcchien joined #perl6
21:58 cls_bsd joined #perl6
21:58 jerome joined #perl6
21:58 jasonmay joined #perl6
21:58 frodwith joined #perl6
21:58 mtve joined #perl6
21:58 pnu joined #perl6
21:58 mj41 joined #perl6
21:58 JodaZ joined #perl6
21:58 bartolin joined #perl6
21:58 allbery_b joined #perl6
21:58 phenny joined #perl6
21:58 TiMBuS joined #perl6
21:58 Maddingue joined #perl6
21:58 wolverian joined #perl6
21:58 nsh joined #perl6
21:58 moritz_ joined #perl6
21:58 jql joined #perl6
21:58 jrockway joined #perl6
21:58 c1sung joined #perl6
21:58 rbuels joined #perl6
21:58 meteorja1 joined #perl6
21:58 eternaleye joined #perl6
21:58 patch joined #perl6
21:58 cxreg joined #perl6
21:58 avuserow joined #perl6
21:58 mdxi joined #perl6
21:58 sjohnson joined #perl6
21:58 IRSeekBot joined #perl6
21:58 szabgab joined #perl6
21:59 flussence oh, there they all are.
21:59 * flussence waves
22:02 kthakore flussence: unknow module NativeCall
22:04 nsh left #perl6
22:04 nymacro joined #perl6
22:04 Trashlord joined #perl6
22:05 sorear IRSeekBot.  Heheh.
22:05 sorear At least they're honest about it now.
22:05 ilogger2 joined #perl6
22:05 nsh_ joined #perl6
22:05 phenny left #perl6
22:06 phenny joined #perl6
22:06 Woody4286 joined #perl6
22:07 p6eval joined #perl6
22:10 kthakore flussence: ah ok
22:10 kthakore sorear: flussence how do I change git:// to http:// for the repos
22:11 PerlJam joined #perl6
22:12 sorear I do not understand the question
22:18 pothos_ joined #perl6
22:18 y3llow_ joined #perl6
22:19 shi joined #perl6
22:20 y3llow left #perl6
22:20 y3llow_ is now known as y3llow
22:20 pothos left #perl6
22:20 pothos_ is now known as pothos
22:23 Tene left #perl6
22:23 shi left #perl6
22:25 shi joined #perl6
22:28 kthakore sorear: ==> Testing zavolaj
22:28 kthakore make: *** No rule to make target `test'.  Stop.
22:28 kthakore ==> Tests failed for zavolaj
22:29 PerlJam kthakore: you used neutro to install it?
22:29 alester left #perl6
22:29 kthakore PerlJam: yes
22:30 kthakore PerlJam: also it can't find perl6 libpath
22:30 PerlJam Last time I checked zavolaj didn't follow the same conventions that neutro was expecting.
22:30 kthakore it is doing perl6 -e 'print @*INC[2]'
22:30 kthakore which gives me '.'
22:30 kthakore rakudo: print @*INC[2]
22:30 p6eval rakudo a95c1d: OUTPUT«/home/p6eval/p1/lib/parrot/2.10.1-devel/languages/perl6/lib»
22:30 kthakore see I get '.'
22:30 kthakore wth?
22:31 risou joined #perl6
22:31 kthakore I did ln -s /usr/local/perl6 /home/foo/local/path/to/perl6
22:31 kthakore is that a problem?
22:32 PerlJam dunno.  As long as it can find the libs it needs, I wouldn't think so.
22:33 PerlJam but, if perl6 is in your PATH somewhere, then you can manually build and install NativeCall pretty easily.
22:33 PerlJam (and, of course, use it :)
22:34 kthakore man
22:34 PerlJam but you may have better luck using ufo to create the proper makefile.
22:34 kthakore I had to do
22:34 kthakore print @*INC[1]
22:34 kthakore ...
22:34 kthakore :(
22:34 kthakore this is fuxed
22:34 kthakore any way
22:34 kthakore I have NativeCall now
22:35 * PerlJam afk &
22:38 sji joined #perl6
22:40 shi left #perl6
22:40 felliott_ joined #perl6
22:41 felliott left #perl6
22:41 felliott_ is now known as felliott
22:43 diakopter kthakore: fixed or fuxed?
22:43 kthakore diakopter: I made it work
22:43 kthakore diakopter: I had to hack a lot of stuff
22:44 diakopter yeah but did you mean to type "fuxed"?
22:46 diakopter (I was just curious)
22:48 kthakore I had to use @*INC[1] in the make file for system lib
22:48 kthakore rather then @*INC[2]
22:48 felliott left #perl6
22:49 kthakore also in neturo I had to change git:// to http://
22:50 * diakopter facepalm
22:50 flussence diakopter: consider it a portmaneau ;)
22:50 kthakore is there UInt type in Perl6 ?
22:50 kthakore rakudo: class foo is UINt
22:50 p6eval rakudo a95c1d: OUTPUT«===SORRY!===␤Malformed package declaration at line 22, near ""␤»
22:51 kthakore rakudo: class foo is UInt
22:51 p6eval rakudo a95c1d: OUTPUT«===SORRY!===␤Malformed package declaration at line 22, near ""␤»
22:51 flussence subset UInt of Int where { * >= 0 }
22:55 kthakore ls
22:55 felliott joined #perl6
22:56 tadzik :)
23:04 richyfish joined #perl6
23:04 kthakore OMG SDL IS RUNING ON PERL6
23:04 kthakore OMFG!
23:05 kthakore what is sleep(2) in perl
23:05 kthakore rakudo: sleep(2); say 'foo'
23:05 p6eval rakudo a95c1d: OUTPUT«foo␤»
23:11 richyfish hi, using rakudo perl6 on linux.  Is there a way to get up/down history cursor keys to work ( eg i get ^[[A for up )
23:12 flussence sounds like it was built without readline
23:12 redicaps joined #perl6
23:14 [Coke] richyfish: did you build your own rakudo?
23:15 richyfish yes, i did.
23:16 richyfish --configure argument perhaps?
23:17 [Coke] parrot should automatically detect if you have readline installed.
23:17 [Coke] did you build your own parrot explicitly, or just use "--gen-parrot" with rakudo?
23:17 kthakore MUAHAHAHAHAHAHH https://gist.github.com/744192
23:17 kthakore jnthn++ I love you 4ever
23:18 richyfish i used --gen-parrot, pretty sure
23:18 dual left #perl6
23:18 richyfish yeah, perl Configure.pl --gen-parrot
23:19 sorear do you have libreadline-dev installed?
23:19 [Coke] ok, then you just need 1) do that again, but 0) make sure you have readline available first. If you're on linux, you probably want something like "readline-dev"
23:19 [Coke] (I'll let sorear take it frmo here.)
23:20 richyfish hang on and i'll give it a shot
23:24 dual joined #perl6
23:29 dip left #perl6
23:29 dipthegeezer joined #perl6
23:30 hercynium left #perl6
23:37 dalek niecza/cilbackend: fb2444a | sorear++ | lib/CLRBackend.cs:
23:37 dalek niecza/cilbackend: Implement Clr*Let operation family
23:37 dalek niecza/cilbackend: review: https://github.com/sorear/niecza/commit/fb2444a4c8
23:44 fhelmberger left #perl6
23:47 stkowski_ joined #perl6
23:47 stkowski left #perl6
23:47 stkowski_ is now known as stkowski
23:47 adu joined #perl6
23:47 tadzik kthakore: nice!
23:48 redicaps left #perl6
23:48 tadzik now you can start some SDL bindings and your game tutorial :)
23:48 tadzik maybe Pong will be slow enough for me to win
23:54 richyfish yay! got history in rakudo.  much better.
23:54 sji left #perl6
23:57 richyfish ok, code question:
23:57 richyfish my $r1 = 10..20
23:57 richyfish my $r2 = 30..40
23:57 richyfish my @ra = $r1, $r2
23:57 richyfish my $v = 10
23:57 richyfish $v ~~ @a[0];
23:58 richyfish Bool::True
23:58 richyfish $v ~~ @a[1];
23:58 kthakore tadzik: :D
23:58 richyfish Bool::False;
23:58 richyfish but ...
23:58 richyfish $v ~~ $_ for @ra;
23:58 kthakore tadzik: only if you read and reie SDL manual
23:58 richyfish Bool::True Bool::True
23:59 tadzik kthakore: reie?
23:59 flussence well
23:59 richyfish confused why second Bool::True appears, should be false?
23:59 kthakore review tadzik
23:59 flussence rakudo: my @ra = 10..20, 30..40; say 10 ~~ $_ for @ra; say @ra.perl
23:59 p6eval rakudo a95c1d: OUTPUT«Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤Bool::True␤[10, 11, 12, 13, 14, 15, 16, 17,
23:59 p6eval ..18, 19,…

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

Perl 6 | Reference Documentation | Rakudo