<< 14-11-2016 >>

00:11:22*yglukhov joined #nim
00:14:36*ftsf_ quit (Ping timeout: 260 seconds)
00:16:00*yglukhov quit (Ping timeout: 260 seconds)
00:27:07*ftsf_ joined #nim
00:53:40*yglukhov joined #nim
00:58:24*yglukhov quit (Ping timeout: 260 seconds)
01:13:15*byte512 joined #nim
01:26:06*kunev quit (Ping timeout: 244 seconds)
01:27:21*kunev joined #nim
01:36:03*yglukhov joined #nim
01:38:48*chemist69 quit (Ping timeout: 245 seconds)
01:39:57*Dankrad quit (Ping timeout: 268 seconds)
01:40:42*yglukhov quit (Ping timeout: 258 seconds)
01:41:08*chemist69 joined #nim
02:18:23*yglukhov joined #nim
02:22:56*yglukhov quit (Ping timeout: 260 seconds)
02:27:25*chemist69 quit (Ping timeout: 260 seconds)
02:40:50*chemist69 joined #nim
02:55:20*pie__ joined #nim
02:59:43*subsetpark joined #nim
03:03:53*pie__ quit (Ping timeout: 256 seconds)
03:11:05*yglukhov joined #nim
03:14:27*pregressive joined #nim
03:15:40*yglukhov quit (Ping timeout: 260 seconds)
03:15:51*space-wizard joined #nim
03:15:51*pregressive quit (Remote host closed the connection)
03:16:17*space-wizard quit (Client Quit)
03:16:26*pregressive joined #nim
03:18:09*pregress_ joined #nim
03:18:10*pregressive quit (Read error: Connection reset by peer)
03:21:29*pregress_ quit (Remote host closed the connection)
03:22:03*pregressive joined #nim
03:26:13*NimBot joined #nim
03:26:21*pregressive quit (Ping timeout: 252 seconds)
03:32:05*NimBot joined #nim
03:52:04*dmi0 quit (Ping timeout: 260 seconds)
03:53:47*yglukhov joined #nim
03:58:08*yglukhov quit (Ping timeout: 260 seconds)
04:09:48*couven92 quit (Quit: Client disconnecting)
04:10:57*byte512 quit (Ping timeout: 240 seconds)
04:23:06*zaquest joined #nim
04:32:01*pregressive joined #nim
04:36:07*yglukhov joined #nim
04:40:36*yglukhov quit (Ping timeout: 260 seconds)
04:56:18*zaquest quit (Read error: Connection reset by peer)
04:57:25*zaquest joined #nim
04:58:54*dddddd quit (Remote host closed the connection)
05:13:56*yglukhov joined #nim
05:18:24*yglukhov quit (Ping timeout: 260 seconds)
05:29:11*Dankrad joined #nim
05:39:31*yglukhov joined #nim
05:43:52*yglukhov quit (Ping timeout: 252 seconds)
05:59:05*pregressive quit (Remote host closed the connection)
05:59:39*pregressive joined #nim
06:04:06*pregressive quit (Ping timeout: 246 seconds)
06:05:42*nsf joined #nim
06:09:40*yglukhov joined #nim
06:14:16*yglukhov quit (Ping timeout: 250 seconds)
06:17:52*ibk joined #nim
06:23:22*Dankrad quit (Ping timeout: 250 seconds)
06:50:30*yglukhov joined #nim
06:55:00*yglukhov quit (Ping timeout: 260 seconds)
07:05:55*ftsf_ quit (Quit: :q!)
07:08:09*bjz joined #nim
07:11:23*yglukhov joined #nim
07:16:00*yglukhov quit (Ping timeout: 260 seconds)
07:26:58*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
07:44:15*bjz joined #nim
07:53:42*yglukhov joined #nim
07:54:44*gokr joined #nim
07:58:28*yglukhov quit (Ping timeout: 260 seconds)
08:25:59*Trustable joined #nim
08:54:31*bjz_ joined #nim
08:54:47*bjz quit (Ping timeout: 265 seconds)
09:01:08*pregressive joined #nim
09:01:37*pregressive quit (Read error: Connection reset by peer)
09:02:10*pregressive joined #nim
09:02:10*rokups` joined #nim
09:02:54*rokups` quit (Client Quit)
09:06:53*pregressive quit (Ping timeout: 260 seconds)
09:07:35*zevlg joined #nim
09:15:58*Andris_zbx joined #nim
09:30:44*yglukhov joined #nim
09:43:51*desophos quit (Read error: Connection reset by peer)
10:16:51*Arrrr joined #nim
10:36:14*spindle joined #nim
10:36:49*bjz joined #nim
10:36:52*bjz_ quit (Ping timeout: 250 seconds)
11:09:16*bjz_ joined #nim
11:09:25*bjz quit (Ping timeout: 248 seconds)
11:10:36*vlad1777d joined #nim
11:11:08*arnetheduck joined #nim
11:13:36*vlad1777d quit (Remote host closed the connection)
11:20:55*couven92 joined #nim
11:45:08*elrood joined #nim
12:01:09*PMunch joined #nim
12:01:32*Salewski joined #nim
12:03:06SalewskiAraq, I have created next nimsuggest issue, one that creates a nimsuggest crash due to a typing error:
12:03:09Salewskihttps://github.com/nim-lang/nimsuggest/issues/40
12:03:24SalewskiI hope you can at lest reproduce it.
12:05:07Araqno --port PR?
12:05:47Araqlooks like I can push that right into my test suite, thanks a lot
12:09:52SalewskiBye...
12:09:55*Salewski left #nim (#nim)
12:30:26*gokr quit (Ping timeout: 256 seconds)
12:51:57*spindle quit (Quit: Leaving)
12:55:20*djellemah quit (Ping timeout: 244 seconds)
13:21:39*dmi0 joined #nim
13:37:22arnetheduckAraq, in ccgtypes.getObjectInfo, field info is not generated for c++ types... any idea why it's generated for other imported types?
13:45:36flyxAraq: can you look over https://github.com/nim-lang/Nim/pull/5009 again soon? I recognized another error concerning daylight saving time and want to fix it after this PR gets merged
13:46:48flyxAraq: a comment on https://github.com/nim-lang/Nim/pull/4874 would also be nice so I can improve that
13:50:05*joequery joined #nim
14:05:46chemist69why does `var s = ""; echo s[0]` not give an 'index out of bound' error?
14:13:35*gokr joined #nim
14:14:35zevlgs[0] is valid '\0' char, is not it ?
14:17:03chemist69it just feels weird that I can extract the first element although the length is zero.
14:18:25flyxstrings are 0-terminated.
14:18:36flyxso it is always safe to access s[s.len]
14:21:04*arnetheduck quit (Ping timeout: 260 seconds)
14:22:53*arnetheduck joined #nim
14:25:52chemist69ok, thanks.
14:27:40*arnetheduck quit (Ping timeout: 260 seconds)
14:29:20*arnetheduck joined #nim
14:34:54*_stowa joined #nim
14:35:29*joequery quit (Read error: Connection reset by peer)
14:39:59*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
14:47:45*UNIcodeX_Work quit (Read error: Connection reset by peer)
15:17:02*gokr quit (Ping timeout: 256 seconds)
15:33:34*pie__ joined #nim
15:40:33*pregressive joined #nim
15:42:54Araqflyx: what kind of comment do you want? ;-) I said it's "convoluted"
15:43:27*confundus joined #nim
15:44:50*gokr joined #nim
15:46:40*Andris_zbx quit (Remote host closed the connection)
15:47:50Araqarnetheduck: because accessing private fields in C++ causes errors
15:47:58AraqC has no private fields.
15:54:46arnetheduckAraq, well, I changed it ;) instead of private fields, c has macro tricks where x->yyy is actually transformed to x->zzz.ttt and the like which messes with offsetof, and suddently lots of tests went green: https://github.com/nim-lang/Nim/pull/5018
15:56:05arnetheduckmy question was actually the other way around.. why would it be useful to generate field info for imported types (not why it's hard to do it for c++)?
15:57:08arnetheduckthe test suite works fine without it, but it's not like those parts are rigorously and methodically tested...
16:00:43Araqwell the clean solution is to embrace incompleteCstruct or whatever it's called
16:00:55*confundus quit (Quit: leaving)
16:01:33Araqso it's clearly communicated "compiler, we fucked it up, you cannot generate RTTI"
16:01:47Araqwhich btw affects the assignment operator too
16:01:58Araqincomplete structs cannot be copied
16:04:20arnetheduckhm that seems to be used only when the c type is an incomplete struct (like FILE)
16:04:38arnetheduckie when even the c compiler doesn't know the layout
16:05:32Araqhmm
16:06:53Araqbtw I now have the same problem as you. object type aliases cause a copy, not good :-)
16:07:36Araqquestion is whether we introduce tyAlias or simply make both types 'sym' field point to the same Symbol
16:09:01*confundus joined #nim
16:10:53arnetheduckthe latter will prevent some ast analysis and possibly render error messages less intuitive, I'd venture to guess
16:11:00arnetheduckie it drops information
16:12:12*gokr quit (Ping timeout: 265 seconds)
16:14:05*PMunch quit (Quit: leaving)
16:16:22arnetheduckwith either, you could get rid of large parts of the uniquedtype stuff simply by always skipping to the most raw definition.. nlvm does none of that stuff, but suffers from excessive casting because it cannot tell if two types alias
16:16:51Araqin my branch I removed uniqueType, yes
16:17:22Araqreplaced it by type signatures
16:17:42arnetheducklike.. mangled names?
16:18:13Araqyeah, but I hash everything to keep the mangled names short
16:19:23arnetheduckin c gen or earlier?
16:19:30AraqI like to use this mechanism later in the frontend too to determine type equality
16:19:40Araqright now it's backend only
16:21:32arnetheduckwell, tbh, I suspect backend can do without it by adding a few casts here and there, trusting that sem has done its work.. that's what nlvm does and I don't see why c gen should be different in this regard
16:22:16AraqI don't know when to generate these casts
16:22:28Araqand it seems an ugly solution
16:22:56arnetheduckno, but ast does .. whenever parent and child disagree, essentially.. mostly happens with arg passing
16:25:46flyxAraq: you said you don't like staticReadEx as name, so I wonder how you would like the procs to be named
16:27:19arnetheduckhttps://github.com/arnetheduck/nlvm/blob/master/nlvm/llgen.nim#L1435 - used with function calls and binops, that's it
16:28:42arnetheduckif type aliases are know, even that should go away I think...
16:29:00arnetheduckoh well, bbl.. +1 for tyAlias
16:36:00Araqflyx: slurpOutputAndExitCode ... meh
16:43:17*huonw quit (Ping timeout: 256 seconds)
16:43:34*huonw joined #nim
16:49:33*pregressive quit (Remote host closed the connection)
16:50:05*pregressive joined #nim
16:51:02*pregressive quit (Read error: Connection reset by peer)
16:51:29*pregressive joined #nim
16:52:06Araqflyx: staticReadEx is fine, cannot come up with something better
16:52:39*pregressive quit (Read error: Connection reset by peer)
16:53:06*pregressive joined #nim
16:53:27Araqarnetheduck: btw your code is full of duplications, use more templates :-)
16:53:58*pregressive quit (Read error: Connection reset by peer)
16:54:23*pregressive joined #nim
16:58:57*pregressive quit (Ping timeout: 240 seconds)
17:04:03*UNIcodeX joined #nim
17:04:55*fredrik92 joined #nim
17:06:32*Trustable quit (Remote host closed the connection)
17:06:55*couven92 quit (Disconnected by services)
17:07:00*fredrik92 is now known as couven92
17:07:20*fredrik92 joined #nim
17:08:25*ibk quit (Quit: Connection closed for inactivity)
17:18:10*vlad1777d joined #nim
17:18:36*desophos joined #nim
17:34:51*Jesin quit (Quit: Leaving)
17:36:03*space-wizard joined #nim
17:43:42*confundus quit (Quit: leaving)
17:49:35*yglukhov_ joined #nim
17:50:01*pie__ quit (Ping timeout: 260 seconds)
17:52:57*yglukhov quit (Ping timeout: 240 seconds)
17:52:58*yglukhov_ quit (Read error: Connection reset by peer)
17:53:20*yglukhov joined #nim
17:57:34*yglukhov quit (Ping timeout: 250 seconds)
18:01:00*yglukhov joined #nim
18:01:32*gokr joined #nim
18:05:25*yglukhov quit (Ping timeout: 260 seconds)
18:13:34*Jesin joined #nim
18:22:06*pregressive joined #nim
18:23:12*krux02 joined #nim
18:23:14*pregressive quit (Read error: Connection reset by peer)
18:23:46*pregressive joined #nim
18:23:54*pregressive quit (Remote host closed the connection)
18:24:28*pregressive joined #nim
18:24:58*pregressive quit (Read error: Connection reset by peer)
18:25:25*pregressive joined #nim
18:27:39*nsf quit (Quit: WeeChat 1.6)
18:29:36*pregressive quit (Ping timeout: 246 seconds)
18:36:03*brson joined #nim
18:38:30*Jesin quit (Quit: Leaving)
18:40:37*yglukhov joined #nim
18:44:58*yglukhov quit (Ping timeout: 258 seconds)
18:48:54*yglukhov joined #nim
18:55:30*vendethiel quit (Ping timeout: 252 seconds)
18:59:12*vendethiel joined #nim
19:01:52*Gonzih quit (Quit: WeeChat 1.6)
19:02:48corecodecan a template that creates a proc add a (custom) documentation comment? i guess i need to check it out
19:02:55*Gonzih joined #nim
19:03:49Araqnah, you need a macro for that, I think
19:03:51*Gonzih quit (Client Quit)
19:03:57corecodeokay
19:04:11*Gonzih joined #nim
19:04:16Araqthere is no substitution mechanism for comments
19:04:43AraqI would write the comment in a general fashion instead :P
19:04:59corecodethis is for generated code
19:05:04*Gonzih quit (Client Quit)
19:05:14Araqyes, I got it.
19:05:20corecodeconverting xml that describes memory-mapped hardware registers into accessor procs
19:05:26*Gonzih joined #nim
19:05:46corecodei thought about adding the "description" node as documentation comment
19:05:56Araqwhy would I want to read 10x the same comment?
19:06:06corecodeyea you wouldn't
19:06:15Araqor slightly variations of the comment for that matter
19:07:06Araqproc getFoo(): Foo ## Get the foo.
19:07:15corecodelolno
19:07:22Araq--> just leave it out instead :P
19:08:17corecodemore like proc ALERT(r: CR1type): bool ## SMBus alert; proc PEC(r: CR1type): bool ## Packet error checking
19:11:10Araqah, so the doc comment is in the XML?
19:12:17corecodethe content comes from the xml
19:12:26corecodei'm still playing with the interfaces
19:13:04corecodehow to do abstract memory-mapped register access
19:13:17corecodeand how this API is generated
19:14:32*Jesin joined #nim
19:18:56*yglukhov quit (Remote host closed the connection)
19:22:23FromGitter<kteza1> Is there any documentation which clearly tells the difference between `var` for creating a variable and `var` in proc parameters?
19:29:06flyxkteza1: http://nim-lang.org/docs/manual.html#statements-and-expressions-var-statement http://nim-lang.org/docs/manual.html#procedures-var-parameters
19:32:44*Salewski joined #nim
19:33:54SalewskiVar for creating a variable, and var for proc parameters are fully unrelated and have nothing in common I think.
19:34:33*yglukhov joined #nim
19:34:34SalewskiBoth is from Pacal family -- as keyword static in C which is used with totally different meanings.
19:39:32*pregressive joined #nim
19:41:23FromGitter<kteza1> Salewski: When I was a C beginner, I found static very confusing. Why didn't nim go with a different keyword here? @dom96 Maybe this point should be stressed in Nim In Action? I couldn't recollect reading about this
19:41:27SalewskiOK, when thinking about it, both indicate a nutable value
19:42:19SalewskiIt is bad to waste too many keywords
19:44:45SalewskiAnd it is from Pascal family and makes sense in the sense of mutable. But still both is very different.
19:45:48SalewskiBye...
19:45:52*Salewski left #nim (#nim)
19:47:47*zaquest quit (Quit: Leaving)
19:48:20*yglukhov quit (Remote host closed the connection)
19:52:03*dmi0 quit (Ping timeout: 258 seconds)
19:53:06*PMunch joined #nim
19:58:19*yglukhov joined #nim
20:22:47yglukhovCan macro be somehow limited on node kinds it can be applied to during overload resolution?
20:28:28Araqyglukhov: yes indeed, via type parameter constraints
20:29:01Araqmacro m(a: typed{lit})
20:30:16Araqkteza1: I never found a better keyword for it, plus you need to pass a variable to a 'var T' param, so it makes lots of sense
20:30:27AraqI also liked the ptr/ref/var trinity
20:31:40yglukhovAraq: theres smth wrong with this code: macro toBson*(x: untyped{nnkTableConstr}): Bson = ...
20:31:53yglukhovError: Error: illformed AST: nnkTableConstr
20:32:15Araqtry nkTableConstr instead
20:32:33Araqor just TableConstr, I don't remember, check the manual
20:33:35yglukhovAraq: got it. that moved me a bit further. thanks.
20:37:05*yglukhov quit (Remote host closed the connection)
20:37:16*gangstacat quit (Quit: Ĝis)
20:41:11*Dankrad joined #nim
20:45:53FromGitter<kteza1> Araq: Ok. Thanks :). This might be one of the frequent confusing concepts for newbies. Better documentation explaining the differences would be great
20:47:00*Arrrr quit (Quit: WeeChat 1.5)
20:50:33corecodeVM is not allowed to 'cast' :(
20:58:23*dmi0 joined #nim
21:01:11*pregressive quit (Remote host closed the connection)
21:02:00*pregressive joined #nim
21:02:19Araqcorecode: what do you do at compile-time? :-)
21:02:40Araqcheck my lexim project of how to use staticExec for much faster compiletime voodoo
21:02:44corecodetrying to learn nim :)
21:07:27*gangstacat joined #nim
21:09:38*xet7 quit (Quit: Leaving)
21:19:09*xet7 joined #nim
21:20:15*gangstacat_ joined #nim
21:20:57*gangstacat quit (Ping timeout: 260 seconds)
21:30:03*dmi00 joined #nim
21:30:28*dmi0 quit (Ping timeout: 260 seconds)
21:30:35*Dankrad quit (Ping timeout: 256 seconds)
21:31:30*Dankrad joined #nim
21:32:28*nsf joined #nim
21:44:28*Dankrad quit (Ping timeout: 260 seconds)
21:45:22*Dankrad joined #nim
21:51:18*Trustable joined #nim
21:56:30*bjz_ quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
22:05:09*chemist69 quit (Ping timeout: 256 seconds)
22:07:36*chemist69 joined #nim
22:21:49*bjz joined #nim
22:27:03*byte512 joined #nim
22:30:03*bjz quit (Ping timeout: 245 seconds)
22:33:38*byte512 quit (Ping timeout: 268 seconds)
22:41:06*shashlick joined #nim
22:44:02shashlickhello all
22:45:37*byte512 joined #nim
22:51:55Araqhi shashlick welcome
22:52:50*nsf quit (Quit: WeeChat 1.6)
22:54:04shashlickhello Araq - honored :)
22:55:39shashlickI'm new to Nim, still twiddling around to find my way, but find it very interesting
23:00:51*pregressive quit (Remote host closed the connection)
23:01:27*pregressive joined #nim
23:03:49*elrood quit (Quit: Leaving)
23:05:41*pregressive quit (Ping timeout: 248 seconds)
23:11:12*gokr quit (Ping timeout: 244 seconds)
23:19:14*shashlick quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
23:19:23*Trustable quit (Remote host closed the connection)
23:41:22*alfredo joined #nim
23:41:37*alfredo is now known as abeaumont
23:47:58*Dankrad quit (Ping timeout: 245 seconds)
23:48:30*Dankrad joined #nim