timotimo | i refrained from putting a ™ because that'd just upset some compilers | 00:00 | |
samcv | oh. i see | ||
heh | |||
probaly wouldn't since it's utf-8 | |||
almost done reviewing | |||
ok done | 00:06 | ||
other than those two things it looks good | 00:07 | ||
timotimo | cool | ||
let me look | |||
samcv | that code is scary | ||
the whole function i mean :P | |||
timotimo | it's really big, yeah | ||
samcv | yep | 00:08 | |
Geth | MoarVM/join_handle_empty_string_and_sep: a79247d074 | (Timo Paulssen)++ | src/strings/ops.c joined two ifs, make code more readable hopefully |
00:10 | |
timotimo | i'm not sure what you meant with "else if loop" though | ||
samcv | you did exactly what i wanted | 00:11 | |
very good | |||
timotimo | great, feel free to hit "merge" | 00:12 | |
samcv | also. will be nice to add a test to nqp test suite | 00:14 | |
to hit that section of code in the coverage | |||
timotimo | right | ||
samcv | probably just need one test | ||
or a few. whatever you want | |||
at least one thuogh | |||
Geth | MoarVM: bf0d5fc8d4 | (Timo Paulssen)++ | src/strings/ops.c join: extra check for empty string + empty sep this could cause \r and \n to be kept as two graphemes when they were joined with an empty string in between and the empty string as the separator. |
00:15 | |
MoarVM: a79247d074 | (Timo Paulssen)++ | src/strings/ops.c joined two ifs, make code more readable hopefully |
|||
MoarVM: dcbaa7419b | (Samantha McVey)++ | src/strings/ops.c Merge pull request #576 from MoarVM/join_handle_empty_string_and_sep join: extra check for empty string + empty sep |
|||
MoarVM: c230598af5 | (Samantha McVey)++ | .gitignore Add callgrind files to .gitignore |
00:16 | ||
samcv | gonna generate cover again now actualy. curious about looking at thet function | ||
wow timotimo cry.nu/coverage/libmoar/coverage/h...html#L1225 | 00:26 | ||
that's super interesting. you can see which parts executed how much of that conditional | |||
timotimo | neat | ||
i suppose we run with sgraphs == 0 real often | 00:27 | ||
say, could we benefit from recording at what grapheme offset we discovered that our concat is no longer stable? | |||
so our re_nfg can skip the first n graphs? | |||
samcv | that would be very nice | ||
i have been dreaming recently about re_nfg | 00:28 | ||
for the concat op | |||
can i shorten a string, by calling free on some of the bytes at the end? | 00:29 | ||
and changing the number of graphs obviously | |||
but can that be done without causing anything weird to happen? | 00:30 | ||
timotimo | no, you cannot free part of an area that's been malloced | ||
if you want to change the size of an area, you can realloc | |||
which will copy data over for you | |||
but you have to give it the original pointer to the start of the area | |||
samcv | that moves the whole thing right | ||
timotimo | yeah | ||
samcv | :\ | ||
timotimo | otherwise you'd have to malloc a new place and copy over only the parts you want | 00:31 | |
samcv | faster than re_nfg the whole string though | ||
en.cppreference.com/w/c/memory/realloc this seems to say it can be done by resizing the area | 00:33 | ||
but it looks like i cannot count on a) or b) to happen | |||
timotimo | yes, but only in some instances | ||
samcv | yeah | ||
hm | |||
can i just not realloc | |||
and change the number of codepoints | |||
timotimo | yeah, you can | ||
samcv | cool. | ||
timotimo | it'd be problematic if it used the FSA | 00:34 | |
the FSA relies upon you having the exact size available when you free it | |||
samcv | FSA = finite state automato? | 00:36 | |
timotimo | nope, fixed sized allocator | 00:37 | |
samcv | that makes way more sense | 00:38 | |
where is the code that free's strings? | 00:39 | ||
does it use the graphs to dealloc it? | |||
timotimo | the graphs? | ||
samcv | grapheme length | 00:40 | |
timotimo | the code should be in 6model/reprs/MVMString.c | ||
like gc_free or something | |||
oh btw | 00:41 | ||
there's another competitor to appimages: flatpak.org/ | |||
samcv | yeah | ||
hmm | 00:42 | ||
oh yeah reminds me what i was doing before i loqked at the PR | |||
timotimo | flatpack aka xdg-app | ||
samcv | do you need to install flatpack? | ||
to use apps | |||
timotimo | i have no idea | 00:43 | |
samcv | i think so. | ||
timotimo | Flatpak is designed to run inside a desktop session and relies on certain session services, such as a dbus session bus and a systemd --user instance. This makes Flatpak not a good match for a server. | 00:44 | |
However, the build features of Flatpak run fine outside a session, so you can build things on a server. | |||
samcv | hmm | 00:45 | |
timotimo | ah, yeah, you "flatpack run ..." | ||
samcv | ok i changed all the directories in the files. heh | ||
timotimo | like "flatpack run org.perl6.rakudostar" or something | ||
samcv | now gonna see if i can get this appimage working | ||
hmm. both are cool | |||
timotimo | i should really be going now :) | ||
good luck! | 00:46 | ||
samcv | well i can't launch the program. i get a segfault | ||
timotimo | perfect | ||
samcv | i did that on purpose! | 00:47 | |
timotimo | failure is the only path toward success | ||
fail early, fail often | |||
-> succeed gloriously | |||
samcv | uh paths are to ././/bin/../share/nqp/lib/MAST/Ops.nqp | ||
ohhhhh i get it | 00:48 | ||
same number of characters. sneaky | |||
that's why i destroyed everything | |||
hopefully my directory is an even number of characters long | 00:49 | ||
timotimo | that sounds very robust | ||
oh, you're padding it with ./././././ on the left? | |||
samcv | yes | ||
timotimo | yeah, um, i'll leave now, k? | 00:50 | |
samcv | XD | ||
i guess you could install it in /6 | |||
and then just replace it with ./ | |||
and it would not be silly | 00:51 | ||
mst | normal approach here is /tmp/zzzzzzzzzzzzzzzzzzz/ and then overwrite and truncate the C strings in the binaries | 01:16 | |
samcv | this sounds much better listaller.tenstral.net/docs/chap-Li...Relocation | 01:19 | |
you just compile it in with your program and uh | 01:20 | ||
magic | |||
theoretically | |||
01:48
ilbot3 joined
|
|||
mst | samcv: depending on the goal, nixos.org/patchelf.html ? | 01:56 | |
02:38
Guest20495 joined
|
|||
samcv | timotimo, do you think my memmem PR is ready now? | 03:46 | |
6 days till release. would like to merge sometime soon to give some breathing room | 03:50 | ||
Geth | MoarVM: 39919d9586 | (Samantha McVey)++ | src/strings/ops.c Have two part loop in collapse strands to make loop tighter when possible If we find out that we can't fit a string into 8 bits, we don't need to check anymore whether or not subsequent characters are > 127 or < -127. cygx++ for the suggestion Also eliminates the can_use_8bit variable |
03:51 | |
MoarVM: ecf4e388aa | (Samantha McVey)++ | src/strings/ops.c Merge pull request #573 from samcv/strands2 Have two part loop in collapse strands to make loop tighter when possible |
|||
04:54
mojca joined
|
|||
samcv | just added some more nqp tests. so can have unicode strings be tested in the tests to | 05:23 | |
up to 5,382 tests. very good. gonna restart travis and appveyor, though don't forsee any issues | 05:24 | ||
Geth | MoarVM/master: 11 commits pushed by (Samantha McVey)++ review: github.com/MoarVM/MoarVM/compare/e...e8231a303e |
06:54 | |
08:08
spebern joined
08:11
domidumont joined
08:17
domidumont joined
09:10
spebern left
|
|||
samcv | i added some tests that should theoritically catch off byte errors if i did my little/big endian properly github.com/perl6/nqp/commit/34b7c6...5779ec4c85 | 09:15 | |
i think i reversed the comments though heh | 09:20 | ||
anyway on little endian it should test this: (10000000 00000000 00000000 00000000) | (10000000 00000000 00000000 00000000) | 09:23 | ||
Err, this i mean, (10000000 00000000 00000000 00000000) | (10000000 00000000 00000000 00000000) | 09:24 | ||
somebody can correct be if i am wrong that \x[80]\x[100000] stored in 32bit numbers on little endian will be stored like that | |||
Geth | MoarVM: spebern++ created pull request #577: add CStructArray representation to embed structs inside of an array |
09:26 | |
MoarVM: 400f159fc4 | (Samantha McVey)++ | build/Makefile.in Add 3rdparty/memmem.h to Makefile.in So make will detect if it has changed and act accordingly. |
09:56 | ||
10:58
zakharyas joined
11:10
tomboy64 joined
12:52
AlexDaniel joined
13:21
mojca joined
13:33
mojca left
|
|||
Zoffix reminds about github.com/MoarVM/MoarVM/pull/570 | 14:24 | ||
Geth | MoarVM: 1588653d0b | (Zoffix Znet)++ | tools/parse_coverage_report.p6 Fix coverage parser Updates the parser to handle our new SETTING::src/core format |
14:27 | |
MoarVM: 829c164a32 | timo++ | tools/parse_coverage_report.p6 Merge pull request #570 from zoffixznet/fix-coverage-parser Fix coverage parser |
|||
timotimo | thanks, Zoffix | ||
Zoffix | \o/ | 14:29 | |
15:48
zakharyas joined
15:59
domidumont joined
16:04
Ven joined
|
|||
Geth | MoarVM/master: 6 commits pushed by (Timo Paulssen)++
|
16:50 | |
timotimo | memory usage is going to fall so hard | ||
Zoffix | :o | 16:51 | |
timotimo | very old changes, btw | 16:53 | |
17:35
spebern joined
17:44
stmuk_ joined
18:47
spebern joined
20:50
brrt joined
|