00:04:05 | * | kapil____ joined #nim |
00:04:12 | * | enthus1ast joined #nim |
00:32:19 | * | Ven`` joined #nim |
01:11:38 | * | zachk quit (Quit: Leaving) |
01:13:30 | * | Ven`` quit (Ping timeout: 250 seconds) |
01:20:10 | * | theelous3_ quit (Ping timeout: 268 seconds) |
01:21:09 | * | lordwarnut joined #nim |
01:22:12 | FromGitter | <Varriount> zachcarter: If I recall correctly, the type becomes opaque - it can't be referenced or modified directly. |
01:32:51 | * | theelous3_ joined #nim |
02:03:19 | zachcarter | @Varriount: good to know- thanks |
02:03:48 | zachcarter | just not sure how it is useful in that case here |
02:09:27 | * | MightyJoe quit (Remote host closed the connection) |
02:35:51 | * | craigger_ quit (Quit: bye) |
02:39:29 | * | craigger joined #nim |
02:43:17 | * | craigger quit (Client Quit) |
02:45:38 | * | craigger joined #nim |
02:55:22 | xace | finding getEnv was hard, by chance i was in os docs and found that it exports getEnv, it linked me to: https://nim-lang.org/docs/ospaths.html#getEnv , where i checked the source, to later find out it's include 'inlcudes/osenv'. |
02:56:07 | leorize | it's fixed in devel |
02:56:08 | leorize | don't worry |
02:56:17 | leorize | now it's in `os` |
02:56:20 | xace | ah, cool :) |
03:06:03 | * | cyraxjoe joined #nim |
03:07:40 | * | banc quit (Quit: ZNC - http://znc.in) |
03:11:30 | * | lordwarnut quit (Quit: Leaving) |
03:23:52 | * | banc joined #nim |
03:32:02 | * | MightyJoe joined #nim |
03:32:45 | * | cyraxjoe quit (Ping timeout: 268 seconds) |
03:33:03 | * | MightyJoe is now known as cyraxjoe |
03:38:56 | * | vlad1777d quit (Ping timeout: 268 seconds) |
03:43:08 | * | kapil____ quit (Quit: Connection closed for inactivity) |
03:45:00 | * | theelous3_ quit (Ping timeout: 244 seconds) |
04:14:53 | * | kapil____ joined #nim |
05:54:57 | * | rlr quit (Quit: quitting) |
06:04:35 | * | dddddd quit (Remote host closed the connection) |
06:05:10 | * | rlr joined #nim |
06:08:20 | * | narimiran joined #nim |
06:53:08 | * | nsf joined #nim |
06:59:20 | * | mech422__ joined #nim |
07:02:33 | * | mech422_ quit (Ping timeout: 245 seconds) |
07:13:07 | * | kapil____ quit (Quit: Connection closed for inactivity) |
08:14:10 | narimiran | @alehander42 are you here maybe? |
08:38:51 | * | stefanos82 joined #nim |
09:08:36 | * | Vladar joined #nim |
09:24:19 | Araq | zachcarter: I'm here to talk about regions |
09:53:11 | FromGitter | <alehander42> @narimiran yes |
09:53:27 | narimiran | great, i have some questions about gara |
09:54:46 | narimiran | i started using it, for now just as "prettier `case` |
09:56:37 | narimiran | but i didn't manage to 'translate' multiple possibilities in one case, e.g. `case of foo, bar, baz: do something` |
10:09:45 | * | kapil____ joined #nim |
10:10:46 | narimiran | @alehander42 is that possible with gara? if it is not currently, would you consider it? |
10:12:51 | FromGitter | <alehander42> Just added it, thank you for pointing it out: https://github.com/alehander42/gara/commit/bdd0f13aae49df76f56c97d5adf3388a19f13831#diff-d0513ee9b0c694f63209651ddf4bc2c7R486 |
10:13:18 | FromGitter | <alehander42> it should be possible now to do something like |
10:13:40 | FromGitter | <alehander42> ```match a: ⏎ foo or bar: ⏎ do stuff ⏎ baz: ⏎ ..``` [https://gitter.im/nim-lang/Nim?at=5bf92454f59704348ef6c75d] |
10:15:55 | narimiran | and you solved my next question before i even asked (about those echoes :)) |
10:16:36 | FromGitter | <alehander42> yeah, sorry about that :D, I should add a test maybe to check out the stdout |
10:16:47 | narimiran | no problem :) |
10:18:06 | narimiran | i know i already said that couple of times, but i really like the syntax. i plan to use it instead of `case` in my code, even when there is no pattern matching going on |
10:18:57 | * | rlr left #nim ("Be back later...") |
10:20:20 | FromGitter | <alehander42> yeah, it's pretty nice |
10:21:05 | FromGitter | <alehander42> what's mostly left is fixing remaining bugs and improving error checking (and maybe optimizing it a bit) |
10:23:04 | * | ng0 joined #nim |
10:23:05 | FromGitter | <alehander42> e.g. currently it doesn't actually generate `case` , but sometimes it's possible, so it should do that |
10:27:11 | narimiran | yeah, sounds good |
10:30:03 | zachcarter | Araq: sweet - I'm up |
10:30:06 | * | rlr joined #nim |
10:30:50 | zachcarter | if you're still around and able to tell me more about regions |
10:31:11 | zachcarter | okay |
10:31:16 | zachcarter | I see your forum response |
10:32:09 | * | Ven`` joined #nim |
10:32:15 | zachcarter | thanks for posting that - I will play around with this. |
10:45:29 | zachcarter | really excited about the hotreloading work |
10:49:05 | * | vlad1777d joined #nim |
10:52:56 | * | NimBot joined #nim |
11:10:30 | Araq | zachcarter: well ... anything unclear? |
11:13:35 | * | Snircle joined #nim |
11:16:59 | * | Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
11:21:34 | * | vlad1777d quit (Ping timeout: 246 seconds) |
11:24:09 | * | narimiran quit (Remote host closed the connection) |
11:25:35 | FromDiscord_ | <niv> hi. im looking for a way to customise json string generation; specifically, i want to adjust how floats are emitted. currently i have this working: https://gist.github.com/niv/d4f2e9c5c41ee1be3d76d8bbe178d633 obviously, that's not what i want to do, since this breaks interop with any other json datatype. is there a better way to do this that i'm unaware of? |
11:44:11 | * | dddddd joined #nim |
11:51:39 | * | kungtotte quit (Quit: leaving) |
11:57:33 | * | kungtotte joined #nim |
12:29:19 | Araq | niv: looks ok to me, there are no good solutions as json doesn't really allow "patching" |
12:29:42 | Araq | but you could also create a PR to allow json more flexibility |
12:38:54 | * | vlad1777d joined #nim |
12:39:14 | * | zachcarter quit (Ping timeout: 272 seconds) |
12:51:01 | FromDiscord_ | <niv> thanks, araq. im not sure i want to PR any presentation-related PR to json, as it'll likely be a performance hit with another indirection. my use case is fringe enough that i don't think i should impose this on stdlib just because it'd make my life easier |
12:52:34 | Araq | also try my packedjson, perhaps. |
12:53:59 | FromDiscord_ | <niv> ah, will have a look, thanks. in case you are wondering, the truncated float rendering is for making diffs between changes on the source data i work less churny. |
13:02:26 | * | vlad1777d quit (Ping timeout: 250 seconds) |
13:12:18 | * | zachcarter joined #nim |
13:13:25 | * | nsf quit (Quit: WeeChat 2.3) |
13:13:54 | * | enthus1ast quit (Ping timeout: 252 seconds) |
13:16:47 | * | zachcarter quit (Ping timeout: 240 seconds) |
13:21:38 | * | zachcarter joined #nim |
13:22:20 | zachcarter | Araq: apologies - I went back to sleep. No I understand everything I think. |
13:27:27 | zachcarter | I guess even if a global is allocated using regions - it still needs to have access synchronized via locks? |
13:31:00 | * | enthus1ast joined #nim |
13:43:40 | * | wildlander quit (Quit: Konversation terminated!) |
14:04:08 | Araq | well no. |
14:04:38 | * | theelous3_ joined #nim |
14:04:44 | Araq | that depends on whether multiple threads can access it at the same time |
14:11:25 | * | rokups joined #nim |
14:54:24 | * | nsf joined #nim |
15:01:30 | FromGitter | <Clyybber> ```Error: no symbol to borrow from found``` |
15:02:21 | FromGitter | <Clyybber> when using `==` with `{.borrow.}` |
15:02:32 | FromGitter | <Clyybber> Is that expected to work? |
15:03:21 | * | ghost64 quit (Quit: See you!) |
15:05:17 | leorize | what are you borrowing from? |
15:05:27 | leorize | any snippets? |
15:05:32 | FromGitter | <Clyybber> cint |
15:05:37 | * | narimiran joined #nim |
15:05:44 | leorize | a snippet would be helpful |
15:05:47 | FromGitter | <Clyybber> yes, a second |
15:07:42 | * | ghost64 joined #nim |
15:09:17 | FromGitter | <Clyybber> Nvrmind |
15:09:26 | FromGitter | <Clyybber> I was using a template |
15:09:33 | FromGitter | <Clyybber> should have used a proc |
15:09:44 | FromGitter | <Clyybber> Thanks leorize |
15:18:41 | narimiran | Araq: version-0-19 branch `./koch boot`, iteration: 2, throws "Error: system module needs: raiseExceptionEx" - any idea what that could be and how to solve it? |
15:19:50 | FromGitter | <arnetheduck> nirimiran, I've had random errors like that caused by `choosenim` - if you have it in your path (or `.nimble/bin`), try without |
15:22:16 | * | miran joined #nim |
15:23:09 | miran | this is on CI tests. but i think i found what is causing that |
15:23:54 | * | narimiran quit (Ping timeout: 272 seconds) |
15:24:27 | * | miran is now known as narimiran |
15:24:59 | FromGitter | <Clyybber> leorize Wierd, It works when in an extracted snippet, but not in my code |
15:25:30 | leorize | try making a copy of your code |
15:25:38 | leorize | then start trimming unnecessary things |
15:25:46 | leorize | eventually you'll get to the problem |
15:27:01 | narimiran | now the question is: do we also backport https://github.com/nim-lang/Nim/commit/dfb8730f51a022ff02bdd973e6c5946cfdcdc3c6 ? (cc Araq) |
15:27:10 | * | Sembei quit (Ping timeout: 250 seconds) |
15:31:29 | FromGitter | <alehander42> Araq, did you base the effect system on a previous existing one, or is it more homegrown? I am playing with the protodesign my own effect/tag for pseudo and it got crazy pretty quickly |
15:31:43 | FromGitter | <alehander42> effect/tag system |
15:31:44 | FromGitter | <alehander42> * |
15:35:07 | FromGitter | <Clyybber> leorize I can't figure it out. |
15:35:17 | FromGitter | <Clyybber> Can you try to reproduce? https://gist.github.com/Clyybber/46a7123c65658aca15401900bce379e1 |
15:35:22 | FromGitter | <alehander42> I didn't realize `ignoreEffect`, `noEffect` and `noSideEffect`should be different in such a system (as you can have effects which are not side effects ) |
15:35:24 | FromGitter | <Clyybber> Importing it should be enough |
15:39:31 | FromGitter | <Clyybber> Nvrmind, only importing it doesn't trigger the error |
15:46:11 | FromDiscord_ | <DanielVF> I'm running into something I don't understand |
15:46:25 | FromDiscord_ | <DanielVF> I have a seq of a non-ref object |
15:46:36 | FromDiscord_ | <DanielVF> I'm trying to return one of these from a proc |
15:46:56 | narimiran | @DanielVF code sample, please |
15:47:17 | FromDiscord_ | <DanielVF> And I'm getting a "Error: unhandled exception: invalid object assignment [ObjectAssignmentError]" |
15:47:20 | narimiran | short, self-contained, example we can run |
15:47:23 | FromDiscord_ | <DanielVF> Code sample coming up! |
15:47:39 | leorize | Clyybber: I tried compiling your sample |
15:47:44 | leorize | it's perfectly fine here |
15:50:24 | FromGitter | <Clyybber> Wierd, the error disappeared now, and I don't know what I changed |
15:50:25 | FromDiscord_ | <niv> i have a weird issue where, on windows only, someFileStreamContainingBinaryCrap.readStr(16) would return data of length 16, but the file position would only seek +15, thus misaligning further reads. replacing filestream with memfilestream fixes it. i'm having a really hard time tracking the root cause down as it only happens when i do this with multiple files. the issue only manifests on windows, not posix. |
15:50:34 | FromGitter | <Clyybber> Perhaps my editor was writing incorrectly |
15:50:51 | FromDiscord_ | <niv> any ideas/takers on what could be wrong? |
15:52:49 | leorize | niv: maybe check out the windows implementation? |
15:53:12 | FromDiscord_ | <niv> i did, it just calls fread. |
15:53:18 | FromDiscord_ | <niv> hence why i'm so confused. |
15:53:47 | leorize | if you could provide a self-contained sample, please file an issue on Github |
15:54:48 | FromDiscord_ | <DanielVF> Must be some kind of compiler issue. Identical code runs fine on the nim sandbox and errors at runtime localy. |
15:54:53 | FromDiscord_ | <niv> ok, so, i just tried --cpu:i386 and that "fixes" it. |
15:55:59 | FromDiscord_ | <niv> im so confused. |
15:56:10 | leorize | a code sample would help. Araq is a windows user and might be able to help you |
15:56:32 | FromDiscord_ | <niv> yeah, unfortunately, the sample is >200MB. |
15:56:43 | leorize | can you create a small one? |
15:56:50 | FromDiscord_ | <niv> it doesn't trigger if i give it less data |
15:57:10 | leorize | maybe the idea of it being a Windows bug could be considered... |
15:57:17 | FromDiscord_ | <niv> compiling a 32bit binary seems to not trigger it either. |
15:57:31 | FromDiscord_ | <niv> but i'm not sure i should be shipping 32bit exe files. |
15:57:37 | leorize | DanielVF: please note that the playground is using Nim 0.18.0 and not the latest 0.19.0 |
15:57:41 | leorize | so it might be a regression |
16:00:01 | * | enthus1ast quit (Ping timeout: 260 seconds) |
16:00:47 | FromDiscord_ | <DanielVF> https://gist.github.com/DanielVF/8b8254600e5747d234944c37b4bfc577 |
16:00:59 | FromDiscord_ | <DanielVF> Good to know, leorize |
16:01:13 | FromDiscord_ | <DanielVF> Here's the code, with my local error output above |
16:01:29 | narimiran | ok, i got the same error |
16:01:56 | narimiran | but before i see what's going on, do you know you can do `for i in 0 ..< size`? :) |
16:02:21 | FromDiscord_ | <DanielVF> '..<' eh? That's great. |
16:02:28 | FromDiscord_ | <DanielVF> I was sure there had to be a better way |
16:02:38 | Araq | narimiran, the problem is that 0.19 can build 0.19.2 but devel can't |
16:03:07 | Araq | there is nothing to backport |
16:04:29 | narimiran | Araq: are you sure? see lin 592 here: https://github.com/nim-lang/Nim/commit/83a36ccb6cf949c5ea164e6f47904e771da1be77#diff-215b3bc37e90d2aef8648b3948377de5R592 |
16:05:01 | narimiran | DanielVF i think i found the problem, give me a sec |
16:05:04 | leorize | @niv: can you provide a code sample and some precise requirements? |
16:05:18 | leorize | like that you'd need to feed it a file > 200MB? |
16:05:44 | narimiran | DanielVF you didn't (correctly) initialize your returning ref objects |
16:07:50 | Araq | Alehander, I read a couple of papers but there is not much to it |
16:08:18 | FromDiscord_ | <DanielVF> narimiran: Doesn't creating a seq of value objects of certain size, create those objects? |
16:09:00 | Araq | I stayed away from any effect system with parametrization and went for a special type inference rule for callback parameters |
16:09:30 | Araq | this rule has since then been re-invented by two independent groups and so it seems sound |
16:09:38 | FromDiscord_ | <DanielVF> narimiran: You are right that it does work if I initialize the object |
16:09:44 | Araq | cooldome wants me to remove it though, too subtle. |
16:10:15 | Araq | Haskell was a minor source of inspiration too |
16:10:28 | Araq | ("yeah... that's not how to do it...") |
16:12:09 | FromDiscord_ | <DanielVF> Is there anyway to define my own proc/operator to act as a "[]" square brackets accessor? |
16:12:38 | FromDiscord_ | <niv> proc `[]`*(self: MyType,..) |
16:12:41 | * | enthus1ast joined #nim |
16:12:56 | narimiran | DanielVF: `proc '[]'(a: MyType)` (change ' to backticks) |
16:13:05 | FromDiscord_ | <niv> yes, discord ate the backticks in mine. |
16:13:49 | FromDiscord_ | <DanielVF> Thanks! |
16:14:17 | FromDiscord_ | <niv> you can actually add multiple "indices", i.e. myType[5, "test", someVar] |
16:14:55 | FromDiscord_ | <niv> example, in case it's still unclear: https://github.com/niv/neverwinter.nim/blob/master/neverwinter/twoda.nim#L45 |
16:14:55 | FromDiscord_ | <DanielVF> Sweet. |
16:15:29 | FromDiscord_ | <DanielVF> I've got the basic case of [] working. |
16:15:36 | FromDiscord_ | <DanielVF> Much thanks. |
16:16:32 | FromDiscord_ | <DanielVF> FYI: I've currently got the only bot written in nim in Halite.io competition |
16:16:35 | FromDiscord_ | <DanielVF> https://halite.io/ |
16:16:53 | narimiran | Araq: i'm not sure that @yglukhov's today's fix for #9716 will work in 0.19 branch without the change in lib/system/excpt.nim introduced here: https://github.com/nim-lang/Nim/pull/9480 (but i might be wrong, of course ;)) |
16:22:23 | Araq | yeah but what devel should do |
16:22:44 | Araq | is to check whether there is a compilerProc of the name raiseExceptionEx and if not, fallback to the old version |
16:22:55 | Araq | then devel can compile an older version of Nim |
16:24:37 | narimiran | what about just backporting #9480? |
16:30:13 | Araq | it's not a bugfix, it's a new feature and shouldn't be backported |
16:33:00 | narimiran | ok, i'll try to fix it in my branch and see what the tests say.... |
16:37:19 | narimiran | well, the fix is much easier than i thought. i just needed to resolve the merge conflict the other way. |
16:37:46 | narimiran | Araq: can i force push to 0.19 branch? (it will change commit hash of the last commit) |
16:37:47 | Araq | are you updating the 0.19 branch? |
16:37:53 | narimiran | i am |
16:38:07 | Araq | cool, we can build the installers, tonight |
16:38:23 | narimiran | nice |
16:38:30 | Araq | what's there to "force" push? |
16:39:28 | narimiran | just to change the way i cherry-picked yuriy's PR (to leave the original 0.19 version which has "raiseException", and not "raiseExceptionEx") |
16:39:46 | Araq | ok, do it |
16:41:39 | narimiran | done. now (i hope) it should have no problem with building nim, let's see what CI says |
16:41:54 | * | enthus1ast quit (Ping timeout: 264 seconds) |
16:54:56 | * | enthus1ast joined #nim |
16:55:22 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
16:59:44 | narimiran | DanielVF: i took a look at halite. seems like fun, but i didn't see nim in available languages :/ |
17:03:32 | narimiran | DanielVF: but now i see on the leaderboard that you are indeed the best nim player in the world :D |
17:03:38 | FromDiscord_ | <DanielVF> Lol |
17:04:04 | FromDiscord_ | <DanielVF> narimiran: They just added official support, though no code libraries |
17:04:46 | FromDiscord_ | <DanielVF> narimiran: I snuck my code in before official support by writing a javascript wrapper that passes messages to the nim program |
17:05:03 | narimiran | we should advertise that, maybe somebody else would decide to join and do it in nim, too |
17:05:27 | * | enthus1ast quit (Ping timeout: 252 seconds) |
17:05:38 | FromDiscord_ | <DanielVF> narimiran: Now though, I think you just have to have a MyBot.nim file |
17:05:47 | FromDiscord_ | <DanielVF> And it will compile and run it. |
17:06:16 | FromDiscord_ | <DanielVF> narimiran: You get 2 seconds per turn, plus 30 seconds at startup |
17:06:49 | FromDiscord_ | <DanielVF> narimiran: My bot currently play both sides of a 400 turn game in 0.45 seconds total. 😄 |
17:07:06 | FromDiscord_ | <DanielVF> narimiran: My bot currently plays both sides of a 400 turn game in 0.45 seconds total. 😄 |
17:07:58 | narimiran | and what heuristic/logic do you use? |
17:11:38 | FromDiscord_ | <DanielVF> Here's a gist with my code to talk to the game engine: https://gist.github.com/DanielVF/e7a481c402b5e6dbac1a91a2251dfb09 |
17:11:53 | FromDiscord_ | <DanielVF> Here's a gist with my code to talk to the halite engine: https://gist.github.com/DanielVF/e7a481c402b5e6dbac1a91a2251dfb09 |
17:12:19 | narimiran | (if you edit your messages, we on IRC receive them twice (the original + edit) |
17:17:34 | narimiran | DanielVF: here is another "did you know?": you can define your arrays like this: `neighbors*: array[Direction, Cell]` and then you don't have to convert your enum to str |
17:17:37 | narimiran | *to int |
17:18:31 | * | enthus1ast joined #nim |
17:23:35 | shashlick | What's faster - string to enums or using tables |
17:23:54 | FromDiscord_ | <DanielVF> narimiran: Thanks for the tip. This is my first nim code - it's great to learn the things I didn't know. |
17:26:03 | narimiran | this is your first nim code? wow! keep up the good work! (from which language do you come?) |
17:27:41 | FromDiscord_ | <DanielVF> I've updated the gist with an anti-collision and getting from point a to b module |
17:28:14 | FromDiscord_ | <DanielVF> narimiran: I write C, Ruby, Python, JS, and PHP every week. |
17:28:33 | FromDiscord_ | <DanielVF> narimiran: Plus c# most weeks, and Go most months. |
17:30:53 | narimiran | shashlick: i don't know exactly, but my experience with tables is such that i try to avoid them whenever i can |
17:30:54 | FromDiscord_ | <DanielVF> narimiran: Nim really hits a sweet spot for me. I get to write C fast code with a syntax I love better than python/js and near ruby. |
17:32:33 | Gertm | Go would be for the libraries. Nim for the fun. :) |
17:32:45 | FromDiscord_ | <DanielVF> narimiran: I love syntax of defining procs that operate on their first argument when used in an object context. |
17:33:12 | FromDiscord_ | <DanielVF> Gertm: Haha, yeah. |
17:35:16 | Gertm | DanielVF: You mean Uniform Function Call Syntax ? |
17:35:20 | Gertm | D has that too. |
17:35:56 | Gertm | It's a cool way of doing things, flexible. |
17:39:47 | narimiran | yeah, i use that very often and would like to see that in python too ;) |
17:40:37 | narimiran | speaking of which, nim usually uses 2 spaces for indentation. it takes some time to get used to it, but now looking at 4 spaces feels weird :) |
17:43:10 | narimiran | DanielVF: you know about let/var blocks? and that you can define more variables of the same type in one row? |
17:43:38 | narimiran | well, and type blocks too ;) |
18:00:32 | narimiran | DanielVF: i've sent you some comments under your gist |
18:00:36 | zachcarter | brought the allegro5 bindings up to date |
18:00:41 | zachcarter | or at least I got them to compile and run the example |
18:03:00 | FromDiscord_ | <DanielVF> narimiran - Thanks very much for the comments! |
18:03:57 | narimiran | all of those are just cosmetics, to make your code more nim-like |
18:04:01 | Araq | I still want you to use "method call syntax" :P |
18:04:26 | Araq | there is nothing "uniform" about putting the first arg in a special position, it's the opposite of "uniform" |
18:04:47 | Araq | or maybe "chainable call syntax" |
18:06:00 | FromDiscord_ | <DanielVF> I like that I can use the same proc in either style, depending on the needs of the code. |
18:06:00 | narimiran | Araq: version 0.19 now passes on travis, and on appveyor is my old friend error after xmltree.nim |
18:06:30 | leorize | DanielVF: There's even the command call syntax |
18:06:39 | leorize | basically paren-free syntax :P |
18:07:39 | FromDiscord_ | <DanielVF> Haha, sweet. |
18:08:01 | FromDiscord_ | <DanielVF> Can I do `obj.foo arg` ? |
18:08:31 | narimiran | try it ;) |
18:26:57 | shashlick | Thanks narimiran |
18:27:10 | shashlick | How to get file date in vm? |
18:27:35 | shashlick | getFileInfo gives the importc error |
18:28:24 | narimiran | shashlick: i confess i haven't tried `strtabs`, but when i used regular tables, they were noticeably slower than using arrays (i had a situation where i had unique strings and i could easily convert them to indices) |
18:31:57 | shashlick | I'm trying to improve the performance of nimterop - lots going on there, plus running in the vm so slower regardless |
18:32:19 | shashlick | Is the vm slower than compiled? By what order of magnitude |
18:38:30 | * | stefantalpalaru joined #nim |
18:48:49 | * | leorize quit (Quit: WeeChat 2.2) |
18:49:44 | * | theelous3_ quit (Ping timeout: 268 seconds) |
18:53:57 | FromGitter | <alehander42> Araq, haha I see, i was trying to think of non-haskell sources too |
18:54:11 | FromGitter | <alehander42> i actually jumped into parametrized effects |
18:54:53 | FromGitter | <alehander42> which basically can act as compile time functions returning list of tags |
18:54:59 | FromGitter | <alehander42> but have to think about it more |
19:03:40 | Araq | shashlick, factor of 10-20 |
19:04:59 | Araq | narimiran, what's the error? |
19:05:35 | narimiran | "Command exited with code 1" |
19:05:45 | narimiran | that's after "PASS: xmltree.nim C" |
19:05:57 | Araq | tstreams stuck? |
19:06:04 | narimiran | this was happening for a lots of PRs in the past month or so |
19:07:31 | * | nimrod joined #nim |
19:08:55 | narimiran | it might be this: "foreign_thr" — this is what is after xmltree.nim in travis |
19:09:23 | * | nimrod quit (Client Quit) |
19:09:25 | Araq | https://ci.appveyor.com/project/Araq/nim/builds/20526793/tests |
19:09:33 | Araq | it's tasyncssl.nim |
19:10:02 | Araq | you can disable it on appveyor via |
19:10:05 | Araq | disabled: "appveyor" |
19:10:14 | Araq | in the discard spec section of the test |
19:10:26 | narimiran | ok, i'll do that |
19:11:32 | narimiran | btw, this is the first time i notice (well, you pointed me directly at it) that there are different tabs in appveyor. i was always looking only at the default one (console) :D |
19:12:01 | Araq | appveyor's UI is superior to travis' |
19:13:36 | narimiran | btw, devel branch has no problem with that test. will we remember to enable it later? ;) |
19:15:40 | narimiran | ok, i guess it is too late for me. this will be disabled only on 0.19 branch |
19:15:53 | Araq | yes, that's what I meant |
19:17:07 | narimiran | pushed a new commit |
19:29:06 | * | narimiran quit (Remote host closed the connection) |
19:30:49 | * | nsf quit (Quit: WeeChat 2.3) |
19:32:26 | * | narimiran joined #nim |
19:47:55 | FromGitter | <arnetheduck> if you're doing backports, https://github.com/nim-lang/Nim/commit/c7eba64dee9a8e686fde03ee2a2992e93a084927 fixes a pretty nasty bug |
19:48:53 | FromGitter | <arnetheduck> that one causes anything compiled with nim to explode and take up all memory when run as a child process (say, in a makefile) |
19:55:39 | Araq | hmm ok, narimiran please backport that one too then |
19:57:30 | * | wildlander joined #nim |
20:09:48 | FromGitter | <alehander42> i had a similar bug |
20:10:03 | FromGitter | <alehander42> where an exception in quit handler can create a stack explosion |
20:10:09 | FromGitter | <alehander42> not sure if it was the same |
20:27:58 | * | smt joined #nim |
20:29:43 | * | mech422 joined #nim |
20:32:40 | * | mech422__ quit (Ping timeout: 250 seconds) |
20:36:52 | * | mech422_ joined #nim |
20:37:40 | * | mech422 quit (Ping timeout: 244 seconds) |
20:45:46 | * | shpx joined #nim |
20:49:27 | FromGitter | <Varriount> Hi everyone, how are things? |
20:50:46 | zachcarter | hey @Varriount: good - how are you? |
20:50:57 | zachcarter | have a good turkey day? |
20:51:12 | * | rokups quit (Quit: Connection closed for inactivity) |
20:55:56 | narimiran | @arnetheduck, Araq: backported |
21:00:31 | * | vlad1777d joined #nim |
21:17:29 | * | miran joined #nim |
21:19:13 | * | narimiran quit (Ping timeout: 245 seconds) |
21:31:48 | * | shpx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
21:41:16 | * | craigger quit (Quit: bye) |
21:45:57 | * | craigger joined #nim |
21:52:11 | * | narimiran joined #nim |
21:54:44 | * | miran quit (Ping timeout: 268 seconds) |
22:02:04 | * | zachk joined #nim |
22:02:21 | * | zachk quit (Changing host) |
22:02:21 | * | zachk joined #nim |
22:21:15 | * | mech422 joined #nim |
22:24:20 | * | mech422_ quit (Ping timeout: 268 seconds) |
22:27:33 | * | mech422 quit (Ping timeout: 245 seconds) |
22:36:59 | * | narimiran quit (Remote host closed the connection) |
22:50:17 | * | stefanos82 quit (Quit: Quitting for now...) |
22:52:57 | * | druonysus quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) |
23:02:07 | FromGitter | <zacharycarter> https://imgur.com/a/oZAe5UV - latest version of bgfx |
23:05:27 | zachcarter | would be very nice to automate these bindings though with nimgen - there are quite a few things that need fixing after c2nim though |
23:14:22 | zachcarter | shashlick: maybe if I can come up with the manual steps I take to produce them - you could possibly help me produce the nimgen cfg? |
23:14:48 | zachcarter | I'm just using the C99 API at this point - and expecting the user to have the shared library in the linker's lib path |
23:14:57 | zachcarter | or search path rather |
23:17:16 | zachcarter | going to try on my own first to reproduce my manual c2nim steps |
23:19:56 | shashlick | sure |
23:27:13 | * | Vladar quit (Remote host closed the connection) |
23:50:23 | zachcarter | shashlick: it's difficult - there are quite a few enums which evaluate entries in other enums |
23:50:33 | zachcarter | actually - not really enums |
23:50:39 | zachcarter | but stuff like - |
23:51:33 | FromGitter | <zacharycarter> ```code paste, see link``` ⏎ ⏎ Where these constants are already declared, and they might be unsigned 64 bit ints or signed 64 bit ints [https://gitter.im/nim-lang/Nim?at=5bf9e405662131389412ae51] |
23:52:25 | FromGitter | <zacharycarter> doesn't make sense to hard-code them in any automated solution |
23:52:44 | FromGitter | <zacharycarter> but I'm not sure how best to figure out whether to change that 0 or a 0'i64 or 0'u64 |
23:52:46 | FromGitter | <zacharycarter> depending on context |