<< 03-12-2017 >>

00:09:03*skrylar_ quit (Ping timeout: 248 seconds)
00:18:26*skrylar_ joined #nim
00:19:56ftsfdom96, ahh =( dang, sorry.
00:20:04ftsfyeah really need to make a bunch of docs and more examples
00:20:14ftsfcurious to know what stuff is confusing
00:20:16dom96aww, don't be sorry :)
00:21:12dom96It's really just a lot of discovery, the tilemaps, how they work, how they relate to the spritesheet
00:21:19ftsfaha
00:21:25ftsfyeah, tilemaps are pretty confusing
00:21:46dom96what confused me was that my spritesheet had colours that were not part of the pallette, so the map I was trying to draw simply didn't get drawn
00:22:06ftsfahh, yeah, i need to fix that, discovered that bug myself yesterday
00:22:27ftsfwas very confused why my sprites were missing bits
00:23:31dom96But yeah, I think that's sorta a limitation of the pico-8 :)
00:23:53dom96limits are good to keep designs from going crazy, but when you're not familiar with them they feel frustrating
00:23:59ftsfindeed
00:24:30ftsfi kept the 16 colour restriction, but i need to load the spritesheets as indexed mode, or map them to the nearest color
00:24:38FromGitter<ephja> I like trains
00:29:31*MJCaley joined #nim
00:39:12*astronavt joined #nim
00:42:35*MJCaley quit (Ping timeout: 240 seconds)
00:51:39*MJCaley joined #nim
00:53:22*couven92 quit (Quit: Client Disconnecting)
01:16:29*MJCaley quit (Quit: MJCaley)
01:35:26*astronavt quit (Remote host closed the connection)
01:45:42*smt` joined #nim
01:46:50*astronavt joined #nim
01:49:26*smt quit (Ping timeout: 260 seconds)
02:33:52*skrylar_ quit (Quit: Leaving)
03:01:32*chemist69_ quit (Ping timeout: 276 seconds)
03:03:17skrylari might use nico again if i could get symbol files working
03:03:25skrylarsymbol files keep doing weird things
03:03:42skrylaralso i got cobweb working by cheating and replacing the toposort with backlinks. it doesn't have the safety check, but it works fine
03:10:12*astronavt quit (Remote host closed the connection)
03:14:39*vlad1777d quit (Ping timeout: 248 seconds)
03:14:49*chemist69 joined #nim
03:38:36*marenz_ joined #nim
03:42:17*marenz__ quit (Ping timeout: 250 seconds)
04:17:09skrylarwell the downside is that jsonnode can't hold regular objects (or so it seems?) so while this does work, some tinkering will have to be done to hold variable types
04:30:27*skrylar quit (Remote host closed the connection)
05:08:09*endragor joined #nim
05:12:46*dexterk joined #nim
05:13:44*skoude joined #nim
05:18:25*skoude quit (Ping timeout: 248 seconds)
05:20:15*dddddd quit (Remote host closed the connection)
05:42:24*skrylar joined #nim
05:44:24*skoude joined #nim
05:48:38skrylarso what's everyone's favorite variant type
05:48:39*tefter joined #nim
05:48:49*skoude quit (Ping timeout: 248 seconds)
05:48:50skrylarjsonnode doesn't store random objects so using that is ... inconvenient
05:51:59*marenz_ quit (Ping timeout: 248 seconds)
06:08:17skrylari'll interpret the silence as "make your own"
06:11:50*skoude joined #nim
06:16:22*skoude quit (Ping timeout: 260 seconds)
06:29:53*ketralnis joined #nim
06:39:53*nsf joined #nim
06:48:29*Jesin quit (Ping timeout: 255 seconds)
07:04:19*SenasOzys joined #nim
07:13:39*arnetheduck joined #nim
07:19:49*Jesin joined #nim
07:53:25*dexterk_ joined #nim
07:53:54*dexterk quit (Ping timeout: 260 seconds)
08:08:42ftsfskrylar, symbol files?
08:13:20*BitPuffin|osx joined #nim
08:32:30*skoude joined #nim
08:35:40ftsfhmm \n not allowed in character literal...
08:37:04ftsfahh i see why
08:42:36*jjido quit (Read error: Connection reset by peer)
08:49:32FromGitter<Varriount> skrylar: What do you mean, caboose variant type?
08:49:38FromGitter<Varriount> *favorite
08:53:20FromGitter<ephja> skrylar: can't it serialize objects as long as all fields are accessible?
08:53:41FromGitter<ephja> https://github.com/andreaferretti/patty
08:55:54skrylarvarriount: the dynamic version of cobweb is built at runtime so i have to know the types going in
08:56:26skrylarso it can do things like track "this value depends on egg and bread price, runs this closure to update" and then other things can say "I use the bread-egg adjusted variable"
08:58:20*natrys joined #nim
08:59:31skrylarit works fine for some things but you can't ex. pass a document in there and rely on dataflow to keep menus enabled/disabled
09:57:50*claudiuinberlin joined #nim
09:58:28*dddddd joined #nim
09:58:54*miran joined #nim
10:12:30FromGitter<Varriount> You can't use the typeinfo module?
10:16:10*natrys quit (Quit: natrys)
10:26:02*xkapastel quit (Quit: Connection closed for inactivity)
10:33:25*dexterk_ quit (Quit: Konversation terminated!)
10:36:51*jjido joined #nim
11:00:51*dexterk joined #nim
11:01:00*Vladar joined #nim
11:02:33*vlad1777d joined #nim
11:09:26*Ven`` joined #nim
11:11:14*dexterk quit (Remote host closed the connection)
11:11:49*dexterk joined #nim
11:29:54*Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
11:33:44*jjido quit (Read error: No route to host)
11:38:42*epr0xe joined #nim
11:39:52*crem quit (Ping timeout: 240 seconds)
11:49:57*dddddd quit (Remote host closed the connection)
11:56:57*nsf quit (Quit: WeeChat 1.9.1)
11:57:26*JappleAck joined #nim
12:00:00*skrylar quit (Remote host closed the connection)
12:37:42*couven92 joined #nim
12:42:46*JappleAck quit (Ping timeout: 260 seconds)
12:47:26*Sentreen quit (Ping timeout: 260 seconds)
12:59:35*PMunch joined #nim
13:00:12*Sentreen joined #nim
13:00:16*JappleAck joined #nim
13:01:55*crem joined #nim
13:04:14*BitPuffin|osx quit (Ping timeout: 260 seconds)
13:11:42*skoude quit (Ping timeout: 260 seconds)
13:17:16*dexterk quit (Remote host closed the connection)
13:17:44*dexterk joined #nim
13:46:32PMunchWhen doing a for in loop is there a way to skip the next sample?
13:49:09*marenz_ joined #nim
13:50:03couven92PMunch, continue?
13:50:23PMunchWell continue is for the current iteration, I want to skip the next
13:51:17couven92declare a skipNext variable
13:52:06FromGitter<alehander42> use a while
13:52:08PMunchYeah, I was just wondering if there was a built in way to do it
14:15:09*MJCaley joined #nim
14:24:15*jjido joined #nim
14:27:25FromGitter<bluenote10> good afternoon everyone! @Araq @dom96 sorry for the delay with my pull requests. I'm just switching jobs / preparing to move, i.e., my slow responses don't mean I lost interest ;)
14:27:48FromGitter<bluenote10> I have a question though regarding the collection-to-string PR:
14:28:19Araqsame here, the lack of commits only means something big is coming
14:29:09FromGitter<bluenote10> I'm trying to add a helper function for the string escaping, but I noticed that I can't even do something like `proc addEscaped(s: var string): string = s.add("blabla")` in system.nim. This results in: Error: system module needs 'appendString'
14:29:31FromGitter<bluenote10> @Araq That's good to hear :)
14:30:11FromGitter<bluenote10> Is there a work-around to making such a helper function work in system.nim? Making it artificially generic works, but is obviously too much of a hack
14:30:24Araqmove it aroudn
14:30:49Araqobviously the compiler needs to know how to translate string.add before it can compile your addEscaped
14:30:53FromGitter<bluenote10> hm, it is below the definition of `add` already, so it should be in the correct place.
14:31:18Araqit needs to be after the include sysstr which contains appendString
14:31:38FromGitter<bluenote10> I though the issue might be that `proc add*(x: var string, y: string)` is defined as a magic
14:32:14FromGitter<bluenote10> ah, I see, will try that
14:35:06Araqwell the 'magic' tells the compiler's codegen it needs to be mapped to the 'compilerProc' appendString
14:35:42Araqa 'compilerProc' is a proc the codegen depends on.
14:36:10*fvs joined #nim
14:36:53Araqit can often be tricky to determine an order that works but there is little I can do about that, esp. since few people should touch system.nim
14:38:44fvsHowdy! Trying to import ncurses but getting the following error> /usr/lib/libncursesw.so: file too short / could not load: libncursesw.so < any suggestions?
14:39:12Araqget an .so that is not corrupted?
14:43:53FromGitter<bluenote10> yep, doing after the include works, and shouldn't be a big order issue. The `addQuoted` stuff is high level, so it's okay to go last. I'll only have to figure out how much of the escaping stuff in strutils I should to pull into system.nim or if we violate DRY in this case
14:45:33fvsthanks!, head /usr/lib/libncursesw.so gives: INPUT(libncursesw.so.6 -ltinfo)
14:49:19*dexterk quit (Remote host closed the connection)
14:49:43*dexterk joined #nim
14:51:33Araqbluenote10: I think there isn't much DRY here, the demands of strutils and system coincidence but could diverge
14:51:49Araqsome code duplication seems ok.
14:52:37*jjido quit (Read error: No route to host)
15:10:44*nsf joined #nim
15:13:06*MJCaley quit (Quit: MJCaley)
15:17:32*xkapastel joined #nim
15:26:30*dddddd joined #nim
15:37:41*fvs left #nim ("ERC (IRC client for Emacs 25.3.1)")
15:43:14*Ven`` joined #nim
15:59:07subsetparkWhat libs have people used to do graph programming?
16:03:27Araqintsets
16:05:32subsetparkinteresting
16:05:41Araqmap nodes to IDs and insert xId*yId into the set when x has an edge to y
16:07:08subsetparkmakes sense.
16:07:57subsetparkIDs would all be primes wouldn't they?
16:13:21*ShalokShalom quit (Ping timeout: 248 seconds)
16:19:43*Sentreen quit (Ping timeout: 248 seconds)
16:24:01*arnetheduck quit (Ping timeout: 248 seconds)
16:33:30*Sentreen joined #nim
16:34:23*epr0xe quit (Ping timeout: 255 seconds)
16:40:10*miran quit (Quit: Konversation terminated!)
16:46:05*vendethiel- joined #nim
16:48:14*Ven`` quit (Ping timeout: 260 seconds)
16:56:11subsetparkHow am I supposed to interpret 'Invalid type... in this context...' messages?
17:01:01*vlad1777d quit (Ping timeout: 240 seconds)
17:04:14*dexterk quit (Remote host closed the connection)
17:05:02FromGitter<bluenote10> FYI I have updated the PR. Since duplicating this `escape` code fragment would have meant that we also need to duplicate its docstring I introduced a single source of truth for that at least. Let me know what you think
17:08:39*dexterk joined #nim
17:19:35*Ven`` joined #nim
17:19:51*dddddd_ joined #nim
17:20:17*vendethiel- quit (Ping timeout: 255 seconds)
17:20:44*dddddd quit (Ping timeout: 268 seconds)
17:34:41*couven92 quit (Ping timeout: 255 seconds)
17:45:25*MJCaley joined #nim
17:48:52GitDisc<treeform> Any thoughts on why this error happend once I updated nim though git? https://github.com/nim-lang/Nim/issues/6866
17:51:00GitDisc<treeform> atleast its not a compiler crash, nim does not seem to like 16 bit numbers
17:51:07GitDisc<treeform> https://github.com/nim-lang/Nim/issues/6181
17:57:03*rauss joined #nim
18:05:23FromGitter<tim-st> Is there a lzma decompressor lib for nim available?
18:08:43*dddddd_ is now known as dddddd
18:12:16*couven92 joined #nim
18:14:08*Elronnd quit (Ping timeout: 276 seconds)
18:15:36FromGitter<ephja> was messing around with easy_buffer_encode and stream_buffer_decode before but I never shared it
18:16:49FromGitter<tim-st> did it work?
18:16:49*earenndil quit (Quit: ZNC 1.6.3+deb1 - http://znc.in)
18:17:11*Elronnd joined #nim
18:18:01*Elronnd is now known as earenndil
18:18:07FromGitter<tim-st> Can I just translate this Python file which uses ctypes? https://gist.github.com/pudquick/9f9023f8e9b1a9af53d0/b085c67b918b14475f9036ae52ed1013615412f6
18:19:33FromGitter<ephja> probably
18:20:49FromGitter<tim-st> Ok, will try it. Does the gc runs on the dll too?
18:22:19FromGitter<ephja> I should make a repo
18:22:26FromGitter<ephja> @tim-st the liblzma dll?
18:22:32FromGitter<tim-st> yes
18:22:56FromGitter<tim-st> would be nice, if you got it working, otherwise I will try to translate the python file
18:28:10*elronnd joined #nim
18:28:48*elronnd is now known as Elronnd
18:29:39FromGitter<ephja> not directly because it operates on plain pointers that are not managed by Nim's GC
18:30:51FromGitter<tim-st> So the nim gc will never make overhead on linked libraries?
18:34:29FromGitter<ephja> nope
18:34:39FromGitter<tim-st> Thanks!
18:37:32*skoude joined #nim
18:49:17*endragor quit (Remote host closed the connection)
18:51:33*endragor joined #nim
18:52:43*nsf quit (Quit: WeeChat 1.9.1)
18:53:29*endragor quit (Remote host closed the connection)
18:57:12*endragor joined #nim
19:01:32*endragor quit (Ping timeout: 255 seconds)
19:03:31*elrood joined #nim
19:04:58*jjido joined #nim
19:08:55*endragor joined #nim
19:13:22*endragor quit (Ping timeout: 260 seconds)
19:13:48FromGitter<Varriount> Tim: What do you mean by overhead?
19:16:02FromGitter<Varriount> @tim-st I would recommend using c2nim to create a wrapper for liblzma, or check that a wrapper hasn't already been created
19:18:55FromGitter<tim-st> @Varriount I meant for example garbage collection on c code. And maybe if the compiler always includes the complete dll or only relevant parts of it. Ok, will have a look at c2nim.
19:19:52FromGitter<ephja> I have created bindings
19:20:32FromGitter<ephja> I think I can share it on github tomorrow
19:21:00FromGitter<Varriount> By "complete dll" do you mean the entire dll file, or the entire wrapper?
19:21:14FromGitter<tim-st> @ephja Very nice, thank you.
19:22:58FromGitter<tim-st> @Varriount If I link a dll will always the complete filesize will be inside the created binary, or can the compile pull out relevant parts?
19:23:15FromGitter<tim-st> *compiler
19:23:20FromGitter<ephja> dll's are loaded at runtime
19:23:39FromGitter<tim-st> Can't they be inlcuded?
19:23:52FromGitter<Varriount> Only through black magic
19:24:16FromGitter<tim-st> What does it mean?
19:24:40FromGitter<Varriount> Technically you can include a DLL in an executable as a large array of bytes
19:25:06FromGitter<Varriount> You could then go through the same process the operating system does to load that DLL at runtime.
19:25:17FromGitter<ephja> I assume he's talking about the traditional static linking approach, which never uses DLL's unless I'm mistaken
19:25:35FromGitter<tim-st> I was pretty sure, I read on the nim page, that it possible. So in other words, when I depend on a dll I will always put it next to my exe/binary file?!
19:26:09FromGitter<ephja> anyway, static linking is a little more complicated. here's an example https://github.com/ephja/nim-glfw/blob/master/src/glfw/wrapper.nim
19:27:48FromGitter<Varriount> @tim-st Yes. The "no dependencies" statement on the front page is really
19:28:06FromGitter<tim-st> @Varriount Yes, I meant that.
19:28:26FromGitter<Varriount> "No dependencies unless you add them by using a separate C dll"
19:28:58FromGitter<tim-st> And what about pcre? Isn't it a dll too?
19:30:29FromGitter<Varriount> Yes
19:32:12FromGitter<Varriount> @tim-st What that "no dependencies" statement means is that Nim binaries don't need a dll like "nim-runtime.dll"
19:32:31FromGitter<ephja> was the BDFL working on a regex implementation?
19:32:56FromGitter<Varriount> Araq had something, I don't know if he competed it.
19:33:48FromGitter<tim-st> @Varriount Ok, thanks.
19:55:51Araqwell it's a lexer generator
19:56:08Araqit worked, unfortunately I have no need for a lexer generator
20:02:23*gokr joined #nim
20:19:35*jjido quit (Read error: Connection reset by peer)
20:25:14*Vladar quit (Quit: Leaving)
20:34:34*chemist69 quit (Ping timeout: 260 seconds)
20:43:54*MJCaley quit (Quit: MJCaley)
20:44:34*nsf joined #nim
20:47:57*chemist69 joined #nim
20:58:08*JappleAck quit (Quit: Leaving)
20:59:16FromGitter<Varriount> Araq: Any ideas on how to answer https://forum.nim-lang.org/t/3391 ?
21:00:40Araqwhat's the question?
21:02:16AraqhasKey and len are missing for the obvious reason that there is no way to use them without introducing races
21:13:58PMunchHmm, so addr of result doesn't work. Is there a way to make it work?
21:16:30Araqit does work.
21:16:52PMunchIt does? I'm getting expression has no address..
21:17:35PMunchOh wait, I might be doing something else wrong
21:27:10*jjido joined #nim
21:27:21PMunchHmm, that's strange
21:27:22Araqvarriount: I replied.
21:28:08PMunchWhen I copy the output from the macro into my code it works fine. But the output itself doesn't work..
21:28:31*RPG joined #nim
21:28:54*RPG is now known as Guest35620
21:44:26*marenz_ quit (Ping timeout: 255 seconds)
22:01:32GitDisc<treeform> Hey guys, I am continuing to make font renderer in pure nim, wanted to share. Which of the 3 looks best?
22:01:34GitDisc<treeform>
22:01:34GitDisc<treeform> https://cdn.discordapp.com/attachments/371759389889003532/387000435506020363/unknown.png
22:02:05GitDisc<treeform> you would need to open the image 1:1 non scaled to compair
22:06:55PMunchI'd say the first one
22:14:49subsetparkdefinitely the first one
22:15:46elroodfirst one for me too. spacing doesn't look quite right on it though
22:19:40jjidoThird one here
22:19:48*Ven`` quit (Quit: q+)
22:25:35Araqfirst one.
22:26:32*skoude quit (Ping timeout: 240 seconds)
22:29:01*skoude joined #nim
22:29:36*ShalokShalom joined #nim
22:29:45*nsf quit (Quit: WeeChat 1.9.1)
22:33:29*skoude quit (Ping timeout: 255 seconds)
22:36:49*vivus joined #nim
22:39:12FromGitter<zetashift> first one looks better for me
22:41:06GitDisc<treeform> nice first one is mine. I am still not sure why the spacing are off. Working on that.
22:41:50GitDisc<treeform> 2nd one is Apple's font rendering. And 3d one is just svg shapes rastorized.
22:43:19GitDisc<treeform> thank you for the vote of confidence in my font skills.
22:49:50ftsfhttps://impbox.itch.io/cute-cats-daily \o/ compiled my LD game to JS
22:56:37PMunchHmm, this "expression has no address" is really weird
22:57:34PMunchIs it something about :tmp variables? That's the only thing I change when I copy the output of the macro manually
22:59:17*jjido quit (Read error: Connection reset by peer)
23:00:03FromGitter<zetashift> @ftsf sweet! plays neatly, but audio gets a bit sluggish after like 2 mins playing
23:00:22ftsfhmmm, dang!
23:00:26ftsfwonder why
23:00:30ftsfwhich browser?
23:00:44ftsfi am doing lots of custom audio stuff
23:01:00ftsfbut it shouldn't get slower
23:02:23*madpat joined #nim
23:03:57FromGitter<zetashift> firefox 57.0 64bit
23:04:14ftsfhmm same as me
23:06:43ftsfahh yeah it's starting to happen for me too after a few mins
23:08:49*claudiuinberlin quit (Quit: Textual IRC Client: www.textualapp.com)
23:09:56GitDisc<treeform> pretty cool game. It has a small story. Mechanics. Cats.
23:18:21PMunchHmm, is there something about using result in a "quote do" block that doesn't work?
23:20:04AraqPMunch, yup, known bug. pita to fix :P
23:20:11PMunchAh..
23:20:21PMunchThat's why my program wasn't working..
23:20:37PMunchCrap.. That's going to take a lot of replacing to fix..
23:20:49PMunchIs it specifically the result value?
23:20:59PMunchLike can I work around it in some smart way?
23:21:22PMunchRight now I have to go through and change them all to those ugly newTree blocks..
23:23:46PMunchAh, apparently created a variable like "var r = newIdentNode("result")" and then using r instead of result (but with backticks) makes it work
23:30:40PMunchNice, now my binary file parsing macro is working :)
23:31:24*PMunch quit (Quit: leaving)
23:31:48*elrood quit (Quit: Leaving)
23:45:38*ShalokShalom quit (Remote host closed the connection)
23:47:11*ShalokShalom joined #nim
23:47:34*ShalokShalom quit (Remote host closed the connection)
23:47:56*ShalokShalom joined #nim
23:51:29*SenasOzys quit (Ping timeout: 248 seconds)
23:54:20*endragor joined #nim
23:57:50FromGitter<ephja> Araq: call it a feature?
23:58:59*endragor quit (Ping timeout: 255 seconds)