<< 15-12-2015 >>

00:03:05cryzedAraq, I saw QML bindings... but I don't think that's the same
00:12:03Araqwell I don't really know what QML is
00:12:22Araqbut I suspected that new shiney technology would work out of the box with Qt5
00:13:13cryzedI'm not sure if I'm understanding you right, but yeah Qt5 is pretty neat -- and probably the preferred GUI toolkit I want to say
00:13:15cryzednowadays
00:14:06Araqwell tomorrow I will review a wxWidgets wrapper and if it's ok we might release it soon
00:14:35cryzedNim is coming along great :)
00:14:56*pregress_ quit (Remote host closed the connection)
00:15:15cryzedI have various nim-related stuff in my rss reader now too -- I really liked the stuff from the twitter account, that's also how I discovered a few youtube vids of you introducing some cool nim features
00:15:37cryzedIf I do something like type Context = Table[string, int] -- how would I go about calling initTable on that type?
00:16:02dom96Araq: Didn't you create a wxwidgets wrapper and release it already?
00:16:11*Matthias247 quit (Read error: Connection reset by peer)
00:21:04*Senketsu quit (Quit: Leaving)
00:22:51*nicktick joined #nim
00:37:48Araqyeah but it's not idiomatic Nim, wrapping C++ directly is not that great
00:40:17*ehaliewicz joined #nim
00:46:10*gokr1 joined #nim
00:46:20*gokr1 quit (Client Quit)
00:46:35*gokr1 joined #nim
00:47:37cryzedDoes Table.getOrDefault automatically set the value within the table too?
00:48:15*gokr quit (Ping timeout: 240 seconds)
00:49:38*imapiekindaguy joined #nim
00:49:51cryzedah no, probably not -- default is probably the default int type
00:51:19*jakesyl joined #nim
01:22:39*desophos quit (Remote host closed the connection)
01:26:41cryzedhm, I have a custom type of Signal with range[0..65535]. When I do the bitwise not on it, it turns negative -- is there a way to force it to interpret the number as positive? I think that would just remove the leading 1 from the 2's complement, right?
01:27:02*pregressive joined #nim
01:30:06*Demon_Fox joined #nim
01:33:39cryzedI guess I'll just use uint16
01:34:48*zepolen joined #nim
01:39:26*zepolen quit (Ping timeout: 250 seconds)
01:46:32*joelmo joined #nim
01:48:58*pregressive quit (Remote host closed the connection)
01:55:59*desophos joined #nim
02:02:45*lazypenguin joined #nim
02:09:17*imapiekindaguy quit (Quit: WeeChat 1.4-dev)
02:13:42*xiongxin joined #nim
02:20:01*desophos_ joined #nim
02:23:20cryzeddef-, are you around?
02:23:38*desophos quit (Ping timeout: 250 seconds)
02:24:43*pregressive joined #nim
02:29:34*desophos_ is now known as desophos
02:30:29*Sornaensis quit (Excess Flood)
02:30:52*Sornaensis joined #nim
02:37:38*nicktick quit (Read error: Connection reset by peer)
02:41:28*nicktick joined #nim
03:01:48*gokr1 quit (Ping timeout: 272 seconds)
03:16:18*pregressive quit (Remote host closed the connection)
03:19:15*xiongxin quit (Quit: Page closed)
03:25:50*desophos_ joined #nim
03:30:18*desophos_ quit (Ping timeout: 272 seconds)
03:31:02cryzedhttps://gist.github.com/cryzed/275ff002986b4142c4c4 phew, this took much longer than I had expected
03:34:43cryzedhttps://gist.github.com/cryzed/275ff002986b4142c4c4 phew, this took much longer than I had expected
03:34:50cryzedgoddamit, I need to stop switching with alt tab
03:36:29*xiongxin joined #nim
03:53:44*BitPuffin|osx quit (Ping timeout: 272 seconds)
03:53:46*ehaliewicz quit (Remote host closed the connection)
04:06:45*pregressive joined #nim
04:32:16*nicktick quit (Quit: Leaving.)
04:32:57*nicktick joined #nim
04:34:57*zepolen joined #nim
04:35:03*pregressive quit (Remote host closed the connection)
04:38:39*nicktick1 joined #nim
04:39:56*zepolen quit (Ping timeout: 256 seconds)
04:41:52*nicktick quit (Ping timeout: 250 seconds)
04:49:18*nicktick joined #nim
04:53:16*nicktick1 quit (Ping timeout: 272 seconds)
04:54:06*nicktick quit (Ping timeout: 240 seconds)
04:55:09*nicktick joined #nim
04:55:44*jakesyl quit (Ping timeout: 250 seconds)
05:03:46*joelmo quit (Quit: Connection closed for inactivity)
05:09:10*jakesyl joined #nim
05:30:28*pregressive joined #nim
06:00:39*pleiosaur quit (Remote host closed the connection)
06:01:20*xet7 quit (Quit: Leaving)
06:12:44*pregressive quit (Remote host closed the connection)
06:17:07*darkf joined #nim
06:18:16*pregressive joined #nim
06:31:34*kniteli quit (Ping timeout: 256 seconds)
06:32:34*yglukhov joined #nim
06:35:09*yglukhov quit (Remote host closed the connection)
06:38:11*gokr joined #nim
06:38:54*zepolen joined #nim
06:43:14*gokr quit (Quit: Leaving.)
06:44:03*gokr joined #nim
07:12:13*pregressive quit (Read error: Connection reset by peer)
07:12:24*pregressive joined #nim
07:34:42*pregressive quit (Remote host closed the connection)
07:38:02*HakanD_____ joined #nim
07:48:39*bjz joined #nim
07:51:43*M-max quit (Remote host closed the connection)
07:51:43*M-Quora quit (Read error: Connection reset by peer)
07:59:48*desophos quit (Read error: Connection reset by peer)
08:00:59*M-Quora joined #nim
08:18:00*zepolen quit (Read error: Connection reset by peer)
08:19:36*zepolen joined #nim
08:20:17*vqrs joined #nim
08:21:01*M-max joined #nim
08:31:08*bjz quit (Ping timeout: 256 seconds)
08:38:40*bjz joined #nim
08:44:54*jaco60 joined #nim
08:46:55*nicktick1 joined #nim
08:48:46*nicktick quit (Ping timeout: 240 seconds)
08:52:20*jaco60 quit (Ping timeout: 250 seconds)
09:00:36*zepolen_ joined #nim
09:02:35*zepolen quit (Ping timeout: 240 seconds)
09:09:37*Trustable joined #nim
09:14:32*nicktick joined #nim
09:16:36*nicktick1 quit (Ping timeout: 250 seconds)
09:18:37*coffeepot joined #nim
09:20:53*nicktick quit (Quit: Leaving.)
09:27:15*yglukhov joined #nim
09:33:10*xiongxin quit (*.net *.split)
09:35:26*bjz quit (Ping timeout: 240 seconds)
09:36:31*lyro_ quit (Remote host closed the connection)
09:51:54*bjz joined #nim
09:55:02*bjz_ joined #nim
09:56:26*bjz quit (Ping timeout: 240 seconds)
10:17:30*coffeepot quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
10:29:59*zepolen_ quit (Read error: Connection reset by peer)
10:31:14*zepolen joined #nim
10:34:22*zepolen_ joined #nim
10:34:57*allan0_ joined #nim
10:36:32*allan0 quit (Ping timeout: 272 seconds)
10:37:26*zepolen quit (Ping timeout: 240 seconds)
10:59:52*arnetheduck quit (Quit: Leaving)
11:11:27*HakanD_____ quit (Quit: Be back later ...)
11:11:55*HakanD_____ joined #nim
11:22:32*kerze joined #nim
11:39:03veganskHi! How can I link more than one static library created by Nim compiler with C application? How can I handle multiply `NimMain` definitions problem?
11:58:14*bjz_ quit (Ping timeout: 272 seconds)
11:59:10*bjz joined #nim
12:04:26*HakanD_____ quit (Quit: Be back later ...)
12:04:52*HakanD_____ joined #nim
12:12:29*zepolen joined #nim
12:14:35*zepolen_ quit (Ping timeout: 240 seconds)
12:20:45*zepolen_ joined #nim
12:22:56*zepolen quit (Ping timeout: 250 seconds)
12:29:54*silven quit (Ping timeout: 272 seconds)
12:40:43*Jehan_ joined #nim
12:42:09*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
12:48:04*bjz joined #nim
13:06:26*Demon_Fox quit (Ping timeout: 240 seconds)
13:11:20*kerze is now known as smodo
13:23:56*boopisaway is now known as boop
13:25:04*smodo quit (Remote host closed the connection)
13:30:09*nicktick joined #nim
13:32:08*coffeepot joined #nim
13:42:40*BitPuffin joined #nim
13:48:48yglukhovvegansk: compile with --noMain?
13:56:19*boop is now known as boopisaway
14:01:05*coopernurse quit (Quit: WeeChat 1.1.1)
14:33:26*lyro joined #nim
14:34:30*xiongxin joined #nim
14:34:54*zepolen_ quit (Remote host closed the connection)
14:36:56cryzeddef-, you around?
14:54:05*nicktick quit (Quit: Leaving.)
14:59:00*xiongxin quit (Quit: Page closed)
15:03:25*kerze joined #nim
15:03:36*kerze is now known as smodo
15:12:06*Jehan_ quit (Quit: Leaving)
15:13:37*smodo quit (Read error: Connection reset by peer)
15:21:19veganskyglukhov, it works only for one static library.
15:48:12*zepolen joined #nim
16:01:50def-cryzed: sometimes, what's up?
16:04:54*gour joined #nim
16:09:57cryzeddef-, regarding your solution with the binary gates -- you wrote your code in such a way that only evaluated all instructions that needed to be evaluated to get the result you wanted, with your go-proc right?
16:10:48def-cryzed: right, just recursively solving them as they're needed
16:11:10cryzedah, my code in hindsight seems a bit less well-thought out then
16:11:36cryzedhttps://gist.github.com/cryzed/6438fbcf7a756ad3c0d4 I do it sequentially, it doesn't work as well I think
16:35:43*jaco60 joined #nim
16:40:24*coffeepot quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
16:51:28*yglukhov quit (Ping timeout: 272 seconds)
16:55:30*jakesyl quit (Ping timeout: 250 seconds)
17:00:43*lokulin quit (Quit: bye!)
17:01:56*pregressive joined #nim
17:05:45*zepolen_ joined #nim
17:08:29*zepolen quit (Ping timeout: 246 seconds)
17:09:30*jakesyl joined #nim
17:35:43*yglukhov joined #nim
17:39:46*yglukhov quit (Ping timeout: 240 seconds)
17:40:14*gour quit (Ping timeout: 256 seconds)
17:56:28*brson joined #nim
17:57:32*strcmp1 quit (Quit: brbing)
17:57:42*strcmp1 joined #nim
17:58:51*strcmp1 quit (Client Quit)
17:59:00*strcmp1 joined #nim
18:04:22*yglukhov joined #nim
18:04:38*zepolen joined #nim
18:05:40*HakanD_____ quit (Quit: Be back later ...)
18:07:25*kulelu88 joined #nim
18:07:25*kulelu88 quit (Changing host)
18:07:25*kulelu88 joined #nim
18:07:46*zepolen_ quit (Ping timeout: 240 seconds)
18:28:51*matkuki joined #nim
18:32:51*boopisaway is now known as boop
18:33:15*brson quit (Ping timeout: 240 seconds)
18:41:00matkukiIs there a way to correct this circular import problem (https://bpaste.net/show/e76cecb9bcc7) without moving the Manifold type definition to another module?
18:57:18*ehaliewicz joined #nim
18:59:11*ehaliewicz quit (Remote host closed the connection)
19:00:22*matkuki quit (Quit: ChatZilla 0.9.92 [Firefox 42.0/20151029151421])
19:04:40*BitPuffin quit (Ping timeout: 256 seconds)
19:04:43*matkuki joined #nim
19:08:51matkukidef-: A little help?
19:11:49cryzedIs there a good way to strip all characters that match a criteria from a give string, except splitting and then joining?
19:13:54*aziz joined #nim
19:21:14matkukiNo getting around the 'include' statement, is there.
19:21:54kulelu88cryzed: performance may be the issue with alternatives. sounds like you need to look at different algos
19:28:00*vendethiel joined #nim
19:35:48kulelu88Does nim have a friendly http library?
19:54:19*matkuki quit (Quit: ChatZilla 0.9.92 [Firefox 42.0/20151029151421])
19:57:27*brson joined #nim
19:58:05dom96kulelu88: httpclient module?
19:59:38kulelu88dom96: will it be able to handle API requests?
19:59:42*BitPuffin joined #nim
19:59:46kulelu88or am I confused about its purpose
20:00:08dom96By handle do you mean serve?
20:00:47*desophos joined #nim
20:00:50dom96You might want asynchttpserver or jester
20:01:45dom96cryzed: iterate through each character in the string and add characters that you want to a new 'result' string
20:05:42*desophos quit (Remote host closed the connection)
20:14:25*Demon_Fox joined #nim
20:35:41*kulelu88 quit (Ping timeout: 246 seconds)
20:35:54*BitPuffin quit (Ping timeout: 256 seconds)
20:39:01*zepolen quit (Remote host closed the connection)
20:48:01*kulelu88 joined #nim
20:50:42kulelu88dom96: here is my goal: I want to build a PoC where I receive an API call (say from twitter), and then my PoC will create its own/alternate outgoing API that another app can use. Think of it as a middleman for APIs
20:52:31*strcmp1 quit (Quit: brbing)
20:52:40*strcmp1 joined #nim
21:06:17*desophos joined #nim
21:07:58*kulelu88 quit (Ping timeout: 272 seconds)
21:11:02*desophos quit (Ping timeout: 256 seconds)
21:12:13cryzeddom96, I suppose that works
21:12:58cryzeddom96, wouldnt it be better to manually manage the index, and use string.delete to delete a blacklisted character and decrease the index by one manually while index < string.len?
21:16:08dom96kulelu88: sorry was away, you want jester then.
21:19:03dom96cryzed: I think that might end up being less efficient, would be cool if you benchmarked both solutions :)
21:19:13cryzeddom96, ok!
21:19:38*kulelu88 joined #nim
21:20:00cryzedI mean, I will, when I get around to it :D
21:21:13*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
21:21:36*darkf quit (Quit: Leaving)
21:23:26*desophos joined #nim
21:25:18*pregressive quit (Remote host closed the connection)
21:25:39*pregressive joined #nim
21:26:50kulelu88dom96: did you reply? I got dc
21:30:42dom96kulelu88: yeah, you can check logs here: http://irclogs.nim-lang.org
21:32:26kulelu88ok thanks
21:34:57*mat4 joined #nim
21:36:12*bjz joined #nim
21:39:38*zepolen joined #nim
21:41:32*bjz quit (Ping timeout: 272 seconds)
21:45:20*zepolen quit (Ping timeout: 272 seconds)
21:46:03cryzeddom96, strutils.unescape seems to turn any \xYZ sequence into 0-bytes
21:47:26cryzed"n\xefai" for example this turns into "n\0i" (repr-string)
21:48:53cryzedI ended up having to write my own unescape function for an advent of code task
21:49:08cryzedUnless I'm misunderstanding a feature of the unescape proc I think ths might be a bug?
21:52:04*solidsnack joined #nim
21:52:29Araqcryzed: def- found the bug too and created a PR to fix it
21:52:37cryzedAh I see
21:53:32Araqit also has another bug in that it only supports quotes of length 1
21:54:19cryzedalso in def-'s PR I assume?
21:58:31*HakanD_____ joined #nim
21:58:44*solidsnack quit (Quit: My Mac has gone to sleep. ZZZzzz…)
22:01:41cryzedalso in def-'s PR I assume?
22:01:47cryzedgoddamit
22:01:50cryzedI need to stop doing this
22:01:56cryzedI'm sorry about me repeating messages from time to time
22:04:52kulelu88dom96: Can I build this api-layer without Jester? I assumed I could use standard libs of nim to build the PoC
22:05:42dom96kulelu88: You can just use asynchttpserver directly, but it might be a PITA
22:06:30kulelu88Surprised that you guys haven't been pushing Nim more towards running systems at scale with lib support
22:06:40kulelu88is it too much work?
22:06:57kulelu88not discounting the amazing stuff you guys already have done
22:13:00cryzeddom96, is there some good stdlib module for benchmarking/profiling?
22:13:03cryzedOr do I use getEpochTime?
22:13:54dom96cryzed: Nothing in the stdlib for benchmarking
22:13:58dom96there is a profiler though
22:14:03dom96Search nimble for something
22:14:19cryzeddom96, alright -- thanks
22:14:25dom96kulelu88: You mean scaling for multiple CPU cores?
22:15:44*Jehan_ joined #nim
22:16:18kulelu88dom96: Well I am not going to go into specifics about 'how' it can be done, but wouldn't Nim classify itself as trying to address a similar market as Go?
22:17:29mat4what 'market' is addressed with Go ?
22:18:01dom96I would say that Nim addresses many markets.
22:18:35dom96It's designed to be multi-purpose.
22:19:18dom96But yes, improving async IO (and by extension asynchttpserver/jester) performance is on my to do list.
22:20:32*Trustable quit (Remote host closed the connection)
22:24:53*kulelu88 quit (Ping timeout: 246 seconds)
22:29:45*yglukhov quit (Remote host closed the connection)
22:33:07strcmp1dom96: do you think trying to create a sinatra clone doesn't really play to nims strengths?
22:33:14strcmp1from one gh issue, i got that impression
22:34:13dom96This one you mean? https://github.com/dom96/jester/issues/51
22:34:25strcmp1yea
22:34:54*boop is now known as boopisaway
22:37:15*kulelu88 joined #nim
22:38:26cryzeddom96, http://i.imgur.com/K2XOpng.png
22:38:41cryzedyour version is "only" a few magnitudes faster
22:39:04cryzedinput text was alice's adventure from the gutenberg site
22:39:22cryzedthe number is the result.len, I just wanted to make sure it actually worked
22:40:53cryzeddom96, https://gist.github.com/cryzed/4d6f2ec515b3eb389c80
22:41:41dom96My version is also far less verbose ;)
22:41:45cryzedtrue
22:42:20kulelu88dom96: is there any specific timeline for improving the async lib (I know that you are quite busy)
22:42:40dom96strcmp1: I still haven't had a chance to think about how to best fix that issue, but I think that a Sinatra clone is a perfect thing to show off Nim's metaprogramming.
22:43:31strcmp1dom96: sure.. but, is metaprogramming the best way to write a http toolkit for lightweight web APIs? if you want to be modular, and scale up, seems like maybe not
22:43:51dom96kulelu88: Afraid not.
22:44:25*shodan45 joined #nim
22:45:44tstmWell, metaprogramming is pretty clean, and I'd imagine jester scales extremely well.
22:47:06kulelu88I'm just trying to understand if I need Jester at all
22:47:11strcmp1if i understood that gh issue, it doesn't seem to scale at all
22:47:15kulelu88I'm not building a webapp in essence
22:47:16strcmp1it would be for toys and nothing serious
22:47:59strcmp1im not talking about performance btw
22:50:09tstmDepends on what you consider serious. I'm not sure if splitting routing into separate files is very important. And certainly jester does not seem to be very feature rich in any case.
22:50:17strcmp1ha
22:50:25strcmp1try to build a medium size web app in one file
22:50:42strcmp1try build any web app in a single file for that matter
22:51:27dom96strcmp1: Works well so far for NimForum ;)
22:51:29kulelu88so another guy I'm speaking to reckons the bottleneck will again not be the app itself but I/O and TCP, which kind of makes sense
22:51:39tstmstrcmp1: Well, rails only uses one routing file by default. And while you could reference many, most things don't.
22:51:51dom96kulelu88: How would you do it in other programming languages?
22:51:54strcmp1plz dont compare the rails router
22:51:59strcmp1its not anyway comparable
22:52:41kulelu88dom96: well for python, I think I might use the py3 async lib
22:52:55tstmstrcmp1: Hmm? You could elaborate on that.
22:53:11strcmp1i could but it feels ridiculous, isnt it obvious?
22:53:20dom96kulelu88: As far as I know the py3 async lib is pretty much like Nim's asyncdispatch
22:53:37dom96(together with asyncnet and all modules built on top of that)
22:53:43tstmstrcmp1: Jester is a router. Nothing less, nothing more. You can then define how things are redirected and where?
22:54:10kulelu88This PoC is in essence just a tool that sits in the middle, gets a request via an API call, sees where the call should actually be made to and then fetches it and renders it
22:54:23dom96That's true, you could split up your web app into multiple jester processes.
22:54:28dom96That would quite well actually.
22:54:31*Matthias247 joined #nim
22:54:31dom96*would work
22:54:33strcmp1the rails router maps strings to a controller and an action (aka class and an instance method)
22:54:50strcmp1yes you can map routes to a proc/closure, but no one does that, not to build apps
22:54:56AraqI really like the include hack on the forum
22:55:25Araqwhich is used to make jester support multiple routing files
22:55:32kulelu88would I be wrong to define what I am doing as something similar to rabbitMQ?
22:55:50kulelu88*at a higher level
22:56:00tstmstrcmp1: Dunno. I feel that in this modern era of microservices most endpoints are fairly simple. Building fairly static routing for them is not really that bad.
22:56:01*mat4 quit (Quit: Verlassend)
22:56:33AraqI am looking at Nim's db*.nim modules and cleaning them up a bit.
22:56:56dom96Araq: I don't think that's quite how it works.
22:57:06dom96All jester routes are in the same file.
22:57:24Araqhrm?
22:57:39Araqthese db*.nim modules are superb, IMHO.
22:57:48dom96Araq: Can you show me what include hack you are talking about?
22:57:57AraqI am building an ORM on top of them.
23:00:16Araqhttp://forum.nim-lang.org/t/1858#11579
23:01:26Araqwe need to make this trick work, it comes up in all sort of problems
23:01:44Araqthe macro wants the full view for best codegen possibilities
23:02:04Araqthe user wants to split it up into lots of tiny little files to annoy me
23:02:05*pregressive quit (Remote host closed the connection)
23:02:12strcmp1lol
23:02:13ldleworkheh
23:02:59ldleworkI'm guilty of liking to refactor everything as much as possible
23:03:10ldleworkthis includes the organization of the code itself
23:05:36dom96Looking at that post again I could easily support an 'include_routes' statement beneath 'routes' :)
23:05:40*Jesin quit (Quit: Leaving)
23:06:21strcmp1thatd be nice
23:13:26*kulelu88 quit (Ping timeout: 240 seconds)
23:18:01Araqdom96: only because your implementation kinda sux :P
23:18:42Araqif jester used my lexim for ulta efficient url dispatching that would be much harder to support
23:19:05dom96ahh, so not supporting that is a feature huh? :P
23:19:36dom96I doubt the URL dispatching is anywhere close to being a bottleneck.
23:20:36AraqI bet it's more expensive than you think.
23:21:48Araqanyway, somebody should test my lexim project for me
23:22:12*pregressive joined #nim
23:23:47*HakanD_____ quit (Quit: Be back later ...)
23:25:49*kulelu88 joined #nim
23:29:00*vendethiel quit (Ping timeout: 272 seconds)
23:29:07*BitPuffin|osx joined #nim
23:31:23Jehan_Araq: Huh, interesting, I didn't know that this existed.
23:32:07*shodan45 quit (Quit: Konversation terminated!)
23:52:23*solidsnack joined #nim
23:57:40*aziz quit (Remote host closed the connection)