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