Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2016-11-08

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

All times shown according to UTC.

Time Nick Message
00:13 ugjka joined #perl6-dev
01:54 [Coke] * [new tag]         Zürich    -> Zürich .... did something change the encoding on that string recently? just got it updating a checkout that was recent enough to only get 2016.10
01:55 [Coke] is someone looking at #130043 ? kicking off a bisect now...
01:55 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=130043
01:55 travis-ci joined #perl6-dev
01:55 travis-ci Rakudo build errored. Zoffix Znet 'Merge pull request #913 from Xliff/patch-3
01:55 travis-ci https://travis-ci.org/rakudo/rakudo/builds/174025059 https://github.com/rakudo/rakudo/compare/62005f13b535...25ef3d9f8531
01:55 travis-ci left #perl6-dev
01:55 buggable [travis build above] ☠ Did not recognize some failures. Check results manually. All failures are on JVM only.
03:09 travis-ci joined #perl6-dev
03:09 travis-ci Rakudo build failed. Elizabeth Mattijsen 'Mark native shaped str arrays as NYI'
03:09 travis-ci https://travis-ci.org/rakudo/rakudo/builds/174061716 https://github.com/rakudo/rakudo/compare/25ef3d9f8531...c00061432d7d
03:09 travis-ci left #perl6-dev
03:09 buggable [travis build above] ☠ Did not recognize some failures. Check results manually. All failures are on JVM only.
13:07 ilbot3 joined #perl6-dev
13:07 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
13:34 cpin` joined #perl6-dev
13:54 lizmat .tell jnthn is there a reason to not mixin the $!descriptor for TypedArrays only, and leave it off for Arrays ?
13:54 yoleaux2 lizmat: I'll pass your message to jnthn.
13:55 FROGGS joined #perl6-dev
13:55 FROGGS o/
13:59 FROGGS nine: wrt lexical module loading: does it make sense to make re-exporting symbols work like synopsed, before merging your branch?
13:59 FROGGS (depends on the ecosystem fallout clearly, which I dont know how it will look like)
14:11 pmurias joined #perl6-dev
14:20 dalek rakudo/nom: f6d9232 | lizmat++ | src/core/Shaped (5 files):
14:20 dalek rakudo/nom: ShapedxArray don't need parameterization
14:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f6d92328a6
14:24 * [Coke] wonders if getting a Perl 6 app running on GE's predix would be a good thing.
14:59 dalek nqp: 396a679 | (Pawel Murias)++ | src/vm/js/nqp-runtime/reprs.js:
14:59 dalek nqp: [js] Store a Null instead of undefined for the type in VMArray.
14:59 dalek nqp: review: https://github.com/perl6/nqp/commit/396a67979d
14:59 dalek nqp: 066c6a7 | (Pawel Murias)++ | src/vm/js/nqp-runtime/ (4 files):
14:59 dalek nqp: [js] Fix style violations found by js-lint.
14:59 dalek joined #perl6-dev
15:02 dalek roast: 734c19d | (Zoffix Znet)++ | S32-temporal/DateTime.t:
15:02 dalek roast: Test DateTime.hh-mm-ss
15:02 dalek roast: review: https://github.com/perl6/roast/commit/734c19dc43
15:07 dalek rakudo/nom: 35bd063 | (Zoffix Znet)++ | src/core/DateTime.pm:
15:07 dalek rakudo/nom: Use consistent code style
15:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/35bd063f13
15:34 AlexDaniel joined #perl6-dev
15:45 travis-ci joined #perl6-dev
15:45 travis-ci Rakudo build failed. Elizabeth Mattijsen 'ShapedxArray don't need parameterization'
15:45 travis-ci https://travis-ci.org/rakudo/rakudo/builds/174219989 https://github.com/rakudo/rakudo/compare/c00061432d7d...f6d92328a656
15:45 travis-ci left #perl6-dev
15:45 buggable [travis build above] ☠ Did not recognize some failures. Check results manually. All failures are on JVM only.
15:46 viki travis, bruh.
15:50 dalek rakudo/nom: a581bf4 | (Zoffix Znet)++ | .travis.yml:
15:50 dalek rakudo/nom: Add missing space in JVM travis ignore options
15:50 dalek rakudo/nom:
15:50 dalek rakudo/nom: The current setting doesn't see to work; replicate exact strings set up in the `env` field
15:50 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a581bf415c
17:39 FROGGS joined #perl6-dev
17:40 AlexDaniel joined #perl6-dev
17:47 hankache joined #perl6-dev
18:54 viki Was there a thing that lets me check if I'm compiling the setting? I'm trying to add a few debug nqp::say()s into World.nqp, but it hangs when I try to compile rakudo
18:56 viki oh... maybe it's just 'cause this box is slow as hell :}
18:57 * viki tries using ... if %*ENV<WAHTEVER>
18:57 jnthn I think there's a $*IN_CORE_SETTING
18:58 viki oh $*COMPILING_CORE_SETTING
18:59 jnthn :)
18:59 jnthn "Close enough"
19:03 buggable joined #perl6-dev
19:09 hankache joined #perl6-dev
19:30 pmurias joined #perl6-dev
19:32 [Coke] ACHOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
19:32 lizmat boom
19:32 [Coke] ... since most of you probably heard that one anyway. Ow.
19:33 TimToady I sensed a disturbance in the farce...
19:42 lizmat .oO( those Americans, always using euphemisms :-)
19:42 lizmat .oO( especially on a day like today )
19:48 [Coke] ooof, my isms!
19:54 vendethiel joined #perl6-dev
20:51 lizmat jnthn: is there a way to find out whether the result from a ^mixin is from a cache, or from a newly created type ?
20:56 dalek rakudo/nom: 729d7e3 | (Zoffix Znet)++ | src/Perl6/Actions.nqp:
20:56 dalek rakudo/nom: Prevent overflow when creating large Num literals
20:56 dalek rakudo/nom:
20:56 dalek rakudo/nom: The current calculation converts the "base" number to one without fractional
20:56 dalek rakudo/nom: parts, raises it to "e" power, and then divides it by however many powers of
20:56 dalek rakudo/nom: 10 it took to make it fractionless. So 1.23e10 gets converted to 123, multiplied
20:56 dalek rakudo/nom: by 10**10 and then divided by 100. This causes the calculation to blow through
20:56 dalek rakudo/nom: the limit and get an Inf before the final division happens, even though we do have
20:56 dalek rakudo/nom: enough space to represent the final number.
20:56 dalek rakudo/nom:
20:56 dalek rakudo/nom: Fix by dividing *before* multiplying by the powers of 10.
20:56 dalek rakudo/nom:
20:56 viki ENOTIMETOTEST
20:56 viki https://github.com/rakudo/rakudo/commit/729d7e34124827a4e0b772b049be95cf911dd7cf
20:56 * viki rushes to catch the bus
21:00 viki I mean to write a test for the bug.... I did run stresstest :)
21:35 lizmat m: sub a(\self) { dd self } # I guess this is a case of DIHWIDT
21:35 camelia rakudo-moar 729d7e: OUTPUT«===SORRY!=== Error while compiling <tmp>␤'self' used where no object is available␤at <tmp>:1␤------> sub a(\self) { dd ⏏self } # I guess this is a case of DIHWI␤    expecting any of:␤        argument list␤        term␤»
22:11 lizmat joined #perl6-dev
22:13 dalek roast: 8737580 | (Zoffix Znet)++ | S02-types/num.t:
22:13 dalek roast: Test literal Nums close to upper limit do not end up being Inf
22:13 dalek roast:
22:13 dalek roast: RT#130039: https://rt.perl.org/Public/Bug/Display.html?id=130039
22:13 dalek roast: review: https://github.com/perl6/roast/commit/87375800c4
22:13 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=130039
22:14 jnthn lizmat: I can go with it being that. :) I think we lifted the checking logic straight out of STD...
22:14 jnthn lizmat: I don't think you can check on the mixin cache being used without sticking logging in the code
22:14 jnthn lizmat: But you can mix in twice and do nqp::objectid on the .HOW of the two and it should be identical
22:15 lizmat yeah, but that's defeating the purpose
22:15 lizmat I wanted to prevent ^set_name being called when it needn't be
22:15 lizmat as that was still taking 4% of CPU in a loop
22:15 jnthn Hmm
22:16 jnthn Doesn't that go away if we pre-fab the types though? :)
22:16 lizmat I now check whether the name is already right, and that saves a lot already
22:16 lizmat eh, no
22:16 lizmat well, yes, if we can actually create the array and .clone it for a scope
22:16 lizmat brb
22:17 jnthn Mebbe I'll take a look tomorrow when I'm better rested
22:17 jnthn (Got Perl 6 tuits all day tomorrow)
22:20 japhb \o/ Perl 6 tuits
22:20 lizmat whee!
22:20 lizmat :-)
22:21 jnthn I really need to deal with the rest of the flatten string bug though :/
22:25 japhb jnthn: Which bug is that?
22:25 lizmat jnthn: to get the .clone ing behaviour like my @a, i would probably only need some pointer as to where to look in Grammar/Action/World
22:26 lizmat Array+{Array::Shaped1Array}+{Array::Shaped1Array}   # that looks like a ^mixin snafu, no/
22:26 lizmat ?
22:27 jnthn japhb: A .substr or a string made with infix:<x> or infix:<~> don't actually copy string data
22:28 jnthn japhb: Instead, they reference the original string(s), and have extent or repetition count as needed.
22:29 jnthn japhb: Back in the early days of MoarVM, we chose not to write our own hash data structure, and so used uthash instead. This wants a flat buffer of memory to hash and compare.
22:30 jnthn This was meant to be a workaround "for now", and so the rest of the VM assumes strings are truly immutable.
22:31 jnthn Except they end up doing this thing in place, which occasionally goes boom 'cus it breaks the immutability contract
22:31 jnthn tl;dr re-use was a dumb idea
22:31 jnthn Shoulda just written a hash impl for us in the first place.
22:32 lizmat .oO( but there are so many to choose from )
22:33 jnthn I'm not talking about the hash *function*, to be clear.
22:33 jnthn Just the data structure itself.
22:33 jnthn I'd kinda put this off because I wanted to do VM-level object hash support too
22:33 japhb Fair enough.
22:34 jnthn But by this point it's basically concurrency enemy #1.
22:34 jnthn (Because so many of the other issues have been addressed.)
22:37 jnthn We've a few other nasties (phasers, of note)
22:39 jnthn The phaser over-sharing issue and the string flattening one were the two I stubbed my toe on while prototyping a concurrent system at work recently.
22:39 japhb And whatever it is that makes code objects sometimes fail precompilation ....  That one bugs me personally, but it also makes me very nervous in general because I have no idea what might be causing it, and it feels pretty deep.  Which is to say, it makes me wonder what else is broken based on the same root cause.
22:39 japhb Yuck.
22:40 japhb ab5tract and I agreed to start heavily adding concurrency to Terminal-Print as our next push, so stability there will no doubt save a world of headaches.
22:40 japhb (So far we've just been avoiding making the APIs concurrency-hostile, but now we want to go to async events and supplies and such pretty heavily.)
22:43 travis-ci joined #perl6-dev
22:43 travis-ci Rakudo build errored. Zoffix Znet 'Use consistent code style'
22:43 travis-ci https://travis-ci.org/rakudo/rakudo/builds/174234057 https://github.com/rakudo/rakudo/compare/f6d92328a656...35bd063f1350
22:43 travis-ci left #perl6-dev
22:43 buggable [travis build above] ✓ All failures are due to timeout (0), missing build log (6), or GitHub connectivity (0).
22:46 japhb .oO( Consistent style: no style at all )
22:47 jnthn Yup, I'm glad to have a prototype to do where Perl 6 is genuinely a really nice thing to turn to for its mix of whipuptitude and concurrrency features.
22:47 jnthn I've no doubt it'll show up a couple more issues along the way.
22:49 jnthn Real life use-cases are good at that.
22:49 japhb nodnod
22:49 seatek joined #perl6-dev
22:59 AlexDaniel joined #perl6-dev
23:01 dalek rakudo/nom: b7e632e | lizmat++ | src/core/ (4 files):
23:01 dalek rakudo/nom: Mix in shapedness in the class, rather than instance
23:01 dalek rakudo/nom:
23:01 dalek rakudo/nom: This means we only have 1 global deopt for creating a shaped array
23:01 dalek rakudo/nom: of a given number of dimensions and type.
23:01 dalek rakudo/nom:
23:01 dalek rakudo/nom: - fix .of on shaped typed arrays
23:01 dalek rakudo/nom: - fix the .perl of shaped typed arrays
23:01 dalek rakudo/nom:
23:01 dalek rakudo/nom: This gives a 10% gain on a simple "for ^10000 { my @a[10] }" loop,
23:01 dalek rakudo/nom: but for larger programs it should be much more because it would no
23:01 dalek rakudo/nom: longer do a global deopt for every iteration.
23:02 lizmat rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b7e632e
23:12 MasterDuke joined #perl6-dev
23:16 geekosaur joined #perl6-dev
23:21 MasterDuke jnthn: method lineof() in src/HLL/Compiler.nqp isn't ever called during a rakudo compile. were you thinking i just needed to get it to know the right file/line? or get it to be called at all (with the right file/line)?
23:26 jnthn MasterDuke: Um, I thought that's what was called o.O
23:27 MasterDuke heh. i added a print, it shows up when building nqp, but not when building rakudo
23:27 jnthn You did `make install` NQP after the change?
23:28 dalek rakudo/nom: fb56768 | lizmat++ | src/core/native_array.pm:
23:28 dalek rakudo/nom: Streamline shapedarray.shape
23:28 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fb56768b7b
23:28 MasterDuke hmm, i (usually) always do, but now my bash history might be making a fool of me
23:30 * MasterDuke rages at /me
23:30 jnthn Mystery solved? :)
23:32 * MasterDuke looks around for some(thing|one) to blame, but sees only /me
23:32 MasterDuke yeah. rakudo doesn't like the print, but at least it's happening
23:34 jnthn nqp::printfh(nqp::stderr(), 'foo') or similar may be less build-explosive
23:39 geekosaur joined #perl6-dev
23:39 MasterDuke it is, thanks

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