AlexDaniel | hm, that's interesting | 00:59 | |
m: say -2147483648 × ‘1’ | |||
camelia | -2147483648? | ||
AlexDaniel | c: HEAD^ use lib ‘data/all-modules/retupmoca/P6-LibraryMake’; use lib ‘/home/bisectable/.zef/store/p6-Numeric-Pack.git/1d114382b2fdeb2a3c2b51ea6d1f9e18ee8dad24’; use Numeric::Pack :ALL; my $buf = Buf[uint8].new(128,0,0,0); say unpack-int32($buf) | ||
committable6 | AlexDaniel, ¦HEAD^: «-2147483648» | ||
AlexDaniel | c: HEAD^ use lib ‘data/all-modules/retupmoca/P6-LibraryMake’; use lib ‘/home/bisectable/.zef/store/p6-Numeric-Pack.git/1d114382b2fdeb2a3c2b51ea6d1f9e18ee8dad24’; use Numeric::Pack :ALL; my $buf = Buf[uint8].new(128,0,0,0); say WHAT unpack-int32($buf) | ||
committable6 | AlexDaniel, ¦HEAD^: «(Int)» | ||
AlexDaniel | c: HEAD^ use lib ‘data/all-modules/retupmoca/P6-LibraryMake’; use lib ‘/home/bisectable/.zef/store/p6-Numeric-Pack.git/1d114382b2fdeb2a3c2b51ea6d1f9e18ee8dad24’; use Numeric::Pack :ALL; my $buf = Buf[uint8].new(128,0,0,0); say unpack-int32($buf) × 1 | ||
committable6 | AlexDaniel, ¦HEAD^: «-2147483648» | ||
AlexDaniel | so far so good, right? | ||
c: HEAD^ use lib ‘data/all-modules/retupmoca/P6-LibraryMake’; use lib ‘/home/bisectable/.zef/store/p6-Numeric-Pack.git/1d114382b2fdeb2a3c2b51ea6d1f9e18ee8dad24’; use Numeric::Pack :ALL; my $buf = Buf[uint8].new(128,0,0,0); say unpack-int32($buf) × ‘1’ | 01:00 | ||
committable6 | AlexDaniel, ¦HEAD^: «-18446744071562067968» | ||
AlexDaniel | but what the hell is this? :/ | ||
c: MVM_SPESH_DISABLE=1 HEAD^ use lib ‘data/all-modules/retupmoca/P6-LibraryMake’; use lib ‘/home/bisectable/.zef/store/p6-Numeric-Pack.git/1d114382b2fdeb2a3c2b51ea6d1f9e18ee8dad24’; use Numeric::Pack :ALL; my $buf = Buf[uint8].new(128,0,0,0); say unpack-int32($buf) × ‘1’ | 01:02 | ||
committable6 | AlexDaniel, ¦HEAD^: «-18446744071562067968» | ||
AlexDaniel | c: 2015.12 HEAD^ use lib ‘data/all-modules/retupmoca/P6-LibraryMake’; use lib ‘/home/bisectable/.zef/store/p6-Numeric-Pack.git/1d114382b2fdeb2a3c2b51ea6d1f9e18ee8dad24’; use Numeric::Pack :ALL; my $buf = Buf[uint8].new(128,0,0,0); say unpack-int32($buf) × ‘1’ | ||
oops | |||
committable6 | AlexDaniel, gist.github.com/318e70af4ae5a9752d...999b1ce1a4 | 01:03 | |
AlexDaniel | c: 2015.12 use lib ‘data/all-modules/retupmoca/P6-LibraryMake’; use lib ‘/home/bisectable/.zef/store/p6-Numeric-Pack.git/1d114382b2fdeb2a3c2b51ea6d1f9e18ee8dad24’; use Numeric::Pack :ALL; my $buf = Buf[uint8].new(128,0,0,0); say unpack-int32($buf) × ‘1’ | ||
committable6 | AlexDaniel, gist.github.com/0ef96d2199f0892f0d...4c3ef639e2 | ||
AlexDaniel | alright, well, I don't know if it ever worked | ||
Geth | rakudo/nom: e3af662920 | (Nick Logan)++ (committed using GitHub Web editor) | lib/Test.pm6 Fix misplaced newline in test timing output |
01:34 | |
AlexDaniel | huh… I'm pretty sure I'm seeing this issue without that module… hold on | 01:54 | |
m: my int32 $x = -2147483648; my Int $z = $x; say $z; say $z * 1.0 | 01:56 | ||
camelia | -2147483648?-18446744071562067968? | ||
AlexDaniel | is it supposed to be this way? :-S | 01:57 | |
commit: b3b4926cc0^,b3b4926cc0 my int32 $x = -2147483648; my Int $z = $x; say $z; say $z * 1.0 | 02:01 | ||
committable6 | AlexDaniel, ¦b3b4926cc0^: «-2147483648?-2147483648» ¦b3b4926: «-2147483648?-18446744071562067968» | ||
AlexDaniel | so it's github.com/rakudo/rakudo/commit/b3...e933f7fe03 | ||
alright: RT #131994 | 02:11 | ||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131994 | ||
ugexe | could someone bump the nqp and moar versions so the appveyor will go green? | 03:59 | |
samcv | making good progress on the unicode property names not being unique in our UCD database | 04:43 | |
space, White_Space, Space all working as they should for the first time | 04:44 | ||
Geth | nqp: 650840d741 | (Samantha McVey)++ | docs/ops.markdown Document hasuniprop `moar` op |
05:30 | |
nqp: 091625799a | (Samantha McVey)++ | docs/ops.markdown Bring the unicmp_s op docs up to date |
05:33 | ||
samcv | now to figure out what checks for the single letter general category. cause i broke it. but i fixed | 05:38 | |
but all the other things work! that didn't work before | |||
m: use nqp; my $p = nqp::unipropcode('General_Category'); my $pv = nqp::unipvalcode($p, 'N'); nqp::hasuniprop('3', 0, $p, $pv).say | 05:51 | ||
camelia | 0? | ||
samcv | m: use nqp; my $p = nqp::unipropcode('General_Category'); my $pv = nqp::unipvalcode($p, 'N'); nqp::hasuniprop('3', 0, $p, $pv).say; say $pv | ||
camelia | 0?0? | ||
samcv | ugh i wish i had gdb for nqp | 05:52 | |
ah i figured it out. L is not under General_Category. it's its own category... well. i can fix this | 06:10 | ||
[Tux] | This is Rakudo version 2017.08-25-g7d1ece805 built on MoarVM version 2017.08.1-32-gcd41322e | 06:15 | |
csv-ip5xs 1.326 - 1.465 | |||
test 10.542 | |||
test-t 3.471 - 3.869 | |||
csv-parser 12.086 | |||
Geth | rakudo/nom: 1f6a782cb4 | skids++ | src/core/operators.pm Fix ::("GLOBAL") for RT#126523 |
06:39 | |
rakudo/nom: f1b086308d | niner++ (committed using GitHub Web editor) | src/core/operators.pm Merge pull request #1144 from skids/rt126523 Fix ::("GLOBAL") for RT#126523 |
|||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=126523 | ||
lizmat | is it me, or has spectest become significantly slower? | 08:54 | |
Files=1223, Tests=67666, 294 wallclock secs (14.02 usr 5.05 sys + 1976.39 cusr 208.74 csys = 2204.20 CPU) | |||
that seems 20% slower than before | |||
Geth | roast: 4e05357519 | (Elizabeth Mattijsen)++ | S02-names/pseudo.t Untodo test for RT #126523 |
09:16 | |
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=126523 | ||
nine | lizmat: could be commit c19e810e38ccd68c12d740a64a2f5045d6e00345 | 09:45 | |
lizmat tries a revert of that | 09:46 | ||
afk& | 09:51 | ||
Zoffix | m: say 139/132 | 10:24 | |
camelia | 1.053030? | ||
Zoffix | 5% slower for stresstest run | ||
Less of a diff in another run, but it might be long-running files that dictate my runs, not speed of Test.pm | 10:26 | ||
.tell ugexe even with your Test.pm patch, it's still producing invalid TAP, so perhaps the perf loss due to cas() isn't worth it? You can make your sample test thread safe by using a Channel: use Test; plan 4000; my $c = Channel.new; await ^200 .map: { start { for ^10 { $c.send: {ok 1}; $c.send: {ok 1}; } } }; $c.close; react { whenever $c {$_()} }; done-testing; | 10:42 | ||
yoleaux | Zoffix: I'll pass your message to ugexe. | ||
Zoffix | stmuk: I fixed IO::Child::Secure test failures you were having. Turns out RakudoPrereq stops working after module's precompiked | 11:11 | |
stmuk | Zoffix++ | 11:37 | |
dogbert17 | Zoffix: aren't you supposed to be resting :) | 11:38 | |
[Coke] | Zoffix: the poster doesn't say what community. | 12:03 | |
Zoffix | [Coke]: it's on purpose | 12:10 | |
[Coke] | OK. | ||
Zoffix | The idea is without specifying what community, even people outside Rakudo community would be compelled to join in | ||
dogbert17: I'm not sure. | |||
[Coke] | FYI, the camelia on my printout of the us letter is still borked. | ||
Zoffix | [Coke]: weird. No idea why :/ | ||
[Coke] | Looks fine in preview, but the print version looks like the border box surrounding the image has been moved a half inch, so parts of the image are cropped (but still in the butterfly shape) | ||
Skarsnik | Should the SA be annonced in the main page of perl6.org? | 12:12 | |
Zoffix | [Coke]: but the rest of the page looks fine? | ||
Skarsnik: oh yeah, it should | |||
[Coke] | Zoffix: yes. | 12:14 | |
Zoffix | [Coke]: here's an image version: temp.perl6.party/v1--CommunityBugS...Letter.jpg | 12:15 | |
[Coke] | (also something obscuring the eye on the right, which could be part of a stylized letter N, maybe.) | ||
Zoffix | Dunno why it comes out badly in PDF. Maybe the AI file exports badly. | ||
Or the PDF viewer you're using doesn't support something. | 12:16 | ||
Skarsnik | there is a small bacl dot at the right of camelia | ||
Zoffix | It's "TM" mark | ||
Skarsnik | oh right | 12:17 | |
should have zoomed huhu | |||
Zoffix | :) | ||
Skarsnik | still need to @array = () to clear an array? | 12:19 | |
timotimo | or @array = Empty | 12:20 | |
Skarsnik | I feel like a clear could have be better to force the gc to delete the elem maybe? | 12:22 | |
Zoffix | or undefine @array | ||
timotimo | the GC will pick up unreferenced elemens that were in the array all by itself | 12:23 | |
there is no api to tell the gc "this is dead now, take care of it" | |||
Skarsnik | could be annoying for people wanting to control a bit when a delete is call on an object to do stuff (closing socket? push data to file?) | 12:26 | |
Zoffix | Right, GC is not guaranteed to de done. All of that control should be done without relying on a call to DESTROY | 12:28 | |
moritz | hi all. I finally got around to creating the "rakudo" organization on appveyor, and have rakudo/rakudo builds run in that org: ci.appveyor.com/project/rakudo/rakudo | ||
Zoffix | cool | 12:29 | |
moritz | I think I can invite rakudo contributors to the appveyor org, so that they can change setting, trigger builds etc. | ||
anyone who wants that needs an appveyor account, and need to /msg me the email address of that account | 12:30 | ||
timotimo | fantastic, moritz! | ||
Zoffix | moritz: [email@hidden.address] please and thanks :) | 12:31 | |
moritz | being on vacation (and having good Internet connection at the same time) does have its advantages | ||
Zoffix: done | 12:32 | ||
Zoffix | \o/ moritz++ thanks | 12:33 | |
Skarsnik | I wonder if I should do a shorter version of my .Str method for my type in gptrixie Typedef<xmlDocPtr>->«Typedef<xmlDoc>->«_xmlDoc»*» is kinda not fun to read | 12:38 | |
dogbert17 | Zoffix: do you know if someone has made changes to Test.pm recently, it seems broken | 14:13 | |
hmm, it seems that the answer is yes, well it's broken now :( | 14:15 | ||
Zoffix | Broken how? | ||
dogbert17 | dogbert@dogbert-VirtualBox ~/repos/rakudo $ ./perl6-m t/01-sanity/53-transpose.t | 14:16 | |
1..26 | |||
Cannot atomic load from an integer lexical not of the machine's native size | |||
in sub proclaim at /home/dogbert/repos/rakudo/lib/Test.pm6 (Test) line 678 | |||
Y | |||
Zoffix | ehehe :) | ||
dogbert17 | :) | ||
perhaps it's the 32 bit curse | |||
Zoffix | Yeah, I think it's the recent change that's causing that: github.com/rakudo/rakudo/pull/1143/files | 14:18 | |
m: my int $x = 42; cas $x, -> $i { $i + 1 } | |||
camelia | ( no output ) | ||
Zoffix | Does that fail on your box? | ||
and my atomicint $x = 42; cas $x, -> $i { $i + 1 } prolly doesn't | 14:19 | ||
dogbert17 | yup | ||
the second one works :) | 14:20 | ||
and the first example fails | 14:21 | ||
Zoffix | Maybe you could PR a fix then: see which variables `cas` touches in this PR github.com/rakudo/rakudo/pull/1143/files and then make them atomicint instead of just int: github.com/rakudo/rakudo/blob/nom/lib/Test.pm6 | ||
j: my atomicint $x = 42; cas $x, -> $i { $i + 1 } | |||
camelia | java.nio.file.NoSuchFileException: /nqp/lib/Perl6/BOOTSTRAP.jar? in <anon> (gen/jvm/ModuleLoader.nqp:90)? in load_module (gen/jvm/ModuleLoader.nqp:77)? in <anon> (gen/jvm/CORE.setting)? in <anon> (gen/jvm/ModuleLoader.nqp:255)? in load_sett… | ||
dogbert17 | suspect it's the number of tests | ||
Zoffix | Dunno if atomicint works on JVM | ||
dogbert17 | interesting | 14:22 | |
there's a problem/bug lurking here, not even the example in jnthn's documentation works | 14:30 | ||
ugexe | thats strange. i would expect such an error once you reach a shit ton of tests, but not with 1..26 | 14:49 | |
yoleaux | 10:42Z <Zoffix> ugexe: even with your Test.pm patch, it's still producing invalid TAP, so perhaps the perf loss due to cas() isn't worth it? You can make your sample test thread safe by using a Channel: use Test; plan 4000; my $c = Channel.new; await ^200 .map: { start { for ^10 { $c.send: {ok 1}; $c.send: {ok 1}; } } }; $c.close; react { whenever $c {$_()} }; done-testing; | ||
dogbert17 | ugexe: I was quite confused ad first when I suddenly got masses of test failures | 14:59 | |
*at | |||
ugexe | i suppose `my int $x = 42; cas $x, -> $i { $i + 1 }` works on 2017.06 though? | 15:00 | |
dogbert17 | it works on 2017.07 (which I have) | 15:10 | |
ilmari | m: my atomicint $x = 42; cas $x, * + 1; say $x | 15:11 | |
camelia | 43? | ||
ugexe | ah yeah i meant 2017.07 | 15:13 | |
Geth | rakudo/nom: 3e13825ba9 | (Nick Logan)++ | lib/Test.pm6 Revert "Fix duplicate test count id" This reverts commit c19e810e38ccd68c12d740a64a2f5045d6e00345. `my int $x = cas ...` gives a "machine's native size" error on a 32 bit system. And since there is no atomics in JVM yet we don't want to use them here (yet). See: irclog.perlgeek.de/perl6-dev/2017-...i_15090989 |
15:14 | |
dogbert17 | m: my int32 $x = 42; cas $x, -> $i { $i + 1 } | ||
camelia | Cannot atomic load from an integer lexical not of the machine's native size? in block <unit> at <tmp> line 1?? | ||
Skarsnik | bisectable6, my int32 $x = 42; cas $x, -> $i { $i + 1 } | 15:16 | |
bisectable6 | Skarsnik, Bisecting by exit code (old=2015.12 new=f1b0863). Old exit code: 0 | ||
Skarsnik, bisect log: gist.github.com/319713e372616d8bda...e7d9b6333f | |||
Skarsnik, There are 18 candidates for the first “new” revision. See the log for more details | |||
ugexe | dont bisect cas, you wont get meaningful results | 15:18 | |
dogbert17 | ugexe: your revert fixes the problem I had | ||
ugexe | dogbert17: cool, but i think you have discovered a bug none-the-less | ||
im aware that what i was doing was not exactly koscher, but i dont think that error should have happened | 15:19 | ||
dogbert17 | I agree, the example 1n docs.perl6.org/type/atomicint also fails on my machine, i.e. the one starting with 'my int $master = 0; ...' | 15:22 | |
ugexe | dogbert17: do any other examples fail? | 15:24 | |
(any of the atomic stuff... they all use cas under the hood) | 15:25 | ||
dogbert17 | let me check | 15:26 | |
ugexe | it seems something like your platform supports 64 bit native int, but not 64 bit atomics. and that `my int $x = 0;` is creating a 64 bit int | 15:28 | |
Zoffix | `my int $x` is always 64-bit on MoarVM. | ||
ugexe | i suppose i was expecting `int` to grow to the larger size | ||
Zoffix | And I'm guessing since native int is 32-bit on dogbert17's box, it can't be automatically changed, hence the error | 15:29 | |
Skarsnik | m32: x) | ||
ugexe | i wonder if a dcas/mcas lets you do 64 bit swaps with two 32 bit ints... | 15:31 | |
dogbert17 | ugexe: the example I mentioned is the only one which is 'incorrect' on the doc page in question | ||
ugexe | there is already a proof you can do multi word cas with a normal cas | ||
dogbert17 is running a 32 bit vm (VirtualBox) on a 64 bit host | 15:32 | ||
ugexe | my int[32|64] $active = 0; $active?++; work? i did not expect that | 15:33 | |
dogbert17 | the int64 examples fail, but that is explicitly stated in the comment so I ignored that one | 15:35 | |
ilmari | ugexe: it will work if your CPU supports atomic operations on ints of those sizese | ||
dogbert17 Ryzen 1600 | 15:36 | ||
ilmari | atomicint is just an alias for an appropriately-sized int that your CPU supports atomics on | ||
dogbert17 relocates & | 15:37 | ||
ugexe | right, i still have it stuck in my head that it int grows | ||
anyways for anyone looking at what the purpose of atomics are might do well to read texlution.com/post/golang-lock-fre...mic-value/ | 15:46 | ||
Zoffix | Thanks. | 15:48 | |
.tell MasterDuke_ you were curious about purpose of atomics: texlution.com/post/golang-lock-fre...mic-value/ | |||
yoleaux | Zoffix: I'll pass your message to MasterDuke_. | ||
ugexe | e.g. its not really something suited to making a casual blog post about its usefulness - its a primitive for creating lock-free algorithms. so its more suited to writing white papers on algorithms or examples in compsci books (besides writing the actual algorithms themselves). not that a blog post wont eventually materialize... | 15:49 | |
I would recommend The Art of Multiprocessor Programming for more theory | 15:50 | ||
jdv79 | is that in a series with the mop book? | 15:57 | |
ilmari | different publishers | 16:01 | |
Morgan Kaufman vs. MIT Press | |||
pmurias | shouldn't we be randomising the function in our hashes to avoid the potential denial of service attack on hashes? | 16:13 | |
Zoffix thought that was already the case | 16:14 | ||
pmurias | my %foo; %foo<a> := 1; %foo<b> := 6; %foo<c> := 5; %foo<d> := 3; %foo<e> := 2; %foo<f> := 4; for %foo -> $kv { say("kv: {$kv.key} {$kv.value}"); } | 16:17 | |
m: my %foo; %foo<a> := 1; %foo<b> := 6; %foo<c> := 5; %foo<d> := 3; %foo<e> := 2; %foo<f> := 4; for %foo -> $kv { say("kv: {$kv.key} {$kv.value}"); } | |||
camelia | kv: a 1?kv: e 2?kv: d 3?kv: f 4?kv: c 5?kv: b 6? | ||
pmurias | m: my %foo; %foo<a> := 1; %foo<b> := 6; %foo<c> := 5; %foo<d> := 3; %foo<e> := 2; %foo<f> := 4; for %foo -> $kv { say("kv: {$kv.key} {$kv.value}"); } | 16:18 | |
camelia | kv: a 1?kv: e 2?kv: d 3?kv: f 4?kv: c 5?kv: b 6? | ||
pmurias | Zoffix: not on the MoarVM backend | 16:19 | |
Zoffix | :( | ||
Skarsnik | ugexe, if you want to bother with that. I am retesting github.com/Skarsnik/gptrixie/tree/reftype this was mkeing rakudo from 2016 segfault (sometime just after begin, some time laster). but if you comment github.com/Skarsnik/gptrixie/blob/...ss.pm6#L73 it stop segfaulting (it will error because when reaching the code that use the operator)) | 17:00 | |
it still acts weirdly | 17:02 | ||
travis-ci | Rakudo build failed. Nick Logan 'Revert "Fix duplicate test count id" | 17:42 | |
travis-ci.org/rakudo/rakudo/builds/270038465 github.com/rakudo/rakudo/compare/f...13825ba984 | |||
buggable | [travis build above] ? Did not recognize some failures. Check results manually. | ||
Zoffix | Segfault | 17:43 | |
ugexe | moritz: can you add [email@hidden.address] to the appveyor group? | 17:45 | |
Zoffix | ugexe ? could someone bump the nqp and moar versions so the appveyor will go green? | ||
Does that still need to be done? | |||
ugexe | yeah | 17:46 | |
Zoffix | k, I'll do it now | ||
moritz | ugexe: done | 17:47 | |
stmuk | stmuk.wordpress.com/2017/08/30/swi...shop-2017/ | 17:49 | |
Geth | rakudo/nom: 1f39d6843c | (Nick Logan)++ (committed using GitHub Web editor) | README.md Update appveyor badge link |
17:50 | |
Zoffix | stmuk++ | 17:54 | |
ZOFFLOP: t/spec/S17-promise/nonblocking-await.t | 18:14 | ||
Geth | nqp: d01668b1c2 | (Zoffix Znet)++ | tools/build/MOAR_REVISION Bump MoarVM MoarVM bump brought commits: github.com/MoarVM/MoarVM/compare/2...4-g7d5cd52 7d5cd52 Merge pull request #668 from MasterDuke17/patch-2 fda68a6 Align --tracing usage statement ... (23 more lines) |
||
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...4-g7d5cd52 | |||
rakudo/nom: 8a215876ce | (Zoffix Znet)++ | tools/build/NQP_REVISION Bump NQP NQP bump brought commits: github.com/perl6/nqp/compare/2017....4-gd01668b d01668b Bump MoarVM 0916257 Bring the unicmp_s op docs up to date ... (45 more lines) |
|||
¦ rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....4-gd01668b | 18:15 | ||
Zoffix | ZOFVM: Files=1273, Tests=144633, 134 wallclock secs (20.62 usr 3.07 sys + 2687.54 cusr 212.86 csys = 2924.09 CPU) | ||
AlexDaniel | ? Community Bug SQUASHathon blogs.perl.org/users/zoffix_znet/20...athon.html | 19:04 |