Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-03-10

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:00 lue <timotimo> unicode already specs a replacement character for encoding errors, iirc    <-- isn't that just FFFD ? :)
00:00 timotimo .u REPLACEMENT
00:00 yoleaux U+FFFC OBJECT REPLACEMENT CHARACTER [So] ()
00:00 yoleaux U+FFFD REPLACEMENT CHARACTER [So] (�)
00:00 timotimo apparently
00:04 pippo left #perl6
00:11 fridim_ joined #perl6
00:12 tgt joined #perl6
00:23 dayangkun joined #perl6
00:44 LootingLemur joined #perl6
00:49 LootingLemur Are we skipping 2014.02?
00:53 timotimo nobody volunteered to do a star release
00:53 timotimo there was a compiler release, though. we don't advertise them as openly to not confuse people.
00:56 Mouq I think there's a strong hope that we can do 2014.03 with JVM, and no one wanted to make an R* without it…
00:56 timotimo hmm
00:57 timotimo i would have accepted an R* without jvm
00:58 * Mouq too
00:58 Mouq idk
00:58 timotimo i didn't do it because i already did the compiler release that month :P
00:58 timotimo and i'm lazy
00:59 colomon lazy++
00:59 timotimo more like ++lazy
01:02 timotimo r: enum Foo <One Two>; say One eq "One";
01:02 tgt joined #perl6
01:02 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«True␤»
01:02 timotimo mhh, not bad.
01:10 hoverboard joined #perl6
01:26 woosley joined #perl6
01:40 timotimo r: say "".split("|")
01:40 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«␤»
01:40 timotimo r: say "".split("|").perl
01:40 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«("",).list␤»
01:40 timotimo hmm.
01:40 Mouq r: say "timotimo".split("timo").perl
01:40 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«("", "", "").list␤»
01:40 timotimo :)
01:41 timotimo what are your next tuits going to be spent on, Mouq?
01:43 Mouq timotimo: Right now I want to get https://github.com/Mouq/Grammar-Expression working
01:43 timotimo ah, of course
01:43 timotimo i remember looking at that and thinking to myself that that's going to be quite useful
01:44 Mouq timotimo: But there's still =table, Pod::To::Markdown, and maybe some stuff to doc.perl6.org that I'd like to work on in the meantime, when I have time
01:44 Mouq timotimo: Yourself?
01:45 Mouq (Someone else can totally pick up Pod::To::Markdown, I only thought of how a nice it would be today, since Github doesn't support Pod6)
01:47 timotimo i'm hoping to get the code rewritten that can turn embedded QAST::Blocks into QAST::Stmts if they don't define their own lexical variables
01:47 timotimo currently, that already happens, but the effect of turning lexicals into locals doesn't cascade outwards, so it hardly gives a performance benefit yet
01:48 btyler joined #perl6
01:48 timotimo it ought to improve memory usage as well as give better run-time performance in nqp and hopefully also in rakudo
01:48 timotimo though the rakudo optimizer can't do the same optimization yet, as blocks and variables have much more complicated semantics in perl 6 than they do in nqp
01:48 Mouq Whoa, sweet :) ++timotimo
01:49 timotimo hopefully! ;)
01:49 timotimo and at some point i (or someone else) should introduce nqp::locallifetime to our moarvm MAST compiler
01:52 timotimo and i'm kind of having an eye on the string instantiations in the moarvm heap during the core setting compilation
01:53 timotimo https://gist.github.com/timo/e1af6d5c10a4e34d6cb0 - as you can see here, there's quite a bit of duplication
01:53 timotimo i'm guessing that these instances come from some substring operation
02:01 Mouq timotimo: I have no clue, but I can see why optimization would be useful here
02:01 * Mouq is at the insert-random-debug-statements-because-perl6-isn't-throwing-good-enough-errors stage of programming
02:02 timotimo make sure to document these not-good-enough errors so that we can improve Perl 6
02:02 tgt joined #perl6
02:03 Mouq timotimo: Well, I have no idea what's even happening
02:03 Mouq timotimo: So I don't know what error it should be giving
02:03 timotimo ah, okay :)
02:03 Mouq ===SORRY!=== postcircumfix:<{ }> not defined for type Arithmetic
02:04 Mouq apparently from the line last-term = True and last unless $infix.pos > $oldpos;
02:07 timotimo that's an interesting line
02:08 Mouq *$last-term
02:08 Mouq We don't have loop-labels yet, so it should really be last TERM unless $infix.pos > $oldpos;
02:08 timotimo "True and" seems like you can always replace it with "so"
02:09 Mouq and has lower prec than item =
02:09 Mouq *"and" has lower prec than item assignment
02:09 klapperl joined #perl6
02:09 timotimo oh, ok
02:10 Mouq OH. Duhh
02:10 Mouq I'm calling last, of course my debug statement isn't getting run -_-
02:10 Mouq lol
02:10 timotimo yeah :)
02:10 * timotimo makes a good rubber duck, he has found
02:12 hoverboard joined #perl6
02:14 Sqirrel_ joined #perl6
02:14 FROGGS_ joined #perl6
02:20 lue Could someone possibly enlighten me as to why this sometimes fails with "Cannot modify an immutable value" on JVM, or "No such method 'STORE' for invocant of type 'Any'" on MVM ? https://github.com/lue/synopsis-generator/blob/fragments/syngen.p6#L139
02:21 lue Keep in mind, it doesn't fail the first time that line is encountered, and I've yet been unable to find out what the difference between a successful execution and the failed execution of that line is.
02:23 Mouq r: (state%){0}.push(9) xx 2
02:23 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: ( no output )
02:23 timotimo something something autovivification?
02:23 Mouq r: (state%){0}.push(Any) xx 2
02:24 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: ( no output )
02:24 timotimo r: my %test; %test{0}.push("hi"); %test{0}.push("bye"); say %test;
02:24 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«("0" => ["hi", "bye"]).hash␤»
02:24 timotimo r: my %test{Int}; %test{0}.push("hi"); %test{0}.push("bye"); say %test;
02:24 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«Hash[Any,Int].new(0 => ["hi", "bye"])␤»
02:24 timotimo hm, no clue
02:25 timotimo does $BL get iterated over by push for some reason?
02:25 lue The only difference I've seen so far is that the first successful run of that line in one synopsis didn't have a text fragment, but the failed one did have a text fragment. Testing this out on the commandline proved me wrong on that hunch :(
02:25 Mouq lue: might --ll-exception help?
02:25 lue timotimo: maybe it iterates over the @.textfrag attribute, but I don't know.
02:25 lue Mouq: that was going to be my next try :) .
02:27 * colomon is busy doing $work using rakudo-moar
02:27 lue Hm. I just had a thought to try changing the key to a true number, and afterwards I'll try ll-exception
02:27 Mouq colomon: \o/
02:28 timotimo colomon: cool. let us know if you stumble upon anything bad
02:29 colomon timotimo: you'd better believe I will.  ;)
02:31 JimmyZ Mouq: you meant %placements{'0'}.push($BL); ?
02:31 timotimo :)
02:31 timotimo JimmyZ: no, it's a %hash{Int}
02:32 JimmyZ Int is the value, not the key, methinks
02:32 lue That's another thing to try actually, just use a plain ol' %hash
02:32 lue JimmyZ: %hash{Int} is spec'd to set the type of the key to Int. (And besides, if it affected the key I'd've run into more obvious problems much sooner ☺)
02:32 timotimo JimmyZ: see the code i treid before
02:33 timotimo
02:33 JimmyZ NYI? :P
02:33 timotimo i'm pretty sure that's implemented
02:33 lue JimmyZ: the issue is some random, obscure problem with the value part of the hash's pairs.
02:34 lue I forgot to mention that things like  %hash{0} //= Array.new()  didn't work.
02:34 timotimo is that something you just found out or something we knew all along?
02:34 JimmyZ I'm curious, why not @array[0]
02:34 JimmyZ :/
02:34 timotimo maybe because it's sparse?
02:35 lue timotimo: Something I knew all along, just thought I'd specify that Any.push isn't the crux of the issue. If I have that //= line, *that's* what fails instead.
02:35 timotimo hmm
02:35 timotimo and --ll-exception doesn't help?
02:36 lue timotimo: haven't run --ll-exception yet, trying to see if pushing to %hash{1} changes anything
02:36 lue (it takes a while to run through each time)
02:36 timotimo mhm
02:36 timotimo --ll-exception only causes better tracebacks; you should use it all the time when you're developing IMO :P
02:36 * lue realizes he forgot about the time-saving trick that makes it easier to debug *faceplam*
02:37 timotimo i don't know what that is and i'd really like you to tell me :3
02:38 * Mouq finally finds the bug he was looking for: a ==Sorry== exception was getting put into an array and then thrown years later
02:38 timotimo oops, that's kind of nasty
02:38 lue timotimo: the trick?    --backlinks=../roast/subdir-with-test-with-bl-that-crashes    instead of    --backlinks=../roast
02:39 timotimo oh
02:39 timotimo i got a feeling that that won't help me with all my debuggings in the future :)
02:39 lue much easier when you're parsing a couple dozen test files than when parsing 918 :P
02:39 timotimo yeah
02:40 lue I almost wonder if my backlink generator shouldn't just parse the Pod6 file and then insert backlinks into the resulting tree, and save that to file. Only reason why I'm not doing that is to preserve as much of the file's formatting as possible.
02:44 timotimo i think i'm going to bed now
02:44 JimmyZ good night
02:44 Mouq night timotimo!
02:48 * Mouq suddenly understands he was doing stuff completely wrong
02:55 __thou joined #perl6
03:01 TimToady at least with you it's sudden :)
03:03 tgt joined #perl6
03:09 lue Well, that's not cool. Narrowing down the test files I process somehow fixes it :/
03:13 Sibin joined #perl6
03:21 * lue afk
03:27 * [Coke] wonders when "package foo;" became illegal.
03:29 TimToady 2 Apr 2001
03:30 [Coke] you're good. :)
03:30 [Coke] I have code that worked about a year ago that used it.
03:31 [Coke] I wonder how long it took rakudo to catch up.
03:31 [Coke] (don't really need to know)
03:32 [Coke] on the flip side, I can throw out my .combine function...
03:33 cooper joined #perl6
03:33 cooper joined #perl6
03:36 Sibin joined #perl6
03:37 cooper joined #perl6
03:38 cooper joined #perl6
03:38 Mouq [Coke]: Sat May 7 18:20:10 2011 +0200
03:38 Mouq git diff 1c0430601^..1c0430601
03:38 Mouq :P
03:39 grep0r joined #perl6
03:39 Mouq Oh, nope
03:41 [Coke] huh. also had to change a bunch of @'s for sets to $'s.
03:42 [Coke] yay, I have my kenken helper script working again. :)
03:43 molaf joined #perl6
03:43 TimToady \o/
03:55 lue --ll-exception for r-j doesn't give me anything much different from before, trying r-m
04:02 * Mouq is having major Cursor issues
04:04 tgt joined #perl6
04:05 TimToady maybe it's about time to rewrite STD in Perl 6 :)
04:06 lue TimToady: isn't it already though? :)
04:06 TimToady well, it's a thin Perl 6 veneer over mostly Perl 5 semantics
04:07 * TimToady would be interested to see what an implementation of backtracking using real lazy lists would look like
04:07 lue Oh. I thought it was written for the ideal Perl 6 implementation, and so far only viv could handle it :)
04:08 TimToady I'd probably use few hashes and more attributes if it were really ideal Perl 6
04:08 TimToady *fewer
04:09 TimToady I guess we need to write vivi instead of viv
04:12 lue .oO(./ⅥⅥ.p6 --to=r-m)
04:18 * Mouq is annoyed
04:19 Mouq I don't think what I'm trying to do can be done with the current Rakudo :/
04:20 Mouq Something to do with the NQP-Perl6 barrier
04:20 TimToady is this an issue of Cursors not be quite as immutable as they're supposed to be in theory?
04:21 TimToady *not being
04:21 aje_ joined #perl6
04:21 aje_ moo
04:22 aje_ Hello
04:22 lue TimToady: looking at STD, I like how you called 「 」 "perfect quotes" :)
04:22 TimToady aje_: howdy mate
04:22 Mouq It's an issue with creating new Cursors and losing their private attributes somehow
04:23 aje_ am new to the perl6 community and everything perl 6. just cloned rakudo* from github and am currently trying to build it. is rakudo the best place to start if I just want to hack around with perl 6 and try out the new language features?
04:23 TimToady yup
04:23 aje_ OK
04:23 aje_ STD/viv is not the place to start?
04:24 TimToady nope
04:24 aje_ OK
04:24 TimToady that's just a prototype we planned to throw away, on which the real parsers are based
04:24 aje_ aaah, OK
04:24 TimToady and viv can only translate a very limited subset of P6 back to P5 in order to run
04:25 TimToady and it cheats :)
04:25 aje_ I see... no worries then, just curious
04:25 aje_ hehe
04:25 TimToady are you familiar with P5?
04:25 lue TimToady: ooc, if you did rewrite STD, would it be an actual rewrite, or would you just P6-ify the not-very-P6 bits of what's already there?
04:26 TimToady it would mostly be rewriting CursorBase and LazyMap
04:27 kaare_ joined #perl6
04:28 TimToady no time for it currenlty
04:28 TimToady *ntly
04:28 aje_ TimToady: Yes, from way back when I used to do Unix sysadmin stuff... but that must be at least 10 years ago
04:50 telex joined #perl6
05:04 tgt joined #perl6
05:06 lue I don't suppose there's a way to effectively replace "sub infix:<=>(Mu \a, Mu \b) is rw" without modifying rakudo itself, is there? :/  (This so I can see what's going on with the args it gets when it fails)
05:57 ggoebel11111 joined #perl6
06:03 ggoebel joined #perl6
06:05 tgt joined #perl6
06:20 woosley1 joined #perl6
06:22 xragnar joined #perl6
06:30 water joined #perl6
06:39 [Sno] joined #perl6
06:52 kaleem joined #perl6
07:06 tgt joined #perl6
07:15 Monkey joined #perl6
07:35 xenoterracide joined #perl6
07:38 moritz good morning
07:41 darutoko joined #perl6
07:51 FROGGS joined #perl6
07:55 dmol joined #perl6
08:04 zakharyas joined #perl6
08:07 tgt joined #perl6
08:07 aje_ yippie, rakudo star installed
08:13 FROGGS timotimo: +1 to :fallback
08:14 FROGGS timotimo: I always have bogus data I have to turn into valid text (just for users to read), and sadly I can do that nicely in PHP but not in Perl 5, which is weird
08:21 vincent23 joined #perl6
08:25 tgt joined #perl6
08:35 dayangkun joined #perl6
08:43 pdcawley joined #perl6
08:45 sergot morning o/
08:49 FROGGS morning sergot
08:55 fhelmberger joined #perl6
08:55 dayangkun joined #perl6
09:11 pdcawley joined #perl6
09:26 rindolf joined #perl6
09:33 virtualsue joined #perl6
09:34 dakkar joined #perl6
09:40 timotimo o/
09:41 jnthn o/
09:41 FROGGS o/
09:41 JimmyZ \o/
09:41 FROGGS \o
09:42 jlaire o\
09:45 woosley joined #perl6
09:46 Mouq joined #perl6
09:46 arnsholt joined #perl6
09:46 arnsholt o/
09:46 woosley joined #perl6
09:47 arnsholt jnthn: Is there any particular reason $VM on Rakudo/JVM doesn't load the stuff from nqp::backendconfig?
09:48 timotimo hmm. i can't give .assuming a different invocant, can i?
09:48 FROGGS arnsholt: because there is almost nothing in its backendconfig, no?
09:49 FROGGS j: say nqp::backendconfig
09:49 camelia rakudo-jvm 1aeb7c: OUTPUT«("runtime.jars" => "/home/p6eval/rakudo-inst-2/languages/nqp/runtime/asm-4.1.jar:/home/p6eval/rakudo-inst-2/languages/nqp/runtime/asm-tree-4.1.jar:/home/p6eval/rakudo-inst-2/languages/nqp/runtime/jline-1.0.jar:/home/p6eval/rakudo-inst-2/languages/nqp/runtim…»
09:49 FROGGS j: say $*VM
09:49 camelia rakudo-jvm 1aeb7c: OUTPUT«("name" => "jvm", "properties" => {"java.vm.version" => "24.51-b03", "sun.jnu.encoding" => "UTF-8", "java.vendor.url" => "http://java.oracle.com/", "java.vm.info" => "mixed mode", "user.dir" => "/home/p6eval_eval", "sun.cpu.isalist" => "", "java.awt.graphic…»
09:50 timotimo another thing is: $*VM on parrot is absurdly slow :(
09:52 aje_ joined #perl6
09:55 pecastro joined #perl6
09:55 arnsholt There is that, yeah
09:56 arnsholt It's just weird that the JVM backend config has a separate op to get the information we need
09:56 arnsholt If nqp::backendconfig is sparse on information, we should add some more stuff to it, rather than add a JVM-specific op, no?
09:57 FROGGS +1 from me :o)
09:57 FROGGS (dunno if that is worth much though)
09:57 jnthn I think jvmproperties may be accessing something JVM-specific (that actually is called properties)...
09:59 arnsholt It is, but is it really necessary to expose that fact to the user?
10:01 arnsholt The reason for this complaint is of course that it's a lot easier to add the "how to compile things" info to nqp::backendconfig on JVM, but I want that stuff in $*VM =)
10:03 timotimo making something an op in nqp is not really "exposing a fact to the user" :)
10:03 FROGGS timotimo: rakudo is the user :P
10:04 timotimo :)
10:14 arnsholt timotimo: The user of NQP was what I meant, though =)
10:31 robinsmidsrod joined #perl6
10:36 woosley1 joined #perl6
10:40 pmurias joined #perl6
10:41 pmurias if I need to #ifdef something in the setting for multiple backends what would be a good way to do that?
10:43 timotimo i'm going to be procrastinating away writing today's p6weekly until a new cool item to write about pops up
10:43 timotimo get busy, people! :)
10:43 jnthn pmurias: There's already a #?if ... mechanism.
10:43 jnthn pmurias: That's perhaps useful?
10:43 timotimo jnthn: but that doesn't give logical operations, no?
10:43 timotimo i think that's the core of the question
10:43 pmurias jnthn: it only takes one backend
10:43 jnthn oh
10:43 jnthn But it can be negated
10:44 pmurias but it can't be nested
10:44 jnthn Nope
10:44 woosley joined #perl6
10:44 pmurias and I want to disable a given section for both js and parrot
10:45 timotimo time to pick up m4
10:45 vincent21 joined #perl6
10:45 jnthn Well, guess we could support #?if moar|jvm
10:45 woosley joined #perl6
10:46 pmurias or nesting
10:46 jnthn True.
10:47 jnthn Though the or is probably easier
10:47 pmurias which one should I implement?
10:47 jnthn Anyway, it's just a simple Perl 5 script that does the thing.
10:49 jnthn Don't feel strongly; I'd probably do the |
10:53 simcop2387 joined #perl6
10:59 dalek nqp-js: 06ccf9e | (Pawel Murias)++ | tools/build/Makefile-JS.in:
10:59 dalek nqp-js: Run test 2 during make test.
10:59 dalek nqp-js: review: https://github.com/pmurias/nqp-js/commit/06ccf9ec01
10:59 dalek nqp-js: 0772a15 | (Pawel Murias)++ | tools/build/gen-cat.pl:
10:59 dalek nqp-js: Implement #ifdef nesting in tools/build/gen-cat.pl.
10:59 dalek nqp-js: review: https://github.com/pmurias/nqp-js/commit/0772a157c0
10:59 dalek nqp-js: 3c6b592 | (Pawel Murias)++ | / (2 files):
10:59 dalek nqp-js: Use more of the setting, pass more tests.
10:59 dalek nqp-js: review: https://github.com/pmurias/nqp-js/commit/3c6b5929f1
11:00 pmurias jnthn: nesting was easier to implement and avoid introducing more syntax
11:00 pmurias * avoids
11:04 vincent21 joined #perl6
11:12 rom1504 joined #perl6
11:18 daxim mls, https://build.opensuse.org/project/monitor/home:ldieckow:branches:devel:languages:parrot
11:19 daxim I've started with 2014.01
11:19 daxim currently stuck with parrot 6.0.0 because I cannot figure out how to fdupes uninstalled %doc files
11:21 daxim I would like you to NOTICE ME SEMPAI because I've talked to you about the rakudo stack on obs before and it would be a shame to duplicate work on it
11:30 Mouq joined #perl6
11:39 sqirrel joined #perl6
11:44 pmurias joined #perl6
11:53 daxim segfault when compiling nqp:  http://paste.scsys.co.uk/323215   # who feels responsible?
11:56 FROGGS I do
11:56 FROGGS daxim: do you have the MoarVM configure+build output somewhere?
12:00 daxim certainly.  build log <https://build.opensuse.org/package/live_build_log/home:ldieckow:branches:devel:languages:parrot/moarvm/openSUSE_13.1/x86_64> spec file <https://build.opensuse.org/package/view_file/home:ldieckow:branches:devel:languages:parrot/moarvm/moarvm.spec?expand=1> packages <http://software.opensuse.org/download.html?project=home%3Aldieckow%3Abranches%3Adevel%3Alanguages%3Aparrot&amp;package=moarvm>
12:01 brrt joined #perl6
12:02 xenoterracide joined #perl6
12:03 arnsholt joined #perl6
12:05 scumdog1 joined #perl6
12:07 scumdog1 left #perl6
12:10 btyler joined #perl6
12:14 brrt hi #perl6
12:14 colomon o/
12:14 brrt is your wheather as awesome as it is here?
12:15 dayangkun joined #perl6
12:16 fridim_ joined #perl6
12:17 daxim FROGGS, do you want me to file a formal bug so the crash doesn't get dropped under the table?
12:18 jnthn daxim: I'm too tied up with $dayjob task to look right now, but if there's a MoarVM segfault please file it.
12:22 colomon brrt: high for the day is 43F, that's incredibly warm by the standards of the last two months...
12:23 brrt 43F in celcius….
12:23 brrt oh
12:23 brrt i've got 20 deg c at least
12:23 brrt 68F
12:23 tadzik 12C here, very nice :)
12:23 colomon brrt: Jan and Feb had only four or five days that got above 0C here.
12:24 colomon 43F probably means half the town will be breaking out the light jackets and shorts.
12:24 brrt :-)
12:24 brrt well, in europe its BBQ time at least
12:27 daxim here the same info as above as github ticket: https://github.com/MoarVM/MoarVM/issues/81
12:27 mavcunha joined #perl6
12:59 masak afty, #perl6
13:01 FROGGS daxim++ # sorry, got distracted
13:03 kaare_ joined #perl6
13:04 FROGGS daxim: I am moving the discussion to #moarvm
13:09 guru joined #perl6
13:23 skids joined #perl6
13:32 tadzik mwahaah
13:32 tadzik uh, ww
13:33 masak :)
13:34 masak today's mini-challenge: make this the *right* window to say "mwhaah" in.
13:35 lizmat waiting for someone to grab you by the mivocks?
13:35 moritz which "word", consisting of six lower-case letters, produces the sha1 sum 12f4a69f0d00b48bd73901a75c693b67c877e69d? # for masak's mini-challenge
13:35 brrt ugh
13:35 brrt 26^6 options
13:36 lizmat ah, that's so ascii thinking
13:36 moritz brrt: just scroll up a bit
13:36 brrt :-) moritz saved me so much time
13:37 masak it would've been more fun if we had made you search. :)
13:37 moritz mwahaah
13:37 FROGGS hehe
13:37 FROGGS I got it too fwiw :o)
13:45 mls daxim: I updated nqp/rakudo/moarvm in devel:languages:parrot last week
13:46 mls I didn't upate parrot yet (because nqp no longer needs it for building)
13:46 tadzik mls! \o/
13:47 mls hi guys ;)
13:47 FROGGS mls: nqp still needs parrot if you are going to provide nqp-p
13:47 mls yes. I currently only build nqp-m
13:48 JimmyZ wb, mls :)
13:49 moritz not a bad choice (nqp-m only), we just need NativeCall and a bit more modules support
13:51 FROGGS yes, I usually use nqp-m only, and when I am done hacking I test my stuff on the two others...
13:52 * JimmyZ too
13:52 jnthn Same; nqp-m has fastest build/spectest time, so it's the shortest dev cycle. :)
13:53 mls daxim: do you want write access to devel:languages:parrot?
13:53 FROGGS btw, someone should rename that to devel:languages:perl6 some day
13:53 FROGGS excepts that parrot might stay in parrot
13:53 FROGGS -s
13:53 mls yes. I should have named it "perl6" ;)
13:54 mls but at that time I thought that there'll be many languages using parrot as a backend
13:54 JimmyZ jnthn: just curious, what's your todo list after nativecall :P
13:54 JimmyZ s/your/your next/
13:57 vincent23 joined #perl6
13:57 FROGGS my guess is getting m* in the shops
13:57 vincent23 joined #perl6
13:58 dalek rakudo-star-daily: 66e0fce | coke++ | log/ (5 files):
13:58 dalek rakudo-star-daily: today (automated commit)
13:58 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/66e0fce493
14:02 jnthn Yeah...m*, async I/O, the Moar specializer, and native typed rw/array...
14:03 jnthn office &
14:03 kbaker joined #perl6
14:04 FROGGS loop labels would alos be nice... but perhaps somebody else can do that, since it is kinda done for nqp-p, and needs doing for nqp-m and nqp-j
14:11 rurban__ parrot -O2 unfortunately doesn't work yet on nqp. found a label bug
14:11 __thou joined #perl6
14:12 * [Coke] wonders if jvm or moar are ready to add the star pile for testing modules.
14:13 virtualsue joined #perl6
14:15 jnap joined #perl6
14:17 FROGGS [Coke]: I think so
14:17 FROGGS [Coke]: even when NativeCall and their deps will fail, it still makes sense to fix possible bugs in other modules
14:18 FROGGS rurban__: the default for parrot is to do -O1 when configures with --optimize?
14:33 rurban__ yes
14:33 rurban__ -O1 is equal to -O
14:33 rurban__ oh, sorry. --optimize does not call parrot with -O. so not
14:34 rurban__ I just tested optimized nqp pbc's via parrot -L. -X. -O2
14:34 rurban__ how much nqp packfiles are already optimized or not
14:37 PZt joined #perl6
14:37 FROGGS ahh, I see, thanks
14:49 rurban__ how much constant propagation and constant folding will improve nqp and thus rakudo performance
14:49 rurban__ I estimate 2-3% only
14:51 kaare__ joined #perl6
14:51 telex_ joined #perl6
14:51 ribasushi joined #perl6
15:00 moritz rakudo already has a constant folder, fwiw
15:01 moritz so it'll likely only affect the compiler itself
15:09 treehug88 joined #perl6
15:13 araujo joined #perl6
15:13 araujo joined #perl6
15:15 rurban__ it affects the generated nqp code. lots of constants which can be propagated
15:15 rurban__ fixed the bug, testing now again
15:17 SamuraiJack_ joined #perl6
15:17 rurban__ yes, all nqp tests pass now with parrot -O2
15:18 jnap joined #perl6
15:19 moritz was it an nqp or a parrot bug?
15:21 timotimo cool!
15:25 rurban__ moritz: an old premature imcc optimization
15:26 rurban__ running more tests, then rakudo tests and updated benchmarks (but I guess it will be only 3-5% max)
15:27 timotimo is anything perl 6 related going to participate in the gnome outreach programme?
15:28 moritz if somebody has a great idea for that, I'd be willing to mentor (if it fits my areas of expertise)
15:28 timotimo well, it's not limited to programming, so documentation could be a viable thing to do
15:29 timotimo (and that's also an area of expertise of yours :)  )
15:30 timotimo anyway, i'll start work on today's p6weekly post. i'd love to hear some suggestions :)
15:30 moritz timotimo: did you note my suggestion for the "how to contribute" section from (end of) last week?
15:30 timotimo i'm not sure
15:31 timotimo feel free to restate it
15:31 moritz r: 1
15:31 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: ( no output )
15:31 moritz simplify that to 'rakudo-{parrot,jvm,moar} 1aeb7c:'
15:31 timotimo ah yes
15:31 timotimo did you see my implementation attempt?
15:32 moritz no
15:32 timotimo https://gist.github.com/timo/c2119931370ee31360e7
15:33 timotimo alas, it's not complete
15:33 timotimo it doesn't handle situations yet when there's niecza in the mix or something similar
15:33 moritz and, uhm, I hate to spoil this, but camelia is written in p5 :(
15:34 timotimo not important. this script can pre-generate all the combinations and write them to a text file
15:34 timotimo you would then just have to run that script whenever you rebuild the rakudos and nieczas and stuff
15:35 treehug8_ joined #perl6
15:36 moritz well, I'd prefer it camelia's workflow didn't get more complicated
15:36 timotimo fair enough
15:36 timotimo i'll put it up on the blog
15:36 moritz thanks
15:39 timotimo can perl6-m now completely build parrot with all dependencies and stuff? now that the precomp bug is fixed?
15:40 moritz build parrot?
15:40 timotimo er
15:40 * moritz confused
15:40 timotimo panda
15:40 timotimo all those animals starting with pa :|
15:41 pmurias is there a lot of stuff missing for a perl6 camelia?
15:42 timotimo pmurias: how would you like your work for this week described?
15:42 timotimo you're adding more and more files to the core setting and making more and more spectests pass?
15:42 PerlJam .oO( pmurias: the most awesome Perl 6 work ever accomplished! )
15:43 timotimo for last week, actually
15:43 timotimo well, last week and today :)
15:43 moritz pmurias: probably something to make the IRC module reconnect on timeouts and other stuff
15:44 denis_boyun joined #perl6
15:45 tadzik hmm
15:45 timotimo tadzik: you got something cool to report?
15:45 tadzik I wonder how is Net::IRC::Bot doing
15:45 tadzik timotimo: no :(
15:45 timotimo that's fine
15:45 tadzik I did absolutely nothing, aside from the usual maintenance
15:45 moritz tadzik: last time I used it, it, like, mostly worked quite well
15:45 timotimo if you keep that up, though, be prepared to receive a strongly worded letter :P
15:46 tadzik :>
15:46 tadzik I know, I know
15:46 tadzik want to give me a project idea?
15:46 tadzik I'd like to do something in Perl 6 userspace
15:46 timotimo huh? but there are no perl 6 users!
15:46 masak tadzik: mishu!
15:46 tadzik oh, I could rework MuEvent and make it exploit all the concurrency awesomeness
15:46 moritz timotimo: port camelia to Perl 6
15:47 masak ooh
15:47 tadzik moritz: me? :)
15:47 tadzik I wanted to start with synopsebot
15:47 tadzik see if it can run long-term
15:47 timotimo http://perlcabal.org/syn/S15.html - is this supposed to 404?
15:47 tadzik masak: mishu is a great idea, *but* :)
15:48 tadzik I was already sick for the entire last week, and if I was to take a week of and go to sweden now, $work may get... disappointed
15:49 masak tadzik: oh, you wanted to meet up for it? awesome, I didn't realize.
15:49 tadzik I wouldn't want it any other way :)
15:49 masak \o/
15:49 masak tadzik: even hearing that, I'm very excited. looking forward to meeting you, whenever :D
15:50 timotimo tadzik: do you know what the exact status of panda on moar is? now that the precomp bug has been fixed?
15:50 tadzik I found that I can trick myself into being productive by traveling somewhere to be productive there
15:50 tadzik it worked for all the last conferences with hackathons :)
15:50 tadzik timotimo: I think it works :P
15:50 tadzik let me check again
15:50 timotimo to be honest, i wasn't even really sure what exactly broke :(
15:50 timotimo i know you couldn't install URI, or at least i thought that was it
15:50 tadzik ah, URI is tricky
15:51 tadzik and I think some thinking is required for how to spec META.infos and all this stuff to make it not-crazy
15:51 tadzik what I mean is: modules with per-backend code are tricky
15:51 moritz URI has always been the big test for precompilation on rakudo-p
15:51 tadzik oh, maybe it's mime-base64 that has those problems
15:52 tadzik either way, it's something that wants to be solved
15:52 moritz that's also tricky, yes :-)
15:52 hoelzro I got MIME::Base64 precompiling not an hour ago
15:52 timotimo \o/
15:52 moritz URI is tricky because it has lots of interdependencies, and partially used with require
15:52 timotimo hoelzro: can you summarize last week's stuff for me?
15:52 hoelzro I had to trick it, though
15:52 moritz and MIME::Base64 is tricky because it has a parrot-specific backend
15:52 hoelzro timotimo: I'm afraid I've been in and out of the Perl 6 world over the last few weeks =/
15:53 timotimo that's fine
15:53 vincent21 https://gist.github.com/timo/c2119931370ee31360e7
15:53 hoelzro latest version of the Moar report: https://gist.github.com/hoelzro/9467700
15:53 pmurias timotimo: it's not awesome at all ;) I'm porting over the nqp-js to use the nqp build system so it can be merged into the repo
15:53 timotimo pmurias: ah, so just nqp so far?
15:53 timotimo that's fine, too! :)
15:54 pmurias yes, and those tests are passing using a different build system
15:55 hoelzro crap, forgot summary.txt =(
15:56 tadzik ah
15:56 tadzik panda cannot connect to feather for some reason
15:57 tadzik and it only happens on my box; I guess I'll debug that
16:00 tadzik what was that strace incantation for child threads?
16:00 tadzik ach, -3
16:01 tadzik -f that is
16:01 tadzik and mystery solved: moarvm cannot ipv6
16:02 hoelzro ok, summary.txt is in the latest moar report
16:03 * hoelzro .oO( I should set up the moar report to run automatically... )
16:07 tadzik argh, gdbing perl6-m is pain, or am I doing it wrong?
16:09 timotimo http://p6weekly.wordpress.com/?p=86&amp;shareadraft=531de39172131 - first draft. i've surely missed some interesting and/or important changes during the week?
16:10 tadzik huh
16:11 tadzik moarvm is doing something very weird with ipv6
16:11 tadzik https://gist.githubusercontent.com/tadzik/9468083/raw/349b9d4b2bcbe1ebb2a94bb568a44a58599e0f66/gistfile1.txt
16:12 tadzik it connects to correct host in the first place, but then it closes it, and connects to...incomplete address
16:13 TimToady timotimo: no one will know what moar-conc means
16:13 timotimo good point.
16:13 benabik joined #perl6
16:16 timotimo actually ... shouldn't it be possible to (ab)use the backtracking of regexes to make the prefix & suffix summarization much shorter code-wise?
16:17 timotimo hm, not quite. it would probably not find summarizable things if it had to re-order them first
16:20 tadzik argh argh
16:20 tadzik timotimo: halp
16:20 timotimo but i don't know how to sockets :(
16:20 tadzik but you know how to gdb
16:20 tadzik and I can't run moarvm with this thing
16:21 tadzik it needs some wizardry with 'set args' I figured
16:21 timotimo oh
16:21 timotimo gdb and args is easy
16:21 timotimo just figure out how exactly moarvm is invoked
16:22 timotimo and then gdb --args /foo/bar/moarvm --libpath=something something.moarvm foo.pm6
16:23 timotimo (a friend recently showed me this and blew my mind completely and utterly)
16:23 [Coke] you can do that from the command line!?
16:23 tadzik oh
16:23 benabik Huh.  I had always just used `gdb foo` and then `run bar baz` to debug `foo bar baz`
16:23 tadzik me too
16:23 tadzik oh?
16:23 timotimo YES! :D
16:23 tadzik me not
16:24 [Coke] timotimo++ timotimo++ timotimo++ # holy crap
16:24 tadzik I have no idea what's surprising me anymore
16:24 tadzik but something is
16:24 tadzik but with the help of puts() I found where moarvm fails anyway :D
16:25 jnthn tadzik: perl6-m is just a shell script; it's better to gdb moar itself and r it with the stuff in the shell script plus your args, I think. At least, that's what I do with msvc...
16:26 benabik GNU utilities always have the least useful man pages.  I know they'd prefer we use the info pages, but those don't always seem to be installed.  At least a summary of *all* the options would be nice.
16:26 timotimo jnthn: no, even better is to gdb --args moar foo bar baz
16:26 timotimo :)
16:26 benabik timotimo: I doubt that works with msvc
16:26 jnthn timotimo: Or what :) Either way, without the shell script :P
16:27 tadzik yeah, I got to that part :)
16:27 jnthn benabik: I tend to set it up inside VS :)
16:27 tadzik verdict: resolve_host_name can't ipv6
16:27 jnthn tadzik: I never actually tried out the ipv6 bit of Moar sockets...
16:27 dmol joined #perl6
16:27 jnthn I *thought* the code I did would handle to it...
16:27 jnthn s/to//
16:29 jnthn timotimo: "He has also said before that Parrot’s concurrency model is vastly superior to MoarVM’s, so I’m very excited to see an implementation of Perl 6 concurrency on top of parrot." - might want to mention that's a highly disputed claim. :)
16:29 jnthn timotimo: The font size seems to shrink in the last paragraph...
16:29 tadzik memcpy(dest, result->ai_addr, sizeof(struct sockaddr));
16:30 tadzik that looks wrongish
16:30 timotimo how is "While not everybody agrees with him, I'm very excitedly looking forward to an implementation of Perl 6 concurrency on top of parrot that kicks MoarVM's butt."?
16:30 tadzik oh, not
16:30 tadzik I should talk less :P
16:31 jnthn timotimo: Well, "so we can see if the claim holds up" is more the reason :)
16:31 timotimo fair enough
16:31 jnthn It'll need a volunteer to write that implementation, 'cus I sure ain't working on it.
16:31 timotimo sure enough
16:32 tadzik ah, yes, gotcha
16:33 jnthn tadzik: Found the bug? :)
16:33 jnap joined #perl6
16:33 tadzik I think
16:33 tadzik I think sockaddr only works for v4, and you need sockaddr_in6 for v6
16:33 * jnthn has some teaching to do over the coming weeks, BUT has got finished with writing course material, which is good for the tuit supply :)
16:34 jnthn tadzik: ah, ok :)
16:34 tadzik or maybe not :
16:34 timotimo Should i encourage my readers to volunteer to do the Rakudo * 2014.02 release even though it's already half way into 03?
16:34 tadzik I never bothered to learn ipv6 sockets. "Baah, we'll never use ipv6 anyway"
16:34 jnthn timotimo: Probably not...
16:34 tadzik and now I'm the one who noticed the bug... :)
16:34 timotimo hm, ok.
16:35 jnthn timotimo: Better use of time is doing stuff to make sure the 2014.03 one supports more than just Parrot :)
16:35 timotimo aye. but that's not necessarily something a semi-outsider could just pick up
16:37 * jnthn wonders if it's github or the train wifi that is being flaky...
16:38 jnap joined #perl6
16:41 tadzik github is
16:41 jnthn ah, k
16:41 jnthn uh-oh...here's the underground station where connection gets interesting...
16:41 tadzik :P
16:43 vincent22 joined #perl6
16:44 nwc10 timotimo: true, for "not necessarily". Some people probably can. (and possibly more easily than they can get the confidence to roll a release)
16:44 nwc10 I think that it's the right thing to suggest trying - help work on ecosystem modules
16:44 nwc10 even if it's just golfing problems down to bug reports
16:44 timotimo anything in particular you'd like me to mention?
16:45 nwc10 I don't know. I hope that jnthn, [Coke] or holzero would have a better idea
16:45 nwc10 and I have a train to catch
16:45 nwc10 to see the damian
16:45 tadzik aww yiss
16:45 tadzik I seem to have fixed it
16:45 tadzik should socket spectests work on rakudo?
16:46 tadzik rakudo-moar, that is
16:46 jnthn tadzik: yes
16:46 jnthn tadzik: Passed for me last I checked (day or two ago)
16:46 tadzik okayo
16:46 [Coke] what are we looking at ? things to do for people who are just joining the #perl6 community?
16:46 timotimo [Coke]: i'll mention mojo6 if that's okay with you
16:47 timotimo [Coke]: yes, i'd like to encourage people who have so far just been looking/lurking to have a closer look at the community and implementations
16:48 SamuraiJack joined #perl6
16:49 isBEKaml joined #perl6
16:51 tadzik oh, hahaha
16:51 tadzik now that I fixed ipv6, it turns out that the moduleDB doesn't support it :P
16:51 timotimo hah, excellent :)
16:51 timotimo still, decent ipv6 support is definitely a necessity for Perl 6
16:52 jnthn tadzik: The patch is still welcome :)
16:52 timotimo not only because the numbers are equal :)
16:52 tadzik sure :)
16:52 timotimo http://p6weekly.wordpress.com/?p=86&amp;shareadraft=531dedc52b185
16:53 tadzik ok, I can fetch stuff from ipv6.google.com, so I say it works
16:55 rindolf joined #perl6
16:56 btyler_ joined #perl6
17:00 jnap joined #perl6
17:04 mcglk joined #perl6
17:05 mcglk_ joined #perl6
17:06 mcglk__ joined #perl6
17:08 timotimo post published
17:10 mcglk joined #perl6
17:10 tadzik \o/
17:10 tadzik timotimo++
17:11 jnthn yay, think I've a patch that fixes the Supplies issue without regressing roles tests :)
17:11 raiph joined #perl6
17:12 tadzik aww yiss
17:12 tadzik now both panda-moar and moduledb like ipv6
17:12 tadzik I hope they still like ipv4 too
17:12 tadzik ==> Successfully installed Term::ANSIColor
17:12 jnthn \o/
17:13 tadzik I like how fast that is. May actually convince people to trust panda a bit, instead of installing things manually :P
17:13 isBEKaml panda is actually a bumbling animal. Why would people trust it with important stuff?
17:13 tadzik duude, chiillll
17:13 jnthn 'cus it's unbearably cute
17:14 isBEKaml It only reinforces its image with those Kung fu series. :)
17:14 mcglk joined #perl6
17:14 tadzik I think pandas are always high on eucaliptus
17:15 tadzik oh wait, that's koalas
17:15 isBEKaml mate, you got your geography mixed up.
17:16 jnthn Pandas only do bamboo...which I'm not sure you can get high on, though admittedly I never tried...
17:16 [Coke] (mojo6) sure, point them to me on this channel.
17:21 dalek rakudo/moar-conc: c9d478e | jonathan++ | src/vm/moar/ops/container.c:
17:21 dalek rakudo/moar-conc: Fix role type checking bug in assignment.
17:21 dalek rakudo/moar-conc:
17:21 dalek rakudo/moar-conc: Mostly unbusts Supply on Moar.
17:21 dalek rakudo/moar-conc: review: https://github.com/rakudo/rakudo/commit/c9d478ef62
17:22 mcglk joined #perl6
17:22 Rotwang joined #perl6
17:23 mcglk_ joined #perl6
17:24 vendethiel r: 0 but "" ==> .perl
17:24 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Sorry, do not know how to handle this case of a feed operator yet.â�¤at /tmp/tmpfile:1â�¤------> [32m0 but "" ==> .perl[33mâ��[31m<EOL>[0mâ�¤  â€¦Â»
17:24 vendethiel r: say (0 but "").perl
17:24 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«␤»
17:24 mcglk__ joined #perl6
17:26 mcglk___ joined #perl6
17:26 vendethiel uuh :(
17:27 TimToady r: say ("" but 0).perl
17:27 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«""␤»
17:27 mcglk___ joined #perl6
17:29 mcglk_ joined #perl6
17:30 mcglk__ joined #perl6
17:31 SamuraiJack joined #perl6
17:32 mcglk joined #perl6
17:32 [Coke] no buts about .perl
17:32 tadzik oh-oh, interesting fact
17:32 tadzik rakudo-moar is apparently the first rakudo to support IPv6
17:32 TimToady r: say ("foo" but "bar").perl
17:32 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«"foo"␤»
17:33 TimToady r: say ("foo" but "bar").gist
17:33 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«foo␤»
17:33 TimToady r: say ("foo" but "bar").Str
17:33 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«bar␤»
17:33 tadzik or maybe other platforms have clever sockets that fallback to v4
17:34 mcglk_ joined #perl6
17:34 FROGGS[mobile] joined #perl6
17:35 mcglk__ joined #perl6
17:39 geekosaur many but not all linux distributions make use of a kernel network stack mechanism where opening an ipv4 socket automatically opens a compatible associated ipv6 socket
17:39 mcglk joined #perl6
17:41 tadzik oh, neat
17:41 mcglk_ joined #perl6
17:42 dalek perl6-roast-data: e4a6668 | coke++ | perl6_pass_rates.csv:
17:42 dalek perl6-roast-data: today (automated commit)
17:42 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/e4a66689a6
17:46 [Sno] joined #perl6
17:53 mcglk joined #perl6
17:54 mcglk_ joined #perl6
17:55 mcglk__ joined #perl6
17:59 mcglk joined #perl6
18:00 lizmat joined #perl6
18:02 mcglk_ joined #perl6
18:09 vincent_ joined #perl6
18:13 spider-mario joined #perl6
18:14 pmichaud good afternoon, #perl6
18:15 jnthn o/ pmichaud
18:15 kbaker joined #perl6
18:15 pmichaud did anyone else see http://lists.alioth.debian.org/pipermail/pkg-rakudo-devel/2014-March/000367.html ?
18:17 guru joined #perl6
18:18 jnthn pmichaud: Hadn't seen that, no
18:18 pmichaud I'm reaching out to Alessandro to see if he can tell us the best way to pass the packaging role to one of us.
18:19 jnthn pmichaud++
18:21 pmichaud if there's anyone that would be interested in taking over that role/responsibility, please let us know asap
18:21 pmichaud right now I'm out for a walk :)
18:27 jnap joined #perl6
18:30 dwarring joined #perl6
18:32 mcglk joined #perl6
18:33 jnthn detrain, dinner &
18:34 mcglk_ joined #perl6
18:37 arnsholt joined #perl6
18:39 [Coke] jnthn: shouldn't that be "derail" ?
18:42 FROGGS joined #perl6
18:44 denis_boyun_ joined #perl6
18:55 cognominal__ joined #perl6
19:00 FROGGS tadzik / [Coke] / timotimo: I usually do: which perl6-m, cat /path/to/perl6-m, and then copy most of it, then: gdb --args <most of it> -e 'something that segfaults'
19:04 LLamaRider joined #perl6
19:04 tadzik I wouldn't mind a gdb-perl6 script :)
19:05 LLamaRider [Coke]++ best of luck with the Mojolicious port! I'm eagerly looking forward to it :)
19:07 LLamaRider does someone know if NativeCall reached a state where it can expose variables to P6? I remember that had blocked me some time back when trying to port libxml.
19:07 hoverboard joined #perl6
19:12 FROGGS timotimo++ # blög
19:18 timotimo LLamaRider: i think if you want to do something like that you'll have to write a tiny piece of Inline::C
19:19 jnap joined #perl6
19:20 FROGGS yes, there is no way to access defines for example without writing C code
19:20 FROGGS okay, there could be some magic that writes code for you in theory
19:28 [Coke] LLamaRider: glad to hear it. Just need... tuits. :)
19:33 Sqirrel joined #perl6
19:35 vendethiel FROGGS: (mind giving me the link again ? blog)
19:37 FROGGS vendethiel: http://p6weekly.wordpress.com/
19:37 vendethiel FROGGS++, timotimo++
19:37 FROGGS :o)
19:40 moritz timotimo++
19:44 lue apparently, binding an Array.new (instead of assigning it) seems to work for the issue I described last night.
19:48 FROGGS jnthn: I am working currently at "panda bundle"
19:48 lue Which means that it's the assignment operator itself that was breaking there, though I have no clue why the hash wasn't receptive at that specific time.
19:48 FROGGS jnthn: it can already detect dependencies, be registering my own module loader, which records every module loading, and delegates to the normal one
19:49 FROGGS jnthn: how could I get my hands on the things a module provides? like class definitions and such?
19:49 timotimo its WHO, no?
19:50 FROGGS on what do I call it?
19:50 timotimo no, not on WHAT
19:50 timotimo :P
19:50 timotimo dunno :|
19:50 FROGGS perhaps I should just compare GLOBAL of before and after loading a module
19:51 LLamaRider timotimo: then in P6 the equivalent of XS is a mixture of NativeCall and Inline::C (that's a P6 port?)?
19:51 timotimo not quite, XS is much more than that
19:51 timotimo as in: XS lets you directly fiddle with the interpreter's internal state
19:51 timotimo in NativeCall, you can't do that
19:52 timotimo since NativeCall is cross-backend
19:52 LLamaRider oh, so a direct port might even be impossible. Great news xD
19:52 timotimo you can, however, build extension libraries, like what rakudo does to gets the nqp::p6* ops in place
19:52 timotimo but i'm not sure how easy it is to make that "packagable"
19:54 timotimo on moar and parrot i *think* you have to supply the extop on the commandline, but perhaps only at build-time?
19:54 timotimo and those are specific per VM, of course
19:54 dlinnyj joined #perl6
19:54 LLamaRider I'm not sure what is controversial about passing a C variable into P6 through NativeCall. Shouldn't be that different than function names or?
19:55 timotimo i think the lib we're using doesn't supply that functionality, but i could easily be wrong.
19:57 FROGGS are we talking about something define'd in land?
19:58 timotimo no, define is never possible without invoking a compiler (or at least the preprocessor)
19:58 hoverboard joined #perl6
19:58 FROGGS okay, so far we agree
19:59 FROGGS and how (on earth) should somebody access a variable?
20:00 timotimo well, you get a scalar that is repr'd "CVariable" and that directly points at the memory of the variable
20:00 FROGGS ahh
20:01 FROGGS I am doing this crap in SDL, getting a memory address by a function, and then unpack that memory...
20:01 FROGGS *shudder*
20:01 LLamaRider yes, it ought to be something shudder-invoking :D
20:01 timotimo the only hard part i can really think of right now is how to find the memory address reliably
20:02 timotimo perhaps you can even use the CStruct repr for single variables at that point
20:03 FROGGS m: BEGIN my $g = GLOBAL::.keys; use Test; say GLOBAL::.keys (-) $g
20:03 camelia rakudo-moar 1aeb7c: OUTPUT«set(Test)␤»
20:03 timotimo heh
20:03 timotimo that's lovely and a tiny bit scary
20:13 jnap1 joined #perl6
20:20 * jnthn back
20:23 jnthn FROGGS: If you're at module loader level, you can look into the pre-merged GLOBALish which is accessible through the module context ($module_ctx or so I think at some point in ModuleLoader)
20:24 FROGGS jnap1: yes, that what I am going to do, compare GLOBALish from before and after
20:25 FROGGS because I don't want to implement more of load_module's logic
20:25 FROGGS jnthn: this is already there: https://github.com/tadzik/panda/commit/17b66240d4c7af4da0d779f272d2bb4bf29716f9#diff-4
20:28 jnthn FROGGS: No, GLOBALish in $module_ctx, before global merging happens, *is* that diff I think.
20:28 jnthn Also there's EXPORT.
20:28 FROGGS ahh, hmm
20:28 jnthn FROGGS: To be clear, I'm suggesting you might be able to intercept it before merge_globals happens...
20:31 pecastro joined #perl6
20:39 BenGoldberg joined #perl6
20:40 FROGGS jnthn: but how?
20:42 jnthn FROGGS: Dunno, it'll need some changes to ModuleLoader I guess
20:42 FROGGS yeah...
20:42 jnthn FROGGS: I think that probably what is today ModuleLoader just wants to end up being "guts" support for writing a CompUnitRepo.
20:43 jnthn if I understand The Plans correctly anyway :)
20:43 FROGGS that sounds about right
20:44 FROGGS it is The One And Only when it comes to compiler only stuff, but after that it just does the dirty work of loading an already located file (or perhaps piece om mem some day)
20:49 FROGGS jnthn: btw, nextsame is not specced to return, right?
20:49 timotimo that's right
20:49 FROGGS ahh, have an idea...
20:49 timotimo callsame does that
20:49 FROGGS ahh
20:50 FROGGS of course
20:50 FROGGS "next"-same
20:50 xenoterracide joined #perl6
20:50 FROGGS sometimes it is too obvious :o)
20:50 FROGGS timotimo++
20:50 jnthn Yeah, nextsame is "pass control on to the candidate and don't come back to me again" :)
20:50 timotimo :)
20:50 timotimo .o( don't you dare come crawling back to me )
20:50 FROGGS hehe
20:50 FROGGS NEXT
20:51 jnthn tssk. Finally I have a bit of free time but...so tired...
20:51 timotimo don't push yourself too hard :)
20:51 jnthn yeah. Gotta teach tomorrow
20:52 jnthn Thing is, the next issue in my queue is a parallel GC bug, which I probably should attempt when more awake ;)
20:52 FROGGS ohh noes!
20:52 timotimo oh :(
20:53 jnthn Well, this is the first time we're exercising the parallel GC with anything resembling a real world workload.
20:53 timotimo right
20:53 jnthn We've already taken the non-parallel case from "argh SEGV" to "haven't seen a GC bug in a good while". I'm quite sure we can do the same with the parallel GC too. :)
20:53 timotimo yays
20:54 jnthn These things just take work/patience is all.
20:54 * timotimo unfortunately has no clue how to do it himself
20:57 jnthn Well, guess I'm concious enough to stub some nativecall bits maybe... :)
20:58 timotimo that sounds nice :)
20:58 FROGGS very nice :o)
20:59 FROGGS I do like NativeCall... and it could be quite fun to hack on SDL again
20:59 japhb Someone asked earlier about the state of Net::IRC::Bot.  The concurrency branch seems to be working fine.  Before I merge, I want to 1) run some load testing to make sure it's as concurrent as I want it to be (I have some ideas for this, but feel free to volunteer tests!), and 2) I want to test on more than one Rakudo backend.  It sounds like this will be coming soon, thanks to jnthn++.  :-)
21:00 jnthn japhb: Yeah, still some work to go, but it's coming along.
21:01 FROGGS daxim: I can't reproduce your bug in aa openSUSE-13.1_x86_64 virtualbox :/
21:01 FROGGS an*
21:05 FROGGS Nominal type check failed for parameter '<anon>'; expected CompUnitRepo but got DepTracker
21:05 FROGGS so callsame is not very happy when called in a method, when "self" changes
21:07 FROGGS m: class Foo { method bar { } }; class Bar { method bar { callsame } }; Bar.bar
21:07 camelia rakudo-moar 1aeb7c: ( no output )
21:07 FROGGS hmpf
21:07 FROGGS m: class Foo { method bar { } }; class Bar if Foo { method bar { callsame } }; Bar.bar
21:07 camelia rakudo-moar 1aeb7c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/LyLGKxSHtpâ�¤Unable to parse class definitionâ�¤at /tmp/LyLGKxSHtp:1â�¤------> [32mclass Foo { method bar { } }; class Bar [33mâ��[31mif Foo { method bar { callsame } }; Bar.[0mâ�¤    expecting …»
21:07 FROGGS m: class Foo { method bar { } }; class Bar is Foo { method bar { callsame } }; Bar.bar
21:07 camelia rakudo-moar 1aeb7c: ( no output )
21:08 FROGGS m: class Foo { method bar { 42 } }; class Bar is Foo { method bar { callsame } }; say Bar.bar
21:08 camelia rakudo-moar 1aeb7c: OUTPUT«42␤»
21:08 FROGGS damn
21:18 dayangkun joined #perl6
21:18 tgt joined #perl6
21:32 Mouq joined #perl6
21:33 BenGoldberg joined #perl6
21:34 telex joined #perl6
21:42 timotimo should we try to do something cool with BuildID?
21:43 timotimo like, whenever you build a MoarVM (and the extensions in nqp and rakudo) stuff will get uploaded to some file host so that reproducibility is "easy"?
21:43 treehug88 joined #perl6
21:51 rurban joined #perl6
21:52 jnap joined #perl6
21:54 rurban nwc10: Is this parrot master? parrot -O2 should be faster now
22:05 Mouq tadzik: https://github.com/tadzik/Task-Star/pull/1
22:06 dalek nqp: 8a414b7 | jonathan++ | / (2 files):
22:06 dalek nqp: Map nativecall ops.
22:06 dalek nqp:
22:06 dalek nqp: Nothing works yet; the next step is to build stuff up in MoarVM to get
22:06 dalek nqp: towards passing t/nativecall/01-basic.t.
22:06 dalek nqp: review: https://github.com/perl6/nqp/commit/8a414b763a
22:08 lue Hm. I'm afraid I'll have to go with an alternate route to place these backlinks by fragment; it's taking way too much longer to get through that step :/ .
22:34 skids joined #perl6
22:37 Mouq r: my &deb = {note $^c.MATCH; $^c}; say "ab:cd" ~~ /[<alpha>+] +% [\: &deb]/
22:37 camelia rakudo-jvm 1aeb7c: OUTPUT«「ab:」␤ alpha => 「a」␤ alpha => 「b」␤␤java.lang.RuntimeException: No such attribute '$!pos' for this object␤  in method ACCEPTS at gen/jvm/CORE.setting:12747␤  in method ACCEPTS at gen/jvm/CORE.setting:798␤  in block  at /tmp/tmpfile:…»
22:37 camelia ..rakudo-parrot 1aeb7c: OUTPUT«「ab:」␤ alpha => 「a」␤ alpha => 「b」␤␤maximum recursion depth exceeded␤current instr.: 'print_exception' pc 140541 (src/gen/p-CORE.setting.pir:59872) (gen/parrot/CORE.setting:11098)␤called from Sub '' pc 41459 (src/gen/p-CORE.setting…»
22:37 camelia ..rakudo-moar 1aeb7c: OUTPUT«「ab:」␤ alpha => 「a」␤ alpha => 「b」␤␤P6opaque: no such attribute '$!pos'␤  in method ACCEPTS at src/gen/m-CORE.setting:12802␤  in method ACCEPTS at src/gen/m-CORE.setting:798␤  in block  at /tmp/tmpfile:1␤␤»
22:38 Mouq Firstly: ^^ that's awesome.
22:38 Mouq Secondly: That's the same bug that prevents Grammar::Expression from being possible
22:39 Mouq Well, maybe not *possible, but it definitely makes it a whole lot harder
22:40 Mouq r: use NQPCursorRole:from<NQP>; my &deb = {note $^c.MATCH; $^c but NQPCursorRole}; say "ab:cd" ~~ /[<alpha>+] +% [\: &deb]/
22:40 camelia rakudo-moar 1aeb7c: OUTPUT«===SORRY!===␤Unexpected named parameter 'line' passed␤»
22:40 camelia ..rakudo-parrot 1aeb7c: OUTPUT«===SORRY!===␤"load_bytecode" couldn't find file 'NQPCursorRole.pbc'␤»
22:40 camelia ..rakudo-jvm 1aeb7c: OUTPUT«===SORRY!===␤java.nio.file.NoSuchFileException: NQPCursorRole␤»
22:46 Mouq The bug has to do with returning Cursors from code back to the Cursor that called the code
22:46 hoverboard joined #perl6
22:47 Ulti even golfed Perl6 looks nice http://codegolf.stackexchange.com/questions/13152/shortest-code-to-produce-infinite-output/23706#23706
22:47 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=23706
22:48 Ulti its also amongst the shortest other than horrible things like golfscript
22:50 Mouq r: .say xx *
22:50 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: ( no output )
22:50 Mouq r: 0.say xx *
22:50 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: ( no output )
22:50 Mouq Oh, it's actually lazy now :P :D
22:50 Mouq r: eager 0.say xx *
22:50 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: ( no output )
22:50 Mouq :?
22:50 Mouq r: (0.say xx *)[15]
22:50 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«0␤0␤0␤0␤0␤0␤0␤0␤0␤0␤0␤0␤0␤0␤0␤0␤»
22:51 Ulti my plan is to do pretty Perl6 golfs though rather than the golf style we had with Perl5
22:51 Ulti though I guess xx * is kind of neat
22:51 Ulti but maybe less obvious what it does
22:54 Mouq r: sub term:<∞> {(state$)++.say; ∞}()
22:54 camelia rakudo-jvm 1aeb7c: OUTPUT«0␤0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51␤52…»
22:54 camelia ..rakudo-moar 1aeb7c: OUTPUT«(timeout)0␤0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50…»
22:54 camelia ..rakudo-parrot 1aeb7c: OUTPUT«(timeout)0␤0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤5…»
22:56 Ulti o___O
22:57 TimToady that doesn't seem right
22:57 lue TimToady: what, the two 0's? I agree :)
22:57 Mouq n: sub term:<∞> {(state$)++.say; ∞}()
22:58 camelia niecza v24-109-g48a8de3: OUTPUT«(timeout)0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50…»
22:58 Mouq m: sub term:<∞> {(state$=0)++.say; ∞}()
22:58 camelia rakudo-moar 1aeb7c: OUTPUT«(timeout)0␤0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50…»
22:58 Mouq Huh
22:59 TimToady oh, wait, postdec
22:59 Mouq m: sub term:<∞> {(++state$).say; ∞}()
22:59 camelia rakudo-moar 1aeb7c: OUTPUT«(timeout)1␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51…»
22:59 TimToady hmm, still strange
23:00 * skids notes "note()" is only documented as an aside under warn()
23:00 TimToady is it slurping the ++ inside the once somehow?
23:00 TimToady but then it wouldn't work the other times
23:01 TimToady it's more like the top sub and the 2nd-level subs don't share the variabel
23:01 TimToady *ble
23:02 TimToady skids: is that a warning?
23:03 skids Just that it's ard to look up in the synopsis.  Because almost every section has "note that" somewhere :-)
23:03 TimToady m: sub term:<∞> {(state$=0)++.say}()
23:03 camelia rakudo-moar 1aeb7c: OUTPUT«0␤»
23:04 skids m: sub term:<∞> {(++state$).say; ∞; ∞ }()
23:04 camelia rakudo-moar 1aeb7c: OUTPUT«(timeout)1␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51…»
23:04 TimToady m: sub term:<∞> {(state$=0)++.say}; ∞; ∞
23:04 camelia rakudo-moar 1aeb7c: OUTPUT«0␤1␤»
23:05 tadzik oh, look Czech PW
23:06 Mouq m: sub term:<∞> {(++state$).say; ∞ xx ∞ }()
23:06 camelia rakudo-moar 1aeb7c: OUTPUT«(timeout)1␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51…»
23:06 Psyche^_ joined #perl6
23:07 Mouq m: sub term:<∞>($w) {$w.say; (++state$).say; ∞('a') xx ∞('b') }()
23:07 camelia rakudo-moar 1aeb7c: OUTPUT«===SORRY!===␤Cannot find method 'orig'␤»
23:07 TimToady m: sub term:<∞> {(++state$x); say $x; ∞ }()
23:07 Mouq m: sub term:<∞>($w) {$w.say; (++state$).say; ∞ 'a' xx ∞ 'b' }() #?
23:07 camelia rakudo-moar 1aeb7c: OUTPUT«(timeout)1␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51…»
23:07 camelia rakudo-moar 1aeb7c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/bSd4XVkJikâ�¤Two terms in a rowâ�¤at /tmp/bSd4XVkJik:1â�¤------> [32mterm:<∞>($w) {$w.say; (++state$).say; ∞ [33mâ��[31m'a' xx ∞ 'b' }() #?[0mâ�¤    expecting any of:â�¤        postfixâ�¤ …»
23:08 skids m: sub term:<∞> {(++state$).say; ∞ Z ∞ }()
23:08 camelia rakudo-moar 1aeb7c: OUTPUT«(timeout)1␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51…»
23:08 aje_ wtf
23:08 Mouq Oh, I like ∞ Z ∞ :)
23:09 TimToady well, it's just two items
23:09 Mouq aje_: We're paying homage to Cantor :)
23:09 aje_ Cantor?
23:10 Mouq https://en.wikipedia.org/wiki/Georg_Cantor
23:10 aje_ aaah :)
23:10 rurban joined #perl6
23:11 TimToady I guess with respect to א₀ the extra first value doesn't hurt
23:11 Mouq TimToady: ((∞ Z ∞) Z (∞ Z ∞)) Z ((∞ Z ∞) Z (∞ Z ∞)) …
23:12 TimToady we need a D metaop for diagonalization
23:13 * Mouq &
23:15 lue TimToady: isn't there a non-RTL version of aleph for math? or am I severely misremembering?
23:17 lue ℵ₀ :) [you could also probably use an LTR override for normal aleph]
23:18 * Mouq returns to note that there's also ∞ X ∞ if you want to get all Xponential about it
23:18 Mouq :P
23:19 TimToady Cantor's multidimensional dust
23:20 TimToady unfortunately I think that still leaves you in ℵ₀
23:20 lue r: my $a = 5; $a = +& 6; say $a;
23:20 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Unsupported use of &  variableâ�¤at /tmp/tmpfile:1â�¤------> [32mmy $a = 5; $a = +&[33mâ��[31m 6; say $a;[0mâ�¤    expecting any of:â�¤        â€¦Â»
23:20 lue r: my $a = 5; $a = +| 6; say $a;
23:20 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Variable '&prefix:<|>' is not declared�at /tmp/tmpfile:1�------> [32mmy $a = 5; $a = +[33m�[31m| 6; say $a;[0m�»
23:20 lue r: my $a = 5; $a = +^ 6; say $a;
23:20 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«-7␤»
23:21 lue This is what happens when you forget to type out the other $a; weird bugs :)
23:22 BenGoldberg r: say 5 +& 6, 5 +| 6, 5 +^ 6;
23:22 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«473␤»
23:24 * TimToady is thinking, 5 is prime, 6 is 2 * 3, how come they don't & to 0?
23:25 TimToady I guess you can have a base prime where each digit is 0..*
23:25 TimToady and you multiply all the digits instead of adding them :)
23:26 TimToady except then 0 and 1 don't exist, go figure
23:46 nebuchadnezzar joined #perl6
23:49 lee__ dir() is supposed to take 2 args right?
23:49 lee__ https://gist.github.com/leedo/216f4be4ee626d2c84cb
23:52 timotimo a starting directory and a test method, right?
23:52 timotimo you have to give it as a named i believe
23:52 timotimo r: say &dir.signature
23:52 camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«:(Cool $path = { ... }, :test($test) = { ... })␤»
23:52 timotimo there
23:53 lee__ ah-ha! thanks
23:54 lee__ guess http://doc.perl6.org/routine/dir could use some updating
23:54 timotimo er
23:54 timotimo are you sure?
23:54 timotimo it seems correct to me
23:55 lee__ oh, you're right. my mind is stuck in p5 land
23:55 timotimo i wonder if using a regex instead of the "none" junction would be faster
23:55 timotimo i *think* it may try to create the junction anew for each dir call
23:55 timotimo but i didn't verify that
23:57 TimToady surely none could do constant folding if given constants
23:57 timotimo aye.
23:57 timotimo though it'll be thunked anyway and probably cloned for each invocation
23:58 TimToady surely we avoid cloning things that are constant clones :)
23:58 timotimo who knows :)
23:58 tadzik timotimo: do you know the story why directories starting with '.' are "hidden"? :)
23:59 timotimo i think it was because file names were compared to some ascii value or something?
23:59 timotimo and . fell outside the range?
23:59 tadzik nah
23:59 TimToady is this related to why unicorns didn't get onto the ark?
23:59 tadzik in all the unix tools, they were checking if the file is not '.' nor '..'
23:59 timotimo ah
23:59 tadzik so to save time, they just skipped whatever started with .
23:59 timotimo but not properly :D

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

Perl 6 | Reference Documentation | Rakudo