Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-10-29

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 flightrecorder joined #perl6
00:21 armitage81 joined #perl6
00:25 daniel-s joined #perl6
00:28 flightrecorder joined #perl6
00:29 steven joined #perl6
00:34 HarryS joined #perl6
00:36 sizz joined #perl6
00:40 [Coke] so, if I run a straight NQP program, I get a huge backtrace on every error; once I start running QAST, though, I just get a one liner. I tried disabling my old Compiler's backtrace method, but it's still very quiet on an error. is there a way to make it give me the full backtrace?
00:40 flightrecorder joined #perl6
00:44 gdey joined #perl6
00:49 cognominal joined #perl6
00:53 flightrecorder joined #perl6
00:59 flightrecorder joined #perl6
01:08 fgomez joined #perl6
01:14 flightrecorder joined #perl6
01:29 bapa joined #perl6
01:44 flightrecorder joined #perl6
02:11 flightrecorder joined #perl6
02:18 stocks joined #perl6
02:27 flightrecorder joined #perl6
02:48 flightrecorder joined #perl6
02:56 rjt_ joined #perl6
02:57 cognominal joined #perl6
03:11 flightrecorder joined #perl6
03:19 havenn joined #perl6
03:33 flightrecorder joined #perl6
03:44 gongyiliao joined #perl6
03:45 flightrecorder joined #perl6
03:52 Playb3yond joined #perl6
03:53 flightrecorder joined #perl6
04:02 flightrecorder joined #perl6
04:14 flightrecorder joined #perl6
04:20 flightrecorder joined #perl6
04:35 flightrecorder joined #perl6
04:59 cognominal joined #perl6
05:03 dalek book: 909d053 | worktycho++ | src/operators.pod:
05:03 dalek book: removed double as from src/operators.pod
05:03 dalek book: review: https://github.com/perl6/book/commit/909d0534b5
05:03 dalek book: 35c0ba5 | (Gautam Dey)++ | src/operators.pod:
05:03 dalek book: Merge pull request #74 from worktycho/patch-1
05:03 dalek book:
05:03 dalek book: removed double as from src/operators.pod
05:03 dalek book: review: https://github.com/perl6/book/commit/35c0ba577b
05:12 moritz fwiw I have my doubts about orelse
05:12 moritz it implicitly sets $!
05:12 moritz but it doesn't catch exceptions
05:13 moritz so it really only makes sense for things that return a Failure
05:13 moritz but $! usually doesn't hold Failure, but Exception
05:13 moritz it seems to me a very bad thing to confuse those two on the language level
05:23 flightrecorder joined #perl6
05:33 havenn joined #perl6
05:43 gdey_ joined #perl6
05:46 gdey joined #perl6
05:51 kaleem joined #perl6
05:58 flightrecorder joined #perl6
06:04 flightrecorder joined #perl6
06:08 birdwindupbird joined #perl6
06:11 dayangkun joined #perl6
06:20 cognominal joined #perl6
06:21 flightrecorder joined #perl6
06:23 cognominal_ joined #perl6
06:25 fgomez joined #perl6
06:27 birdwind1pbird joined #perl6
06:28 flightrecorder joined #perl6
06:32 SamuraiJack joined #perl6
06:43 flightrecorder joined #perl6
06:52 flightrecorder joined #perl6
07:07 flightrecorder joined #perl6
07:22 SamuraiJack joined #perl6
07:51 daxim joined #perl6
08:00 brrt joined #perl6
08:02 domidumont joined #perl6
08:13 jnthn morning
08:13 brrt \o jnthn
08:16 moritz \o jnthn, brrt
08:19 sorear o/
08:22 moritz \o sorear
08:35 birdwindupbird joined #perl6
08:43 maotm joined #perl6
08:52 mathw Morning
08:52 mathw Wonderful wonderful folks
08:52 * mathw has been learning Clojure, and is increasingly finding that it makes him think of Perl 6
08:54 erb joined #perl6
08:54 erb hi, why would iptables say "unknown arg --hashlimit-above"?
08:54 timotimo_ perl6 doesn't have that many parens :|
08:54 hoelzro erb: I don't know, but I don't think this is the right place to get an answer to that question!
08:55 mathw timotimo_: not in syntax, I should add :)
08:55 timotimo_ erb: my guess: the necessary module was not loaded
08:55 timotimo_ so, it's very unfinished?
08:55 erb i did load module
08:55 erb same thing
08:56 timotimo_ then go find a linux or iptables support channel, i have no further ideas
08:57 wtw joined #perl6
08:57 eiro hello perl6 people
08:57 daxim hello you
08:58 erb left #perl6
08:58 mathw timotimo_: the way it's very flexible, really.
08:59 timotimo_ i'm amused to see that rosettacode has HQ9+ and there is four tasks solved with it ... :D
09:00 Timbus id be incredibly impressed if it solved 5 or more
09:00 Timbus needs HQ9++
09:01 Woodi hallo everyone
09:02 Woodi we do not have std place for cutting perls releases ? or it is by design ?
09:03 daxim I often see discussion/comments about the preparation here, what do you mean with "std place"?
09:04 Woodi daxim: first whats comming to mind are servers running bots and screen+irssi sessions...
09:06 kresike joined #perl6
09:06 kresike hello all you happy perl6 people
09:06 brrt \o kresike
09:06 Woodi hi kresike :)
09:07 kresike brrt, Woodi o/
09:17 mathw hello kresike
09:17 kresike mathw, o/
09:18 dayangkun joined #perl6
09:19 dayangkun joined #perl6
09:37 spider-mario joined #perl6
09:40 dalek Perlito: 09cc8db | (Flavio S. Glock)++ | TODO-perlito5:
09:40 dalek Perlito: Perlito5 - js - add TODO for delete() special case
09:40 dalek Perlito: review: https://github.com/fglock/Perlito/commit/09cc8db699
10:09 birdwindupbird joined #perl6
10:14 colomon joined #perl6
10:21 cognominal joined #perl6
10:22 MayDaniel joined #perl6
10:23 flightrecorder joined #perl6
10:24 whiteknight joined #perl6
10:29 FROGGS joined #perl6
10:33 brrt joined #perl6
10:45 gdey_ joined #perl6
10:48 cognominal joined #perl6
10:50 bowtie joined #perl6
10:54 sizz joined #perl6
10:59 gdey joined #perl6
11:08 sizz joined #perl6
11:10 cognominal_ joined #perl6
11:14 sizz joined #perl6
11:17 rindolf joined #perl6
11:23 sizz joined #perl6
11:27 gdey joined #perl6
11:27 SamuraiJack_ joined #perl6
11:31 flussence oh great, that Socket.read fix made POST requests work in HTTP::Easy... and broke GET.
11:31 moritz :/
11:31 tadzik :)
11:32 flussence it's trying to do reads and I think it should probably be checking for eof there instead...
11:34 sizz joined #perl6
11:35 flussence or to be more specific, the call to .read @ HTTP/Easy.pm6 line 109 is blocking and there doesn't seem to be any alternative.
11:35 tadzik well, there's always poll()
11:35 flussence yeah, but... ew :)
11:36 moritz there's recv, no?
11:36 moritz or is the problem that recv returns a Str, not a Buf?
11:37 flussence yeah, that would be a problem. This is meant to read a http request body which can contain anything
11:38 moritz I've long wanted to write a .recv_buf or so
11:39 moritz but iirc parrot doesn't support it easily
11:39 moritz unless i can pass the encoding 'binary' to .recv
11:39 moritz (or somebody else could do it; I'm at $work right now)
11:42 flussence or... I could just fix the module to follow the HTTP spec...
11:42 flussence "The presence of a message-body in a request is signaled by the inclusion of a Content-Length or Transfer-Encoding header field in the request's message-headers"
11:46 mathw yay, spec!
11:46 moritz nontheless, recv_buf or recv_bytes would be useful to have.
11:46 mathw spec + real world = BOOM
11:47 mathw definitely
11:47 mathw somebody's going to need real honest binary IO
11:57 daxim I'm having an opinion about the jsonpath mention in the porting article and am not afraid to tell it!
11:57 moritz OH NOEZ!!!
11:58 daxim the guy clearly didn't do any research into prior art, namely data::path, which existed in 2006
11:58 jnthn daxim: Who is "the guy"?
11:59 jnthn daxim: The guy who spec'd JSONPath, or the guy who implemented it?
11:59 daxim who wrote the spec and js/php implementation linked in the article
11:59 jnthn daxim: Is Data::Path implementing an existing intended-to-be-cross-language standard?
12:00 daxim it works on data structures, if that's what you mean
12:03 jnthn No, it's not what I meant. JSONPath is clearly an attempt to define a kind of xpath for JSON, that can be implemented in whatever language. Data::Path seems to be an implementation of XPath-alike that works on data structures.
12:05 daxim qua? but the synopsis shows that p5:JSON-Path decodes into a data structure first (I can't image how else one would operate on json), so it's functionally the same
12:06 brrt joined #perl6
12:06 jnthn There's a difference between writing a module to do something, and trying to specify a cross-language standard for doing soemthing.
12:06 jaldhar joined #perl6
12:06 daxim aha
12:07 jnthn Yes, maybe it woulda been nice if the guy had found Data::Path and said "let's adopt that"
12:07 * daxim makes a grimace
12:07 daxim it happens too often, echochambers and all that.
12:13 domidumont joined #perl6
12:20 Woodi where I can found some description how Failure/fail should be used ? Failure is a wrapper for exception, is it kind of better 'return undef;' ?
12:20 Woodi s/found/find/ :)
12:26 jnthn r: sub foo() { fail "oh noes" }; my $x = foo(); unless $x { say 'oops' }
12:26 p6eval rakudo c82a6d: OUTPUT«oops␤»
12:27 jnthn sub foo() { fail "oh noes" }; my $x = foo(); $x.omg-i-am-using-a-failure
12:27 jnthn r: sub foo() { fail "oh noes" }; my $x = foo(); $x.omg-i-am-using-a-failure
12:27 p6eval rakudo c82a6d: OUTPUT«oh noes␤  in method <anon> at src/gen/CORE.setting:9998␤  in  at src/gen/Metamodel.pm:2401␤  in any find_method_fallback at src/gen/Metamodel.pm:2389␤  in any find_method at src/gen/Metamodel.pm:925␤  in block  at /tmp/M98G5ZnUry:1␤␤»
12:27 crab2313 joined #perl6
12:27 jnthn Woodi: a Failure is like undef in so far as you can check it
12:28 jnthn Woodi: But if you forget to do so and try and use it as a normal object, then it throws the exception it contains.
12:28 jnthn http://doc.perl6.org/type/Failure has some more info
12:29 Woodi oki. nice that fail can get text param, didn't thing it can from looing on definition...
12:29 jnthn Woodi: Yeah, it just constructs an adhoc exception underneath, like die does.
12:31 jnthn afk for a bit
12:32 * Woodi wonders now what die() do in v6... :) anyway it is interesting change from return/fail into exception...
12:46 kcwu joined #perl6
12:50 hash_table joined #perl6
12:52 Woodi rn: sub fu(){ my $a; return $a; }; fu;
12:52 p6eval rakudo c82a6d, niecza v22-14-g136ddcf:  ( no output )
12:52 Woodi rn: sub fu(){ my $a; return $a; }; say fu;
12:52 p6eval rakudo c82a6d, niecza v22-14-g136ddcf: OUTPUT«Any()␤»
12:53 * [Coke] ~~ at jnthn.
12:53 Woodi do scalars are initialized by default in Perl6 ?
12:57 bbkr_ joined #perl6
12:59 brrt Woodi, no
12:59 brrt as in, they are initialized with the Any() type, which is to say, they are nothing
13:00 FROGGS but they stringify to "", right?
13:00 phenny FROGGS: 28 Oct 20:15Z <moritz> ask FROGGS if we he could please test the panda/custom-lib branch on windows (requires a pretty recent rakudo, for example the 2012.10 release)
13:00 FROGGS moritz: yes we can!
13:02 brrt r: my $x; say $x.Str
13:02 moritz FROGGS: you are multiple clones too? :-)
13:02 p6eval rakudo c82a6d: OUTPUT«use of uninitialized variable $x of type Any in string context  in block  at /tmp/UNn_u8uIhh:1␤␤␤»
13:02 brrt nope, they don't stringify i'm afraid
13:02 brrt nr: my $x; say $x.Str.length;
13:02 p6eval niecza v22-14-g136ddcf: OUTPUT«Use of uninitialized value in string context␤  at /home/p6eval/niecza/lib/CORE.setting line 1295 (warn @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 266 (Mu.Str @ 15) ␤  at /tmp/d_IDxOBaBY line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.set…
13:02 p6eval ..rakudo c82a6d: OUTPUT«use of uninitialized variable $x of type Any in string context  in block  at /tmp/0ixC1AL0EW:1␤␤No such method 'length' for invocant of type 'Str'␤  in block  at /tmp/0ixC1AL0EW:1␤␤»
13:03 FROGGS moritz: of course, we are hundrets! otherwise I would have no spare time :o/
13:04 brrt rn: my $f; say $f.gist
13:04 p6eval rakudo c82a6d, niecza v22-14-g136ddcf: OUTPUT«Any()␤»
13:04 Woodi rn: Any.^methods;
13:04 p6eval niecza v22-14-g136ddcf: OUTPUT«Unhandled exception: Unable to resolve method methods in type ClassHOW␤  at /tmp/AHI8_63lPX line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4215 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4216 (module-CORE @ 579) ␤  at…
13:04 p6eval ..rakudo c82a6d:  ( no output )
13:04 Psyche^ joined #perl6
13:05 Woodi r: say Any.^methods;
13:05 p6eval rakudo c82a6d: OUTPUT«eager elems end classify uniq infinite flat hash list lol pick roll reverse sort values keys kv pairs Array grep first join map min max minmax push tree unshift postcircumfix:<[ ]> at_pos all any one none postcircumfix:<{ }> at_key reduce FLATTENABLE_LIST FLATTENAB…
13:05 Woodi there is many strange methods for "noting" :)
13:06 brrt r: say Mu.^methods
13:06 p6eval rakudo c82a6d: OUTPUT«ACCEPTS WHERE WHICH take WHY Bool so not defined new CREATE bless BUILDALL BUILD_LEAST_DERIVED Numeric Real Str Stringy item say print gist perl DUMP DUMP-ID isa does can clone Capture Method+{<anon>}.new() dispatch:<::> Method+{<anon>}.new() Method+{<anon>}.new() …
13:06 brrt alright, then variables are initialized with (the prototype called) Any()
13:07 brrt Mu is actually 'nothing' :-)
13:07 moritz s/prototype/type object/
13:07 brrt but the type object Any() doesn't represent well, any thing
13:07 brrt pun not intended but apparant
13:08 Woodi rn: my $a; say $a.uniq;
13:08 p6eval rakudo c82a6d: OUTPUT«use of uninitialized variable $key of type Any in string context  in block  at /tmp/iukkf2SMi4:1␤␤use of uninitialized variable $key of type Any in string context  in block  at /tmp/iukkf2SMi4:1␤␤use of uninitialized value of type Any in string context  in block  a…
13:08 p6eval ..niecza v22-14-g136ddcf: OUTPUT«Use of uninitialized value in string context␤  at /home/p6eval/niecza/lib/CORE.setting line 1295 (warn @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 266 (Mu.Str @ 15) ␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /home/p6eval/niecza/lib/CORE.settin…
13:10 brrt moritz: now that i'm at it, what is the practical difference between a p6 type object and a javascript prototype object
13:10 Woodi rakudo gives 3 separate warnings on Any.uniq...
13:11 FROGGS r: my Str $x; say $x.Str
13:11 p6eval rakudo c82a6d: OUTPUT«use of uninitialized variable $x of type Str in string context  in block  at /tmp/unMo8WoKXS:1␤␤␤»
13:11 FROGGS yeah...
13:11 brrt r: my $x; $x = 3;. say $x.Str.length;
13:11 p6eval rakudo c82a6d: OUTPUT«===SORRY!===␤Confused␤at /tmp/BTeAn125Vo:1␤»
13:11 plobsing joined #perl6
13:11 brrt r: my $x; $x= 3; say $x.Str.length
13:11 p6eval rakudo c82a6d: OUTPUT«No such method 'length' for invocant of type 'Str'␤  in block  at /tmp/dibeut0jWg:1␤␤»
13:12 Woodi now TimToady will come and say we obsesively playing with dereferencing uninitialized pointers :)
13:13 brrt r: my $x; $x = 3; say $x.Str.codes
13:13 p6eval rakudo c82a6d: OUTPUT«1␤»
13:16 birdwindupbird joined #perl6
13:17 GlitchMr joined #perl6
13:17 moritz brrt: the pratical difference is that you declare the type object in Perl 6, and you build it in JS
13:18 moritz brrt: they are the same, conceptually, but "prototype" has a quite different meaning in p5, so I avoid that work in p6
13:18 brrt ok
13:18 brrt clearly
13:18 brrt they are available at runtime at any rate
13:19 brrt is a type object mutable?
13:19 moritz r: Int does Str;
13:19 p6eval rakudo c82a6d: OUTPUT«Cannot use 'does' operator with a type object.␤  in sub infix:<does> at src/gen/CORE.setting:11797␤  in block  at /tmp/nfbL0GHllP:1␤␤»
13:19 moritz brrt: I think so, yes
13:19 moritz well
13:19 moritz augment modifies them
13:19 jnthn That doesn't modify the type object.
13:19 moritz but augment requires MONKEY_TYPING TOO
13:19 jnthn That modifies the meta-object.
13:20 moritz oh
13:20 moritz right
13:20 jnthn o/ [Coke]
13:20 brrt so, that  is a practical difference, too
13:20 jnthn [Coke]: Your segfault is weird. :( I was imagining bisect would find a patch that changed something in C code or soemthing. But no... :/
13:22 brrt whats the difference between modifying the meta-object and the type object?
13:22 bluescreen10 joined #perl6
13:22 jnthn The type object is just an empty instance of exactly the same type as any real instance. The meta-object contains the methods, attributes, etc.
13:23 jnthn And has a different type.
13:23 jnthn r: class A { }; say A.WHAT; say A.HOW.WHAT;
13:23 p6eval rakudo c82a6d: OUTPUT«A()␤Perl6::Metamodel::ClassHOW()␤»
13:24 brrt wait, a minute
13:24 brrt ok, i get it i guess
13:25 moritz it's amazing how often I confuse the two :-)
13:25 Woodi do perl6 have "prototypes" somewhere ? as in: half-or-more-finished objects ready to clone and use for fast instantiating ?
13:25 brrt the meta-object is in a sense - the 'vtable' of c++
13:25 brrt or, am i confused still
13:25 brrt but, as an object, i mean
13:25 Woodi meta-types are recipes for objects
13:26 brrt so the if i have $f.foo(); i get $f's meta-object, lookup method 'foo', and invoke it with $f as an invocant
13:28 Woodi me thinks it is implementation dependent. usually after creation of object there is no need for using meta-object until you want to modify type of object :)
13:29 brrt well, in many cases you won't know where the object came from
13:29 moritz Woodi: find_method needs the meta object
13:29 gdey joined #perl6
13:29 Woodi hmm, I thinked dispatch is separate mechanism
13:29 brrt r: sub foo($x) { say $x.Str.codes; }; my $y = 3; foo($y);
13:29 p6eval rakudo c82a6d: OUTPUT«1␤»
13:32 [Coke] jnthn: I was afraid of that when I saw which commit it was. :|
13:32 [Coke] jnthn: let me know if I can provide more helpful diagnostics.
13:33 PacoAir joined #perl6
13:33 tadzik FROGGS, FROGGS
13:34 FROGGS hi tadzik
13:34 tadzik oh, phenny already told you :)
13:34 FROGGS ;o)
13:34 tadzik hey hey :)
13:34 brrt r: say Any.HOW
13:34 p6eval rakudo c82a6d: OUTPUT«Perl6::Metamodel::ClassHOW.new()␤»
13:34 FROGGS trying to build rakudo right now
13:34 jnthn [Coke]: How much RAM do you have on the box where it segfaults?
13:35 PacoAir joined #perl6
13:35 [Coke] jnthn: 4G. 64bit osx intel.
13:36 brrt r: say Any.WHAT
13:36 p6eval rakudo c82a6d: OUTPUT«Any()␤»
13:36 jnthn A method dispatch $obj.foo(42) is kinda like $obj.HOW.find_method($obj, 'foo').($obj, 42)
13:36 brrt i see
13:37 jnthn However, if we *really* did that things would be rather slow, so in practice a meta-object typically publishes a method cache, which is then used for the dispatch.
13:37 jnthn So we only do the full path if there's no cache, or the method cache is not marked as authoritative.
13:38 moritz what's the point of a non-authoritative cache?
13:38 moritz safety during cache construction?
13:38 jnthn class A { has $!x handles *; } # has a non-authoritative cache
13:39 brrt wow… what is handles?
13:39 jnthn And authoritative cache means "if we look up a method and it's not in the cache, it doesn't exist"
13:39 jnthn *An
13:39 moritz brrt: delegation
13:39 jnthn A non-authoritative one means "if it's not in the cache, ask the meta-object, which knows about fallbacks etc."
13:39 brrt ah, i see….
13:39 brrt i am in awe
13:41 jnthn [Coke]: Only "unusual" bit in there is OSX. 4G is hardly a low-memory system. :S
13:42 jnthn [Coke]: I guess I can try lying about memory size in Parrot and seeing if I can trigger it.
13:42 brrt Coke: i have os x here, i might be able to reproduce
13:53 [Coke] brrt: https://github.com/perl6/nqp/issues/64
13:53 sftp joined #perl6
13:55 brrt i'll check it out
13:55 brrt personally i used to have issues with interupted builds, but i don't suppose that applies to you
13:56 brrt and i don't quite have the same os x
13:57 Woodi [Coke]: your ~/sandbox/ is just dir or chroot environment ?
13:57 [Coke] jsut a dir
13:57 gdey joined #perl6
13:59 * Woodi too trusts <<HEREDEVELOPERS :)
14:00 daxim Can't find string terminator "HEREDEVELOPERS" anywhere before end of IRC
14:01 kaare_ joined #perl6
14:03 Woodi oops
14:03 Woodi I #included "freenode"...
14:10 cognominal joined #perl6
14:11 kaleem joined #perl6
14:12 stopbit joined #perl6
14:16 kaleem joined #perl6
14:22 FROGGS joined #perl6
14:26 benabik joined #perl6
14:28 mr007x joined #perl6
14:31 flightrecorder joined #perl6
14:32 domidumont joined #perl6
14:32 pmurias joined #perl6
14:32 pmurias hi
14:32 tadzik hello pmurias
14:32 pmurias jnthn: the things lacking from GLOBALish problem was solved by updating nqp :)
14:33 jnthn pmurias: Oh!
14:33 jnthn .oO( Updating NQP. Sometimes it fixes things for you. Sometimes it gives you segfaults... )
14:34 pmurias It caused both ;)
14:34 pmurias but a rebuild of nqp-js solved the segfault ;)
14:35 jnthn :)
14:35 pmurias a Sub in nqp is a parrot object?
14:37 jnthn I think subs aren't wrapped in code objects yet.
14:37 jnthn Well, I guess maybe protos are so there's somewhere to put the dispatch list.
14:40 hash_table joined #perl6
14:40 benabik_ joined #perl6
14:47 brrt joined #perl6
14:47 xinming_ joined #perl6
14:50 brrt [Coke]: i get the a build error too
14:51 brrt sigsegv
14:51 brrt i'll check it out with gdb
14:55 brrt its a callcontext thing, with a zero pointer
14:55 brrt whats your parrot version?
14:59 fgomez joined #perl6
15:02 FROGGS is there a guide about compiling rakudo for windows?
15:03 thou joined #perl6
15:07 brrt [Coke]: I have not nearly enough information to fix it, we should have the parrot debugger catch segfaults, too
15:13 cognominal joined #perl6
15:14 snearch joined #perl6
15:15 jnthn FROGGS: It's pretty much the same as for any platform. I build with ActivePerl + MSVC++; it's just what the installation guide says, but "nmake" in place of "make".
15:15 MayDaniel joined #perl6
15:15 FROGGS k, I tried with gmake and failed... will try activeperl+msvc now
15:16 FROGGS jnthn: thanks
15:21 FROGGS damn it, my activeperl and msvc is another hdd at home -.-
15:29 bapa joined #perl6
15:36 [Coke] brrt: \o/
15:37 [Coke] parrot version with that checkout is:
15:37 brrt \o [Coke]
15:37 brrt (my parrot is not super-recent, by the way)
15:37 brrt i recall having seen this before, but not the context
15:38 [Coke] 4.9.0
15:38 brrt ok,
15:38 brrt thats more recent than mine
15:38 [Coke] er, This is Parrot version 4.9.0-devel built for i386-darwin
15:38 brrt 4.8.0 for i386-darwin
15:38 brrt i'll update, see if it stays
15:39 [Coke] parrot_config sha1
15:39 [Coke] 193190b86c419090655832d9bb0fa0c9f6c09569
15:39 brrt well, i've obviously seen it on an earlier version
15:39 brrt i recall posting an issue about something like this
15:43 * moritz has just written a refactoring script for Perl 5 code in Perl 5
15:43 moritz I feel vaguely dirty
15:44 ggoebel joined #perl6
15:54 FROGGS moritz: I currently write stuff in VBA
15:54 FROGGS how should I feel?
15:55 brrt like you need a shower, and a few weeks of vacation
15:56 moritz FROGGS: desperate for some mind-engaging conversation in #perl6, maybe? :-)
15:58 FROGGS ya, you are both perfectly right ;o)
15:58 FROGGS k, windows vm is shutting down now
16:00 FROGGS moritz: so where is that conversation?
16:00 * FROGGS is waiting
16:00 brrt its about… delimited continuations
16:00 brrt what is it
16:00 brrt why care
16:01 brrt should we use it, ever, at all
16:04 FROGGS well, I dont understand what it is/does by reading the wikipedia article...
16:04 pmurias you understand full continuations?
16:04 brrt continuations - if anything - should be seen in the context of a (register) machine executing code
16:04 brrt or stack machine, doesn't matter much
16:05 brrt its basically a 'closure' of the next instruction
16:05 havenn joined #perl6
16:06 FROGGS brrt: okay, got that so far
16:06 _jaldhar joined #perl6
16:07 pmurias FROGGS: delimited continuations allow you to save only a part of the stack
16:07 pmurias they are basically an optimalisation
16:08 FROGGS ahh, okay
16:08 jnthn .oO( It iz like de normal continuation, except it is de limited )
16:09 huf oh you <3
16:09 eiro hello perl6 people
16:10 brrt hi eiro
16:11 pmurias jnthn: is it expected that QAST is in the globalish of every nqp program?
16:12 eiro_ joined #perl6
16:13 jnthn pmurias: We use QRegex (or maybe P6Regex) by default in NQP programs, so that regexes work. They depend on QAST, I guess that's why we end up with it.
16:13 kresike bye folks
16:25 * [Coke] wonders if VBA or CF is worse.
16:26 moritz let's build a CF+VBA medeley, to settle the score once and for all :-)
16:26 TimToady worse than what?  :)
16:26 * FROGGS .oO( compact flash? )
16:27 moritz FROGGS: cold fusion
16:27 FROGGS ahh
16:28 am0c joined #perl6
16:29 FROGGS wow, coldfusion is ugly
16:29 flussence rn: say (1, Mu, 3, False) X// 'default';
16:29 p6eval rakudo c82a6d: OUTPUT«1 default 3 False␤»
16:29 p6eval ..niecza v22-14-g136ddcf: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤This macro cannot be used as a function at /tmp/z6Yr8L7P7R line 1:â�¤------> [32msay (1, Mu, 3, False) X//[33mâ��[31m 'default';[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1437…
16:30 jnthn hey, that's cute
16:31 flussence I noticed HTTP::Easy doing ($path, $query) = $uri.split('?', 2) and decided I could do better :)
16:32 flussence (next line being "$query //= ''")
16:34 [Coke] FROGGS: cfscript is much nier.
16:34 [Coke] *nicer
16:34 TimToady well, there are two ways to make it work--I wonder which way rakudo does it...
16:34 TimToady r: .say for (Mu, Mu) X// rand
16:34 p6eval rakudo c82a6d: OUTPUT«0.961175171266408␤0.961175171266408␤»
16:35 TimToady the "wrong" way, it looks like...
16:35 TimToady one could make X transparent to thunkiness, I suppose
16:37 bapa joined #perl6
16:37 jnthn I thought we weren't going to make X thunk.
16:38 jnthn r: .say for (Mu, Mu) Z// rand xx *
16:38 p6eval rakudo c82a6d: OUTPUT«0.720530623410927␤0.562623810113536␤»
16:39 flussence I just came up with a really nice-looking line that almost certainly won't work :)
16:39 flussence my @header-lines := gather { take $socket.get.chomp // last };
16:39 jnthn flussence: Doesn't get auto-chomp anyway? :)
16:39 TimToady where's the loop?
16:39 flussence I noticed that when I tried to run it :)
16:40 jnthn And yeah, needs a loop :D
16:40 * jnthn spotted the sawdust and missed the plank
16:41 flussence while $socket.get { gather { take $^a // last } } # look better now?
16:41 TimToady where's the argument?
16:42 jnthn flussence: The loop wants to be inside the gather
16:42 TimToady std: while $socket.get { gather { take $^a // last } }
16:42 p6eval std edd7715: OUTPUT«[31m===[0mSORRY![31m===[0m�Variable $socket is not predeclared at /tmp/ufZ9Il3JjX line 1:�------> [32mwhile [33m�[31m$socket.get { gather { take $^a // last [0m�Placeholder variable $^a may not be used here because the surrounding block takes no signature at …
16:42 jnthn r: my @a := gather { loop { take $*IN.get // last } }; say @a.elems
16:42 p6eval rakudo c82a6d: OUTPUT«13␤»
16:43 sqirrel joined #perl6
16:45 * TimToady hopes there are no triskaidekaphobes in Austria...
16:48 _jaldhar joined #perl6
16:56 flussence .oO( gVim has a cruel habit of redrawing wrong and leaving a single red pixel on my screen... )
16:56 fgomez joined #perl6
16:57 moritz gvim over X forwarding has the cruel habit of redrawing wrong, and displaying whole characters as blanks even though they aren't
17:06 flussence jnthn: .get auto-chomps, but it turns out the extra chomp's necessary because the lines end in \r\n.
17:06 TimToady um, autochomp is supposed to handle that
17:07 flussence I thought so, but I'm getting "\r"s...
17:07 TimToady then it's a bug
17:18 jnthn r: "wtf\r\n".chomp.perl.say
17:18 p6eval rakudo c82a6d: OUTPUT«"wtf"␤»
17:19 flussence oh wait, I'm being an idiot
17:19 flussence there's an $!input-line-separator right there...
17:20 flussence which... doesn't seem to work :/
17:23 flussence I'm calling IO::Socket::INET.new(:listen, ...) with that, then calling .accept, and it doesn't look like .accept passes that on to the new object it returns.
17:24 flussence so I'm an idiot but there's *also* a bug :D
17:25 TimToady well, any concept of "input line separator" as a single string is likely to be wrong for use as a generalized chomper, which ought to chomp anything that matches /\n$/, which is defined to handle both \n and \r\n
17:25 TimToady of course, an autochomper that actually uses regex is likely to be slow
17:26 * TimToady is being sent to the grocery store...
17:26 TimToady afk &
17:29 domidumont joined #perl6
17:36 arlinius joined #perl6
17:38 SamuraiJack_ joined #perl6
17:39 skids joined #perl6
17:39 Chillance joined #perl6
17:44 flussence it looks like sticking ", :$!input-line-separator" in IO/Socket/INET.pm line 111 might do what I want... recompiling to try it out
17:51 pat_js joined #perl6
17:52 flussence jnthn and/or moritz: ping, got it working :)
18:01 cognominal joined #perl6
18:01 jnthn flussence: With some patches to Rakudo?
18:03 flussence https://gist.github.com/3975299 that's all it needed :)
18:06 masak evenin', #perl6
18:06 flussence o/
18:07 jnthn o/ masak
18:13 stocks joined #perl6
18:18 skids joined #perl6
18:21 jnthn http://jnthn.net/perl6/rakudo-star-2012.10.tar.gz # R* release candidate
18:23 daxim delicious software
18:31 * [Coke] kicks off a build to see if we avoid the segfault here.
18:32 SamuraiJack joined #perl6
18:35 SamuraiJack joined #perl6
18:38 fgomez joined #perl6
18:40 [Coke] jnthn: "After that, 'make test' will run some tests and" ... except that target is invalid.
18:40 [Coke] s/invalid/only points you at more targets/
18:44 kijanka joined #perl6
18:44 dalek star: 9e04f86 | jnthn++ | README:
18:44 dalek star: Update date in README.
18:44 dalek star: review: https://github.com/rakudo/star/commit/9e04f86ee7
18:44 dalek star: c0854b2 | jnthn++ | .gitmodules:
18:44 dalek star: Use public URLs for modules.
18:44 dalek star: review: https://github.com/rakudo/star/commit/c0854b249c
18:47 jnthn [Coke]: I doubt that's changed from the last release to this one.
18:47 jnthn I'll see if I can find it.
18:49 dalek star: bd3067e | jnthn++ | Configure.pl:
18:49 dalek star: Improve a message; Coke++.
18:49 dalek star: review: https://github.com/rakudo/star/commit/bd3067e114
18:50 flightrecorder joined #perl6
18:50 FROGGS joined #perl6
18:52 jnthn RC updated with that fix and readme.
19:00 [Coke] jnthn++ # coke-whinging
19:01 jnthn Back to $dayjob tasks for a bit...
19:03 * TimToady was trying to figure out what jnthn updated on rosettacode...
19:05 spider-mario joined #perl6
19:06 bluescreen10 joined #perl6
19:13 wooden joined #perl6
19:13 wooden joined #perl6
19:14 _jaldhar joined #perl6
19:14 mr007x joined #perl6
19:19 birdwindupbird joined #perl6
19:19 Rix joined #perl6
19:20 kijanka left #perl6
19:22 SamuraiJack joined #perl6
19:24 kiyan joined #perl6
19:28 FROGGS meh, cant build rakudo
19:28 FROGGS inter::progs -        Determine what C compiler and linker to use...Compilation failed with 'cl'
19:28 FROGGS Command failed (status 256): C:\activeperl\bin\perl.exe Configure.pl --optimize --prefix=C:/rakudo/install
19:30 moritz FROGGS: for msvc++ you need to run some kind of batch file first that sets up the environment so that the compile works
19:30 FROGGS vcvars32.bat?
19:30 FROGGS I'll try
19:30 jnthn FROGGS: Often there's a visual studio command prompt shortcut handy that has everything set up for you
19:31 FROGGS moritz++
19:31 FROGGS jnthn: ya I (theoretically) know, just don't use it that often, so it's likely that I'll forget again
19:32 FROGGS that step fails: 01:  init::manifest
19:32 FROGGS can I force it to continue?
19:33 FROGGS well, I just create that two missing pod files
19:37 jaffa4 joined #perl6
19:37 jaffa4 hi
19:38 FROGGS hi
19:39 moritz FROGGS: --no-manicheck or --nomanicheck or so
19:39 FROGGS k
19:41 jaffa4 Is there a working version std.pm and otheres for Perl 5 somewhere?
19:45 [Coke] std: say "here?"
19:45 p6eval std edd7715: OUTPUT«ok 00:00 42m␤»
19:46 kiyan_ joined #perl6
19:46 kiyan_ left #perl6
19:47 jaffa4 could someone zip it and give me the source?
19:48 moritz https://github.com/perl6/std/zipball/master
19:51 NamelessTee joined #perl6
19:51 jaffa4 it does not work under Windows
19:53 birdwindupbird joined #perl6
19:58 moritz flussence: I guess https://gist.github.com/3975299 should have a colon before the $!input-line-separator, no?
20:02 [Coke] jnthn: th rakudo star rc (the first one) builds fine here.
20:04 hash_table joined #perl6
20:04 zby_home_ joined #perl6
20:10 flussence /facepalm
20:11 moritz flussence: but does the patch help as is?
20:11 flussence with the colon, the code's working exactly as I'd expect it to
20:12 flussence I realised after the fact that it's a public attribute and I could just set it manually after accept(), but who wants to have to do that? :)
20:13 moritz idea
20:13 moritz erm
20:13 moritz agreed
20:13 * moritz totally off the shel[vf]
20:20 dalek rakudo/nom: 34febe6 | moritz++ | src/core/IO/Socket/INET.pm:
20:20 dalek rakudo/nom: pass input line separator to new sockets, flussence++
20:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/34febe6663
20:23 moritz jnthn: (42 andthen .say) is supposed to print 42\n, so the thunk must accept $_.  I've tried http://moritz.faui2k3.org/tmp/contextualize_andthen_args.patch to achieve that, but it doesn't do anything, the signature is still (). Any idea what might be wrong?
20:25 flussence oh, andthen is like and + given? I think I finally get it now.
20:26 jnthn moritz: I wonder if it's that thunks normally don't invoke signature binding.
20:27 jnthn moritz: See make_topic_block_ref
20:28 jnthn bbi15
20:29 kaare_ joined #perl6
20:32 Khisanth joined #perl6
20:44 havenn joined #perl6
20:45 nwc10 jnthn: not sure if this is meaningful yet, but I tried building origin/Q (at 28d4bf1ad16ff6) and it explodes on both OS X and Linux, from a clean build, like this:
20:45 nwc10 /home/nicholas/Perl/rakudo/install/bin/nqp --target=pir --output=src/gen/perl6-grammar.pir --encoding=utf8 \  src/Perl6/Grammar.pm Can not bind attribute '$!do' declared in class 'NQPRoutine' with this object
20:45 nwc10 current instr.: '' pc 4677 (src/stage2/gen/NQP.pir:1625) (src/stage2/gen/NQP.pm:241)
20:45 nwc10 [much backtrace snipped]
20:46 nwc10 NQP is at 323c6fadc806d3469d7b18745753033016aca8f9 on both machines
20:48 nwc10 (sorry, about to go to sleep so not going to be around to help dig further, if digging is needed)
21:08 jnthn nwc10: You need probably NQP HEAD to build Q.
21:09 jnthn nwc10: Generally, I just bump NQP_REVISION at the point I merge the branch into nom.
21:09 fgomez joined #perl6
21:11 jnthn nwc10: Meaning building such development branches needs manual update of NQP
21:16 kurahaupo joined #perl6
21:26 hash_table joined #perl6
21:32 SmokeMachine joined #perl6
21:37 bapa_ joined #perl6
21:41 erkan joined #perl6
21:41 erkan joined #perl6
21:47 havenn joined #perl6
21:50 bapa joined #perl6
22:00 MayDaniel joined #perl6
22:05 bro_grammer joined #perl6
22:05 havenn joined #perl6
22:07 Rix joined #perl6
22:20 havenn joined #perl6
22:29 jnthn Rakudo Star 2012.10 is uploaded; posts sent to mailing lists and rakudo.org is updated.
22:31 skids jnthn++!  Same image as rc posted earlier?
22:31 jnthn skids: Almost; uploaded one has a README correction.
22:31 jnthn Oh, and a text tweak in Configure
22:31 jnthn Code wise, they're the same.
22:32 skids That seemed to work fine on all the code I have tested so far, nothing new to report.
22:33 masak jnthn++ # *
22:34 masak 'night, #perl6
22:34 diakopter jnthn**=jnthn**=jnthn
22:34 diakopter karma jnthn
22:34 aloha jnthn has karma of 2801.
22:34 sorear Out of memory
22:35 sorear bah, today is nominal niecza release day :|
22:39 FROGGS tadzik, moritz: thats what I get from the panda: http://paste.scsys.co.uk/212222
22:39 FROGGS the first output is master branch, and later you see that I checkout custom-lib
22:40 FROGGS please let me know if I should check something else too
22:50 skids Ooh! :256[ ... ] is actually a pretty powerful addition.  I'll be able to clean up a bunch of [+|] $vals[] X+> @shifts junk.
22:52 flussence rpn: say 'abc'.encode('ascii') ~~ /\S/
22:54 flussence rpn: say 'alive?'
22:54 p6eval niecza v22-14-g136ddcf: OUTPUT«#<match from(0) to(1) text(B) pos([].list) named({}.hash)>␤»
22:54 p6eval ..rakudo 34febe: OUTPUT«Cannot use a Buf as a string, but you called the Str method on it␤  in method Str at src/gen/CORE.setting:7063␤  in any  at src/gen/BOOTSTRAP.pm:99␤  in any !cursor_init at src/stage2/QRegex.nqp:566␤  in method ACCEPTS at src/gen/CORE.setting:10230␤  in block  at /…
22:54 p6eval ..pugs: OUTPUT«*** No such method in class Str: "&encode"␤    at /tmp/NIi6Yu4kFN line 1, column 5 - line 2, column 1␤»
22:54 p6eval rakudo 34febe, niecza v22-14-g136ddcf, pugs: OUTPUT«alive?␤»
22:54 cognominal joined #perl6
22:55 flussence wait, wtf
22:55 flussence n: say 'abc'.encode('ascii') ~~ /\S+/
22:55 p6eval niecza v22-14-g136ddcf: OUTPUT«#<match from(0) to(15) text(Buf()<instance>) pos([].list) named({}.hash)>␤»
22:55 flussence n: say 'abc'.encode('ascii') ~~ /\S/
22:56 flussence okay, I can see it's stringifying to "Buf()<instance>" but I don't get why it takes a minute to do \S after that...
22:57 colomon joined #perl6
22:58 jnthn flussence: I don't think niecza is to blame for that, I think it's a p6eval slowness
22:58 p6eval niecza v22-14-g136ddcf: OUTPUT«#<match from(0) to(1) text(B) pos([].list) named({}.hash)>␤»
22:58 flussence oh, ok
22:59 flussence yeah, runs instantly locally
23:00 jnthn I'm not sure what doing a regex match against a Buf should do... Maybe the spec has an opinion :)
23:00 flussence ASCII semantics.
23:01 flussence S05:4534
23:03 sizz joined #perl6
23:05 jnthn flussence: OK, we certainly don't implement that bit yet.
23:05 flussence k, I can just leave the .encode off for now...
23:12 fgomez joined #perl6
23:22 jnthn 'night, #perl6
23:23 diakopter flussence: SWEET!!!!!!!!!
23:23 diakopter flussence: do you know when that ASCII semantics thing was added?
23:23 diakopter because that rocks.
23:23 flussence no idea, but it'll fix a bunch of my headaches :)
23:23 pmichaud jnthn++ # star release
23:24 pmichaud Do I need to create/publish the .msi release, ooc?
23:27 sjn \o
23:27 [Coke] pmichaud: hllo.
23:28 flussence argh, I spent ages figuring out how to get the Match.gist fancy quotes showing in my terminal and then it starts mojibaking them
23:29 diakopter flussence: wat is mojibaking
23:29 flussence http://en.wikipedia.org/wiki/Mojibake
23:49 skids r: say :18446744073709551616[1,1]
23:50 p6eval rakudo 34febe: OUTPUT«-2147483647␤»
23:50 skids (Probably just same old int problem.)
23:56 havenn joined #perl6

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

Perl 6 | Reference Documentation | Rakudo