00:00:29 | * | krux02 quit (Quit: Leaving) |
00:01:26 | * | space-wizard quit (Remote host closed the connection) |
00:02:05 | * | space-wizard joined #nim |
00:16:23 | * | pregress_ quit (Remote host closed the connection) |
00:16:58 | * | pregressive joined #nim |
00:18:29 | * | vendethiel joined #nim |
00:21:28 | * | pregressive quit (Ping timeout: 245 seconds) |
00:23:14 | * | dddddd quit (Quit: Hasta otra..) |
00:33:37 | * | nsf quit (Quit: WeeChat 1.6) |
00:44:38 | * | Matthias247 quit (Read error: Connection reset by peer) |
00:49:36 | * | yglukhov joined #nim |
00:55:11 | * | yglukhov quit (Ping timeout: 248 seconds) |
01:06:29 | * | arnetheduck joined #nim |
01:19:39 | * | Pisuke quit (Read error: Connection reset by peer) |
01:20:14 | * | Sembei joined #nim |
01:23:50 | * | couven92 quit (Quit: Rebooting . . .) |
01:26:26 | * | couven92 joined #nim |
01:26:50 | * | rupil joined #nim |
01:34:51 | * | bjz joined #nim |
01:35:31 | * | Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
01:46:29 | * | bjz quit (Read error: Connection reset by peer) |
01:58:24 | * | bjz joined #nim |
02:00:47 | * | vendethiel quit (Ping timeout: 248 seconds) |
02:01:53 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
02:43:17 | * | couven92 quit (Quit: Client disconnecting) |
02:43:19 | * | chemist69 quit (Disconnected by services) |
02:43:24 | * | chemist69_ joined #nim |
02:45:40 | def-pri-pub | What is the `interface` keywork used for? |
02:48:23 | def-pri-pub | keyword* |
02:54:08 | * | yglukhov joined #nim |
02:58:38 | * | yglukhov quit (Ping timeout: 255 seconds) |
03:10:26 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
03:14:55 | * | bjz joined #nim |
03:15:51 | * | bjz quit (Client Quit) |
03:47:41 | * | rupil quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) |
04:01:20 | * | rupil joined #nim |
04:01:36 | Araq | def-pri-pub: it is reserved for possible future language additions |
04:05:12 | * | bjz joined #nim |
04:06:11 | * | gangstacat quit (Quit: Ĝis) |
04:13:14 | * | brson quit (Quit: leaving) |
04:15:10 | * | rupil quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) |
04:15:14 | * | vendethiel joined #nim |
04:15:58 | * | gangstacat joined #nim |
04:22:15 | * | gangstacat_ joined #nim |
04:22:20 | * | vendethiel quit (Ping timeout: 255 seconds) |
04:23:24 | * | gangstacat quit (Ping timeout: 252 seconds) |
04:24:05 | * | gangstacat_ is now known as gangstacat |
04:33:05 | * | vendethiel joined #nim |
04:33:56 | * | devted quit (Quit: Sleeping.) |
04:56:43 | * | yglukhov joined #nim |
04:58:37 | def-pri-pub | Araq: possibly interfaces like in C# and Java? I'm playing around with macros right now to see if I can do that. |
04:59:23 | def-pri-pub | erm I meant, make something like that. |
05:00:44 | Araq | yeah, you do that |
05:00:54 | Araq | it's always requested |
05:00:55 | * | yglukhov quit (Ping timeout: 240 seconds) |
05:01:13 | Araq | bbl |
05:03:52 | def-pri-pub | bbl? |
05:10:23 | def-pri-pub | https://gist.github.com/define-private-public/88dd50f80a01d11ee1444391fba6d06c |
05:10:48 | def-pri-pub | The first file is what I'd like the syntax to be like. And the second file is where I had some sort of prototype of an interface going. |
05:11:24 | def-pri-pub | I'd like to get it where though you don't have the specify the the type that is worked on in the interface (the macro would do that for you). |
05:11:51 | def-pri-pub | Right now I just want to see if I can get that `IWorker` in the second file to be generated from the interface in the first. |
05:12:58 | def-pri-pub | It looks like it might be a fun excercise in learning macros. |
05:28:09 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
05:58:24 | def-pri-pub | night |
05:58:26 | * | def-pri-pub quit (Quit: leaving) |
05:58:33 | * | yglukhov joined #nim |
06:02:55 | * | yglukhov quit (Ping timeout: 248 seconds) |
06:08:41 | * | Kingsquee joined #nim |
07:44:27 | * | space-wizard quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
08:01:27 | * | yglukhov joined #nim |
08:02:16 | * | GustavoLapasta joined #nim |
08:05:32 | * | yglukhov quit (Ping timeout: 240 seconds) |
08:24:20 | * | rokups joined #nim |
08:30:11 | * | bjz joined #nim |
08:35:47 | * | Vladar joined #nim |
08:45:26 | * | ftsf_ quit (Remote host closed the connection) |
08:47:07 | * | ftsf joined #nim |
08:48:18 | * | yglukhov joined #nim |
09:12:15 | * | yglukhov quit (Remote host closed the connection) |
09:15:32 | * | nsf joined #nim |
09:23:14 | * | yglukhov joined #nim |
09:26:26 | * | yglukhov quit (Remote host closed the connection) |
09:27:01 | * | yglukhov joined #nim |
09:29:12 | * | yglukhov quit (Remote host closed the connection) |
09:29:26 | * | yglukhov joined #nim |
09:43:46 | * | Trustable joined #nim |
09:44:43 | * | Matthias247 joined #nim |
09:50:14 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
10:15:13 | * | GustavoLapasta quit (Ping timeout: 245 seconds) |
10:37:57 | * | eizua joined #nim |
10:57:37 | * | yglukhov quit (Remote host closed the connection) |
10:58:36 | * | bjz joined #nim |
11:01:52 | * | yglukhov joined #nim |
11:39:43 | * | Vladar quit (Ping timeout: 255 seconds) |
11:41:46 | * | dddddd joined #nim |
11:58:07 | * | Snircle joined #nim |
12:04:02 | * | bjz quit (Ping timeout: 240 seconds) |
12:04:11 | * | bjz_ joined #nim |
12:28:28 | * | Vladar joined #nim |
12:42:13 | * | bjz joined #nim |
12:43:27 | * | bjz_ quit (Ping timeout: 248 seconds) |
12:52:13 | * | pie_ joined #nim |
12:54:07 | * | yglukhov quit (Remote host closed the connection) |
12:54:36 | * | yglukhov joined #nim |
12:56:00 | * | yglukhov quit (Remote host closed the connection) |
13:13:57 | * | yglukhov joined #nim |
13:21:07 | * | chemist69_ quit (Ping timeout: 258 seconds) |
13:21:40 | * | yglukhov quit (Remote host closed the connection) |
13:22:26 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
13:23:33 | * | dmi0 quit (Ping timeout: 245 seconds) |
13:23:44 | * | chemist69 joined #nim |
13:34:51 | * | nsf quit (Quit: WeeChat 1.6) |
13:41:59 | * | yglukhov joined #nim |
13:42:53 | * | Ven joined #nim |
13:43:40 | * | GustavoLapasta joined #nim |
13:45:13 | * | yglukhov quit (Remote host closed the connection) |
13:57:41 | * | Kingsquee quit (Quit: https://i.imgur.com/qicT3GK.gif) |
14:02:52 | * | yglukhov joined #nim |
14:07:08 | * | yglukhov quit (Remote host closed the connection) |
14:22:01 | * | yglukhov joined #nim |
14:25:21 | Araq | yglukhov: GC finally has some "heap dump" feature |
14:25:37 | Araq | it outputs the number of allocated objects per object type |
14:25:49 | Araq | and the total amount of bytes these take up |
14:29:04 | Araq | and I already found a logical memory leak with it :-) |
14:29:06 | * | Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
14:34:27 | dom96 | So yeah, props to Digital Ocean and @taotetek for $480 in credit. |
14:35:21 | dom96 | That will cover our hosting costs for a full year. |
15:02:13 | dom96 | For anybody interested in helping us setup Nim's infrastructure v2 join #nimbuild, where you will also likely find other discussion about Nim. |
15:07:47 | Vladar | hm, is there any standard lib proc to generate array/seq from a given slice? |
15:10:44 | Araq | Vladar: that's usually just a waste of memory, iterate over the slice directly |
15:11:33 | ftsf | probably nice if you're trying to do functional style stuff though |
15:11:39 | Trustable | Hi, I open an existing file with open(.., fmReadWrite), why is the file content cleared? |
15:13:55 | Trustable | This behavior should be mentioned in the documentation. |
15:15:31 | Araq | Trustable: could be OS dependent |
15:15:57 | Araq | why do you use fmReadWrite btw? I never used it in my entire life. :-) |
15:16:17 | Trustable | because I want to read and write to a file |
15:16:53 | Araq | so much is clear. |
15:17:58 | ftsf | sounds like you want the equivalent of r+ in fopen |
15:18:03 | Araq | if it's binary data, memory mapped files are usually faster. |
15:18:21 | Araq | if it's a text file, I don't think it can work at all with variable sized texts |
15:18:25 | Trustable | fmReadWriteExisting works for me |
15:18:40 | Araq | ah, never used that one either. |
15:18:45 | Araq | didn't know it exists :-) |
15:18:57 | dom96 | This is documented: http://nim-lang.org/docs/system.html#FileMode |
15:18:57 | Trustable | we should metion, that fmReadWrite could clear the file |
15:19:15 | dom96 | Although it doesn't mention that a file will be cleared |
15:19:24 | Trustable | this is what I mean |
15:20:17 | Araq | fmReadWriteExisting also doesn't mention it leaves the file intact |
15:20:46 | * | yglukhov quit (Remote host closed the connection) |
15:21:14 | Araq | fixed. |
15:21:23 | Araq | the "edit" button surely is handy. |
15:23:19 | ftsf | should open be part of os rather than system? |
15:23:48 | Trustable | thx Ajaq, that is want I wanted :) |
15:23:48 | Araq | no, but an io.nim module would have been wise. |
15:24:10 | Araq | Trustable: the 'edit' button exists for you too and creates a PR. very convenient. |
15:24:12 | dom96 | the system module can certainly use some cleaning |
15:24:49 | Trustable | Araq: I know the edit button. This time you just were faster than me. |
15:25:05 | Araq | that's the right answer. |
15:27:57 | * | yglukhov joined #nim |
15:29:25 | cheatfate | Trustable, most people knows what you just discovered, because this traditional behavior of fopen("w") |
15:38:56 | * | nsf joined #nim |
15:58:30 | * | yglukhov quit (Remote host closed the connection) |
15:59:28 | * | yglukhov joined #nim |
16:25:29 | * | Gustavo joined #nim |
16:25:58 | * | Gustavo is now known as Guest15939 |
16:26:15 | * | GustavoLapasta quit (Ping timeout: 240 seconds) |
16:37:22 | * | space-wizard joined #nim |
16:50:58 | * | yglukhov quit (Remote host closed the connection) |
16:51:42 | * | yglukhov joined #nim |
17:01:32 | * | yglukhov quit (Remote host closed the connection) |
17:02:32 | * | Vladar quit (Quit: Leaving) |
17:02:39 | * | yglukhov joined #nim |
17:03:05 | * | jinshil quit (Quit: client terminated!) |
17:33:01 | * | yglukhov quit (Remote host closed the connection) |
17:33:27 | * | yglukhov joined #nim |
17:44:15 | * | Guest15939 quit (Ping timeout: 240 seconds) |
17:46:56 | * | smt joined #nim |
17:51:38 | * | rupil joined #nim |
17:57:45 | * | yglukhov quit (Remote host closed the connection) |
17:59:38 | * | eizua quit (Quit: Leaving) |
18:00:27 | federico3 | how to a given number of bytes from a cstring to a string (ignoring any \0) ? |
18:01:02 | Araq | var s = newString(len); copyMem(s, ...) |
18:01:12 | Araq | there is no shortcut iirc |
18:01:31 | Araq | but your question is ambiguous |
18:02:02 | federico3 | copyMem(s or copyMem(addr s[0] ? |
18:02:15 | Araq | the addr variant |
18:04:32 | federico3 | there are few threads about similar questions on the forum, maybe it's worth creating a proc to do this |
18:04:57 | * | yglukhov joined #nim |
18:06:21 | Araq | yeah, compiler/lexer.nim also needs it iirc |
18:07:42 | * | yglukhov quit (Remote host closed the connection) |
18:08:01 | dom96 | maybe we should create an ffi module for these types of operations? |
18:08:16 | euantor | Awesome work on the donation taotetek! |
18:08:22 | * | awal joined #nim |
18:08:23 | awal | hi |
18:09:49 | Araq | hi |
18:10:22 | dom96 | hello awal |
18:10:37 | awal | heyo :) Is the source for NimBot available? |
18:10:51 | dom96 | yep https://github.com/nim-lang/nimbot |
18:11:04 | awal | thank you! |
18:11:28 | * | yglukhov joined #nim |
18:14:43 | smt | trying to compile nim and nim its self works fine but after koch-ing nimble i get "could not load: libeay64.dll compile with -d:nimDebugDlOpen for more information", where do I specify that flag with koch? or is there some other way to fix that issue? w10, 64bit, compiling 64bit nim |
18:15:14 | dom96 | awal: are you looking to write your own IRC bot? :) |
18:16:07 | dom96 | smt: Have you got libeay64.dll in your PATH? |
18:16:15 | dom96 | smt: You can get it from this zip IIRC: nim-lang.org/download/dlls.zip |
18:16:17 | Araq | smt: what does 'where nimble.exe' say? |
18:16:49 | smt | ah, i dont have that dll in my path, that'll probably fix it |
18:16:55 | awal | dom96: Well, yes, but I haven't used nim before - just checking out a bunch of languages via existing projects :) |
18:17:04 | smt | where nimble.exe |
18:17:05 | smt | gives me: C:\Users\smt\Nim\bin\nimble.exe |
18:17:23 | Araq | Nim\bin should have these DLLs |
18:17:26 | Araq | please check |
18:17:45 | * | yglukhov quit (Remote host closed the connection) |
18:18:06 | smt | they didn't before, but i put those dlls from the zip there and it's all good now, thanks |
18:18:39 | Araq | smt: did you install from github? |
18:18:40 | dom96 | awal: cool, let me know if you need any help with the IRC library (I wrote it) |
18:19:11 | awal | dom96: ah great, sure thing, thanks! |
18:19:22 | * | yglukhov joined #nim |
18:19:23 | smt | yeah I used the intructions on the github page as well as the build64.bat |
18:19:54 | Araq | ok then everything is alright. |
18:20:19 | smt | cool, thanks for the dlls |
18:20:27 | Araq | we cannot have DLLs in the git repo because of reasons. |
18:21:32 | smt | yeah I can understand, maybe there could be a note in the readme? "if you get dll errors get these and stick them in Nim\bin" or something |
18:22:55 | * | yglukhov quit (Remote host closed the connection) |
18:24:53 | Araq | yes, something like that. the error message is from the stdlib though, it's not nimble specific. |
18:25:07 | Araq | we can make overridable, perhaps |
18:26:04 | Araq | another use case for patchFile(...) |
18:29:37 | * | kulelu88 joined #nim |
18:44:52 | * | nick_k joined #nim |
18:45:42 | awal | What is the recommended way to install the nim compiler on linuxes? |
18:47:12 | nick_k | I just checked out from github as on http://nim-lang.org/download.html |
18:48:00 | nick_k | But that's the bleeding edge version |
18:50:17 | Calinou | awal: some distributions have Nim packaged, like Arch Linux |
18:51:14 | Calinou | https://pkgs.org/download/nim |
18:51:20 | awal | Calinou: I am on Arch, it seems the version in official repos is one minor version behind |
18:52:26 | nick_k | I just followed the "Installation based on generated C code" part and it's pretty painless |
18:53:02 | awal | nick_k: Seems like it, it's compiling now :) |
18:55:03 | * | nick_k is now known as nickk |
19:05:47 | * | yglukhov joined #nim |
19:07:20 | * | yglukhov quit (Remote host closed the connection) |
19:10:27 | * | yglukhov joined #nim |
19:12:13 | * | yglukhov quit (Remote host closed the connection) |
19:17:13 | * | libman joined #nim |
19:19:08 | libman | Trying to install Nim into Termux on an Android "2-in-1" tablet. It seems to be missing some reqs... "c_code/2_2/compiler_options.c:8:10: fatal error: 'glob.h' file not found" |
19:19:39 | * | nickk quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) |
19:20:43 | def- | libman: glob.h should be part of POSIX |
19:25:26 | * | yglukhov joined #nim |
19:29:51 | * | yglukhov quit (Ping timeout: 258 seconds) |
19:32:13 | * | yglukhov joined #nim |
19:40:58 | * | libman2 joined #nim |
19:40:58 | * | libman quit (Read error: Connection reset by peer) |
19:58:16 | libman2 | I guess Android + Termux isn't full POSIX. I'm in the process of adding in various missing includes... Is there a better way to get Nim on Android? |
20:08:48 | * | stisa joined #nim |
20:11:44 | * | libman joined #nim |
20:11:44 | * | libman2 quit (Read error: Connection reset by peer) |
20:11:54 | stisa | libman2 : I got it to work some time ago, try lokking here |
20:12:03 | stisa | http://stisa.space/articles/compile-nim-on-android/ |
20:12:03 | * | rokups quit (Quit: Connection closed for inactivity) |
20:16:39 | libman | stisa: Excellent! Thank you! I wonder why I never found that by Googling... |
20:36:21 | * | pie_ quit (Ping timeout: 252 seconds) |
20:42:19 | * | libman2 joined #nim |
20:42:20 | * | libman quit (Read error: Connection reset by peer) |
20:44:43 | * | def-pri-pub joined #nim |
20:51:52 | * | yglukhov quit (Remote host closed the connection) |
20:57:18 | * | yglukhov joined #nim |
21:03:13 | dom96 | stisa: that's a really nice article! |
21:03:40 | dom96 | You should advertise it more, I haven't seen it until now :) |
21:03:54 | * | nsf quit (Quit: WeeChat 1.6) |
21:04:33 | dom96 | also, I wonder, does 0.16.0 support arm64 now? |
21:04:44 | dom96 | or rather `aarch64`? |
21:06:43 | dom96 | quite a bit of workarounds were needed |
21:06:54 | dom96 | if you haven't already please consider creating issues/PRs for them |
21:07:03 | def-pri-pub | stisa: http://i.imgur.com/DXkLvT2.gif |
21:07:23 | def-pri-pub | Also, nice job on the WebGL bindings too. |
21:08:47 | * | kulelu88 quit (Quit: Leaving) |
21:10:50 | stisa | dom96 : thanks! About aarch64, it is listed in the build.sh on github so it should work |
21:12:59 | * | libman joined #nim |
21:12:59 | * | libman2 quit (Read error: Connection reset by peer) |
21:24:58 | stisa | def-pri-pub thanks! I saw you wrapped canvas, so now we have most of js graphic covered |
21:28:10 | def-pri-pub | stisa: what isn't? |
21:32:14 | stisa | def-pri-pub SVGs I think? But that's more static, I'm just not too familiar with js so I wrote "most" |
21:33:22 | def-pri-pub | I'm not a JS programmer either. I rather like to write in languages that can compile to JS |
21:33:31 | * | devted joined #nim |
21:34:30 | def-pri-pub | If someone used `html5_canvas` and `webgl` together, do you think there would be conflicts? |
21:36:20 | def-pri-pub | I don't want to push a dependancy on you, but are you intersted in maybe adding `html5_canvas` as one, and then rely on my bindings for things, like the `Canvas` object? |
21:36:46 | def-pri-pub | We could also merge the packages into one as well. |
21:37:35 | def-pri-pub | IIRC, Araq expresed some interest in making `html5_canvas` and official package when I asked him about merging the bindings into the `dom` module. |
21:37:43 | def-pri-pub | an official* |
21:37:45 | stisa | Mmh, well I think we both already depend on the dom module, so adding it there would be easier maybe |
21:38:15 | stisa | A single module for all things js graphic could be interesting too |
21:40:28 | dom96 | hrm, I wonder. Do we handle this correctly? https://news.ycombinator.com/item?id=13399266 (I don't think I ever used Nim's unicode module) |
21:42:32 | libman | Got nim compiled but not koch yet. Some "bin/sh" string somewhere other than osproc. |
21:43:28 | * | libman2 joined #nim |
21:43:29 | * | libman quit (Read error: Connection reset by peer) |
21:46:14 | stisa | libman did you change it both in csources and in lib? |
21:48:00 | libman2 | Aha, that's what I missed. Gotta disconnect, will finish this later. |
21:48:08 | libman2 | Thanks for everything! |
21:51:40 | def-pri-pub | I my Nim Ray Tracer rendering faster than the original C++ one (for book 1 of the port). It's about 10% quicker. |
21:51:46 | def-pri-pub | I got my* |
21:52:43 | * | libman2 quit (Ping timeout: 245 seconds) |
22:12:05 | dom96 | awesome :) |
22:12:12 | dom96 | I submitted a PR https://gitlab.com/gasche/gc-latency-experiment/merge_requests/16 |
22:12:35 | dom96 | now we just need a nice blog post that markets just how fast our GC is |
22:15:08 | * | bjz joined #nim |
22:26:49 | * | synshroud quit (Quit: ZNC 1.6.4 - http://znc.in) |
22:28:40 | * | synshroud joined #nim |
22:29:29 | federico3 | best way to convert a hex string "XXYYZZ..." to a bytestring? |
22:48:15 | def-pri-pub | What languages/technologies could we benchmark it agaisn't. Benchmarks really are the gold standard of selling performance |
22:49:08 | euantor | Crystal might be good to benchmark against, as it occupies a similar space |
22:49:20 | euantor | (if not already done?) |
22:50:14 | dom96 | The ray tracer? |
22:50:23 | dom96 | or the GC? |
22:52:21 | dom96 | federico3: I believe there is a parseHex function somewhere |
23:01:04 | def-pri-pub | dom96: I'd be very honored if you did want to use the RayTracer to benchmark, but I would need to double check all of the code to make sure it's in alignment with the C++ one. |
23:01:32 | def-pri-pub | I may have accidentally snuk an extra inline in somewhere it wasn't in the C++ version. |
23:02:33 | def-pri-pub | And right now I've only found the RT from the first book to be better. I would like to retest it some more and make sure the c++ version is as riced as the compiler will let it be. |
23:04:57 | * | Trustable quit (Quit: Leaving) |
23:07:58 | * | pregressive joined #nim |
23:08:17 | dom96 | We can certainly compare the GC to Crystal, but AFAIK Crystal uses boehm. |
23:25:25 | * | nsf joined #nim |
23:30:35 | * | stisa quit () |
23:43:53 | yglukhov | Araq: heapdump is nice. But it wont help figure the paths to leaking objects, will it? |
23:46:06 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
23:49:12 | * | devted quit (Quit: Sleeping.) |
23:51:21 | * | jinshil joined #nim |