Time |
Nick |
Message |
00:45 |
|
bisectable6 joined #moarvm |
01:48 |
|
ilbot3 joined #moarvm |
01:48 |
|
Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at http://irclog.perlgeek.de/moarvm/today |
02:19 |
samcv |
soooooooooo |
02:19 |
samcv |
samcv-- ;) |
02:19 |
samcv |
pretty sure i fixed the bug though. for indexic |
02:20 |
samcv |
really suprised that testing didn't catch it, but it only shows up in certain cases in perl6 |
02:20 |
samcv |
but it's pretty bad of a bug |
02:20 |
samcv |
m: say "aaaaaaaabcd" ~~ m:i/abcd111111/; |
02:20 |
camelia |
rakudo-moar 9ed89d: OUTPUT: «「abcd」» |
02:20 |
samcv |
:( |
02:34 |
samcv |
bbs |
02:34 |
* Zoffix |
gives samcv the club membership card |
03:03 |
* TimToady |
has two membership cards already, though I haven't activated the second one yet |
03:53 |
mst |
Zoffix: welp, travis completely ignored my attempt to help |
03:53 |
mst |
https://twitter.com/shadowcat_mst/status/855162202088591360 |
04:55 |
mst |
I suppose I'll have to email them |
04:56 |
* mst |
grumbles |
05:37 |
samcv |
ok. got tests in nqp suite and roast. now to finalize patch |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: 21bfb7ef30 | (Samantha McVey)++ | src/strings/ops.c |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: Fix bug in index ignorecase and equal at ignorecase |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: This bug occurred when the entire length of the haystack was searched |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: and all of the graphemes matched the needle. |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: If the needle exceeded the length of the haystack past that point, |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: it would erroneously think there was a match there, as it only checked |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: <…commit message has 18 more lines…> |
05:54 |
Geth |
¦ MoarVM/indexic_rescue: review: https://github.com/MoarVM/MoarVM/commit/21bfb7ef30 |
05:55 |
samcv |
indexic rescue! |
05:56 |
Geth |
¦ MoarVM: samcv++ created pull request #586: Fix bug in index ignorecase and equal at ignorecase |
05:56 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/pull/586 |
05:57 |
samcv |
actually just thought of one ridiculous scenario i haven't planned for. heh. if the haystack is composed 1/2 or more of 'st', and the string is at the maximum length for a 32bit signed integer. |
05:57 |
samcv |
it could have some odd behavior.. |
06:06 |
Geth |
¦ MoarVM/indexic_rescue: a507af5c4b | (Samantha McVey)++ | src/strings/ops.c |
06:06 |
Geth |
¦ MoarVM/indexic_rescue: Made h_expansion able to hold integers 3x larger than MVMStringIndex |
06:06 |
Geth |
¦ MoarVM/indexic_rescue: |
06:06 |
Geth |
¦ MoarVM/indexic_rescue: Ensure return value can hold numbers at least 3x higher than MVMStringIndex. |
06:06 |
Geth |
¦ MoarVM/indexic_rescue: Theoretically if the string has all ffi ligatures and 1/3 the max size of |
06:06 |
Geth |
¦ MoarVM/indexic_rescue: MVMStringIndex in length, we could have some weird results. |
06:06 |
Geth |
¦ MoarVM/indexic_rescue: review: https://github.com/MoarVM/MoarVM/commit/a507af5c4b |
06:09 |
samcv |
on travis i get "Unrecognized revision specifier '9999-please-do-not-use-these-8-g0f25317'" when this is run perl Configure.pl --prefix=$MOAR_PREFIX --backends=moar; |
06:20 |
Geth |
¦ MoarVM/indexic_rescue: 49c93fe2b9 | (Samantha McVey)++ | src/strings/ops.c |
06:20 |
Geth |
¦ MoarVM/indexic_rescue: Made h_expansion able to hold integers 3x larger than MVMStringIndex |
06:20 |
Geth |
¦ MoarVM/indexic_rescue: |
06:20 |
Geth |
¦ MoarVM/indexic_rescue: Ensure return value can hold numbers at least 3x higher than MVMStringIndex. |
06:20 |
Geth |
¦ MoarVM/indexic_rescue: Otherwise, theoretically, if the haystack has all ffi ligatures and was 1/3 |
06:20 |
Geth |
¦ MoarVM/indexic_rescue: the max size of MVMStringIndex in length, we could have some weird results. |
06:20 |
Geth |
¦ MoarVM/indexic_rescue: review: https://github.com/MoarVM/MoarVM/commit/49c93fe2b9 |
06:29 |
samcv |
timotimo, you broke travis :( |
06:29 |
samcv |
or it broke itself aronud the time you merged that PR 9 hours ago |
06:31 |
samcv |
or maybe it was a nqp change. hm |
06:36 |
Geth |
¦ MoarVM: b57075e8bd | (Samantha McVey)++ | .travis.yml |
06:36 |
Geth |
¦ MoarVM: Add some more debugging to try and fix the Travis CI build |
06:36 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/b57075e8bd |
06:43 |
samcv |
timotimo, you broke build on appveyor... src\profiler\telemeh.c(3) : fatal error C1083: Cannot open include file: 'pthread.h': No such file or directory |
07:03 |
Geth |
¦ MoarVM: de3e5cfbee | (Samantha McVey)++ | .travis.yml |
07:03 |
Geth |
¦ MoarVM: More travis debug |
07:03 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/de3e5cfbee |
07:15 |
|
domidumont joined #moarvm |
07:18 |
Geth |
¦ MoarVM: 21bfb7ef30 | (Samantha McVey)++ | src/strings/ops.c |
07:18 |
Geth |
¦ MoarVM: Fix bug in index ignorecase and equal at ignorecase |
07:18 |
Geth |
¦ MoarVM: |
07:18 |
Geth |
¦ MoarVM: This bug occurred when the entire length of the haystack was searched |
07:18 |
Geth |
¦ MoarVM: and all of the graphemes matched the needle. |
07:18 |
Geth |
¦ MoarVM: |
07:18 |
Geth |
¦ MoarVM: If the needle exceeded the length of the haystack past that point, |
07:18 |
Geth |
¦ MoarVM: it would erroneously think there was a match there, as it only checked |
07:18 |
Geth |
¦ MoarVM: <…commit message has 18 more lines…> |
07:18 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/21bfb7ef30 |
07:18 |
Geth |
¦ MoarVM: 49c93fe2b9 | (Samantha McVey)++ | src/strings/ops.c |
07:18 |
Geth |
¦ MoarVM: Made h_expansion able to hold integers 3x larger than MVMStringIndex |
07:18 |
Geth |
¦ MoarVM: |
07:18 |
Geth |
¦ MoarVM: Ensure return value can hold numbers at least 3x higher than MVMStringIndex. |
07:18 |
Geth |
¦ MoarVM: Otherwise, theoretically, if the haystack has all ffi ligatures and was 1/3 |
07:18 |
Geth |
¦ MoarVM: the max size of MVMStringIndex in length, we could have some weird results. |
07:18 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/49c93fe2b9 |
07:18 |
Geth |
¦ MoarVM: 8a3deb9b7b | niner++ (committed using GitHub Web editor) | src/strings/ops.c |
07:18 |
Geth |
¦ MoarVM: Merge pull request #586 from MoarVM/indexic_rescue |
07:18 |
Geth |
¦ MoarVM: |
07:18 |
Geth |
¦ MoarVM: Fix bug in index ignorecase and equal at ignorecase |
07:18 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/8a3deb9b7b |
07:21 |
|
domidumont joined #moarvm |
07:32 |
Geth |
¦ MoarVM: b25147278b | (Stefan Seifert)++ | Configure.pl |
07:32 |
Geth |
¦ MoarVM: Ignore the bogus 9999-please-do-not-use-these tag when generating version |
07:32 |
Geth |
¦ MoarVM: |
07:32 |
Geth |
¦ MoarVM: Someone seems to have created a bogus tag. Luckily it's a so called |
07:32 |
Geth |
¦ MoarVM: lightweight tag, which we can easily ignore by not telling git describe |
07:32 |
Geth |
¦ MoarVM: to include those. We really only want to use tags with author |
07:32 |
Geth |
¦ MoarVM: information anyway. |
07:32 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/b25147278b |
08:16 |
|
domidumont joined #moarvm |
08:19 |
Geth |
¦ MoarVM: 96ad4de25d | (Samantha McVey)++ | .travis.yml |
08:19 |
Geth |
¦ MoarVM: Travis: readlink doesn't have `-f` on MacOS so make our own solution |
08:19 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/96ad4de25d |
09:06 |
timotimo |
samcv: i threw out the 9999 tag |
09:07 |
samcv |
telemetry is failing on win |
09:07 |
samcv |
trying to use ifdefs so it doesn't compile on windows |
09:07 |
samcv |
appveyor building now |
09:10 |
timotimo |
oh, thanks |
09:10 |
samcv |
ack |
09:10 |
samcv |
still not |
09:11 |
samcv |
maybe it's trying to include the .h from the makefile? idk |
09:11 |
samcv |
i #if !defined(_WIN_32) |
09:11 |
timotimo |
how do we do thread stuff in other parts of moarvm? all with libuv, i guess? |
09:11 |
samcv |
in moar.h where the .h file is included |
09:11 |
samcv |
yes |
09:11 |
timotimo |
don't you mean __WIN32__? |
09:11 |
timotimo |
or ... __WIN_32__? |
09:11 |
samcv |
MABYE |
09:11 |
samcv |
___________WIN32_________ |
09:12 |
samcv |
idk i use #if defined(_WIN32) in memmem.h |
09:12 |
samcv |
and it works |
09:12 |
timotimo |
fwiw i put the "please do not use these" tag in so that the release page on moarvm's github has an indication that you shouldn't use it |
09:12 |
timotimo |
i used to delete all the releases manually |
09:12 |
timotimo |
but every single release popped up when a new one was made |
09:12 |
samcv |
maybe we should just revert it |
09:12 |
samcv |
so that we can bump NQP to get the string fix |
09:13 |
samcv |
more point releases! yay |
09:14 |
timotimo |
now the question becomes: do we bump versions of moar and nqp by just .01 |
09:14 |
samcv |
but yeah see text here https://github.com/MoarVM/MoarVM/pull/586 how it works now. nothing is changed with what the ops returned but internal loop returns different values now |
09:14 |
samcv |
... |
09:14 |
timotimo |
or do we make it "catch up" to rakudo's point release version? |
09:14 |
samcv |
idk |
09:14 |
samcv |
i think we should bump it all together for less confusion |
09:14 |
timotimo |
yeah |
09:15 |
samcv |
but yeah we need a way for the indexic op to return not just position, but how many graphemes got expanded in the search |
09:15 |
samcv |
for equatic it's more simple because it only is boolean response |
09:16 |
samcv |
so the internal loop returns -1 for no match, and 0 or more for a positive match |
09:16 |
samcv |
0 if no expanded characters and then more depending on how many haystack graphs expanded |
09:16 |
samcv |
but idk what api to use if we want rakudo and nqp to know about this info |
09:16 |
samcv |
cause |
09:17 |
samcv |
m: say "abstaa" ~~ m:i/st/ |
09:17 |
camelia |
rakudo-moar 9ed89d: OUTPUT: «「sta」» |
09:17 |
timotimo |
i'll change telemeh to use uv_thread_create |
09:17 |
samcv |
it has no clue about expand/unexponding chars |
09:17 |
samcv |
only knows the offset |
09:17 |
samcv |
idk can we bitshift it? and return a 64 bit value bitshifted :P |
09:17 |
samcv |
haha |
09:18 |
samcv |
or any other fancier things? |
09:18 |
samcv |
i mean we could retun an object not an integer but that seems like more work... |
09:18 |
samcv |
or array or whatever |
09:18 |
samcv |
thx timotimo |
09:20 |
samcv |
timotimo, uv handles arll the platform specific stuff for us. so super nice |
09:21 |
samcv |
abstraction ftw |
09:22 |
timotimo |
yeah |
09:22 |
timotimo |
it looks like uv_thread and friends are basically just pthreads |
09:22 |
timotimo |
except it also works on windows |
09:26 |
Geth |
¦ MoarVM: 5fde54c608 | (Timo Paulssen)++ | src/profiler/telemeh.c |
09:26 |
Geth |
¦ MoarVM: use uv threads instead of pthread for windows' sake |
09:26 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/5fde54c608 |
09:27 |
timotimo |
there we go |
09:43 |
samcv |
well not pthreads on windows. but yeah |
09:43 |
samcv |
timotimo, have you tested on appveyor? |
09:44 |
timotimo |
i have not :< |
09:44 |
timotimo |
i'll run it now, though |
09:44 |
timotimo |
it's going now |
09:48 |
samcv |
timotimo, i see pthread there |
09:48 |
samcv |
in telemetry_finish |
09:48 |
samcv |
uv_thread_join(&backgroundSerializationThread); |
09:48 |
samcv |
pthread_join(backgroundSerializationThread, NULL); |
09:50 |
timotimo |
oh lord |
09:50 |
timotimo |
i forgot to delete the second line |
09:51 |
Geth |
¦ MoarVM: 5d13af660b | (Timo Paulssen)++ | src/profiler/telemeh.c |
09:51 |
Geth |
¦ MoarVM: remove accidentally left-over pthread line |
09:51 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/5d13af660b |
09:51 |
timotimo |
i should have done this in a branch and had you code-review |
09:51 |
timotimo |
then i could have amended the commit and not have a shameful fix commit like that |
09:51 |
timotimo |
src\profiler\telemeh.c(5) : fatal error C1083: Cannot open include file: 'unistd.h': No such file or directory |
09:51 |
timotimo |
no way! |
09:52 |
samcv |
yes |
09:52 |
timotimo |
oh it's actually a posix thing? |
09:52 |
samcv |
many issues |
09:52 |
samcv |
yep |
09:52 |
samcv |
why do you even need it? |
09:52 |
timotimo |
seems like sleep uses it |
09:52 |
timotimo |
i bet uv has a sleep function, too |
09:52 |
samcv |
yes |
09:53 |
timotimo |
it does not |
09:53 |
timotimo |
the examples just use sleep(1) |
09:55 |
timotimo |
https://gist.github.com/luoyetx/6b86f8b2732eca09177f - that seems easy enough? |
09:55 |
samcv |
did you include libuv |
09:55 |
timotimo |
yeah |
09:56 |
timotimo |
otherwise how would the uv_ functions or the structs work? |
09:56 |
samcv |
we don't use sleep anywhere |
09:56 |
samcv |
except telemeh |
09:57 |
samcv |
they have timers |
09:58 |
samcv |
timotimo, uv_sleep |
09:58 |
samcv |
or maybe uh |
09:59 |
samcv |
there is uv_sleep |
09:59 |
samcv |
try that |
09:59 |
samcv |
void uv_sleep(int msec); |
10:00 |
timotimo |
why didn't i find it in the docs? >_< |
10:00 |
samcv |
it doesn't exist |
10:00 |
samcv |
well it does in the tests |
10:00 |
timotimo |
m) |
10:00 |
samcv |
in libuv/test |
10:00 |
timotimo |
fantastic |
10:00 |
samcv |
so it's somewhere |
10:00 |
samcv |
oh |
10:01 |
samcv |
test/runner-win.c and test/runner-unix.c |
10:01 |
timotimo |
./libmoar.so: undefined reference to `uv_sleep' |
10:01 |
samcv |
yeah |
10:01 |
timotimo |
gr8 |
10:01 |
samcv |
it's in the test folder |
10:02 |
samcv |
void uv_sleep(int msec) { |
10:02 |
samcv |
Sleep(msec); |
10:02 |
samcv |
} |
10:02 |
timotimo |
is that from windows.h? |
10:02 |
samcv |
or for windows void uv_sleep(int msec) { |
10:02 |
samcv |
usleep(msec * 1000); |
10:02 |
samcv |
} |
10:02 |
samcv |
uhm |
10:02 |
samcv |
look at task.h |
10:03 |
timotimo |
yeah ... |
10:03 |
timotimo |
but i meant Sleep |
10:03 |
samcv |
oh |
10:05 |
timotimo |
maybe this is it. |
10:05 |
Geth |
¦ MoarVM/telemeh_windows_port: 15fce67770 | (Timo Paulssen)++ | src/profiler/telemeh.c |
10:05 |
Geth |
¦ MoarVM/telemeh_windows_port: steal uv_sleep from their test suite |
10:05 |
Geth |
¦ MoarVM/telemeh_windows_port: |
10:05 |
Geth |
¦ MoarVM/telemeh_windows_port: need proper attribution somewhere, still. |
10:05 |
Geth |
¦ MoarVM/telemeh_windows_port: review: https://github.com/MoarVM/MoarVM/commit/15fce67770 |
10:05 |
timotimo |
look, i made it a branch this time |
10:05 |
samcv |
woo |
10:06 |
timotimo |
so how do i ask appveyor to run that branch? |
10:06 |
samcv |
you forgot |
10:06 |
samcv |
usleep(msec * 1000); |
10:06 |
samcv |
Sleep(ms) |
10:06 |
timotimo |
oh? damn |
10:06 |
samcv |
ye |
10:07 |
Geth |
¦ MoarVM/telemeh_windows_port: 7838868737 | (Timo Paulssen)++ | src/profiler/telemeh.c |
10:07 |
Geth |
¦ MoarVM/telemeh_windows_port: steal uv_sleep from their test suite |
10:07 |
Geth |
¦ MoarVM/telemeh_windows_port: |
10:07 |
Geth |
¦ MoarVM/telemeh_windows_port: need proper attribution somewhere, still. |
10:07 |
Geth |
¦ MoarVM/telemeh_windows_port: review: https://github.com/MoarVM/MoarVM/commit/7838868737 |
10:07 |
timotimo |
look, i could amend and forcepush! |
10:07 |
samcv |
see test/runner-win.c vs test/runner-unix.c |
10:07 |
timotimo |
ok i got appveyor to start it |
10:08 |
samcv |
put uv_sleep into platform or something |
10:08 |
timotimo |
can do that later |
10:08 |
samcv |
yeah ofc |
10:08 |
timotimo |
i'll go turn on the sauna so i can have some relax today, too. and not only frustration :) |
10:09 |
samcv |
i think windows.h is already included when you include libuv |
10:09 |
samcv |
not 100% sure tho |
10:09 |
samcv |
but i think so |
10:11 |
timotimo |
looks like it compiles at least |
10:11 |
samcv |
oh it complains |
10:12 |
timotimo |
seriously |
10:12 |
timotimo |
that's not an external symbol, that's an internal symbol |
10:12 |
timotimo |
oh |
10:13 |
timotimo |
i might have forgotten an #endif? |
10:13 |
timotimo |
nope, it's in there |
10:14 |
timotimo |
apparently windows has snprintf as _snprintf |
10:15 |
timotimo |
wow, that's already in moar.c, too |
10:15 |
samcv |
what is? |
10:15 |
Geth |
¦ MoarVM/telemeh_windows_port: aef495131d | (Timo Paulssen)++ | src/profiler/telemeh.c |
10:15 |
Geth |
¦ MoarVM/telemeh_windows_port: snprintf is _snprintf on windows |
10:15 |
Geth |
¦ MoarVM/telemeh_windows_port: review: https://github.com/MoarVM/MoarVM/commit/aef495131d |
10:15 |
timotimo |
^- but that doesn't fix the missing telemetry symbols |
10:15 |
samcv |
oh i see |
10:15 |
samcv |
yeha we have sprintf on windows |
10:16 |
samcv |
on main.c |
10:16 |
timotimo |
yeah |
10:16 |
timotimo |
platform.h will become 3x as big soon |
10:16 |
samcv |
but windows has sprintf in stdio.h |
10:17 |
timotimo |
well, yeah, but i want snprintf :) |
10:17 |
samcv |
or is it erroring FROM moar.c having sprintf |
10:17 |
samcv |
uh site shows that snprintf is availible though? |
10:17 |
samcv |
did you try it? |
10:17 |
samcv |
without the _ |
10:18 |
timotimo |
what site? |
10:18 |
samcv |
https://msdn.microsoft.com/en-us/library/2ts7cx93.aspx |
10:18 |
timotimo |
src/moar.c |
10:18 |
timotimo |
5:#define snprintf _snprintf |
10:18 |
timotimo |
this is what i meant |
10:18 |
samcv |
snprintf, _snprintf, _snprintf_l etc etc |
10:19 |
timotimo |
could we concentrate on why it's seeming to miss the functions from telemeh.c? |
10:20 |
timotimo |
in fact |
10:20 |
timotimo |
stdio.h is already included there |
10:20 |
timotimo |
and it gave the error |
10:21 |
timotimo |
oh wtf it's still complaining about snprintf |
10:23 |
samcv |
about _snprintf? |
10:23 |
samcv |
yeah |
10:24 |
timotimo |
no, it's complaining about snprintf |
10:24 |
timotimo |
i #define snprintf _snprintf but it's complaining that snprintf can't be found by the *linker* |
10:25 |
timotimo |
uh, telemeh.c doesn't even use snprintf anywhere |
10:25 |
timotimo |
what gives |
10:25 |
timotimo |
it only uses fprintf |
10:26 |
* timotimo |
force-pushed over the unnecessary snprintf commit |
10:28 |
timotimo |
oh crap, geth dieded |
10:29 |
timotimo |
Zoffix: got a clue what i did to geth? perhaps it's because i forcepushed over that branch a bunch? |
10:29 |
samcv |
timotimo, libuv uses snprintf |
10:30 |
samcv |
uhm |
10:30 |
samcv |
see |
10:30 |
timotimo |
it seems like it could be the snprintf was put in by unrelated commits in a different part of moarvm |
10:30 |
timotimo |
(also by me) |
10:30 |
samcv |
3rdparty/libuv/snprintf.c |
10:30 |
samcv |
see that file |
10:31 |
timotimo |
i don't have that file |
10:31 |
samcv |
src/win/snprintf.c |
10:31 |
samcv |
3rdparty/libuv/src/win/snprintf.c |
10:31 |
|
Geth joined #moarvm |
10:31 |
timotimo |
jesus christ |
10:32 |
timotimo |
we can't just use _snprintf |
10:32 |
samcv |
no fun allowed |
10:32 |
samcv |
also |
10:32 |
samcv |
hm |
10:32 |
Zoffix |
timotimo: the death was 'cause I killed it.. And I think I didn't detach screen right or something so it didn't come back right away |
10:32 |
timotimo |
oh, ok! |
10:32 |
samcv |
src/uv-common.h |
10:32 |
timotimo |
ok so with uv-common.h we'd get their sprintf implementation |
10:32 |
samcv |
uv-common.h has it |
10:32 |
timotimo |
(if required) |
10:34 |
samcv |
try including it and see if it works |
10:34 |
timotimo |
first i must find the file that is using snprintf and is exploding because of it |
10:34 |
timotimo |
because the linker sure as hell won't tell me which object file is trying to pull that in |
10:34 |
samcv |
uhm |
10:34 |
timotimo |
oh main.c could be |
10:34 |
samcv |
we have in src/core/coerce.c |
10:34 |
samcv |
#define snprintf _snprintf |
10:35 |
samcv |
dunno tho |
10:35 |
timotimo |
we have it in all manner of files |
10:35 |
samcv |
oh moar.c has |
10:35 |
timotimo |
but not in all files where it's used |
10:35 |
samcv |
the same def |
10:35 |
timotimo |
main.c doesn't |
10:35 |
samcv |
yes it does |
10:35 |
timotimo |
bytecodedump.c doesn't, either |
10:35 |
samcv |
err moar.c i mean |
10:36 |
samcv |
bytecodedump has vsnprintf |
10:36 |
samcv |
not sprintf |
10:36 |
timotimo |
ah, indeed |
10:36 |
samcv |
maybe we should try using libuv's snprintf instead of the define's? |
10:36 |
timotimo |
but src/core/exceptions.c defines vsnprintf _vsnprintf |
10:36 |
samcv |
yes i see |
10:37 |
timotimo |
but why? another file uses vsnprintf without the define and the linker isn't complaining about that |
10:37 |
samcv |
idk |
10:37 |
Zoffix |
mst: Seesm they did ignore it indeed. Thanks for trying to fix the travis stuff. |
10:37 |
samcv |
so it doesn't complain |
10:37 |
samcv |
timotimo, just copy and paste it in somewhere |
10:37 |
samcv |
idk. moar.h or something silly |
10:37 |
Geth |
¦ MoarVM/telemeh_windows_port: 2c03c435e1 | (Timo Paulssen)++ | src/main.c |
10:37 |
Geth |
¦ MoarVM/telemeh_windows_port: define some more snprintfs |
10:37 |
Geth |
¦ MoarVM/telemeh_windows_port: |
10:37 |
Geth |
¦ MoarVM/telemeh_windows_port: if all of this works, we'll try getting libuv's snprintf-for-windows. |
10:37 |
Geth |
¦ MoarVM/telemeh_windows_port: review: https://github.com/MoarVM/MoarVM/commit/2c03c435e1 |
10:37 |
samcv |
the stuff in snprintf.c |
10:38 |
timotimo |
tell me, am i incompetent, or is this actually an unreasonable amount of shit msvc is putting us through ...? |
10:38 |
samcv |
uhm it is unreasonable but |
10:38 |
samcv |
i would steal their function since it should work everywhere |
10:39 |
timotimo |
why steal it? we should get it from uv with includes somehow … |
10:39 |
samcv |
well not if you don't include uv-common.h explicitly? dunno |
10:39 |
samcv |
#if !defined(snprintf) && defined(_MSC_VER) && _MSC_VER < 1900 |
10:39 |
samcv |
extern int snprintf(char*, size_t, const char*, ...); |
10:39 |
samcv |
#endif |
10:39 |
samcv |
so idk |
10:39 |
timotimo |
yeah |
10:39 |
samcv |
i would just take try it |
10:40 |
timotimo |
are you watching my appveyor? |
10:40 |
samcv |
no |
10:40 |
timotimo |
i'll go look if the sauna's ready and if so, i'll spend some time in it; afterwards i'll try to figure out why the MVM_telemetry functions are magically disappearing |
10:40 |
samcv |
watching now |
10:41 |
samcv |
generating code |
10:41 |
samcv |
maybe it worked? hasn't failed yet. still maybe linking |
10:41 |
timotimo |
generating code takes ages |
10:41 |
timotimo |
that's the step before it complains with linker stuff |
10:42 |
timotimo |
cool, snprintf works now |
10:42 |
timotimo |
it was really the other files, not telemetry |
10:42 |
timotimo |
but telemetry also gives us trouble |
10:42 |
samcv |
failed |
10:42 |
samcv |
no snprintf errors tho |
10:42 |
timotimo |
yup |
10:42 |
samcv |
timotimo, include telemetry.h or whatever it's called in all of the files that use telemetry things |
10:43 |
timotimo |
it would be very strange if that was the problem |
10:43 |
samcv |
it's not always enough to put in moar.h |
10:43 |
samcv |
not a perfect world |
10:43 |
samcv |
where mscv doesn't suck |
10:43 |
timotimo |
everything that includes moar.h also has telemeh.h included |
10:44 |
timotimo |
BBIAB/BBL |
10:44 |
samcv |
one would hope so. but the linker is having issues |
10:44 |
samcv |
i will try that i guess |
10:44 |
timotimo |
i do see telemeh.c in the compiler output |
10:45 |
timotimo |
and if it weren't in the commandline of the linker in the makefile, it wouldn't possibly work on linux either |
10:45 |
timotimo |
but it definitely does work there |
10:48 |
|
colomon joined #moarvm |
10:49 |
samcv |
ok well trying to add include all the places it's used https://ci.appveyor.com/project/samcv/moarvm/build/job/drj7nqk5u2n7hne7 |
10:49 |
samcv |
will be back in a bit |
11:13 |
timotimo |
it still got that error, huh |
11:15 |
timotimo |
can we perhaps get appveyor to cat the Makefile it generated? |
11:15 |
timotimo |
well, we can just put that in there for everything and just run it on appveyor |
11:21 |
Geth |
¦ MoarVM/telemeh_windows_port: 41a5d7de21 | (Timo Paulssen)++ | .appveyor.yml |
11:21 |
Geth |
¦ MoarVM/telemeh_windows_port: dear appveyor, tell us what makefile contents we generated |
11:21 |
Geth |
¦ MoarVM/telemeh_windows_port: review: https://github.com/MoarVM/MoarVM/commit/41a5d7de21 |
11:33 |
Geth |
¦ MoarVM/telemeh_windows_port: 408efabe9b | (Timo Paulssen)++ | .appveyor.yml |
11:33 |
Geth |
¦ MoarVM/telemeh_windows_port: maybe NOISY=1 will help us figure out what's wrong |
11:33 |
Geth |
¦ MoarVM/telemeh_windows_port: review: https://github.com/MoarVM/MoarVM/commit/408efabe9b |
11:39 |
timotimo |
i think i know what's wrong |
11:39 |
Geth |
¦ MoarVM/telemeh_windows_port: 6140253446 | (Timo Paulssen)++ | src/profiler/telemeh.h |
11:39 |
Geth |
¦ MoarVM/telemeh_windows_port: use MVM_PUBLIC for telemetry functions |
11:39 |
Geth |
¦ MoarVM/telemeh_windows_port: review: https://github.com/MoarVM/MoarVM/commit/6140253446 |
11:41 |
timotimo |
it's tough to figure stuff like this out if you're developing on linux, because (if i remember correctly) there MVM_PUBLIC is just the empty string |
11:42 |
timotimo |
21:#define MVM_DLL_IMPORT __attribute__ ((visibility ("default"))) |
11:42 |
timotimo |
22:#define MVM_DLL_EXPORT __attribute__ ((visibility ("default"))) |
11:42 |
timotimo |
23:#define MVM_DLL_LOCAL __attribute__ ((visibility ("hidden"))) |
11:42 |
timotimo |
this is what MVM_PUBLIC is |
11:43 |
timotimo |
if i had started with a mvm file already, i'd've immediately noticed i'd have to put MVM_PUBLIC, but since i was adapting code from a friend, i started with nothing mvm-related m) |
11:47 |
timotimo |
BBIAB |
12:05 |
|
MasterDuke_ joined #moarvm |
12:29 |
|
AlexDaniel joined #moarvm |
12:33 |
Geth |
¦ MoarVM: b7627e1035 | (Timo Paulssen)++ | 2 files |
12:33 |
Geth |
¦ MoarVM: put _snprintf in place where snprintf was carelessly introduced |
12:33 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/b7627e1035 |
12:33 |
Geth |
¦ MoarVM: f606d56098 | (Timo Paulssen)++ | src/profiler/telemeh.c |
12:33 |
Geth |
¦ MoarVM: throw out old sleep from unistd, alias Sleep and usleep to MVM_sleep |
12:33 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f606d56098 |
12:33 |
Geth |
¦ MoarVM: 134d8f2075 | (Timo Paulssen)++ | 2 files |
12:33 |
Geth |
¦ MoarVM: make MVM_telemetry_* functions MVM_PUBLIC |
12:33 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/134d8f2075 |
12:42 |
|
colomon_ joined #moarvm |
15:24 |
Geth |
¦ MoarVM: 43beb32b66 | (Timo Paulssen)++ | src/profiler/telemeh.c |
15:24 |
Geth |
¦ MoarVM: we abstain from anonymous unions in this town. |
15:24 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/43beb32b66 |
16:53 |
|
domidumont joined #moarvm |
20:40 |
|
zakharyas joined #moarvm |
20:47 |
Geth |
¦ MoarVM: f0db8822f5 | (Samantha McVey)++ | src/strings/ops.c |
20:47 |
Geth |
¦ MoarVM: Fix all known remaining bugs in indexic and eqatic |
20:47 |
Geth |
¦ MoarVM: |
20:47 |
Geth |
¦ MoarVM: Better logic for determining if we have traversed the whole |
20:47 |
Geth |
¦ MoarVM: length of the needle. Use this logic in |
20:47 |
Geth |
¦ MoarVM: MVM_string_equal_at_ignore_case in addition to |
20:47 |
Geth |
¦ MoarVM: MVM_string_index_ignore_case |
20:47 |
Geth |
¦ MoarVM: |
20:47 |
Geth |
¦ MoarVM: Also better naming of a variable for the INTERNAL loop. |
20:48 |
Geth |
¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f0db8822f5 |
21:07 |
samcv |
timotimo, you think anyone will be against naming h_graphs to H_graphs because h's kind of look like n's |
21:07 |
samcv |
and we use n_graphs for needles. |
21:09 |
samcv |
h_g and n_g look pretty similar. so i may change them. it'd make me happy |
21:11 |
samcv |
probably a good idea if it can lead to less mistakes and clearer code |
21:15 |
timotimo |
maybe s_graphs vs n_graphs? |
21:15 |
timotimo |
for "stack"? |
21:15 |
samcv |
:S |
21:15 |
samcv |
i just replaced all h with H |
21:15 |
samcv |
and it really is nice to look at |
21:15 |
samcv |
way easier to visually parse |
21:16 |
timotimo |
yeah, i don't think it'd be a problem |
21:17 |
timotimo |
i should probably rename local variables and parameters in telemeh to use foo_bar instead of fooBar |
21:18 |
samcv |
https://github.com/samcv/MoarVM/blob/Haystack/src/strings/ops.c#L203-L220 see this |
21:18 |
samcv |
way nicer i think |
21:19 |
timotimo |
yeah, not bad |
21:19 |
|
ilmari joined #moarvm |
21:19 |
timotimo |
what is bad is that C won't let us use unicode or emoji in identifiers |
21:19 |
timotimo |
.u needle |
21:19 |
yoleaux |
No characters found |
21:19 |
timotimo |
.u hay |
21:19 |
yoleaux |
U+0DC4 SINHALA LETTER HAYANNA [Lo] (හ) |
21:19 |
timotimo |
:\ |
21:19 |
samcv |
you sure? |
21:19 |
samcv |
it can use it in strings though |
21:19 |
timotimo |
mhm |
21:19 |
samcv |
variable names are not bundles of bytes? |
21:19 |
timotimo |
don't know |
21:20 |
samcv |
ack i lost my atom settings |
21:20 |
samcv |
i moved my backup'd folder back to original location while it was still open |
21:21 |
samcv |
and it hosed it |
21:21 |
samcv |
since it wrote to it before it quit |
21:21 |
timotimo |
whoops |
21:21 |
timotimo |
that's bad :( |
21:22 |
samcv |
i have a backup from a while ago, may be good enough. cause i had perl 5 and C templates |
21:22 |
samcv |
so i could do quick ad hoc C code tests |
21:22 |
samcv |
with includes and main etc all setup already |
21:22 |
timotimo |
right |
21:22 |
samcv |
oh. i have a backup on an external drive. maybe will use that |
21:23 |
timotimo |
nice. |
21:24 |
samcv |
YAY |
21:24 |
samcv |
has my templates |
21:24 |
samcv |
that's the only thing i really cared about... easy to just install missing packages easily |
22:24 |
|
ggoebel joined #moarvm |
23:13 |
|
Ven joined #moarvm |
23:35 |
mst |
Zoffix: we can probably email them |
23:48 |
samcv |
jnthn, that i assume all your modules are Artistic-2.0? |
23:48 |
samcv |
if no license listed? |
23:48 |
samcv |
and submit PR's for adding metadata to META6.json |
23:52 |
TimToady |
I added Artistic-2.0 to Grammar::Debugger and he didn't go ballistic :) |
23:52 |
mst |
<3 GPL2+ + AL 2+ |
23:54 |
MasterDuke_ |
TimToady: is there a way to create variables with spaces in their name? i thought i'd seen you do it before |
23:56 |
TimToady |
would have to be with term: somehow |
23:57 |
MasterDuke_ |
ah, no ::('.*') magic or anything like that? |
23:57 |
TimToady |
though it might scan the word for space to disallow it, don't remember |
23:59 |
TimToady |
::() could only be used to describe a type that is in a compile-time value, otherwise would be a run-time thing |