<< 14-01-2017 >>

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:40def-pri-pubWhat is the `interface` keywork used for?
02:48:23def-pri-pubkeyword*
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:36Araqdef-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:37def-pri-pubAraq: possibly interfaces like in C# and Java? I'm playing around with macros right now to see if I can do that.
04:59:23def-pri-puberm I meant, make something like that.
05:00:44Araqyeah, you do that
05:00:54Araqit's always requested
05:00:55*yglukhov quit (Ping timeout: 240 seconds)
05:01:13Araqbbl
05:03:52def-pri-pubbbl?
05:10:23def-pri-pubhttps://gist.github.com/define-private-public/88dd50f80a01d11ee1444391fba6d06c
05:10:48def-pri-pubThe 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:24def-pri-pubI'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:51def-pri-pubRight 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:58def-pri-pubIt 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:24def-pri-pubnight
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:21Araqyglukhov: GC finally has some "heap dump" feature
14:25:37Araqit outputs the number of allocated objects per object type
14:25:49Araqand the total amount of bytes these take up
14:29:04Araqand I already found a logical memory leak with it :-)
14:29:06*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:34:27dom96So yeah, props to Digital Ocean and @taotetek for $480 in credit.
14:35:21dom96That will cover our hosting costs for a full year.
15:02:13dom96For anybody interested in helping us setup Nim's infrastructure v2 join #nimbuild, where you will also likely find other discussion about Nim.
15:07:47Vladarhm, is there any standard lib proc to generate array/seq from a given slice?
15:10:44AraqVladar: that's usually just a waste of memory, iterate over the slice directly
15:11:33ftsfprobably nice if you're trying to do functional style stuff though
15:11:39TrustableHi, I open an existing file with open(.., fmReadWrite), why is the file content cleared?
15:13:55TrustableThis behavior should be mentioned in the documentation.
15:15:31AraqTrustable: could be OS dependent
15:15:57Araqwhy do you use fmReadWrite btw? I never used it in my entire life. :-)
15:16:17Trustablebecause I want to read and write to a file
15:16:53Araqso much is clear.
15:17:58ftsfsounds like you want the equivalent of r+ in fopen
15:18:03Araqif it's binary data, memory mapped files are usually faster.
15:18:21Araqif it's a text file, I don't think it can work at all with variable sized texts
15:18:25TrustablefmReadWriteExisting works for me
15:18:40Araqah, never used that one either.
15:18:45Araqdidn't know it exists :-)
15:18:57dom96This is documented: http://nim-lang.org/docs/system.html#FileMode
15:18:57Trustablewe should metion, that fmReadWrite could clear the file
15:19:15dom96Although it doesn't mention that a file will be cleared
15:19:24Trustablethis is what I mean
15:20:17AraqfmReadWriteExisting also doesn't mention it leaves the file intact
15:20:46*yglukhov quit (Remote host closed the connection)
15:21:14Araqfixed.
15:21:23Araqthe "edit" button surely is handy.
15:23:19ftsfshould open be part of os rather than system?
15:23:48Trustablethx Ajaq, that is want I wanted :)
15:23:48Araqno, but an io.nim module would have been wise.
15:24:10AraqTrustable: the 'edit' button exists for you too and creates a PR. very convenient.
15:24:12dom96the system module can certainly use some cleaning
15:24:49TrustableAraq: I know the edit button. This time you just were faster than me.
15:25:05Araqthat's the right answer.
15:27:57*yglukhov joined #nim
15:29:25cheatfateTrustable, 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:27federico3how to a given number of bytes from a cstring to a string (ignoring any \0) ?
18:01:02Araqvar s = newString(len); copyMem(s, ...)
18:01:12Araqthere is no shortcut iirc
18:01:31Araqbut your question is ambiguous
18:02:02federico3copyMem(s or copyMem(addr s[0] ?
18:02:15Araqthe addr variant
18:04:32federico3there 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:21Araqyeah, compiler/lexer.nim also needs it iirc
18:07:42*yglukhov quit (Remote host closed the connection)
18:08:01dom96maybe we should create an ffi module for these types of operations?
18:08:16euantorAwesome work on the donation taotetek!
18:08:22*awal joined #nim
18:08:23awalhi
18:09:49Araqhi
18:10:22dom96hello awal
18:10:37awalheyo :) Is the source for NimBot available?
18:10:51dom96yep https://github.com/nim-lang/nimbot
18:11:04awalthank you!
18:11:28*yglukhov joined #nim
18:14:43smttrying 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:14dom96awal: are you looking to write your own IRC bot? :)
18:16:07dom96smt: Have you got libeay64.dll in your PATH?
18:16:15dom96smt: You can get it from this zip IIRC: nim-lang.org/download/dlls.zip
18:16:17Araqsmt: what does 'where nimble.exe' say?
18:16:49smtah, i dont have that dll in my path, that'll probably fix it
18:16:55awaldom96: Well, yes, but I haven't used nim before - just checking out a bunch of languages via existing projects :)
18:17:04smtwhere nimble.exe
18:17:05smt gives me: C:\Users\smt\Nim\bin\nimble.exe
18:17:23AraqNim\bin should have these DLLs
18:17:26Araqplease check
18:17:45*yglukhov quit (Remote host closed the connection)
18:18:06smtthey didn't before, but i put those dlls from the zip there and it's all good now, thanks
18:18:39Araqsmt: did you install from github?
18:18:40dom96awal: cool, let me know if you need any help with the IRC library (I wrote it)
18:19:11awaldom96: ah great, sure thing, thanks!
18:19:22*yglukhov joined #nim
18:19:23smtyeah I used the intructions on the github page as well as the build64.bat
18:19:54Araqok then everything is alright.
18:20:19smtcool, thanks for the dlls
18:20:27Araqwe cannot have DLLs in the git repo because of reasons.
18:21:32smtyeah 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:53Araqyes, something like that. the error message is from the stdlib though, it's not nimble specific.
18:25:07Araqwe can make overridable, perhaps
18:26:04Araqanother use case for patchFile(...)
18:29:37*kulelu88 joined #nim
18:44:52*nick_k joined #nim
18:45:42awalWhat is the recommended way to install the nim compiler on linuxes?
18:47:12nick_kI just checked out from github as on http://nim-lang.org/download.html
18:48:00nick_kBut that's the bleeding edge version
18:50:17Calinouawal: some distributions have Nim packaged, like Arch Linux
18:51:14Calinouhttps://pkgs.org/download/nim
18:51:20awalCalinou: I am on Arch, it seems the version in official repos is one minor version behind
18:52:26nick_kI just followed the "Installation based on generated C code" part and it's pretty painless
18:53:02awalnick_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:08libmanTrying 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:43def-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:16libman2I 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:54stisalibman2 : I got it to work some time ago, try lokking here
20:12:03stisahttp://stisa.space/articles/compile-nim-on-android/
20:12:03*rokups quit (Quit: Connection closed for inactivity)
20:16:39libmanstisa: 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:13dom96stisa: that's a really nice article!
21:03:40dom96You should advertise it more, I haven't seen it until now :)
21:03:54*nsf quit (Quit: WeeChat 1.6)
21:04:33dom96also, I wonder, does 0.16.0 support arm64 now?
21:04:44dom96or rather `aarch64`?
21:06:43dom96quite a bit of workarounds were needed
21:06:54dom96if you haven't already please consider creating issues/PRs for them
21:07:03def-pri-pubstisa: http://i.imgur.com/DXkLvT2.gif
21:07:23def-pri-pubAlso, nice job on the WebGL bindings too.
21:08:47*kulelu88 quit (Quit: Leaving)
21:10:50stisadom96 : 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:58stisadef-pri-pub thanks! I saw you wrapped canvas, so now we have most of js graphic covered
21:28:10def-pri-pubstisa: what isn't?
21:32:14stisadef-pri-pub SVGs I think? But that's more static, I'm just not too familiar with js so I wrote "most"
21:33:22def-pri-pubI'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:30def-pri-pubIf someone used `html5_canvas` and `webgl` together, do you think there would be conflicts?
21:36:20def-pri-pubI 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:46def-pri-pubWe could also merge the packages into one as well.
21:37:35def-pri-pubIIRC, 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:43def-pri-puban official*
21:37:45stisaMmh, well I think we both already depend on the dom module, so adding it there would be easier maybe
21:38:15stisaA single module for all things js graphic could be interesting too
21:40:28dom96hrm, 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:32libmanGot 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:14stisalibman did you change it both in csources and in lib?
21:48:00libman2Aha, that's what I missed. Gotta disconnect, will finish this later.
21:48:08libman2Thanks for everything!
21:51:40def-pri-pubI my Nim Ray Tracer rendering faster than the original C++ one (for book 1 of the port). It's about 10% quicker.
21:51:46def-pri-pubI got my*
21:52:43*libman2 quit (Ping timeout: 245 seconds)
22:12:05dom96awesome :)
22:12:12dom96I submitted a PR https://gitlab.com/gasche/gc-latency-experiment/merge_requests/16
22:12:35dom96now 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:29federico3best way to convert a hex string "XXYYZZ..." to a bytestring?
22:48:15def-pri-pubWhat languages/technologies could we benchmark it agaisn't. Benchmarks really are the gold standard of selling performance
22:49:08euantorCrystal might be good to benchmark against, as it occupies a similar space
22:49:20euantor(if not already done?)
22:50:14dom96The ray tracer?
22:50:23dom96or the GC?
22:52:21dom96federico3: I believe there is a parseHex function somewhere
23:01:04def-pri-pubdom96: 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:32def-pri-pubI may have accidentally snuk an extra inline in somewhere it wasn't in the C++ version.
23:02:33def-pri-pubAnd 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:17dom96We 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:53yglukhovAraq: 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