Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-08-25

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:01 abnorman joined #perl6
00:39 btyler joined #perl6
00:50 berekuk joined #perl6
01:00 jnap joined #perl6
01:02 benabik joined #perl6
01:06 stevan_ joined #perl6
01:10 jaldhar joined #perl6
01:14 berekuk joined #perl6
01:22 Faxmachinen joined #perl6
01:22 FROGGS_ joined #perl6
01:23 Faxmachinen Why, auto-flattening, why? Aaarghhh
01:23 Faxmachinen (1..3) Xx (1..3) # Useful
01:23 Faxmachinen (1..3) Xxx (1..3) # Useless
02:05 thou joined #perl6
02:07 abnorman left #perl6
02:34 sunnavy joined #perl6
02:34 moritz joined #perl6
03:07 TimToady I'd call it a bug
03:19 preflex_ joined #perl6
03:32 * [Coke] spends a ton of time trying to do a bisect of rakudo before realizing it's an nqp issue.
03:32 TimToady nqp is also nqr
03:35 ayu joined #perl6
04:01 [Coke] pmurias - https://github.com/perl6/nqp/issues/114 - breaks rakudo.parrot
04:01 [Coke] .to pmurias - https://github.com/perl6/nqp/issues/114 - breaks rakudo.parrot
04:01 yoleaux [Coke]: I'll pass your message to pmurias.
04:06 Khisanth joined #perl6
04:24 kaare__ joined #perl6
05:23 moritz \o
05:36 SamuraiJack joined #perl6
05:56 Targen_ joined #perl6
06:05 lizmat joined #perl6
06:14 woolfy joined #perl6
06:29 berekuk joined #perl6
06:37 _ilbot joined #perl6
06:37 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
06:45 _ilbot joined #perl6
06:45 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
06:47 _ilbot joined #perl6
06:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
06:52 _ilbot joined #perl6
06:52 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
06:53 TimToady ilbot seems to be flapping
06:55 moritz TimToady: I'm trying to debug why it doesn't log in #bioperl
06:56 TimToady okay, just wanted to make sure you knew
06:58 Targen_ left #perl6
07:04 woolfy left #perl6
07:06 abnorman joined #perl6
07:25 FROGGS [Coke]: I know what is from with the .fmt tests...
07:26 dwarring joined #perl6
07:27 FROGGS hold on...
07:27 FROGGS it is working now O.o
07:32 iSlug joined #perl6
07:36 FROGGS .... partially
07:39 pdcawley joined #perl6
07:41 denis_boyun joined #perl6
07:49 lizmat joined #perl6
07:49 sidus joined #perl6
07:54 donaldh joined #perl6
07:58 donaldh [Coke]++ for dissecting S02-magicals/env.rakudo.parrot 14 - ENV members persist to child processes
07:59 donaldh Saved me that pain
08:01 donaldh Will investigate what is up with it on JVM
08:02 spider-mario joined #perl6
08:03 * donaldh will ^^
08:18 lizmat r: use MONKEY_TYPING; augment class Any { method foo { say "foo" } }; Cool.foo  # is there any way to fix this ?
08:18 camelia rakudo cacdd1: OUTPUT«No such method 'foo' for invocant of type 'Cool'␤  in block  at /tmp/JRB5GOYlzT:1␤␤»
08:18 lizmat amy I mossing something?
08:18 lizmat missing?
08:18 * lizmat needs more tea
08:18 FROGGS r: use MONKEY_TYPING; augment class Any { method foo { say "foo" } }; augment class Cool { }; Cool.foo
08:18 camelia rakudo cacdd1: OUTPUT«foo␤»
08:19 FROGGS lizmat: it is about method caches or so
08:19 lizmat yes, so is there a way to rebuild method caches?
08:19 FROGGS I guess so, since augment seem to do that
08:19 lizmat should the close of augment class Any not rebuild method caches?
08:20 FROGGS well, it does it for Any, but it needs to do it for every class that inherits from Any
08:20 lizmat yup
08:20 lizmat so this qualifies as a rakudo bug ?
08:21 FROGGS I think so
08:21 FROGGS and there already might be a ticket
08:21 FROGGS I am sure there is at least one
08:21 lizmat ok  :-)  then I can mention that in my talk at FROSCON
08:22 FROGGS :o)
08:22 FROGGS have fun there
08:22 * lizmat wishes the seats were better
08:22 lizmat they're killing me
08:23 FROGGS ó.ò
08:23 lizmat definitely intended for small(ler), young(er) people
08:30 xinming joined #perl6
08:42 jnthn Yes, the augment bug is already in RT
08:43 lizmat jnthn: any pointers on fixing this?
08:43 lizmat something with Mu.WALK ?
08:43 jnthn lizmat: It needs design work.
08:43 jnthn lizmat: Not just implementation.
08:43 lizmat :-(
08:43 jnthn No, nothing like that.
08:44 jnthn Essentially, it needs a publication mechanism, but to make sure we can still collect anonymous subclasses it needs to have weak semantics.
08:44 lizmat ah, yes, of course
08:44 * lizmat had forgotten about anonymous subclasses
08:45 jnthn :)
08:46 teslos joined #perl6
08:50 teslos_ joined #perl6
08:52 timotimo http://thingsfittingperfectlyintothings.tumblr.com/ - look what's the newest post :3
08:54 moritz timotimo++
08:55 * timotimo is spreading the "perl is not dead" meme
08:55 jnthn :D
08:56 lizmat .oO( I always thought tuits were for empowering )
08:57 FROGGS timotimo++
09:04 eternaleye joined #perl6
09:12 Rotwang joined #perl6
09:18 dmol joined #perl6
09:20 dalek nqp: 63d7244 | (David Warring)++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java:
09:20 dalek nqp: thinko on unicode surrogate range
09:20 dalek nqp: review: https://github.com/perl6/nqp/commit/63d7244de3
09:20 dalek nqp: 3c2b6e3 | jonathan++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java:
09:20 dalek nqp: Merge pull request #115 from dwarring/master
09:20 dalek nqp:
09:20 dalek nqp: thinko on unicode surrogate range
09:20 dalek nqp: review: https://github.com/perl6/nqp/commit/3c2b6e3e72
09:27 ksh joined #perl6
09:29 masak good antenoon, #perl6
09:30 jnthn ante', masak
09:31 moritz \o masak, jnthn, *
09:31 * moritz still actively waits for t3 reviews
09:32 jnthn .oO( moritz does busy waiting? he's as bad as the select impl... )
09:32 timotimo i hope you still have some cores free for breathing, eating, sleeping...
09:35 moritz if not, you must send me an interrupt now and again :-)
09:37 eternaleye joined #perl6
09:37 * lizmat has fetched a better seat from the hall area
09:38 timotimo oh, huh? the bless change is already in the released rakudo?
09:38 timotimo oh
09:38 moritz I doubt that
09:38 timotimo that's just the specs
09:38 timotimo reading comprehension fail :)
09:39 iSlug joined #perl6
09:40 rindolf joined #perl6
09:40 jnthn airport &
09:41 bruges joined #perl6
09:46 donaldh joined #perl6
09:46 * moritz spectests a patch that removes the * from Mu.bless
09:48 dalek nqp: b563f22 | (Tobias Leich)++ | src/HLL/sprintf.nqp:
09:48 dalek nqp: fix sprintfdirectives, which returns an int
09:48 dalek nqp: review: https://github.com/perl6/nqp/commit/b563f22e69
09:48 jnthn_ joined #perl6
09:49 odoacre joined #perl6
09:49 dalek rakudo/nom: 83180ce | (Tobias Leich)++ | / (2 files):
09:49 dalek rakudo/nom: properly box sprintfdirective's return value
09:49 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/83180ce9ff
09:50 zakharyas joined #perl6
09:51 FROGGS [Coke]: t/spec/S02-names-vars/fmt.t is clean now again under rakudo@jvm
09:51 dalek nqp: 430d89b | (Donald Hunter)++ | tools/build/Makefile-JVM.in:
09:51 dalek nqp: Add rule for running individual test files.
09:51 dalek nqp: review: https://github.com/perl6/nqp/commit/430d89b253
09:51 dalek nqp: 448aafa | (Donald Hunter)++ | src/HLL/sprintf.nqp:
09:51 dalek nqp: Merge branch 'master' of github.com:perl6/nqp
09:51 dalek nqp: review: https://github.com/perl6/nqp/commit/448aafab1c
09:53 donaldh Did I just do something wrong there?
09:53 donaldh why the double commit message?
09:53 berekuk joined #perl6
09:54 FROGGS donaldh: you just merged my changes that I commited a few seconds before into yours
09:54 FROGGS not to worry
09:54 donaldh Safely ignorable?
09:55 FROGGS int this case yeah, this would happen with all commits if you dont pull before btw
09:56 FROGGS so, best thing is you pull directly before adding+committing+pushing things, and don't wait too long to push
09:57 dalek nqp: 44190db | (Donald Hunter)++ | src/vm/jvm/runtime/org/perl6/nqp/io/ (2 files):
09:57 dalek nqp: Add generic type to remove compiler warning.
09:57 dalek nqp: review: https://github.com/perl6/nqp/commit/44190dbf82
09:58 donaldh FROGGS: I did pull before. How do I update my branch (with commits) before pushing?
09:58 donaldh FROGGS: to avoid  this message in future ?
09:58 FROGGS donaldh: I think this does it: git pull --rebase origin master
09:59 donaldh Ah, okay, thanks.
09:59 lizmat git pull --rebase
09:59 lizmat is generally enough
09:59 FROGGS donaldh: the problem with this is that you might discard changes of others if there are intersections
09:59 * donaldh wishes git had saner default behaviour
10:00 FROGGS it is sane, because it does not merge automatically
10:00 donaldh okay, so the rebase ensures that it is not mistaken for code I merged before pushing.
10:01 FROGGS donaldh: it basically rewinds before your pending commit, applies the remote commit, then it applies yours
10:01 lizmat also, a git pull --rebase may result in conflicts that you want to resolve before pushing
10:02 donaldh agreed. The saner default behaviour I'd like is for pull to prefer rebase for a remote tracking branch.
10:02 FROGGS lizmat: yeah, which can be nasty if you are not used to git
10:02 donaldh I'm used to ClearCase where the branching / merging model is very similar. Can do this in my sleep in ClearCase. git is still catching me out occasionally.
10:03 arnsholt pull --rebase is nice when it works automatically, but can cause all kinds of grief when something goes wrong with the rebase
10:03 donaldh (similar if you ignore the massive difference between files and change sets, that is)
10:04 denisboyun joined #perl6
10:04 arnsholt Someone I know receommended to always pull --rebase to a git beginner I know, which eventually resulted in tears of course, since he had no idea what rebase did (and didn't read the error messages from git >.<)
10:05 arnsholt In the end I got to scold both of them for being idiots =)
10:05 FROGGS *g*
10:07 masak an interesting take on the XY problem: http://weblogs.asp.net/alex_papadimoulis/archive/2005/05/25/408925.aspx
10:07 masak arnsholt: there you go, that's why --rebase is not the default for pull.
10:07 masak (even though it's loads more convenient once you know how to use it)
10:08 ksh joined #perl6
10:09 arnsholt Exactly
10:09 arnsholt I was the most annoyed with the guy who just told the beginner to always pull --rebase, to be honest
10:10 arnsholt You can always trust beginners to not read the error messages, but more advanced users should know better than to recommend blindly doing dangerous things
10:11 masak every person needs two teachers. one who tells the lie-to-children, and one who tells the detailed truth.
10:11 lizmat only beginners don't read error messages ?
10:11 masak and preferably in that order, with some delay to digest things :P
10:12 FROGGS lizmat: that is a good definition to draw the line, yes
10:13 arnsholt You can probably estimate proficiency by the probability P of the user reading the error messages. As P approaches 1, skill level approaches wizard level =)
10:13 masak necessary but not sufficient. :)
10:13 arnsholt Most likely, yeah
10:13 virtualsue joined #perl6
10:20 timotimo fwiw, i usually do a git fetch before i want to push, so that i can see what's going on and then i can decide to rebase or merge
10:20 timotimo it's now two steps, but it feels righter tom e
10:20 moritz IMHO the biggest problem with git pull --rebase is that it removes merge commits you made locally
10:21 moritz e.g. you merge a pull request, somebody was faster and pushed to master (or nom :-) first, your push is rejected
10:21 moritz if you now do a 'git pull --rebase', it flattens out the commits from the pull request, instead of making it a merge
10:24 moritz ss/making it/keeping it as/
10:24 hummeleBop joined #perl6
10:26 timotimo moritz: so will invocations of .bless with * as first argument still work, but warn about deprecation? or will these fail?
10:27 moritz timotimo: I'm afraid they will misbehave in weird ways, because bless in rakudo also has a positional slurpy argument
10:28 moritz maybe I should add a heuristic to that one
10:28 timotimo it would be hard to handle the progression throughout the ecosystem if we turn it around 100% between releases i fear
10:32 Faxmachinen joined #perl6
10:34 berekuk joined #perl6
10:34 Faxmachinen Anyone know how to get around auto-flattening when grepping?
10:34 celesta joined #perl6
10:35 celesta ahoi #perl6
10:35 Faxmachinen Hi celesta
10:37 celesta r: class Actions { method TOP($/) { for $/ { my $bar := $_.ast; say "found $bar"; } }; method foo($/) { make ~$/; } }; my grammar G { rule TOP { ^ <foo>* $ }; rule foo { \w } }; my $actions = Actions.new; say G.parse( "a b c", :actions( $actions ) );
10:37 camelia rakudo 83180c: OUTPUT«use of uninitialized value of type Any in string context  in method TOP at /tmp/mKzfAZZIYo:1␤␤found ␤「a b c」␤ foo => 「a 」␤ foo => 「b 」␤ foo => 「c」␤␤»
10:37 celesta i dont understand, why is $bar not initialized?
10:38 FROGGS r: class Actions { method TOP($/) { for $<foo> { my $bar := $_.ast; say "found $bar"; } }; method foo($/) { make ~$/; } }; my grammar G { rule TOP { ^ <foo>* $ }; rule foo { \w } }; my $actions = Actions.new; say G.parse( "a b c", :actions( $actions ) );
10:38 camelia rakudo 83180c: OUTPUT«found a ␤found b ␤found c␤「a b c」␤ foo => 「a 」␤ foo => 「b 」␤ foo => 「c」␤␤»
10:39 FROGGS celesta: in TOP the <foo> is array-ish, not $/
10:39 celesta ahhh, thank you very much
10:44 SamuraiJack joined #perl6
10:47 moritz ./perl6 -e 'Mu.bless(*)'
10:47 moritz Passing an object candidate to Mu.bless is deprecated  in block  at -e:1
10:50 dalek specs: 41296cb | moritz++ | S12-objects.pod:
10:50 dalek specs: [S12]: bless is a method, not a function
10:50 dalek specs: review: https://github.com/perl6/specs/commit/41296cb4ea
10:54 grondilu joined #perl6
10:55 berekuk joined #perl6
10:56 dalek rakudo/nom: 5caf928 | moritz++ | src/ (13 files):
10:56 dalek rakudo/nom: remove the candidate argument to bless
10:56 dalek rakudo/nom:
10:56 dalek rakudo/nom: warn when it is still passed along.
10:56 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5caf9288d3
11:01 Faxmachinen rakudo: say ((1..3) Xxx (1..3)).perl;  # Any way to get a lol out of this?
11:01 camelia rakudo 83180c: OUTPUT«(1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3).list␤»
11:20 xinming joined #perl6
11:22 dmol1 joined #perl6
11:26 dmol joined #perl6
11:38 dmol1 joined #perl6
11:45 timotimo r: say ((1..3) X, (1..3)).lol.perl.say
11:45 camelia rakudo 5caf92: OUTPUT«LoL.new(ListIter.new())␤True␤»
11:45 xinming joined #perl6
11:48 jercos r: ((1..3) X, (1..3)).lol.perl.say
11:48 camelia rakudo 5caf92: OUTPUT«LoL.new(ListIter.new())␤»
11:49 ksh joined #perl6
11:50 berekuk joined #perl6
11:50 rindolf joined #perl6
11:53 moritz r: say ((1..3) X, (1..3)).tree.perl
11:53 camelia rakudo 5caf92: OUTPUT«([1, 1], [1, 2], [1, 3], [2, 1], [2, 2], [2, 3], [3, 1], [3, 2], [3, 3]).list␤»
11:53 moritz Faxmachinen: ^^
11:58 rindolf moritz: what does .tree do?
12:05 Faxmachinen moritz: Interesting, but what I want is something like what the single x operator does
12:05 grondilu r: say ((1..3) X, (1..3)).perl
12:05 camelia rakudo 5caf92: OUTPUT«((1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3)).list␤»
12:05 berekuk joined #perl6
12:05 Faxmachinen rakudo: ((1..3) Xx (1..3)).perl
12:05 camelia rakudo 5caf92:  ( no output )
12:05 Faxmachinen say rakudo: ((1..3) Xx (1..3)).perl
12:06 Faxmachinen Damn it
12:06 grondilu r: say *
12:06 camelia rakudo 5caf92: OUTPUT«*␤»
12:06 Faxmachinen rakudo: say ((1..3) Xx (1..3)).perl
12:06 camelia rakudo 5caf92: OUTPUT«("1", "11", "111", "2", "22", "222", "3", "33", "333").list␤»
12:06 Faxmachinen Like that buy as lol instead of los
12:06 Faxmachinen *but
12:09 rindolf joined #perl6
12:10 timotimo r: say ((1..3) Xvv (1..3)).tree.perl
12:10 camelia rakudo 5caf92: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/UsfK4Lr7fCâ�¤Bogus statementâ�¤at /tmp/UsfK4Lr7fC:1â�¤------> [32msay ((1..3) X[33mâ��[31mvv (1..3)).tree.perl[0mâ�¤    expecting any of:â�¤        whitespaceâ�¤Â»
12:10 timotimo r: say ((1..3) Xxx (1..3)).tree.perl
12:10 camelia rakudo 5caf92: OUTPUT«(1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3).list␤»
12:10 timotimo righto
12:10 timotimo r: say ((1..3) X (1..3)).map({ ($^a xx $^b).item }).perl
12:10 camelia rakudo 5caf92: OUTPUT«((1,).list.item, (1, 1).list.item, (1, 1, 1).list.item, (2,).list.item, (2, 2).list.item, (2, 2, 2).list.item, (3,).list.item, (3, 3).list.item, (3, 3, 3).list.item).list␤»
12:10 timotimo :(
12:11 Faxmachinen That looks good. Thanks!
12:12 timotimo i don't think it looks good
12:12 timotimo it's a workaround at best
12:12 Faxmachinen True
12:12 timotimo but it'll do at least
12:17 lizmat joined #perl6
12:22 bbkr r: my $b = Buf.new(0x03); say $b ~> 1
12:22 camelia rakudo 5caf92: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/QRj3ul_x8y�Preceding context expects a term, but found infix > instead�at /tmp/QRj3ul_x8y:1�------> [32mmy $b = Buf.new(0x03); say $b ~>[33m�[31m 1[0m�»
12:22 bbkr n: my $b = Buf.new(0x03); say $b ~> 1
12:23 camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: Cannot call new; none of these signatures match:␤    Mu, *%_␤  at /tmp/FBZwenjlfv line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4579 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4580 (module-CORE @…
12:23 bbkr ^ bug or buffer bitwise shifts are NYI ?
12:26 timotimo i cannot find ~> in the specs :o
12:27 timotimo oh
12:27 timotimo there it is
12:27 bbkr http://perlcabal.org/syn/S03.html#Multiplicative_precedence
12:28 timotimo ah, yes. NYI.
12:28 timotimo at least not in Buf.pm
12:29 * timotimo also doesn't really know how to properly implement that
12:30 bbkr ok, thanks. I'll convert to Int and use +> instead
12:31 timotimo huge bigint? :)
12:31 bbkr I'm working on IEE754 double precision converter, so 8 bytes max.
12:32 timotimo ah, that's good then
12:34 iSlug joined #perl6
12:35 bbkr I need it for BSON format (to push MongoDB development forward) and pack/unpack does not provide it yet like in P5
12:36 lizmat BSON?
12:37 bbkr http://bsonspec.org/#/specification - it's like binary JSON, allows much after parallel encoding/decoding
12:37 lizmat you mean e BER compressed integer?
12:37 Moukeddar joined #perl6
12:37 lizmat ah
12:37 lizmat why not Sereal ?
12:38 bbkr because MongoDB uses BSON only
12:38 lizmat :-(
12:39 lizmat so you're saying pack() in Perl 5 supports BSON ?
12:39 lizmat how?
12:39 bbkr no, I'm saying it supports IEE754 format
12:39 lizmat (just curious)
12:39 bbkr which is used by BSON
12:40 teslos joined #perl6
12:40 lizmat can't find anything related to pack() and IEE754
12:42 bbkr print unpack("H*", pack("d*", 5.05))
12:42 lizmat ah, IEEE
12:43 bbkr indeed
12:45 bbkr I haven't found any smart way to do the same in P6 (which will use internal IEEE representation without implementing whole conversion algorithm)
12:48 bbkr like "my num64 $x = 5.05; $x.get-raw-p6-object.get-body-bytes"
12:59 * lizmat is stumped a bit as well
13:03 PacoAir joined #perl6
13:08 timotimo python has this "buffer interface" idea where you can ask a couple different objects for its bytes
13:08 lizmat I naively came up with someting like
13:09 lizmat my num64 $x = 5.05; printf( "%x", my Buf64 $ := $x )
13:10 berekuk joined #perl6
13:13 dmol joined #perl6
13:18 berekuk joined #perl6
13:27 bakedb_ joined #perl6
13:28 awwaiid_ joined #perl6
13:30 mtk joined #perl6
13:33 PerlJam joined #perl6
13:34 bonsaikitten joined #perl6
13:34 lizmat joined #perl6
13:34 dmol joined #perl6
13:36 mtk joined #perl6
13:40 prammer joined #perl6
13:47 dmol joined #perl6
13:52 ajr joined #perl6
13:53 lizmat spectesting HEAD fails with t/spec/S02-magicals/env.rakudo.parrot                         (Wstat: 0 Tests: 16 Failed: 1)
13:53 lizmat Failed test:  14
13:54 lizmat is this known?
13:57 JimmyZ yes
14:01 berekuk joined #perl6
14:07 moritz yes
14:08 moritz [Coke]++ tracked it down to an NQP commit by pmurias++
14:18 moritz http://www.youtube.com/watch?v=roNyfDHjtnc doesn't even get the Perl 6 method call syntax right
14:20 tadzik I don't think I can be disappointed by that... ;)
14:21 * moritz stops watching
14:21 diakopter what is it?
14:21 moritz comparing perl 5 with unidiomatic and wrong perl 5 without any kind of actual argument just isn't interesting
14:22 moritz diakopter: one of the p6 "haters" talk from YAPC::EU
14:24 berekuk joined #perl6
14:27 denis_boyun joined #perl6
14:32 masak moritz: wow -- all I got from people's reports was that those talks were "confused". now that I watch the talk, I realize how apt a description that was.
14:33 masak I'm now at the 4-minute mark, and all that's been clear so far is that I really should look into hieroglyphics.
14:35 masak he seems to be speaking in patterns of the shape "I could say X, but that's wrong, so I'm not saying that".
14:36 masak and so he's taking up time and space but not really getting somewhere.
14:38 lizmat decommute&
14:40 Psyche^_ joined #perl6
14:40 masak now I learned that as much as he likes memes, he does not like zombies.
14:46 berekuk joined #perl6
14:46 masak what is clear, is that the Perl 6 code on these slides is written by someone who doesn't write Perl 6 code.
14:48 moritz and it's not run/tested either
14:49 tadzik of course. If only there was a perl 6 release he'd have ran it
14:51 masak we should get around to releasing something runnable one of these days
14:53 grondilu rn:  say ([1, 4, 5], [2, 1], []).grep(+*).min(:by(+*[*-1]));
14:54 camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: Excess arguments to List.min, unused named by␤  at /home/p6eval/niecza/lib/CORE.setting line 0 (List.min @ 1) ␤  at /tmp/I2PsJdkbFz line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4579 (ANON @ 3) ␤  at /home/p6eva…
14:54 camelia ..rakudo 5caf92: OUTPUT«1 4 5␤»
14:54 grondilu r: say min :by(+*[*-1]), grep +*, [1, 4, 5], [2, 1], []
14:54 camelia rakudo 5caf92: OUTPUT«2 1␤»
14:54 grondilu n:  say ([1, 4, 5], [2, 1], []).grep(+*).min(:by(+*[*-1]));
14:54 camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: Excess arguments to List.min, unused named by␤  at /home/p6eval/niecza/lib/CORE.setting line 0 (List.min @ 1) ␤  at /tmp/kqDzTzGWnq line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4579 (ANON @ 3) ␤  at /home/p6eva…
14:54 grondilu r:  say ([1, 4, 5], [2, 1], []).grep(+*).min(:by(+*[*-1]));
14:54 camelia rakudo 5caf92: OUTPUT«1 4 5␤»
14:54 grondilu r: say min :by(+*[*-1]), grep +*, [1, 4, 5], [2, 1], []
14:54 camelia rakudo 5caf92: OUTPUT«2 1␤»
14:54 * grondilu expected the same result
14:55 grondilu r: say min :by(+*[*-1]), [1, 4, 5], [2, 1]
14:55 camelia rakudo 5caf92: OUTPUT«2 1␤»
14:55 grondilu r:  say ([1, 4, 5], [2, 1]).min(:by(+*[*-1]));
14:55 camelia rakudo 5caf92: OUTPUT«1 4 5␤»
14:55 masak finished watching the talk. I feel dumber than 20 minutes ago.
14:58 Faxmachinen left #perl6
14:59 kaare_ joined #perl6
14:59 FROGGS I'd like to add comments...
15:00 grondilu you can post it on reddit and talk about it there if you don't like youtube comments
15:08 celesta bye #perl6
15:08 Ulti from inside a sub call is there a way to get the name of the variable passed as a parameter from where the sub was invoked? so: sub stuff (Int $thing) { return $thing;} my Int $other_thing = 1; stuff($other_thing);
15:09 Ulti I want to be able to know '$other_thing' was passed when inside the stuff sub
15:09 tadzik why would you ever want to do that? :)
15:09 Ulti funny everyone always asks that ;D https://gist.github.com/MattOates/6195743
15:09 Ulti I wrote some horrible Python to do it
15:10 Ulti was wondering how less evil it is in Perl 6 if possible
15:10 Ulti tadzik: basically I have a function that dumps variables to sqlite files and by default it uses the name of the variable passed in to create the table names
15:10 rindolf joined #perl6
15:10 moritz r: sub varname(\a) { a.VAR.name }; say varname my $x = 42
15:10 camelia rakudo 5caf92: OUTPUT«$x␤»
15:11 moritz Ulti: ^^
15:11 Ulti dump($variable) is nicer than dump($variable,variable='variable')
15:11 Ulti cool!
15:11 tadzik you can always do dump(:$variable) for less magic
15:11 moritz Ulti: Perl 6 also lets you write  dump(:$variable)
15:11 moritz which is more reliable and just one character more
15:12 moritz though you don't know if @variable or $variable was passed in if it's an array
15:12 Ulti for what I wanted that doesn't really matter
15:13 Ulti its funny how many people see that and just throw up in my face and start raging... I really don't see where the evil lies
15:13 Ulti unless you have to do evil unmaintainable things to get the result, like my Python
15:17 Rotwang joined #perl6
15:20 grondilu r:  say ([1, 4, 5], [2, 1]).min(:by(+*[0]));
15:20 camelia rakudo 5caf92: OUTPUT«1 4 5␤»
15:21 grondilu r:  say ([1, 4, 5], [2, 1]).min(:by(+*[*-1]));
15:21 camelia rakudo 5caf92: OUTPUT«1 4 5␤»
15:21 grondilu r:  say ([1, 4, 5], [2, 1]).min(:by({ +.[*-1]}));
15:21 camelia rakudo 5caf92: OUTPUT«1 4 5␤»
15:21 Ulti ahh now I see  Method 'name' not found for invocant of class 'Array'
15:22 moritz r: sub varname(\a) { a.VAR.name }; say varname my @a
15:22 camelia rakudo 5caf92: OUTPUT«No such method 'name' for invocant of type 'Array'␤  in sub varname at /tmp/XnlFcYkRl1:1␤  in block  at /tmp/XnlFcYkRl1:1␤␤»
15:22 moritz r: sub varname(\a) { a.VAR.?name }; say varname my @a
15:22 camelia rakudo 5caf92: OUTPUT«Nil␤»
15:22 moritz Ulti: ah, will most likely only work for scalars
15:22 moritz r: sub varname(\a) { a.VAR.?name }; say varname &sin
15:22 camelia rakudo 5caf92: OUTPUT«sin␤»
15:23 moritz ... and callables
15:24 grondilu r:  say ([1, 4, 5], [-1, 1]).min(:by({ +.[*-1]}));
15:24 camelia rakudo 5caf92: OUTPUT«-1 1␤»
15:24 teslos joined #perl6
15:25 grondilu r:  say ([-1, 4, 5], [-1, 1]).min(:by({ +.[*-1]}));
15:25 camelia rakudo 5caf92: OUTPUT«-1 1␤»
15:25 grondilu r:  say ([-2, 4, 5], [-1, 1]).min(:by({ +.[*-1]}));
15:25 camelia rakudo 5caf92: OUTPUT«-1 1␤»
15:25 grondilu r:  say ([2, 4, 5], [1, 1]).min(:by({ +.[*-1]}));
15:25 camelia rakudo 5caf92: OUTPUT«1 1␤»
15:25 grondilu r:  say ([1, 4, 5], [2, 1]).min(:by({ +.[*-1]}));
15:25 camelia rakudo 5caf92: OUTPUT«1 4 5␤»
15:25 Ulti is there a reason why hashes or arrays don't have a name?
15:26 Ulti or is none of this specced and its really all evil even though its easy to do
15:26 masak my guess is that the same "scalar container" level-of-indirection isn't there for hashes and arrays.
15:26 masak that doesn't seem to me to be reason enough for it not to work, however.
15:27 Ulti Parcels are ok
15:29 dmol Hello! I have created test for bug Rakudo bug https://rt.perl.org/rt3/Public/Bug/Display.html?id=76896 . Here is its: http://bpaste.net/show/126089/ . Into which repository i should create an pull request? And where the test file should be stored?
15:29 Ulti r: sub varname(\a) { a.VAR.?name }; say varname 1
15:29 camelia rakudo 5caf92: OUTPUT«Nil␤»
15:29 Ulti r: sub varname(\a) { a.VAR.name }; say varname 1
15:29 camelia rakudo 5caf92: OUTPUT«No such method 'name' for invocant of type 'Int'␤  in sub varname at /tmp/Qdicwwbfz_:1␤  in block  at /tmp/Qdicwwbfz_:1␤␤»
15:29 Ulti yeah so it's not the best plan ;)
15:30 Ulti I guess you can catch that and then use the value
15:30 pmichaud dmol: tests go into the "roast" repository.  http://github.com/perl6/roast/
15:30 moritz dmol: it should go into the perl6/roast repository (the one checked out as t/spec/ in your rakudo directory after you did 'make testable')
15:31 pmichaud I'll let moritz++ take it from here.  :)
15:31 moritz dmol: and I can give you commit access if you tell me your github user name
15:31 benabik joined #perl6
15:31 moritz dmol: and the best file to put it into is probably S06-other/anon-hashes-vs-blocks.t
15:32 dmol moritz: you already provided it to me. Could you review the test? Is it ok?
15:32 moritz dmol: looks fine
15:37 FROGGS I commented: http://www.youtube.com/watch?v=roNyfDHjtnc
15:37 FROGGS I would like to takes his slides to the next conference and talk about how one would write Perl 6 instead
15:40 dalek roast: 5765af9 | (Steve Mynott)++ | S02-magicals/ (2 files):
15:40 dalek roast: import of spectest for RT #78258
15:40 dalek roast: review: https://github.com/perl6/roast/commit/5765af9909
15:40 dalek roast: 5ab54fb | (Steve Mynott)++ | S05-transliteration/79778.t:
15:40 dalek roast: import of spectest for RT #79778
15:41 moritz rakudo's ROADMAP still has this line:
15:41 moritz 2 ?     re-organize Rakudo, build process, etc. for multi-backend
15:41 FROGGS done I'd say :o)
15:41 dalek joined #perl6
15:45 FROGGS I guess the fperez talk is worth looking? http://www.youtube.com/watch?v=pcJ6P8fzF80
15:45 FROGGS err, nperez
15:46 FROGGS ohh, I guess I'm mixing him up with sommebody else
15:48 dalek rakudo/nom: c311139 | moritz++ | docs/ROADMAP:
15:48 dalek rakudo/nom: [ROADME] remove an item that has been done
15:48 dalek rakudo/nom:
15:48 dalek rakudo/nom: also downgrade typed exceptions, since it is mostly done
15:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c311139491
15:53 ajr joined #perl6
15:59 jnthn_ evening, #perl6
16:00 nwc10 what is this UGT heresy? :-)
16:06 masak GOOD CENTRAL EUROPEAN LATE AFTERNOON TO YOU TOO, JNTHN
16:14 FROGGS hi jnthn
16:15 FROGGS moritz: that is done too, right? https://github.com/rakudo/rakudo/blob/c3111394913de16072889b2456ca5862e2753636/docs/ROADMAP#L47
16:20 moritz FROGGS: looks like it, yes
16:21 moritz r: say 'a' ~~ /(a)?/'
16:21 camelia rakudo c31113: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/eq7uI1lKhlâ�¤Two terms in a rowâ�¤at /tmp/eq7uI1lKhl:1â�¤------> [32msay 'a' ~~ /(a)?/[33mâ��[31m'[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤        infix or meta-infixâ�¤        statement end…
16:21 moritz r: say 'a' ~~ /(a)?/
16:21 camelia rakudo c31113: OUTPUT«「a」␤ 0 => 「a」␤␤»
16:21 FROGGS hmmm
16:21 moritz r: 'a' ~~ /(a)?/ and say $0.^name
16:21 camelia rakudo c31113: OUTPUT«Match␤»
16:21 moritz yes, not an Array
16:21 moritz r: '' ~~ /(a)?/ and say $0.^name
16:21 camelia rakudo c31113: OUTPUT«Any␤»
16:22 moritz looks like Any instead of Nil, but I'm not quite sure about that these days :-)
16:22 FROGGS r: say 'a' ~~ /a?/; say 'b' ~~ /b**0..1/
16:22 camelia rakudo c31113: OUTPUT«「a」␤␤「b」␤␤»
16:22 domidumont joined #perl6
16:22 moritz r: 'b' ~~ /b**0..1/ and say $0.WHAT
16:22 camelia rakudo c31113: OUTPUT«(Any)␤»
16:22 moritz r: 'b' ~~ /(b)**0..1/ and say $0.^name
16:22 camelia rakudo c31113: OUTPUT«Parcel␤»
16:22 FROGGS k
16:23 moritz FROGGS: will you remove it from the ROADMAP, or should I?
16:23 FROGGS I don't care :o)
16:23 FROGGS you can change it if it is still open in your editor
16:24 moritz it is
16:24 dalek rakudo/nom: 38a0f9a | moritz++ | docs/ROADMAP:
16:24 dalek rakudo/nom: [ROADMAP] remove another done item. FROGGS++
16:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/38a0f9a203
16:25 donaldh joined #perl6
16:25 FROGGS moritz: thank you
16:33 moritz jnthn: am I right in assuming that the problem with making Buf mutable is the same as with ++ for native ints?
16:36 dmol r: my @t; for < a b > { @t.push( sub { $OUTER::_ }  ) }; say $_() for @t
16:36 camelia rakudo c31113: OUTPUT«a␤b␤»
16:38 rindolf joined #perl6
16:39 masak yep, closures work on $_ too :)
16:45 Rotwang joined #perl6
16:47 jnthn moritz: Yes, same underlying problem.
16:47 jnthn moritz: I have an idea for how to fix it, just need time to work on fleshing it out
16:50 dmol does that http://bpaste.net/show/126117/ covers the problem https://rt.perl.org/rt3/Ticket/Display.html?id=74076 ?
16:54 pecastro joined #perl6
16:58 denis_boyun joined #perl6
17:05 moritz dmol: it covers half of the problem
17:05 moritz rakudo: { say $OUTER::_ }
17:05 camelia rakudo c31113: OUTPUT«Nil␤»
17:05 moritz this one isn't covered by your tests
17:06 dmol moritz: thanks. I'll think what I can do.
17:11 moritz r: my $x; { $x := $OUTER::_ }; use Test; ok $x === Nil, '$OUTER::_ works in mainline';
17:11 camelia rakudo 38a0f9: OUTPUT«ok 1 - $OUTER::_ works in mainline␤»
17:12 dmol r: say $OUTER::_
17:12 camelia rakudo 38a0f9: OUTPUT«(Any)␤»
17:12 FROGGS r: say [*.defined] (0, 2, 3)
17:12 camelia rakudo 38a0f9: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/GwyoSIWgY9â�¤Two terms in a rowâ�¤at /tmp/GwyoSIWgY9:1â�¤------> [32msay [*.defined] [33mâ��[31m(0, 2, 3)[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤        infix or meta-infixâ�¤        statem…
17:12 dmol moritz: why it is nil for been called from inner block ?
17:17 dmol moritz: where should it be committed ( http://bpaste.net/show/126124/ ) ? Under t/spec/S04-blocks-and-statements/outer.t would be ok ?
17:23 denis_boyun joined #perl6
17:41 rindolf joined #perl6
17:47 rindolf joined #perl6
18:25 denis_boyun joined #perl6
18:25 skulls joined #perl6
18:29 FROGGS new videos of YAPC::NA: http://www.youtube.com/user/yapcna/videos?shelf_index=0&amp;sort=dd
18:38 masak ooh
18:48 donaldh joined #perl6
18:50 jnthn ahaha...that really simple talk I gave on reversing grammars is there :P
18:58 masak now more people can enjoy applied duality! \o/
19:01 dalek nqp: d3cfdd6 | (Donald Hunter)++ | tools/build/Makefile-Parrot.in:
19:01 dalek nqp: Add rule for running individual test files to parrot Makefile.
19:01 dalek nqp: review: https://github.com/perl6/nqp/commit/d3cfdd662b
19:14 cognominal joined #perl6
19:17 donaldh nqp: nqp::istrue(nqp::null())
19:17 camelia nqp: OUTPUT«Null PMC access in get_bool()␤current instr.: '' pc 42 ((file unknown):40) (/tmp/_UNMsjTs7W:1)␤»
19:17 jnthn Oh noes a Null...oh, wait... :P
19:18 donaldh it causes an nqp test to fail on parrot
19:19 donaldh ok( nqp::istrue(nqp::null()) == 0, 'nqp::istrue on null');
19:19 jnthn Hmm...
19:19 jnthn I'd expect that to explode.
19:19 donaldh t/nqp/59-nqpops.t
19:21 SamuraiJack joined #perl6
19:21 timotimo moritz: "ROADME"? :)
19:22 donaldh > nqp::istrue(nqp::null())
19:22 donaldh java.lang.NullPointerException
19:22 moritz timotimo: in sovjet ukraine, ROAD YOU!
19:22 donaldh nuke the test ?
19:22 moritz +1
19:25 jnthn +1
19:25 timotimo :3
19:25 tadzik haha, nuke it
19:25 jnthn I dunno what backend thinks it should do anything but die :)
19:29 donaldh protect itself from dying maybe
19:30 * donaldh needs a faster computer
19:46 dalek nqp: ee3f55a | (Donald Hunter)++ | / (7 files):
19:46 dalek nqp: First tests for file ops, plus fixes on JVM.
19:46 dalek nqp: review: https://github.com/perl6/nqp/commit/ee3f55a1fa
19:49 FROGGS donaldh: why dont you add your tests to t/nqp/73 ?
19:50 donaldh oh
19:50 donaldh sorry, why?
19:52 FROGGS why test readlinefh in two separate files?
19:53 donaldh I have t/nqp/73-delegation.t  - no test for readlinefh
19:57 FROGGS donaldh: sorry
19:57 FROGGS it is only here: https://github.com/MoarVM/MoarVM/tree/master/nqp-cc/t/nqp
19:57 FROGGS then we merge them when moarvm goes into nqp...
20:00 donaldh The tests I have added check the interaction of various ops. We should merge and keep them all. I'll not write any more. I'd end up duplicating.
20:01 FROGGS k
20:01 FROGGS my chdir tests need to be skipped on jvm though
20:02 FROGGS until we have chidr emulation
20:02 FROGGS chdir*
20:02 Mouq joined #perl6
20:02 donaldh hmm. chdir emulation is in rakudo, not nqp.
20:04 FROGGS ahh, k
20:04 GranKain joined #perl6
20:05 dalek nqp: a49aa93 | (Donald Hunter)++ | tools/build/Makefile-Parrot.in:
20:05 dalek nqp: Fix typo in last Makefile commit.
20:05 dalek nqp: review: https://github.com/perl6/nqp/commit/a49aa93375
20:05 Mouq std: macro mac () { quasi :COMPILING { "aster" } }
20:05 camelia std 06636e4: OUTPUT«ok 00:01 50m␤»
20:05 Mouq r: macro hi () { quasi :COMPILING { "hello $s" } }
20:05 camelia rakudo 38a0f9: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/LLoo_gXNMUâ�¤Missing blockâ�¤at /tmp/LLoo_gXNMU:1â�¤------> [32mmacro hi () { quasi [33mâ��[31m:COMPILING { "hello $s" } }[0mâ�¤    expecting any of:â�¤        statement listâ�¤        prefix or termâ�¤        prefix or…
20:05 masak Mouq: yeah. haven't gotten that far. :)
20:06 masak it's up next, though.
20:06 Mouq :)
20:07 Mouq std: my $why = macro dumb () { quasi { "aster" } }
20:07 camelia std 06636e4: OUTPUT«ok 00:01 51m␤»
20:07 Mouq r: my $why = macro dumb () { quasi { "aster" } }
20:07 camelia rakudo 38a0f9: OUTPUT«===SORRY!===␤Error while compiling block  (source text: "my $why = macro dumb () { quasi { \"aster\" } }"): Error while compiling op call: Error while compiling block : Error while compiling op p6store (source text: "$why = macro dumb () { quasi { \"aster\" } }"): …
20:08 GranKain left #perl6
20:08 jnthn huh...how can just assigning it go wrong...
20:09 * masak submits rakudobug
20:09 moritz it, like, doesn't return a proper code object?
20:10 moritz r: say (macro d() { quasi { 42 }}).perl
20:10 camelia rakudo 38a0f9: OUTPUT«()␤»
20:10 moritz r: say (macro d() { quasi { 42 }}).^name
20:10 camelia rakudo 38a0f9: OUTPUT«Parcel␤»
20:10 moritz WAT
20:10 masak indeed.
20:11 masak r: say Macro
20:11 camelia rakudo 38a0f9: OUTPUT«(Macro)␤»
20:11 jnthn r: Macro.^set_name('Marco'); say Macro
20:11 camelia rakudo 38a0f9: OUTPUT«(Marco)␤»
20:11 FROGGS -.-
20:12 * masak takes aim at jnthn and fires
20:13 * masak pulls up his crossbow and blows on it
20:13 * jnthn takes a monad too the knee
20:13 jnthn masak: You aren't meant to use *arrows*!
20:13 jnthn *were
20:14 jnthn d'oh :)
20:14 diakopter bolts
20:14 diakopter crossbows fire bolts
20:15 FROGGS what weapon fires dots?
20:16 geekosaur peashooter? :p
20:16 masak FROGGS: video game spaceships.
20:16 FROGGS true
20:16 dalek v5: 39b25dd | (Tobias Leich)++ | / (2 files):
20:16 dalek v5: skip unpack directives wit too less arguments
20:16 dalek v5: review: https://github.com/rakudo-p5/v5/commit/39b25dd954
20:17 FROGGS that reminds me of rewriting my asteroids clone in perl 6
20:17 masak jnthn: I may fire bolts, but I don't really have a quarrel. :P
20:17 Mouq r: $masak.weapon = macro infix:<< -> >> ($a, $b) { quasi { say {{{$b}}}, " has been vanquished" } }
20:17 camelia rakudo 38a0f9: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/74_RjvvQICâ�¤Variable '$masak' is not declaredâ�¤at /tmp/74_RjvvQIC:1â�¤------> [32m$masak.weapon[33mâ��[31m = macro infix:<< -> >> ($a, $b) { quasi[0mâ�¤    expecting any of:â�¤        method argumentsâ�¤        post…
20:18 * FROGGS submits Mouqbug
20:18 FROGGS :o)
20:22 Mouq "Tests needed" tag added
20:22 masak FROGGS: s/too less/too few/
20:24 FROGGS masak: ahh, thanks
20:25 FROGGS masak: I watched my v5 talk today, my english is awful :o(
20:25 Mouq Talks are up?
20:26 FROGGS Mouq: yapcna talks and some yapceu talks
20:27 masak FROGGS: fwiw, I didn't have any problems with your English in your v5 talk.
20:28 FROGGS well yes, one should be able to understand what I said, but hearing myself was quite a bit surprising
20:29 * jnthn hates hearing himself in videos
20:29 jnthn I think it must be a common thing
20:29 masak hearing oneself is always... unsettling.
20:29 tadzik yep
20:29 masak comes from being behind one's eyes most of the time, I guess.
20:29 FROGGS jnthn: your talks are awesome
20:29 FROGGS jnthn: I've seen the "what if grammars can...", it was cool!
20:30 FROGGS I've expected more bad puns, but it was okay :o)
20:31 lue .oO(jnthn, with less bad puns than expected? I can barely parse the notion.)
20:33 jnthn FROGGS: Yes, but we overdosed on them in the debugger talk... :)
20:33 FROGGS I liked the row of puns about jnhtn being a train very much :o)
20:33 colomon Well, if you expect every sentence to be a pun, you might be disappointed...
20:33 FROGGS colomon: true
20:34 colomon btw, as long as I'm talking here, the module smoke test failed overnight.
20:34 FROGGS :/
20:34 colomon ===SORRY!===
20:34 colomon Could not find Shell::Command in any of: /home/smoker/rakudo/install/lib/parrot/5.5.0-devel/languages/perl6/site/lib,
20:34 tadzik aw
20:34 colomon etc…. for every module it tried, I think.
20:35 tadzik maybe the File::Tools split?
20:35 colomon oh, did the parrot version bump?
20:35 jnthn colomon: If you stop talking here, will it stop failing? :P
20:35 tadzik dunno
20:35 colomon jnthn: :p
20:35 FROGGS nqp --version
20:35 FROGGS This is nqp version 2013.08-18-g44190db built on parrot 5.5.0 revision RELEASE_5_5_0
20:35 FROGGS no, still 5.5.0
20:36 * colomon should probably analyze these things before reporting them....
20:36 * FROGGS .oO( parrot is pretty stable these days, only minor patches needed )
20:36 * colomon should probably analyze these things before reporting them….
20:40 colomon The first failure is in the pandabrew rebootstrap process.
20:41 FROGGS I can imagine that this is about the nqp::getenvhash patch
20:41 colomon that sounds plausible.
20:41 colomon what did it do?
20:42 FROGGS https://github.com/perl6/nqp/commit/96bacd7
20:42 FROGGS colomon: what I had in v5 what breaks now is: nqp::atkey( nqp::getenvhash(), "V5DEBUG" )
20:43 FROGGS this fails when V5DEBUG is unset
20:43 FROGGS I had to change it to: nqp::getenvhash()<V5DEBUG>
20:45 donaldh we talked about rakudo not mutating the process env.
20:45 donaldh nqp::getenvhash() is immutable on JVM so the special behaviour of modifying the process env is already removed on JVM.
20:45 FROGGS I'm just checking if V5DEBUG is set or not (to print debug messages)
20:46 FROGGS r: say nqp::getenvhash()
20:46 camelia rakudo 38a0f9: OUTPUT«("MANPATH" => "/home/p6eval/perl5/perlbrew/perls/perl-5.14.1/man:", "PERLBREW_VERSION" => "0.42", "PERLBREW_PERL" => "perl-5.14.1", "SHELL" => "/bin/bash", "TERM" => "screen", "USER" => "p6eval", "LS_COLORS" => "rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;…
20:46 FROGGS r: say nqp::getenvhash()<SHELL>
20:46 camelia rakudo 38a0f9: OUTPUT«No such method 'postcircumfix:<{ }>' for invocant of type 'Hash'␤  in block  at /tmp/JZVrcrl4L8:1␤␤»
20:46 FROGGS nqp: say nqp::getenvhash()<SHELL>
20:46 camelia nqp: OUTPUT«Confused at line 2, near "say nqp::g"␤current instr.: 'panic' pc 14738 (src/stage2/gen/NQPHLL.pir:5238) (src/stage2/gen/NQPHLL.nqp:279)␤»
20:46 FROGGS nqp: say( nqp::getenvhash()<SHELL> )
20:46 camelia nqp: OUTPUT«/bin/bash␤»
20:47 FROGGS nqp: say( nqp::atkey(nqp::getenvhash(), 'SHELL') )
20:47 camelia nqp: OUTPUT«/bin/bash␤»
20:47 FROGGS nqp: say( nqp::atkey(nqp::getenvhash(), 'TESTEST') )
20:47 camelia nqp: OUTPUT«Null PMC access in get_string()␤current instr.: '' pc 768 (src/stage2/gen/NQPCORE.setting.pir:355) (src/stage2/NQPCORE.setting:665)␤»
20:47 FROGGS nqp: say( nqp::getenvhash()<TESTTEST> )
20:47 camelia nqp: OUTPUT«␤»
20:47 FROGGS donaldh: you see the difference?
20:48 donaldh FROGGS: on parrot ?
20:48 FROGGS yes
20:48 timotimo huh. emma watson just tweeted a link to things fitting perfectly into things, now a horde of peple saw the blog while my perl tuit in power socket picture was on top :3
20:48 FROGGS O.o
20:48 FROGGS wow
20:49 donaldh FROGGS: yeah, that looks like it is down to pmurias commit. It's not been reverted, right?
20:51 pmurias joined #perl6
20:51 tadzik timotimo: haha, som much win :)
20:52 FROGGS donaldh: no, I worked around it, and [Coke]++ made an issue
20:52 FROGGS pmurias was not online yet I think
20:52 timotimo must you make a nissue out of everything? :)
20:53 Mouq Is infix:«~>» NYI?
20:53 timotimo yes, it is
20:54 Mouq >~>
20:54 pmurias re rakudo-parrot breakage with nqp I still need to implement nqp::shell fully to move parrot to the new semantics
20:54 yoleaux 04:01Z <[Coke]> pmurias: - https://github.com/perl6/nqp/issues/114 - breaks rakudo.parrot
20:54 FROGGS r: my $a = "abc"; say $a ~> 1
20:54 camelia rakudo 38a0f9: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/_3IlinCSRA�Preceding context expects a term, but found infix > instead�at /tmp/_3IlinCSRA:1�------> [32mmy $a = "abc"; say $a ~>[33m�[31m 1[0m�»
20:55 pmurias FROGGS: re v5 breaking with the changed nqp::getenvhash, it's now behaving like on the jvm
20:56 FROGGS nqp-jvm: say( nqp::atkey(nqp::getenvhash(), 'TESTEST') )
20:56 camelia nqp-jvm: OUTPUT«No registered operation handler for 'getenvhash'␤  in compile_op␤  in as_jast␤  in as_jast␤  in <anon>␤  in <anon>␤  in <anon>␤  in compile_op␤  in as_jast␤  in as_jast␤  in <anon>␤  in process_args␤  in <anon>␤  in <anon>␤  in compile_op␤  in as_jast␤  in as_jast␤  in <…
20:56 FROGGS gah, too old
20:57 Mouq 'prolly explain why perl can't parse "$x ~>= 8" in roast
20:57 timotimo rakudo*
20:57 Mouq ^^
20:57 FROGGS pmurias: true, but something must be different so the spectests fail
20:57 pmurias there are #ifdef's on parrot
20:58 pmurias FROGGS: so rakudo depends on crazy behavior of nqp::getenvhash on parrot
20:58 FROGGS pmurias: so the tests are wrong? or rakudo?
20:59 pmurias rakudo has an #ifdef parrot
21:00 pmurias rakudo-parrot depends on a specific version of nqp kept in a file?
21:00 FROGGS yes, tools/build/NQP_REVISION
21:01 pmurias and it hasn't just been updated right
21:01 pmurias ?
21:02 FROGGS yes
21:02 FROGGS that happens regularly
21:03 dalek joined #perl6
21:04 pmurias ahh, you just updated that and the env tests now break :/
21:04 FROGGS pmurias: the NQP_REVISION is nqp's revision you nead *at least*
21:05 FROGGS is should always be possible to use a better version than then
21:05 FROGGS than that*
21:05 FROGGS sure this isnt always possible
21:06 pmurias --gen-nqp doesn't use the one from NQP_REVISION?
21:06 FROGGS it does use that version
21:07 pmurias we could introduce nqp::getenvpmc() to have the old semantics
21:09 FROGGS cant we just fix rakudo? so it does not now-invalid operations?
21:09 FROGGS use*
21:09 jnthn Fix Rakudo and we can have the same code-path for Parrot and JVM on this stuff.
21:09 Khisanth joined #perl6
21:10 FROGGS yeah, I mean, it is just a hash after all
21:10 pmurias I need to make nqp::shell on parrot recpect the env argument
21:11 pmurias and the problem with that is the parrot portability os independence layer doesn't support calling a command with a specified set of env variables
21:12 FROGGS ahh, so you rely on modifying the env and passing this through?
21:13 pmurias rakudo-jvm passes the env as a 3 argument to nqp::shell(...)
21:14 pmurias rakudo-parrot just modifies the env and calls the spawnw op
21:14 FROGGS hmmm, not ideal
21:15 pmurias jnthn: if I made nqp::shell work on rakudo-parrot@linux, would you help debug nqp::shell on rakudo-parrot@windows
21:15 pmurias ?
21:16 pmurias jnthn: as I don't have a windows machine set up for development
21:17 pmurias I can write code for that I *suspect* will work ;)
21:18 dalek rakudo-star-daily: 46d4bc7 | coke++ | log/version.log:
21:18 dalek rakudo-star-daily: today (automated commit)
21:18 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/46d4bc7abd
21:19 FROGGS pmurias: I have a windows box to test on
21:19 dalek joined #perl6
21:21 jnthn pmurias: I can if nobody else can...I'm tied up with teaching these next 2 days, so FROGGS++ is probably a better bet. :)
21:21 FROGGS yes, I'll have time for that :o)
21:22 jnthn \o/
21:23 [Coke] which airport should I be picking?
21:24 jnthn 'night, #perl6
21:24 pmurias 'night
21:24 colomon \o
21:27 * donaldh is backlogging.
21:28 donaldh FROGGS: pmurias: It's trivial to change rakudo to have the same behaviour between parrot and jvm, i.e initialise @*ENV with nqp::getenvhash() and nothing more.
21:29 FROGGS donaldh: but this won't get passed to a subprocess created by nqp::shell, which is a pir::spawn_IP or so
21:29 xenoterracide joined #perl6
21:30 dalek perl6-roast-data: 012193b | coke++ | / (5 files):
21:30 dalek perl6-roast-data: today (automated commit)
21:30 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/012193bd90
21:30 araujo joined #perl6
21:30 Nuru_Ziya joined #perl6
21:30 donaldh FROGGS: yeah, I wasn't sure of pmurias' goal with porting nqp::shell/3 to parrot. If parrot doesn't have the underlying op for passing env to spawn.
21:30 araujo joined #perl6
21:31 Nuru_Ziya left #perl6
21:33 pmurias donaldh: I plan to extend the nqp::shell op to pass the env to spawn tomorrow
21:33 donaldh pmurias: extending parrot ?
21:36 pmurias nqp ops are written in C
21:36 virtualsue joined #perl6
21:43 * [Coke] hopes he has one of the slots!
21:54 [Coke] .to lizmat Which airport to fly to, FRA or HHN?, and also, any rooms left at the hotel?
21:54 yoleaux [Coke]: I'll pass your message to lizmat.
22:01 colomon joined #perl6
22:02 timotimo berekuk: i like what you did with the "grouped" news feed
22:02 xenoterracide joined #perl6
22:02 berekuk timotimo: thanks! you can also "like" it here: http://questhub.io/realm/meta/quest/51cabd3e09088ef17a00001a :)
22:07 BenGoldberg joined #perl6
22:07 * Mouq rakudo PR #200 sum-bitted
22:09 timotimo can you throw a typed NYI exception instead?
22:11 Mouq I was just following suit from an example above it. Lemme figure out how...
22:12 lue joined #perl6
22:12 * Mouq is becoming an expert at not yet implementing things
22:12 timotimo something like   die X::NYI.new(what => '~> operator')
22:13 Mouq I see
22:14 timotimo r: die X::NYI.new(what => "this thing");
22:14 camelia rakudo 38a0f9: OUTPUT«use of uninitialized value of type Any in string context  in block  at /tmp/YorxUsSYXr:1␤␤use of uninitialized value of type Any in string context␤ not yet implemented. Sorry. ␤  in block  at /tmp/YorxUsSYXr:1␤␤»
22:14 timotimo "what" is apparently wrong.
22:14 timotimo r: X::NYI.new(what => "this thing").^methods.perl.say
22:14 camelia rakudo 38a0f9: OUTPUT«(method message(X::NYI : Mu *%_) { ... }, method <anon>(Mu $self: Mu *%_) { ... }, method backtrace(Exception : Mu *%_) { ... }, method+{<anon>} throw(Exception : Mu *%_) { ... }, method+{<anon>} rethrow(Exception : Mu *%_) { ... }, method resumable(Exception : Mu …
22:15 timotimo r: X::NYI.new(what => "this thing").^methods.say
22:15 camelia rakudo 38a0f9: OUTPUT«message <anon> backtrace throw rethrow resumable resume fail is-compile-time Str gist␤»
22:15 Mouq r: X::NYI.new(feature => "thing").throw
22:15 camelia rakudo 38a0f9: OUTPUT«thing not yet implemented. Sorry. ␤  in block  at /tmp/DJ25l2vT30:1␤␤»
22:15 timotimo ah, yes
22:16 masak r: X::NYI.new(feature => "closed timelike paths through wormholes").throw
22:16 camelia rakudo 38a0f9: OUTPUT«closed timelike paths through wormholes not yet implemented. Sorry. ␤  in block  at /tmp/0KJEbyeg7s:1␤␤»
22:18 dalek perl6-roast-data: 7f0daa3 | coke++ | / (5 files):
22:18 dalek perl6-roast-data: rename csv file to *.csv
22:18 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/7f0daa3e88
22:21 * timotimo watches the weird perl5/6 shakespeare/txtspk talk
22:23 masak 'night, #perl6
22:23 timotimo 'night masak :)
22:25 Mouq g'night
22:29 timotimo strange how he uses . instead of -> in a later slide, but -> in perl6 earlier
22:29 Mouq r: macro orcam ($a) { quasi { "{{{$a}}}" } }; say orcam 'perl'
22:29 camelia rakudo 38a0f9: OUTPUT«AST<-1471433078>␤»
22:29 timotimo probably prepared the slides like i usually do, as in hastily and only a few hours before the talk is supposed to be given
22:30 Mouq r: macro orcam ($a) { quasi { "{ {{{$a}}}.uc }TA" } }; say orcam 'spar'
22:30 camelia rakudo 38a0f9: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/GEstGqpjgAâ�¤Error while compiling block : Error while compiling block orcam (source text: "{ quasi { \"{ {{{$a}}}.uc }TA\" } }"): Error while compiling block  (source text: "{ \"{ {{{$a}}}.uc }TA\" }"): Error…
22:31 Mouq r: macro orcam ($a) { quasi { "{ <<<$a>>>.uc }TA" } }; say orcam 'spar'
22:31 camelia rakudo 38a0f9: OUTPUT«No such method 'uc' for invocant of type 'Mu'␤  in block  at /tmp/0w1oRQPvaW:1␤  in any  at /tmp/0w1oRQPvaW:1␤  in block  at /tmp/0w1oRQPvaW:1␤␤»
22:33 timotimo i'm having a little bit of trouble understanding most things said, due to acoustics not being terribly good
22:43 timotimo there was really not much content there :(
22:43 timotimo oh yeah! masaks talk is up!
22:44 timotimo http://www.youtube.com/watch?v=3xE32d32z7c
22:44 timotimo pretty rough acoustics on the mic in that video, too :(
22:48 timotimo we can't see masak, but there's also a whole bunch of wasted video space around the slide :(
22:49 timotimo there masak is!
22:49 timotimo ah, some friendly person is adjusting the camera
22:49 timotimo as if they read my messages
22:50 diakopter timotimo: they did; they did!
22:52 dalek perl6-roast-data: 5c4485f | coke++ | cull:
22:52 dalek perl6-roast-data: normalize CSV output
22:52 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/5c4485f72f
22:52 dalek perl6-roast-data: 932e676 | coke++ | perl6_pass_rates.csv:
22:52 dalek perl6-roast-data: eliminate extranous space
22:52 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/932e676de5
22:56 berekuk joined #perl6
23:00 timotimo whenever masak is standing near the camera, the slides become pretty unreadable and the image gets much brighter
23:00 timotimo :(
23:03 cognominal__ joined #perl6
23:04 berekuk joined #perl6
23:05 [Coke] bah. no #comments in github csv
23:07 timotimo aaw :(
23:08 timotimo so we need an extra field?
23:08 timotimo oh, you mean adding comments in the middle?
23:09 [Coke] https://github.com/coke/perl6-roast-data/blob/master/perl6_pass_rates.csv
23:10 [Coke] need to pull the info in the comments into the csv lines.
23:14 timotimo i'm now convinced that auto-focus should be disabled for talks like that in every case
23:17 timotimo ooooh i made a brief cameo! :)
23:29 jaldhar joined #perl6
23:40 _jaldhar joined #perl6
23:42 timotimo one thing that annoys me about the reactive programming stuff if you do it with lazy lists and gather blocks in perl6 is that you have to do manual work to resume such a thingie
23:42 timotimo and if it does things like round-trip to web servers or something you have to know about that and simulate those or something :|
23:50 Mouq I'm still trying to figure out what colonpair is
23:51 abnorman joined #perl6
23:56 [Coke] r: say :10<23>
23:56 camelia rakudo 38a0f9: OUTPUT«23␤»
23:56 [Coke] r: say :23<99>
23:56 camelia rakudo 38a0f9: OUTPUT«216␤»
23:58 Mouq Ohhhhhhh. Thank you

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

Perl 6 | Reference Documentation | Rakudo