Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2017-09-20

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

All times shown according to UTC.

Time Nick Message
00:03 samcv also need to add for surogates too
00:03 samcv and tux's test is passing now :)
00:04 samcv i get a roast test failing though. not sure why
00:16 cognominal joined #perl6-dev
00:30 skids joined #perl6-dev
00:49 samcv ok figured it out. the utf8-c8 negative graphemes were messing up normalization
01:56 ilbot3 joined #perl6-dev
01:56 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
02:16 skids joined #perl6-dev
02:42 Ben_Goldberg joined #perl6-dev
02:49 benchable6 joined #perl6-dev
03:22 Ven`` joined #perl6-dev
06:18 [Tux] This is Rakudo version 2017.09-36-gb66f5e1cc built on MoarVM version 2017.09.1-18-g3a2eab52
06:18 [Tux] csv-ip5xs        1.331 -  1.342
06:18 [Tux] test             9.917 -  9.970
06:18 [Tux] test-t           3.417 -  3.474
06:18 [Tux] csv-parser      12.592 - 12.687
06:18 samcv [Tux], i should have the utf8 c8 problem fixed shortly
06:19 * [Tux] assumes samcv's fixes are not yet merged into nom
06:19 samcv not yet
06:19 [Tux] :) waiting in anticipation!
06:19 [Tux] I'll write new tests once that works (for me)
06:19 samcv new tests? heh
06:20 [Tux] samcv++
06:20 samcv well i haven't gotten it to fail letting it run on a loop
06:20 [Tux] my goal is to use it for real binary data, like (jpg/png/tiff/gif) images in CSV
06:21 [Tux] or serealized data or (compressed) C-structures, or (let your fantasy fill in the rest)
06:24 samcv maybe will be merged in an hour or so or less if all goes well
06:25 [Tux] don't expect me using that within a week or so. Have to do more than just use it
07:00 krunen_ joined #perl6-dev
07:07 krunen_ joined #perl6-dev
07:13 cschwenz joined #perl6-dev
08:05 masak m: enum E <a b c>; say E.new(:key<D>, :value(3)) ~~ E
08:05 camelia rakudo-moar b66f5e: OUTPUT: «True␤»
08:05 masak TIL you can instantiate new enums
08:08 DrForr joined #perl6-dev
08:13 Geth ¦ roast: 641a3e3175 | (David Warring)++ | S02-types/subset.t
08:13 Geth ¦ roast: unfudge subset isa test
08:13 Geth ¦ roast: review: https://github.com/perl6/roast/commit/641a3e3175
08:13 Geth ¦ roast: 91aa47df84 | (David Warring)++ | S02-types/subset.t
08:13 Geth ¦ roast: add another subset isa test
08:13 Geth ¦ roast: review: https://github.com/perl6/roast/commit/91aa47df84
08:26 samcv [Tux], pushed it to MoarVM now. will probably put in nom after travis/appveyor run
08:43 AlexDaniel joined #perl6-dev
09:08 [TuxCM] joined #perl6-dev
09:08 lizmat Files=1227, Tests=75099, 295 wallclock secs (14.57 usr  5.30 sys + 1989.03 cusr 210.57 csys = 2219.47 CPU)
10:19 cuonglm joined #perl6-dev
10:19 cuonglm Hi, can anyone tell me what `nqp::hllize` does?
10:19 cuonglm I can not find it in nqp ops document
10:30 travis-ci joined #perl6-dev
10:30 travis-ci Rakudo build failed. lizmat 'Merge pull request #1164 from Gnouc/nom
10:30 travis-ci https://travis-ci.org/rakudo/rakudo/builds/277187479 https://github.com/rakudo/rakudo/compare/da5c36c134db...3e3581991442
10:30 travis-ci left #perl6-dev
10:30 buggable [travis build above] ✓ All failures are due to: missing build log (1 failure).
10:30 Ven`` joined #perl6-dev
10:34 stmuk whats the status of t/harness6?
10:49 dogbert17 stmuk: I believe it is broken if run with TEST_JOBS > 1
10:55 stmuk dogbert17: which since it how has =6 set by default is probably bad
11:15 * lizmat admits not having done that in a while
11:47 dogbert17 stmuk: true but how many people run with =1, that takes forever
11:56 stmuk true but better than not working at all
12:07 dogbert17 perhaps we should fix the problem
12:11 Geth ¦ rakudo: stmuk++ created pull request #1166: dogbert17++ fix harness6 by only allowing TEST_JOBS=1
12:11 Geth ¦ rakudo: review: https://github.com/rakudo/rakudo/pull/1166
12:12 dogbert17 stmuk++
12:17 patrickz joined #perl6-dev
12:17 patrickz Hi everyone!
12:18 timotimo hi
12:20 astj joined #perl6-dev
12:25 patrickz I'm trying to get rakudo-star on Windows running in a portable fashion.
12:26 patrickz I extracted the msi (into some other folder, not C:\rakudo), changed perl6.bat a bit and now get "'C:\.../BOOTSTRAP.moarvm': no such file
12:29 Geth ¦ rakudo/nom: 06fe4c4d29 | (Steve Mynott)++ | t/harness6
12:29 Geth ¦ rakudo/nom: dogbert17++ fix harness6 by only allowing TEST_JOBS=1
12:29 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/06fe4c4d29
12:29 Geth ¦ rakudo/nom: 78a4824b8e | lizmat++ (committed using GitHub Web editor) | t/harness6
12:29 Geth ¦ rakudo/nom: Merge pull request #1166 from stmuk/nom
12:29 Geth ¦ rakudo/nom:
12:29 Geth ¦ rakudo/nom: dogbert17++ fix harness6 by only allowing TEST_JOBS=1
12:29 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/78a4824b8e
12:29 patrickz https://gist.github.com/patzim/1168962536a19bf5f43c4c70ae725b59
12:29 patrickz ^-- That's the full error I get.
12:32 astj joined #perl6-dev
12:33 patrickz I am not sure whether it's possible to get rakudo to not care about the folder it's located in, given the full paths in that error message.
12:33 |Tux| This is Rakudo version 2017.09-36-gb66f5e1cc built on MoarVM version 2017.09.1-18-g3a2eab52
12:33 |Tux| csv-ip5xs        1.295 -  1.314
12:33 |Tux| test             9.676 -  9.761
12:33 |Tux| test-t           3.406 -  3.408
12:33 |Tux| csv-parser      12.246 - 12.486
12:35 patrickz Any clues on what I could try to get it running?
12:38 AlexDaniel joined #perl6-dev
12:46 timotimo patrickz: at least on linuxes we generate one launcher before make install and another one during make install
12:46 timotimo oh, but the one before that just has the paths to the source, rather than relative paths
12:46 timotimo but yeah, rakudo star doesn't support relocation by itself
12:47 timotimo that's why it doesn't offer to be installed to any other place
12:47 patrickz I think I fixed up the paths in the launcher.
12:47 timotimo contributions very welcome
12:47 jnthn Probably there are paths embedded elsewhere
12:48 jnthn (No, I don't know where off hand, nor how hard it'd be to change that.)
12:48 patrickz There are hard paths sprinkled in the .moarvm binary files
12:49 timotimo if moar itself is relocatable without issue, we can "just" recompile everything - assuming the rakudo extops don't cuse trouble, which they shouldn't
12:50 patrickz But some error messages about missing files (with the wrong c:\rakudo path) disappeared when I changed the perl6.bat script to link to the correct folders. So I suspected, that rakudo would just search in the libpaths before giving up.
12:53 timotimo if you want to find out what the context of the paths is, you can mor.exe --dump blah.moarvm and see the bytecode
12:54 AlexDaniel joined #perl6-dev
12:54 patrickz Will have a look. Though I guess in general the answer will be "not easily doable" for now.
12:55 patrickz timotimo, jnthn: Thanks for all the info so far!
13:07 bisectable6 joined #perl6-dev
13:12 travis-ci joined #perl6-dev
13:12 travis-ci Rakudo build failed. Zoffix Znet 'Make `eqv` throw typed exceptions on lazy comparisons
13:12 travis-ci https://travis-ci.org/rakudo/rakudo/builds/277293078 https://github.com/rakudo/rakudo/compare/3e3581991442...bb45791c5d94
13:12 travis-ci left #perl6-dev
13:13 buggable [travis build above] ☠ Did not recognize some failures. Check results manually.
13:14 timotimo 3rdparty/libuv/src/unix/posix-hrtime.c:33:17: error: use of undeclared identifier 'CLOCK_MONOTONIC'
13:16 timotimo why is there a build failure inside libuv :\
13:22 geekosaur right, thought that one sounded familiar. os x 10.11 doesn't have clock_gettime()
13:22 geekosaur but its xcode *still* thinks it does
13:22 geekosaur (because it's using the 10.12 SDK)
13:25 geekosaur actually it looks like it is trying to do the right thing now, but still not quite right if libuv thinks clock_gettime is there
13:36 astj joined #perl6-dev
13:46 patrickz Update: I got perl6.bat to run with: "bin\perl6.bat --nqp-lib=C:\data\Downloads\rcalc-standalone\rakudo\share\nqp\lib"
14:02 skids joined #perl6-dev
14:59 astj joined #perl6-dev
15:10 travis-ci joined #perl6-dev
15:10 travis-ci Rakudo build canceled. Zoffix Znet 'Test p6bindattrinvres with getattr of bigint…
15:10 travis-ci https://travis-ci.org/rakudo/rakudo/builds/277413015 https://github.com/rakudo/rakudo/compare/dff7d9b28a3f...0d2ca0d7e1ae
15:11 travis-ci left #perl6-dev
15:11 buggable [travis build above] ✓ All failures are due to: missing build log (3 failures).
15:21 travis-ci joined #perl6-dev
15:21 travis-ci Rakudo build canceled. Zoffix Znet 'Add reference to ticket to the test'
15:21 travis-ci https://travis-ci.org/rakudo/rakudo/builds/277413812 https://github.com/rakudo/rakudo/compare/0d2ca0d7e1ae...de56c0564930
15:21 travis-ci left #perl6-dev
15:21 buggable [travis build above] ✓ All failures are due to: missing build log (3 failures).
15:40 travis-ci joined #perl6-dev
15:40 travis-ci Rakudo build canceled. Zoffix Znet 'Fix issues with Int.new
15:40 travis-ci https://travis-ci.org/rakudo/rakudo/builds/277428981 https://github.com/rakudo/rakudo/compare/de56c0564930...0834036dd436
15:40 travis-ci left #perl6-dev
15:40 buggable [travis build above] ✓ All failures are due to: missing build log (3 failures).
15:45 Geth ¦ rakudo/supply-block-refactor: f9400d9a2e | (Jonathan Worthington)++ | src/core/Supply.pm
15:45 Geth ¦ rakudo/supply-block-refactor: Supply.zip should eager-shift its values
15:45 Geth ¦ rakudo/supply-block-refactor:
15:45 Geth ¦ rakudo/supply-block-refactor: Otherwise we're at the mercy of the thing that runs out downstream
15:45 Geth ¦ rakudo/supply-block-refactor: emit in order to have correct behavior. Shaken out by refactors to
15:45 Geth ¦ rakudo/supply-block-refactor: Supply concurrency control.
15:45 Geth ¦ rakudo/supply-block-refactor: review: https://github.com/rakudo/rakudo/commit/f9400d9a2e
15:58 AlexDaniel joined #perl6-dev
16:14 astj joined #perl6-dev
16:24 astj joined #perl6-dev
16:26 travis-ci joined #perl6-dev
16:26 travis-ci Rakudo build canceled. Zoffix Znet 'Merge pull request #1165 from dwarring/subset-isa2
16:26 travis-ci https://travis-ci.org/rakudo/rakudo/builds/277492032 https://github.com/rakudo/rakudo/compare/0834036dd436...b66f5e1cc870
16:26 travis-ci left #perl6-dev
16:27 buggable [travis build above] ✓ All failures are due to: missing build log (3 failures).
16:28 Ven`` joined #perl6-dev
17:07 Geth ¦ rakudo/supply-block-refactor: 26a9c31329 | (Jonathan Worthington)++ | src/core/Supply.pm
17:07 Geth ¦ rakudo/supply-block-refactor: Change supply concurrency control mechanism
17:07 Geth ¦ rakudo/supply-block-refactor:
17:07 Geth ¦ rakudo/supply-block-refactor: Previously, a supply/react block would immediately accept all of the
17:07 Geth ¦ rakudo/supply-block-refactor: messages sent to it, put them into a queue, and then whatever thread
17:07 Geth ¦ rakudo/supply-block-refactor: happened to be processing the current message would help out with
17:07 Geth ¦ rakudo/supply-block-refactor: processing new arrivals afterwards. This could cause messages to pile
17:07 Geth ¦ rakudo/supply-block-refactor: up without any back-pressure up the chain to slow things down. This
17:07 Geth ¦ rakudo/supply-block-refactor: <…commit message has 48 more lines…>
17:07 Geth ¦ rakudo/supply-block-refactor: review: https://github.com/rakudo/rakudo/commit/26a9c31329
17:10 jnthn Enough continuation juggling for one day
17:10 jnthn dinner &
17:18 entonian joined #perl6-dev
17:33 ugexe Rakudo::Internals.DIR-RECURSE needs to check that it does not try to recurse into non-readable directories (nqp::filereadable($!abspath)) for RT132110. although for it to still be able to return the unreadable path (and just skip recursing into it) might require a few other tweaks
17:33 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=132110
17:51 samcv joined #perl6-dev
18:48 geekosaur joined #perl6-dev
19:13 vendethiel- joined #perl6-dev
19:43 [TuxCM] joined #perl6-dev
19:49 samcv was talking about this in #moarvm. i plan to make any codepoint between 0 and 0x10FFFF give back a unique value. often we have like
19:49 samcv m: 0x10FFFF.uniname.say
19:49 camelia rakudo-moar 78a482: OUTPUT: «<illegal>␤»
19:49 samcv m: 0x10FFF.uniname.say
19:49 camelia rakudo-moar 78a482: OUTPUT: «<reserved>␤»
19:52 samcv well 0x10FFFF shouldn't say illegal hmm. looks like a bug. but regardless
19:53 samcv so we'd get '<reserved-10FFF>' instead of <reserved>
20:38 gfldex m: use nqp; say nqp::atpos_i(nqp::getrusage(), nqp::const::RUSAGE_MAXRSS) ~ 'B maxrss';
20:38 camelia rakudo-moar 78a482: OUTPUT: «73844B maxrss␤»
20:39 gfldex what does ^^^ measure?
20:43 timotimo the maximum size that has been kept in memory at once since the program started
20:44 timotimo and i'd expect that to be kbytes, not bytes
20:44 samcv Gets resource usage statistics, so far as they are portably available (see libuv docs) and puts them into an integer array
20:44 geekosaur the largest amount of physical memory occupied by the process ( distinct from pages that are associated with it but never actually used so never loaded into memory). note that this includes shared libraries, so RSS for all running processes can add up to more than total physical memory
20:47 gfldex i wonder if $*VM should expose that number
20:48 geekosaur I'm not sure it's all that useful
20:48 japhb geekosaur: It is for profiling/tuning tools
20:48 geekosaur it may sound like it should be relevant, but the reality is much more complicated
20:49 gfldex that number alone doesn't tell you much but there are likely other related values available
20:49 gfldex it would help with memory leak detection tho
20:49 geekosaur because e.g. on a hardened system, forced LD_BIND_NOW will load every page of a shared object that has relocations into physical memory, but they'll only stay there briefly if the system has other stuff running as most of them won't thereafter be used
20:50 stmuk cro is in arch linux!
20:50 timotimo for one kind of leak detection, which is objects being kept alive by unexpected/unintended references, the heap snapshot profiler can hardly be beat
20:51 geekosaur RSS is also strongly affected by what else is running on a system
20:51 gfldex the heap snapshot profiler is extrospection. I want introspection! :->
20:52 geekosaur it is *not* a useful measure of what your program is doing. it *is* a measure of *how programs are affecting each other's memory use*
20:52 japhb My use case is a game displaying diagnostics at each frame (e.g. showing frame render time, objects considered, etc.)  For that use case, I'd love to be able to see if my game is leaking (e.g. holding references to old frame data around).
20:52 geekosaur because your 'active' memory may actually be pushed out to swap if something unrelated needs memory
20:53 japhb geekosaur: You're assuming the general case.  For something like the game engine use case, chances are the game is dominating both CPU and RAM while being used.
20:53 timotimo don't forget about internal fragmentation of the heap and similar data structures
20:53 timotimo like, the gen2 of gc-managed objects has a free list that goes through it. i don't think we reclaim pages ever
20:54 timotimo and of course the maxrss number can only grow, purely by virtue of being a max number
20:55 japhb timotimo: Yes, which for purely cyclical usage shouldn't be a big problem, right?  Memory use will be a sawtooth of gen1, as will the % used of the space taken by gen2, but it shouldn't take long to find an asymptotic total RSS assuming no leaks, yes?
20:56 gfldex if we wanted such metrics, would $*VM be the right place to put it?
20:56 japhb gfldex: Do you have another proposed place?
20:57 gfldex the question is if all VMs can or should deliver. If they don't $*SPEC would fit.
20:58 gfldex actually $*VM would be fine. In doubt return (Int).
21:19 timotimo japhb: yeah, i'd expect so
21:50 jnthn Note that the getrusage op is missing much of its data on Windows
21:50 yoleaux 21:27Z <MasterDuke> jnthn: cool, i'll work up a PR for using the FSA within strings/opc.c functions. what about using it for strings in general (i.e., body.storage.strands)?
21:50 jnthn So it's not portable already
21:52 jnthn And on JVM it's even more of a hack :)
21:53 jnthn If somebody wants to improve that situation, that's fine. I only needed a couple of the numbers for the scheduler.
21:54 jnthn japhb: fwiw, https://github.com/rakudo/rakudo/commit/26a9c31329 is related to an RT you filed a while back, which I'm seeing if I can find a way to make work as part of other supply/react internals changes
22:10 Geth ¦ nqp: 263257a9c7 | smls++ | 2 files
22:10 Geth ¦ nqp: Make || alternations respect :ratchet mode
22:10 Geth ¦ nqp:
22:10 Geth ¦ nqp: :ratchet mode already stopped the regex engine from backtracking
22:10 Geth ¦ nqp: into quantifiers and `|` (LTM) alternations.
22:10 Geth ¦ nqp:
22:10 Geth ¦ nqp: Now it also stops it from backtracking into `||` (sequential)
22:10 Geth ¦ nqp: alternations.
22:10 Geth ¦ nqp:
22:11 Geth ¦ nqp: (Fixes RT #130117)
22:11 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=130117
22:11 Geth ¦ nqp: review: https://github.com/perl6/nqp/commit/263257a9c7
22:11 Geth ¦ nqp: ba165c8d9a | smls++ | src/QRegex/P6Regex/Actions.nqp
22:11 Geth ¦ nqp: Allow per-atom backtracking modifiers to override :ratchet
22:11 Geth ¦ nqp:
22:11 Geth ¦ nqp: (This fixes RT #131973.)
22:11 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131973
22:11 Geth ¦ nqp: review: https://github.com/perl6/nqp/commit/ba165c8d9a
22:11 Geth ¦ nqp: a9bea1b3c6 | (Jonathan Worthington)++ (committed using GitHub Web editor) | 3 files
22:11 Geth ¦ nqp: Merge pull request #368 from smls/master
22:11 Geth ¦ nqp:
22:11 Geth ¦ nqp: Make backtracking modifiers on alternations work correctly
22:11 Geth ¦ nqp: review: https://github.com/perl6/nqp/commit/a9bea1b3c6
22:20 AlexDaniel joined #perl6-dev
22:34 skids joined #perl6-dev
22:38 japhb jnthn: At least according to the C docs, getrusage has a lot of stub fields under Linux as well.
22:39 jnthn japhb: Hm, interesting. tbh I only looked into it as far as the usage counters being widely available
22:40 japhb jnthn: Thank you for working on my old supply/react requests.  :-)
22:43 jnthn japhb: I'm doing a bunch of v6.d.PREVIEW bits at the moment, so it's kinda the natural time to have a look at it :)
22:52 japhb jnthn: Ah, makes sense
22:53 * japhb can't wait to try out the latest when it gets merged
22:54 timotimo latest already has the cool new ThreadPoolScheduler that's much smarter about starting threads
22:56 jnthn Well, time to go and rest up so I stand a chance of being smart enough to figure out the next step of the changes tomorrow. :-)
22:56 jnthn 'night o/
22:57 timotimo gnite jnthn! :)
22:57 japhb gnite!
22:57 timotimo i won't stay up long either
22:58 japhb Well, gnight to you too then.  :-)
23:19 raiph joined #perl6-dev
23:25 BenGoldberg joined #perl6-dev
23:38 samcv night!
23:43 raiph Should I file a bug? https://stackoverflow.com/questions/46220461/why-does-will-end-behave-differently-than-will-leave-in-program-level-scope/46225523
23:44 raiph Is my answer correct in its specifics?
23:45 japhb .tell stmuk In 06fe4c4d2910e8beb4edf30cc5e0cec2673c7165, wouldn't you want to check $jobs instead of TEST_JOBS, since it's broken whether the job count comes from the environment or a command line flag?  Or are you leaving --jobs as an escape hatch?
23:45 yoleaux japhb: I'll pass your message to stmuk.
23:58 raiph ^^ I'll backlog tomorrow. TIA and goodnight #perl6-dev.

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