Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2016-12-17

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

All times shown according to UTC.

Time Nick Message
00:15 AlexDaniel commit: all say (1,2).map({ LAST { say "DONE" } })[2]
00:15 committable6 AlexDaniel, https://gist.github.com/5b4c3171a75e540f69466c6e764fdfc6
00:15 AlexDaniel ugexe: I don't see a bug report
00:15 AlexDaniel bisect: say (1,2).map({ LAST { say "DONE" } })[2]
00:15 bisectable6 AlexDaniel, Bisecting by output (old=2015.12 new=7021861) because on both starting points the exit code is 0
00:15 bisectable6 AlexDaniel, bisect log: https://gist.github.com/6cc1c59e7ab8fef71bd620b349fa011f
00:15 bisectable6 AlexDaniel, (2016-06-08) https://github.com/rakudo/rakudo/commit/072a6c2566f59e146cf66acb4f35ff08fa53c7de
00:16 AlexDaniel commit: 072a6c256^,072a6c256 say (1,2).map({ LAST { say "DONE" } })[2]
00:16 committable6 AlexDaniel, ¦«072a6c256^»: DONE␤Nil␤¦«072a6c2»: DONE␤DONE␤Nil
00:59 pyrimidine joined #perl6-dev
01:42 vendethiel- joined #perl6-dev
02:00 dalek rakudo/nom: 0e688e4 | (Zoffix Znet)++ | docs/ChangeLog:
02:00 dalek rakudo/nom: Log all commits to date to ChangeLog
02:00 dalek rakudo/nom:
02:00 dalek rakudo/nom: Documents commits:
02:00 dalek rakudo/nom: 003e654 1d46004 287af6a 2a8ec40 334d134 5558710 55cf6fa 7021861 8965145
02:00 dalek rakudo/nom: 8eef234 9a161fa 9a3c350 9ff5b7e a8ff3b9 a980eb1 aa27d5c b286048 b456471
02:00 dalek rakudo/nom: f9d34a9 fa98875
02:00 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0e688e424a
02:03 pyrimidine joined #perl6-dev
02:27 FROGGS joined #perl6-dev
02:31 pyrimidine joined #perl6-dev
02:48 ilbot3 joined #perl6-dev
02:48 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
02:57 dalek nqp: 92d1403 | MasterDuke17++ | src/vm/moar/HLL/Backend.nqp:
02:57 dalek nqp: Escape 's in function names for SQL profile output
02:57 dalek nqp: review: https://github.com/perl6/nqp/commit/92d1403769
03:38 pyrimidine joined #perl6-dev
04:48 * TimToady has a patch to make *² work right
04:58 * TimToady doesn't see a bug report for it offhand...
04:59 dalek rakudo/nom: c35d562 | TimToady++ | src/Perl6/Actions.nqp:
04:59 dalek rakudo/nom: Allow autocurrying of superscript exponents.
04:59 dalek rakudo/nom:
04:59 dalek rakudo/nom: The curry routine needed to be told that generic postscript
04:59 dalek rakudo/nom: actually has a second argument like infixes do.
04:59 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c35d562df1
05:03 dalek rakudo/nom: 4d6854c | TimToady++ | docs/ChangeLog:
05:03 dalek rakudo/nom: update for last-minute patch to autocurry powers
05:03 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4d6854ce64
05:08 TimToady m: say .(42) given *³
05:08 camelia rakudo-moar 0e688e: OUTPUT«Cannot resolve caller Numeric(Whatever: ); none of these signatures match:␤    (Mu:U \v: *%_)␤  in block <unit> at <tmp> line 1␤␤»
05:11 TimToady m: say .(42) given *³
05:11 camelia rakudo-moar 4d6854: OUTPUT«74088␤»
05:13 TimToady m: say map *², 1..10
05:13 camelia rakudo-moar 4d6854: OUTPUT«(1 4 9 16 25 36 49 64 81 100)␤»
05:33 pyrimidi_ joined #perl6-dev
05:49 MasterDuke m: use nqp; my Num $a; say ++$a
05:49 camelia rakudo-moar 4d6854: OUTPUT«1␤»
05:49 MasterDuke m: use nqp; my Num $a; say nqp::p6box_n(nqp::add_n(nqp::unbox_n($a), 1e0))
05:49 camelia rakudo-moar 4d6854: OUTPUT«Cannot unbox a type object (Num) to a num.␤  in block <unit> at <tmp> line 1␤␤»
05:50 MasterDuke is there a better way to get the Perl 6 behavior in nqp than wrapping the unbox->add->box in an if defined?
05:55 geekosaur joined #perl6-dev
05:57 geekosaur joined #perl6-dev
08:09 lizmat Files=1155, Tests=53919, 194 wallclock secs (10.85 usr  4.51 sys + 1140.92 cusr 123.60 csys = 1279.88 CPU)
08:12 dalek rakudo/nom: 8940dc8 | lizmat++ | docs/ChangeLog:
08:12 dalek rakudo/nom: Add commit ID to changelog entry
08:12 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8940dc8474
09:04 cowens joined #perl6-dev
09:05 cowens Are Rats just a Perl 6 layer thing, or can you work with them in NQP?
09:09 tadzik nah, rats are p6
09:12 cowens So Rats become Nums when passing to NQP?
09:12 dalek rakudo/nom: f775474 | lizmat++ | src/core/Any-iterable-methods.pm:
09:12 dalek rakudo/nom: Better fix for RT #130365
09:12 dalek rakudo/nom:
09:12 dalek rakudo/nom: This re-instates the original optimisation, but with a LAST handler.
09:12 dalek rakudo/nom: Oddly enough, this breaks the passing race/hyper tests again (which
09:12 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=130365
09:12 dalek rakudo/nom: are marked TODO).  Not sure what is going on there, but that will
09:12 dalek rakudo/nom: be for another day then.
09:12 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f7754746ec
09:14 dalek rakudo/nom: c8b950b | lizmat++ | docs/ChangeLog:
09:14 dalek rakudo/nom: Add commit ID of final fix for RT #130365
09:14 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c8b950b839
09:14 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=130365
09:21 RabidGravy joined #perl6-dev
09:49 samcv nqp doesn't have the rat type. i'm not an expert but I suppose you could pass it as numerator and denomenator. though there may be a thing for that
09:51 samcv cowens, yeah there isn't… checked the op codes nqp only has floating points and integers
10:13 lizmat yeah, Rats are HLL
10:30 lucasb joined #perl6-dev
10:51 FROGGS joined #perl6-dev
10:54 [Tux] This is Rakudo version 2016.11-264-gc8b950b83 built on MoarVM version 2016.11-60-g21abc2a1
10:54 [Tux] csv-ip5xs        3.136
10:54 [Tux] test            13.538
10:54 [Tux] test-t           6.122
10:54 [Tux] csv-parser      13.734
11:25 lizmat sometimes I think we need a .skip(N) and .every(N,M) list comprehenders
11:31 lizmat hmmm... I guess .rotor fits the .every(N,M) possibly
11:43 lucasb I love those list utilities :)
11:44 lucasb I wished 'take' was not taken for something. That P6 could have the take/drop/take-while/drop-while common functions from other languages
11:44 lucasb *that way
11:44 jnthn .[4..*] # skip
11:44 jnthn ;)
11:45 jnthn And you can feed a sequence into the subscript too I guess :)
11:46 lucasb seems like the Perlish way is to do everything using array subscripts
11:47 jnthn Well, we ended up with .head too :)
11:47 jnthn One incentive to have methods is that we can also have their reactive duals
11:47 lizmat jnthn: yeah, that would be in that vein
11:48 lizmat and .skip would be much more effcient  :-)
11:48 lucasb reactive duals? please, enligthen me!
11:48 jnthn lizmat: And I guess work on infinite things
11:48 lizmat jnthn: yes
11:48 jnthn lucasb: We can put them on Supply too
11:49 lucasb *enlighten
11:49 lucasb ah, ok
11:49 lizmat inspiration is an example from Laurent's P6 book
11:49 lizmat where it needs to skip the first 354 lines of a file and then start to process
11:49 jnthn (Supply and Seq are related by some category theory stuff, which is where the notion of duals comes from)
11:50 lizmat for "file".IO.lines.skip(354) { }
11:51 lizmat I also think one of Ken Youen-Clark's bio perl6 examples could use an .every
11:51 jnthn m: say <a b c d e f g h>.grep({ $++ > 3 }) # curious
11:51 camelia rakudo-moar c8b950: OUTPUT«(e f g h)␤»
11:51 lizmat for "file".IO.lines.every(3) { }
11:52 jnthn m: say <a b c d e f g h i>.grep({ $++ %% 3 }) # curious
11:52 camelia rakudo-moar c8b950: OUTPUT«(a d g)␤»
11:52 jnthn Anything you can do, I can do grepper :P
11:52 lizmat jnthn: yeah, it can all be done  :-)  I grep that  :)
11:57 jnthn ooh, I need to do a MoarVM release :)
11:57 lizmat yes, please  :-)
11:57 lizmat our release manager would like that very much  :-)
11:59 jnthn Phew, the mention of me in #perl6 wasn't telling me about a bug in my advent post :)
12:00 lizmat yeah, that would not have been in time before publishing  :-)
12:02 jnthn Well, I could still have tweaked any small things today anyway :)
12:02 jnthn I should finish up the README for Test::Scheduler too :)
12:31 nine What do you think about shipping install-dist.pl (or named just install-dist) as part of the CORE dist? Then it would get installed into e.g. /usr/share/perl6/bin/install-dist and be easily accessible for distro packaging modules.
12:32 dalek rakudo/nom: 69d808f | lizmat++ | src/core/Any-iterable-methods.pm:
12:32 dalek rakudo/nom: Make sure .head(N) *always* returns a .Seq
12:32 dalek rakudo/nom:
12:32 dalek rakudo/nom: It used to be an empty List, aka () for N <= 0
12:32 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/69d808fd53
12:32 lizmat nine: isn't that what "raccoon" was supposed to be ?
12:33 dalek rakudo/nom: 27cc8da | lizmat++ | docs/ChangeLog:
12:33 dalek rakudo/nom: Add 69d808f to ChangeLog
12:33 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/27cc8dad54
12:34 nine Yes, it's just that "raccoon" as a name does not have universal support (as it's very non-descriptive) while install-dist does not indicate any relation to perl6
12:35 nine And as raccoon/install-dist is not exactly an end user tool, putting it in /usr/bin is not necessary and may cause confusion
12:35 jnthn If it's not particularly user-facing then could always dehuffmanize it to perl6-install-dist :)
12:36 nine also true
12:37 nine Too bad I need to leave like 10 minutes ago and probably won't be able do anything before the release. But I will experiment with the openSUSE packages.
12:39 nine I still think, putting it into the CORE dist (even as perl6-install-dist) is a good idea.
12:44 Ven joined #perl6-dev
12:44 MasterDuke lizmat: is there a better way to get the Perl 6 behavior of ++ on a Num that might start out undefined in nqp than wrapping unbox->add->box in an if defined?
12:47 MasterDuke oh, and is $!a = <something> faster/slower than nqp::bindattr(self, self, '$!a', <something>)?
12:47 jnthn MasterDuke: Possibly faster
12:47 jnthn Certainly no slower
12:48 jnthn Ideally equivalent but the first form gets hints spat out reliably and I don't know the second does
12:48 jnthn Though on Moar that matters little since spesh can happily fix up both cases to the same machine code
12:48 MasterDuke excellent, i like when the simpler code is better
12:48 jnthn On JVM it matters more, iirc
12:49 MasterDuke still trying to figure out if there's better code to gen for -n, but am working on a patch that at least seems to make the existing code that is genned ~40% faster
12:51 MasterDuke which is just re-writing IO::ArgFiles.lines.pull-one and IO::Handle.lines.pull-one completely in nqp
13:10 jnthn .tell Zoffix http://www.moarvm.org/releases/MoarVM-2016.12.tar.gz
13:10 yoleaux2 jnthn: I'll pass your message to Zoffix.
13:11 lizmat MasterDuke: what jnthn said  :-)
13:11 lizmat afk&
13:14 dalek rakudo/nom: f086b49 | (Zoffix Znet)++ | src/core/REPL.pm:
13:14 dalek rakudo/nom: s/panda/zef/ in REPL message
13:14 dalek rakudo/nom:
13:14 dalek rakudo/nom: As next R* release will most likely switch to zef as installer
13:14 dalek rakudo/nom: of choice.
13:14 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f086b493ba
13:17 dalek rakudo/nom: 8b36e47 | (Zoffix Znet)++ | docs/ChangeLog:
13:17 dalek rakudo/nom: Use consistent multi-sha listing format in ChangeLog
13:17 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8b36e4700e
13:35 dalek star/zef: c58da35 | ugexe++ | README:
13:35 dalek star/zef: Remove mentions of runtime deps for zef
13:35 dalek star/zef:
13:35 dalek star/zef: Technically you don't need git for zef to work. If you take the
13:35 dalek star/zef: default ecosystem package list and transform the git urls to the
13:35 dalek star/zef: archive url (.zip, .tar.gz) on github then git is not needed
13:35 dalek star/zef: review: https://github.com/rakudo/star/commit/c58da351ea
13:35 dalek star/zef: 10125ab | (Steve Mynott)++ | README:
13:35 dalek star/zef: Merge pull request #82 from ugexe/zef
13:35 dalek star/zef:
13:35 dalek star/zef: Remove mentions of runtime deps for zef
13:35 dalek star/zef: review: https://github.com/rakudo/star/commit/10125aba70
13:38 dalek star/zef: 469e40f | (Steve Mynott)++ | README:
13:38 dalek star/zef: recommend git
13:38 dalek star/zef: review: https://github.com/rakudo/star/commit/469e40f21c
13:39 dalek star/zef: c06e3b1 | (Steve Mynott)++ | ports/darwin_dmg/HOW_TO_INSTALL.txt:
13:39 dalek star/zef: fix panda ref to say zef
13:39 dalek star/zef: review: https://github.com/rakudo/star/commit/c06e3b147f
13:41 AlexDaniel joined #perl6-dev
13:45 dalek star/zef: ecbe3d3 | (Steve Mynott)++ | / (3 files):
13:45 dalek star/zef: Readd panda for a transition period
13:45 dalek star/zef: review: https://github.com/rakudo/star/commit/ecbe3d313e
14:02 dalek rakudo/nom: 90bed96 | (Zoffix Znet)++ | docs/ChangeLog:
14:02 dalek rakudo/nom: Quote var in ChangeLog to prevent italicizing everything in Markdown
14:02 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/90bed9684a
14:09 dalek rakudo/nom: 15d184a | (Zoffix Znet)++ | docs/ChangeLog:
14:09 dalek rakudo/nom: Quote var in ChangeLog to prevent italicizing everything in Markdown
14:09 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/15d184ab89
14:41 committable6 joined #perl6-dev
14:41 evalable6 joined #perl6-dev
14:41 bisectable6 joined #perl6-dev
14:41 unicodable6 joined #perl6-dev
14:41 benchable6 joined #perl6-dev
14:41 statisfiable6 joined #perl6-dev
14:42 NeuralAnomaly joined #perl6-dev
14:44 Zoffix joined #perl6-dev
14:44 Zoffix Hello.
14:44 Zoffix NeuralAnomaly, yo
14:44 NeuralAnomaly Zoffix, Yo, yo, yo! What up, homeslice?
14:44 Zoffix NeuralAnomaly, it's time
14:44 NeuralAnomaly Zoffix, Oh boy! Really?! Release time!!!! YEY!
14:45 Zoffix yup
14:45 Zoffix NeuralAnomaly, cut the release
14:45 NeuralAnomaly Zoffix, Will do! If you're feeling particularly naughty, you can watch me at http://perl6.fail/release/progress or go look at some cats http://icanhas.cheezburger.com/lolcats
14:45 NeuralAnomaly Zoffix, ☠☠☠☠☠☠ R6 status is not clean. Cannot proceed
14:45 NeuralAnomaly Zoffix, ☠☠☠☠☠☠☠☠☠☠ ABNORMAL EXIT!
14:45 Zoffix nice
14:45 Zoffix NeuralAnomaly, status
14:45 NeuralAnomaly Zoffix, [✘] Next release is today. Since last release, there are 56 new still-open tickets (0 unreviewed and 0 blockers) and 4 unreviewed commits. See http://perl6.fail/release/stats for details
14:45 Zoffix NeuralAnomaly, status
14:45 NeuralAnomaly Zoffix, [✔] Next release is today. Since last release, there are 56 new still-open tickets (0 unreviewed and 0 blockers) and 0 unreviewed commits. See http://perl6.fail/release/stats for details
14:45 Zoffix NeuralAnomaly, cut the release
14:45 NeuralAnomaly Zoffix, Will do! If you're feeling particularly naughty, you can watch me at http://perl6.fail/release/progress or go look at some cats http://icanhas.cheezburger.com/lolcats
14:45 NeuralAnomaly Zoffix, ♥♥♥♥♥♥ Prep done
14:45 dalek nqp: eb871b2 | (Zoffix Znet)++ | tools/build/MOAR_REVISION:
14:45 dalek nqp: bump MoarVM version to 2016.12
14:45 dalek nqp: review: https://github.com/perl6/nqp/commit/eb871b2d5d
14:45 dalek nqp: 8460157 | (Zoffix Znet)++ | VERSION:
14:45 dalek nqp: bump VERSION to 2016.12
14:45 dalek nqp: review: https://github.com/perl6/nqp/commit/846015792a
14:48 statisfiable6 joined #perl6-dev
14:52 dalek star/zef: 882504d | (Steve Mynott)++ | tools/build/Makefile.in:
14:52 dalek star/zef: install zef not panda
14:52 dalek star/zef: review: https://github.com/rakudo/star/commit/882504d8ab
14:52 dalek star/zef: 835a2fe | (Steve Mynott)++ | tools/build/module-install.pl:
14:52 dalek star/zef: args for zef
14:53 dalek joined #perl6-dev
14:55 NeuralAnomaly Zoffix, ♥♥♥♥♥♥ nqp tests OK
15:01 stmuk_ damm git
15:01 yoleaux2 16 Dec 2016 00:47Z <Zoffix> stmuk_: any ideas for https://rt.perl.org/Ticket/Display.html?id=130192 ? I can't reproduce the issue with a built-from-source Rakudo, but it does exists in 2016.04 and 2016.11 Stars (the only two I tried)
15:02 cognominal joined #perl6-dev
15:04 stmuk_ .tell zoffix we are building windows star the same way maybe the repl hang is to do with the WiX MSI installer?
15:04 yoleaux2 stmuk_: I'll pass your message to zoffix.
15:05 * Zoffix shrugs
15:05 yoleaux2 15:04Z <stmuk_> Zoffix: we are building windows star the same way maybe the repl hang is to do with the WiX MSI installer?
15:05 Zoffix Don't know anything about windows :(
15:05 NeuralAnomaly Zoffix, ♥♥♥♥♥♥ nqp release tarball tests OK
15:05 stmuk_ me neither I just have a VM
15:06 NeuralAnomaly Zoffix, ♥♥♥♥♥♥ nqp release DONE
15:06 stmuk_ can't you get one of your bots to fix it :)
15:06 dalek rakudo/nom: ad75e79 | (Zoffix Znet)++ | docs/announce/2016.12.md:
15:06 dalek rakudo/nom: Generate release announcement for 2016.12
15:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ad75e79056
15:06 dalek rakudo/nom: 4e74773 | (Zoffix Znet)++ | tools/build/NQP_REVISION:
15:06 dalek rakudo/nom: [release] bump NQP revision
15:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4e747738ec
15:06 dalek rakudo/nom: 27d4d9c | (Zoffix Znet)++ | VERSION:
15:06 dalek rakudo/nom: [release] bump VERSION to 2016.12
15:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/27d4d9c61b
15:10 Zoffix ugh
15:10 Zoffix crap
15:10 Zoffix NeuralAnomaly, steps
15:10 NeuralAnomaly Zoffix, all pre nqp r post pre-r6 pre-blank-slate nqp-clone nqp-bump-vers nqp-build nqp-test nqp-tar nqp-tar-build nqp-tag nqp-tar-sign nqp-tar-copy r-clone r-prep-ann r-bump-vers r-build r-p5 r-stress r-stress-v6c r-tar r-tar-build r-tar-p5 r-tar-stress r-tag r-tar-sign r-tar-copy post-scp
15:13 dalek rakudo/nom: 6f54e07 | (Zoffix Znet)++ | docs/announce/2016.12.md:
15:13 dalek rakudo/nom: Remove email address used instead of name of contributor
15:13 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6f54e07b3a
15:13 dalek rakudo/nom: 862e2d5 | (Zoffix Znet)++ | docs/announce/2016.12.md:
15:13 dalek rakudo/nom: Fix markdown formatting.
15:13 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/862e2d5761
15:14 NeuralAnomaly joined #perl6-dev
15:15 Zoffix NeuralAnomaly, run  r-build r-p5 r-stress r-stress-v6c r-tar r-tar-build r-tar-p5 r-tar-stress r-tag r-tar-sign r-tar-copy post-scp
15:18 stmuk_ Zoffix: minor fix https://github.com/rakudo/rakudo/pull/959
15:20 dalek rakudo/nom: 3a25a5a | (Steve Mynott)++ | docs/announce/2016.12.md:
15:20 dalek rakudo/nom: No more 2016 releases
15:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3a25a5a6dd
15:20 dalek rakudo/nom: 6f69eeb | (Zoffix Znet)++ | docs/announce/2016.12.md:
15:20 dalek rakudo/nom: Merge pull request #959 from LondonPM/nom
15:20 dalek rakudo/nom:
15:20 dalek rakudo/nom: No more 2016 releases
15:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6f69eeb00f
15:21 dalek rakudo/nom: b2a3441 | (Zoffix Znet)++ | tools/create-release-announcement.pl:
15:21 dalek rakudo/nom: Fix year in announcement generator
15:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b2a3441749
15:22 NeuralAnomaly joined #perl6-dev
15:22 Zoffix NeuralAnomaly, run r-build r-p5 r-stress r-stress-v6c r-tar r-tar-build r-tar-p5 r-tar-stress r-tag r-tar-sign r-tar-copy post-scp
15:32 NeuralAnomaly Zoffix, ♥♥♥♥♥♥ Rakudo stresstest (master) OK
15:34 NeuralAnomaly Zoffix, ♥♥♥♥♥♥ Rakudo stresstest (6.c-errata) OK
15:38 stmuk_ I suppose this is what Microsoft would call the "Anniversary Update"
15:39 * Zoffix is way ahead of it https://twitter.com/zoffix/status/810119675061403649
15:42 stmuk_ consair and carrot cake?
15:43 NeuralAnomaly Zoffix, ♥♥♥♥♥♥ Rakudo release DONE
15:43 NeuralAnomaly Zoffix, ♥♥♥♥♥♥ Post: upload tarballs to rakudo.org
15:43 NeuralAnomaly Zoffix, 🎺🎺🎺📯📯📯📯📯📯🌈🌈🌈📦📦📦
15:43 NeuralAnomaly Zoffix, The release of **Rakudo #106 2016.12** has now been completed
15:43 NeuralAnomaly Zoffix, 🎺🎺🎺📯📯📯📯📯📯🌈🌈🌈📦📦📦
15:43 * NeuralAnomaly celebrates with an appropriate amount of fun
15:44 MasterDuke Zoffix++
15:45 stmuk_ Zoffix++
15:46 Zoffix left #perl6-dev
15:48 dalek rakudo/nom: 82e636d | (Zoffix Znet)++ | docs/release_guide.pod:
15:48 dalek rakudo/nom: 2016.12 is now in the past
15:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/82e636daf8
15:51 NeuralAnomaly joined #perl6-dev
15:52 dalek star/zef: 2d3bec9 | (Steve Mynott)++ | tools/ (2 files):
15:52 dalek star/zef: use new rakudo in forthcoming zef based star beta
15:52 dalek star/zef: review: https://github.com/rakudo/star/commit/2d3bec99e1
16:23 pyrimidine joined #perl6-dev
16:26 dalek star/zef: 6d7d30b | (Steve Mynott)++ | patches/panda.patch:
16:26 dalek star/zef: improve content and display of panda is leaving use zef message
16:26 dalek star/zef: review: https://github.com/rakudo/star/commit/6d7d30bf9d
16:41 stmuk joined #perl6-dev
16:44 samcv yayyyy
17:10 cowens I have three related but separate problems with fmt:
17:10 cowens 1. fmt/sprintf is NQP level, so it doesn't know about Rats, which means there isn't a good way (I know about) to format Rats.  I can use base(10, $precision) to control precision and then call fmt on it to control string padding with %s, but that feels clunky and doesn’t provide as many options as %f.
17:10 cowens 2. fmt/sprintf uses nqp::split to get the integer and decimal parts which stringifies the float too early leading to loss of precision
17:10 cowens 3. fmt/sprintf doesn’t have an “%a” directive, so there is no way to get the actual float value out of Perl6 that I know about
17:10 cowens I think 1 is intractable with the current scheme. Is the right answer to create a fmt method for the Rat class? Or move fmt up to the Perl6 level?
17:10 cowens I took a stab at 2 and was able to “fix” it with some very hacky code http://codepad.org/lckF4ld0
17:10 cowens I think 3 is fixable if I learn more about NQP
17:29 pyrimidine joined #perl6-dev
17:35 kalkin- joined #perl6-dev
17:43 Ven joined #perl6-dev
18:19 AlexDaniel joined #perl6-dev
18:26 timotimo cowens: when a Rat comes in there, you can still call methods on it from nqp-land
18:27 timotimo we may want to have something near the fmt that lets rakudo's bootstrap "install the Rat type" so we can compare against it inside fmt
18:27 timotimo i.e. just have a my $the_rat_type; sub register_rat_type($type) { $the_rat_type := $type }
18:29 cowens So, add a fractional method to Rat, Num, etc
18:30 timotimo hum?
18:30 cowens then fmt could call num.floor to get the integer part and fractional(precision) to get the fractional?
18:31 timotimo ah, it'd return a string then
18:31 cowens yes
18:31 cowens then fmt could do its formating magic
18:32 timotimo that might be a way. i won't decide whether that's how we'll move forward
18:33 cowens It would also fix 2 as it wouldn't use nqp::split and turn the number into a string too early
18:35 RabidGravy does soneone want to cast a quick eye over the https://perl6advent.wordpress.com/?p=6247 for typos, beginning to get a bit blurry here
18:36 TimToady "lke"
18:37 TimToady "these kind of problems"
18:39 TimToady "theobject"
18:40 RabidGravy ooh I thought I'd already fixed that last one
18:40 RabidGravy you got better eyes than me clearly
18:40 TimToady "apply, typically" --> "apply; typically"
18:41 TimToady "apply.)" --> "apply)."
18:41 TimToady and the next sentence could use commas around the 'if' clause
18:42 TimToady "in our ticketing" seems like it starts a new sentence
18:43 RabidGravy I love Zoffix little hack of using a gist to format the code, but my word does it make finding stuff difficult
18:43 TimToady "Tinky provides" paragraph is massively run on
18:44 TimToady needs to be broken up with something harder than commas
18:45 TimToady "if required, it also" needs semicolon or period
18:46 TimToady "like above so you" --> "like above, so you"
18:48 TimToady not clear how to parse the phrases after "different objects:"
18:49 TimToady "clear, failure" --> "clear, since failure"
18:50 TimToady (to make it parallel with the subsequent "because")
18:51 RabidGravy Actually that Tinky provides paragraph is a basket case, let me re-word that
18:51 TimToady "files from it will wait" --> "files from, it will wait"
18:52 TimToady "workflow to it, every object" --> "workflow to it, then every object"
18:53 TimToady "new files, however this" --> "new files; however, this"
18:54 TimToady "here:there" --> "here: there"
18:54 TimToady "cookbook style" --> "cookbook-style"
18:55 TimToady "use it, if" --> "use it; if"
18:55 TimToady (or make a separate sentence)
18:57 TimToady the next-to-last paragraph needs to be broken up into about 3 sentences
18:58 * TimToady --> Christmas shopping...
19:01 RabidGravy have fun
19:01 RabidGravy it's quite alarming how my brain jumps between tenses while I am writing
19:21 timotimo a side-effect of spending so much time in a tardis
19:30 pyrimidine joined #perl6-dev
19:34 MasterDuke timotimo: i have a profile, with one routine all orange. if i also have a JIT log of running the same code, how could i tell which ops would need to be JITted for it to go green?
19:35 MasterDuke i see some BAILs, but which of those correspond to the ops used in that routine?
19:37 timotimo you just look upwards from the BAIL to see what frame name comes up
19:42 MasterDuke hm, none of those match the name of the orange routine
19:44 MasterDuke i see the name of the orange routine, but it doesn't precede any BAILs
19:46 timotimo interesting. sometimes it's weird like that and i don't really know why
19:49 timotimo i mean, i see the same thing sometimes
19:54 MasterDuke well, if you're curious, the orange routine is my modified IO::Handle.lines.pull-one from https://github.com/rakudo/rakudo/pull/960
19:55 b2gills joined #perl6-dev
19:55 timotimo it could be that the method ends up inlined all of the time and the inlining frame actually gets bailed out of
19:57 timotimo i'm not finding the inlinedness percentage stuff in the profiler output very convincing :P
19:57 timotimo though since i know what the code looks like that makes it, i'm not sure it's actually wrong
19:58 timotimo proof by construction isn't easy if your program is big like moarvm :)
20:00 MasterDuke virtual machines, pshaw! i like to prove a couple before breakfast just to get the juices flowing
20:01 timotimo %)
20:01 timotimo i've proven five VMs before breakfast
20:01 timotimo ...
20:01 timotimo that's not how that quote goes
20:26 lizmat Files=1155, Tests=53935, 195 wallclock secs (10.91 usr  4.60 sys + 1154.52 cusr 123.59 csys = 1293.62 CPU)
20:26 jdv79 is that good?
20:27 lizmat better than this morning: mind you, still before the release
20:27 lizmat building the release now, but that warms up my notebook again, so tomorrow a benchmark of that
20:40 MasterDuke lizmat: i see ~50 places in rakudo where nqp::bindattr(self, <foo>, '$!bar', <baz>) is used. given what jnthn said earlier today, would it make sense to turn those into $!bar = <baz>?
20:42 lizmat MasterDuke: If you can, please do
20:42 lizmat but I seem to recall there was a reason for it, related to roles and natives if I remember correctly
20:43 lizmat also: bindattr is *not* the same as $!a = 42; but the same as $! := 42
20:43 lizmat *$!a
20:44 MasterDuke lizmat: yep. well, i'll try making some changes, see what happens, and submit PRs if nothing breaks
20:46 Ven joined #perl6-dev
20:47 timotimo hmm.
20:49 timotimo do we actually have ASSIGN for attributes?
20:49 jnthn Assignment is just assignment
20:49 jnthn It's an operation on an l-value and an r-value
20:50 jnthn It doesn't care where said l-value is from
20:51 timotimo fair enough, but we do generate a bind with first argument being an attribute on lexical self
20:51 MasterDuke btw, same question about nqp::getattr(self, <foo>, '$!bar') vs just $!bar. faster/better/different?
20:51 timotimo sometimes we have places where the class in <foo> doesn't match the type of self
20:52 timotimo in that case we can't just use the shorter form
20:52 timotimo same for bindattr
20:54 MasterDuke hm, any way to know when that would be the case from looking at the immediately surrounding code?
20:55 timotimo put a special case into the actions part that handles nqp:: and emit some diagnostic code :P
20:56 timotimo i mean, sometimes you can easily see it from the code
20:56 timotimo oh, i wasn't clear about something
20:56 timotimo it's about what type self is, it's about what the class outside the code is when code gets generated
20:57 timotimo sorry, it's *not* about what type self is
20:58 timotimo that'd be ridiculous :)
20:58 timotimo also, the type that ends up being important is what's also in the ast tree as the second argument to the var attribute
20:59 MasterDuke cool, i'll play around with this stuff later. afk&
20:59 lizmat MasterDuke: the bindattr form is used inside roles afaics
21:00 lizmat example the TypedArray role
21:00 lizmat it is supposed to be mixed into Array
21:00 lizmat but technically, the role could be mixed into anything else, so it cannot know about $!reified (which is from List, BTW)
21:01 timotimo ah, quite.
21:03 timotimo there might be some cases left where a bindattr could be turned into bindattrinvres, that could be worth a lot in select cases
21:06 Ven joined #perl6-dev
21:24 lizmat timotimo: you mean p6bindattrinvres ?
21:26 Ven joined #perl6-dev
21:30 timotimo that's the one
21:30 lizmat I thought I had covered all possible uses, but it seems I missed a few  :-)
21:31 timotimo oh
21:32 timotimo i didn't look for a long time
21:46 Ven joined #perl6-dev
22:06 Ven joined #perl6-dev
22:07 dalek rakudo/nom: 587ceea | lizmat++ | src/core/Any.pm:
22:07 dalek rakudo/nom: Make my $a; $a.AT-POS(0) = 42 about 15% faster
22:07 dalek rakudo/nom:
22:07 dalek rakudo/nom: By simplifying the code in Any.AT-POS itself, and also inside of the
22:07 dalek rakudo/nom: $!whence.  This also makes my $a; $a[0] = 42 faster, but less so
22:07 dalek rakudo/nom: because of postcircumfix:<[]> overhead.
22:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/587ceeab5c
22:07 lizmat timotimo MasterDuke: first win  :-)
22:10 timotimo first win since the release, or what do you mean?
22:11 lizmat since we decided to hunt some bindattr  :-)
22:16 timotimo oh!
22:17 timotimo you already had other wins since the release then? :)
22:21 lizmat no, not yet
22:22 timotimo oh, you mean "since" as in "because"
22:22 Hotkeys joined #perl6-dev
22:22 lizmat well, yes, I guess :-)
22:25 RabidGravy joined #perl6-dev
22:26 pyrimidine joined #perl6-dev
22:26 Ven joined #perl6-dev
22:32 timotimo %)
22:37 pyrimidine joined #perl6-dev
22:43 dalek rakudo/nom: 6c98372 | lizmat++ | src/core/Any.pm:
22:43 dalek rakudo/nom: Make my $a; $a.AT-KEY("a") = 42 about 10% faster
22:43 dalek rakudo/nom:
22:43 dalek rakudo/nom: By simplifying the code in Any.AT-KEY itself, and also inside of the
22:43 dalek rakudo/nom: $!whence.  This also makes my $a; $a<a> = 42 faster, but less so
22:43 dalek rakudo/nom: because of postcircumfix:<{}> overhead.
22:43 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6c98372977
22:43 lizmat which concludes my hacking for today
22:44 lizmat good night, #perl6-dev!
22:46 Ven joined #perl6-dev
22:55 pyrimidine joined #perl6-dev
23:01 b2gills joined #perl6-dev
23:06 Ven joined #perl6-dev
23:15 pyrimidine joined #perl6-dev
23:33 pyrimidine joined #perl6-dev
23:48 RabidGravy toodles

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