<< 17-03-2017 >>

00:02:02*PMunch joined #nim
00:15:58FromGitter<ivankoster> @dom96 ah, making the proc a template makes it compile time and then the compiler can check the generated assignment and if the user tries to assign an int to a string it wont compile.
00:25:10*Nobabs27 joined #nim
00:26:29*zachcarter quit (Read error: Connection reset by peer)
00:27:56FromGitter<ivankoster> https://gist.github.com/ivankoster/6a9e0587d8e7a3df17b0111edcdde582 seems good enough for now, pretty happy with it. When i've updated the protoc compiler and the runtime library i think it will be most userfriendly one_of implementation that is type safe. Well, compared to C++ and C# at least
00:27:58*_yeeve quit (Ping timeout: 240 seconds)
00:28:50*zachcarter joined #nim
00:29:17*_yeeve joined #nim
00:38:49*sz0 joined #nim
00:43:51*Nobabs27 quit (Quit: Leaving)
01:03:20*pie__ quit (Ping timeout: 246 seconds)
01:25:14*rauss joined #nim
01:34:44*vlad1777d quit (Remote host closed the connection)
02:11:17zachcarterwell I managed to get an android app started but it crashes
02:11:22zachcartersomething about SDL and EGL
02:44:23*sz0 quit (Quit: Connection closed for inactivity)
02:56:59*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
02:59:06*chemist69 quit (Ping timeout: 240 seconds)
03:02:39*chemist69 joined #nim
03:02:55*brson quit (Quit: leaving)
03:16:07*PMunch quit (Quit: leaving)
03:32:50*def-pri-pub quit (Quit: leaving)
03:40:05*Serenit0r joined #nim
03:43:29*Serenitor quit (Ping timeout: 240 seconds)
03:48:21*zachcarter left #nim (#nim)
03:49:27*zachcarter joined #nim
03:50:46*zachcarter left #nim (#nim)
04:02:52*zachcarter joined #nim
04:09:43*Serenit0r quit (Quit: Leaving)
04:52:36*rauss quit (Quit: WeeChat 1.7)
05:01:29*chemist69 quit (Ping timeout: 240 seconds)
05:19:51*chemist69 joined #nim
05:30:12*vlad1777d joined #nim
05:50:55*vlad1777d quit (Quit: Leaving)
06:37:54FromGitter<Varriount> zachcarter: You could try looking at other engines (I think the unreal engine source is open?) And see what they do.
06:38:08zachcarteryeah
06:38:12zachcarterI think I’m making progress
06:38:22zachcarteron the android front with sdl2
06:38:29FromGitter<Varriount> Also keep in mind that phone support for OpenGL is very... splotchy
06:38:31zachcarterbut man is it painful
06:38:41zachcarteryeah :/
06:39:38*roygbiv joined #nim
06:40:14*nsf joined #nim
06:56:08*djellemah joined #nim
07:01:12*tankfeeder joined #nim
07:07:22*arnetheduck joined #nim
07:44:58*Vladar joined #nim
07:58:56*rokups joined #nim
08:13:08*gokr joined #nim
08:18:45*girvo joined #nim
08:24:28*Andris_zbx joined #nim
08:24:34*bjz joined #nim
08:32:05*couven92 joined #nim
08:39:24*Arrrr joined #nim
08:39:53*couven92 quit (Quit: Client disconnecting)
08:40:20*couven92 joined #nim
09:10:30cheatfaterokups, have you seen coroutines `SIGSEGV: Illegal storage access. (Attempt to read from nil?)` on Travis CI macos tests?
09:10:37cheatfatehttps://travis-ci.org/nim-lang/Nim/jobs/212032516
09:11:05cheatfatehttps://travis-ci.org/nim-lang/Nim/jobs/212032516#L2048
09:11:50rokupsi havent
09:18:58Araqyeah time to make osx travis tests non-optional
09:23:46*girvo_ joined #nim
09:24:54*PMunch joined #nim
09:26:25*girvo quit (Ping timeout: 260 seconds)
09:28:34*jjido joined #nim
09:44:11*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
09:44:12*JStoker quit (Quit: JStoker is gone :()
09:46:22*bjz joined #nim
09:47:23*JStoker joined #nim
09:50:52ArrrrThere is some issue with the forum, once i post i get an 404 error.
09:52:45euantorWhat URL is it taking you to after posting?
09:55:07ArrrrIt was after posting in the mascot thread
09:55:09Arrrrhttps://forum.nim-lang.org/t/2866/2#17849
09:55:12Arrrrhttps://i.imgur.com/gcOB7k7.gif
09:57:05AraqArrrr: works for me and I can see your recent post
09:58:13ArrrrYes, i can too. Also, if i press on page 2, i get the same error
09:58:34ArrrrBut i see my post, which is the last one of this thread, on page 1
10:04:50*girvo_ quit (Ping timeout: 240 seconds)
10:12:23FromGitter<Almynic> is there an easy way to create a mock of a folder structure for testing? I want to test if my program works correctly
10:14:01Araqalmynic: no idea what that means, you can have patchFile in a config.nims to override modules
10:14:06Araqwhen defined(mock):
10:14:16Araq patchFile(...)
10:14:23Araqnim c -r -d:mock ...
10:16:16FromGitter<Almynic> @araq I have a proc and instead of using a real directory I want to use a mock ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=58cbb76ffe6a638b1ad59b44]
10:17:51FromGitter<Araq> why? should restructure the code to take a dataToBeProcessed. split it in 2 procs.
10:20:31FromGitter<Almynic> @araq ok that works too.
10:26:26cheatfaterokups, interesting but dragonflybsd (which is based on freebsd as macos) passes tests without problems
10:26:57*brechtm joined #nim
10:28:31brechtmHaving another look at nim after a long time. Can't seem to install nake using nimble.
10:29:31Araqwhat's the error message?
10:29:52brechtmhttp://pastebin.com/bzv40SgC
10:30:37brechtmUsing nim 0.16.0 on macOS Sierra (from Homebrew)
10:31:27Araquse Nim devel and Nimble 0.8.4
10:33:34brechtm"nimble list -i" also prints some warning about outdated/corrupt packages
10:33:45brechtmok, trying "brew install --HEAD nim"
10:35:46brechtmThanks Araq, that worked.
10:36:30Araqyou're welcome
10:47:49*brechtm quit (Ping timeout: 240 seconds)
10:57:44*girvo joined #nim
11:02:09*girvo quit (Ping timeout: 240 seconds)
11:02:25*Snircle joined #nim
11:26:50*zachcarter quit (Quit: zachcarter)
11:36:41*couven92 quit (Quit: Leaving)
11:42:51*couven92 joined #nim
12:01:49*Vladar quit (Remote host closed the connection)
12:10:18*PMunch quit (Remote host closed the connection)
12:30:36*Vladar joined #nim
12:35:51*brechtm joined #nim
12:36:30brechtmWhen printing opengl error numbers (GLenum), I get "type mismatch: got (GLenum)"
12:37:03brechtmshouldn't a "proc `$`*(x: GLenum): string" be defined in the opengl module?
12:39:09*elrood joined #nim
12:39:10Araqbrechtm: well that seems tedious to write. but you can convert to 'int' to print it
12:40:25brechtmI came up with this implementation for the $ proc: result = $(cast[int](x))
12:40:43brechtmbut that may not be a good way to do it...
12:42:40FromGitter<dom96> Arrrr: That's because the user that created the post was moderated and so only admins can see it.
12:42:49FromGitter<dom96> This feature needs to be improved.
12:43:01FromGitter<dom96> That user's posts should now be visible
12:43:26*brechtm quit (Remote host closed the connection)
12:47:01*brechtm joined #nim
12:47:43FromGitter<brechtm> The $ proc was not needed back when I was using Nim 0.14-ish
12:48:06FromGitter<brechtm> bbl
12:48:08*brechtm quit (Remote host closed the connection)
12:48:29Araqwell code evolves, OpenGL wrapper might have made it a distinct int for better type checking
12:48:43*brechtm joined #nim
12:49:40*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
12:52:49*brechtm quit (Ping timeout: 240 seconds)
12:54:27*bjz joined #nim
13:02:24*couven92 quit (Quit: Client disconnecting)
13:14:19*jjido quit (Read error: Connection reset by peer)
13:23:56*shashlick quit (Ping timeout: 246 seconds)
13:24:36*bjz quit (Ping timeout: 240 seconds)
13:24:56*bjz_ joined #nim
13:25:53*shashlick joined #nim
13:33:44*zachcarter joined #nim
13:42:18*gokr quit (Ping timeout: 268 seconds)
13:45:27*brechtm joined #nim
13:50:36*zachcarter quit (Ping timeout: 240 seconds)
13:51:25*zachcarter joined #nim
14:04:37*bjz joined #nim
14:05:01*bjz_ quit (Ping timeout: 260 seconds)
14:33:32*rauss joined #nim
14:41:23*gokr joined #nim
14:44:59*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
14:48:06*brechtm quit (Remote host closed the connection)
15:02:28*nsf quit (Quit: WeeChat 1.7)
15:10:28*rauss quit (Ping timeout: 240 seconds)
15:12:13*tankfeeder quit (Quit: Leaving)
15:12:54*rauss joined #nim
15:17:46*Ven joined #nim
15:18:09*Ven is now known as Guest64566
15:28:30*gokr quit (Ping timeout: 258 seconds)
15:28:42*brson joined #nim
15:34:09*ofelas quit (Ping timeout: 260 seconds)
15:36:31ftsfhmm is basic3d missing * for Matrix3d intentionally? seems a pretty common operation
15:39:24*krux02 joined #nim
15:44:29*arnetheduck quit (Ping timeout: 240 seconds)
15:50:00*ofelas joined #nim
16:07:59*rauss quit (Quit: WeeChat 1.7)
16:08:14Araqftsf: maybe it's called dot or something
16:09:20ftsfhmm there's dot for Vector3d, but not Matrix3d.
16:09:41*BitPuffin|osx quit (Ping timeout: 268 seconds)
16:12:29ftsfhttps://github.com/nim-lang/Nim/pull/5108 ahh someone attempted previously
16:15:00*gmpreussner_ quit (Quit: kthxbye)
16:21:40*brechtm joined #nim
16:24:59*gmpreussner joined #nim
16:26:42krux02I don't recommend using the standard library matrix vector math library
16:26:48*girvo joined #nim
16:27:02ftsfkrux02, why is that?
16:27:50krux02several reasons
16:29:00krux02the number one reason for me not to use it, it does not use a Mat4 Vec4 for 3D operations
16:30:06ftsfby the "standard library matrix vector math library" do you mean the stuff in basic2d/3d ? or are you talking about another library?
16:30:22krux02I talk about that
16:30:23krux02yes
16:31:17*girvo quit (Ping timeout: 260 seconds)
16:31:39krux02this is my recommendation: https://github.com/krux02/nim-glm
16:31:43ftsfi'm not really sure what you mean by "for 3d operations"
16:33:41ftsfi see, i had a look at that but saw that it said the example doesn't compile so i figured it wasn't ready to be used
16:35:20krux02actually I use it regularly
16:35:44krux02when the examples don't compile it might happen that I just did not notice it, because I never automated testing the examples
16:35:55krux02but it is in heavy use in another project
16:36:10ftsfahh, i just saw the comment in the examples that said it doesn't compile, didn't actually try to run it
16:36:18ftsfwill give it a try
16:36:24krux02this project here: https://github.com/krux02/opengl-sandbox
16:36:31*PMunch joined #nim
16:36:35krux02uses those matrices/vectors for everything
16:36:48krux02the thing is only, it's not documented at all
16:36:52ftsfcool
16:37:09*gmpreussner quit (Quit: kthxbye)
16:37:09krux02but on the other side it only implements standard stuff
16:37:16krux02so you should be able to look up everything
16:37:28ftsfif it's comparable to glm that's cool
16:37:35krux02and it tries to replicate what glsl does in shaders
16:37:52krux02well glm has a ton of features that I just could not implement in my time
16:38:22krux02I also never spend time to do performance optimizations
16:38:37krux02it just is written in the style of glm, so that fast performance is possible
16:38:48*couven92 joined #nim
16:38:58krux02I just didn't need it for my examples, correctness, and extensibility were more important
16:39:09krux02the performace critical stuff is all written in glsl anyway
16:39:39krux02but i's not super slow or semething like that
16:41:59krux02and remember, matrices are not magical rectangles of numbers, they are linear mappings from vector space to vector space.
16:43:10*gmpreussner joined #nim
16:46:45*Trustable joined #nim
16:51:04ftsfkrux02, awesome it works =)
16:51:19ftsfmuch easier to use than basic3d
16:53:19*jjido joined #nim
16:53:36krux02ftsf: where are you using it?
16:53:56ftsfkrux02, just playing around with sdl2 + opengl in nim at the moment
16:54:43krux02yes, especially for opengl you need mat4
16:54:59krux02I almost never use mat3
16:55:15ftsfbasic3d's Matrix3D is a 4x4 matrix
16:55:30krux02well, that's weird
16:55:33ftsfyep =)
16:55:52krux02also a point type is weird
16:56:09krux02a point is a vec4 with the last component set to 1
16:56:26krux02In my university I learned the coordinate system
16:56:35krux02the last component is not limited to be 1
16:57:07ftsfyeah having separate vector/point type is strange
16:57:15couven92How do I write my name in a comment (or string literal) in Nim? I got æ and ø in my name... Is Nim code UTF-8?
16:57:54def-couven92: yeah, just use utf8
16:58:07couven92oki doki
16:58:09krux02a point (x y z) can be represented for any w>0 as (x*w y*w z*w w)
16:58:20krux02so a every point has infinite representations
16:58:52krux02all transformations like translation rotation sheer etc still work
16:59:12krux02only when you need a meaningful xyz component, then you need to normalize
16:59:52ftsfinteresting
17:00:05krux02and most interesting
17:00:20krux02what do you think happens when you set w to 0?
17:00:46*roygbiv quit (Quit: ™)
17:00:47krux02wait I main in this context
17:00:53krux02(x y z w)
17:00:56ftsfi've heard that's useful for direction vectors but i don't really know
17:01:11ftsfmost 3d math is beyond me
17:01:16krux02normally when you want to use vectors, you set the last component to 0
17:01:26krux02then translation does not have an effect anymore
17:02:00krux02so you can apply a translation/rotation matrix to a vector by multiplying it, and the vector is just multiplied
17:02:28ftsfso it will be rotated but not translated
17:02:29krux02but when you have a point (x' y' z') represented as (x y z w)
17:02:31*nsf joined #nim
17:02:36krux02when you shring just w
17:02:50krux02then in the normalization step x' y' z' grow
17:03:02krux02and when you would go all the way to 0
17:03:12krux02x' y' z' would grow to infinity
17:04:24krux02and that is exactly whas is defined in opengl, when you write a vertex with w component as 0
17:04:33krux02you have a point that is infinitively far away
17:04:45krux02that is something, that you normally don't see in any application
17:05:03krux02texture mapping doesn't really work that well on infititively far away points
17:05:09ftsfyes, can't say i've ever used the w component
17:05:19krux02you can use it
17:05:37ftsfbut i've mostly done 2d stuff in opengl in the past
17:05:43krux02I actually did use it, to create an infinitve plane
17:06:14krux02I guess you did it with the opengl 1.4 matrix stack?
17:06:31ftsfyes, and i've done a bit of modern opengl before
17:06:41ftsfbut first time in nim
17:06:50krux02yes modern opengl is very tedious with all that shader compilation stuff
17:07:06ftsfyeah, got that working, much nicer in nim than c++
17:07:13krux02old opengl is much nicer to write, no shader compilation
17:07:34ftsfyeah, old opengl is much easier to get started with
17:07:43ftsfbut shaders are very fun
17:07:53krux02but you gen nim macros to generate all your glue code for opengl
17:07:58*jjido quit (Read error: Connection reset by peer)
17:08:34ftsfi'm hoping to make a simple 3d game, low poly, block colour models, but with skeletal animation, that might be tricky
17:08:45krux02well
17:08:51krux02I have an example
17:08:55krux02in nim
17:08:57krux02that works
17:09:06krux02with skeletal animation
17:09:11*Guest64566 quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:09:34ftsfcool
17:09:35krux02it's not complete in the sense, that it can play different animations, it just loads a mesh and one animation
17:09:40krux02but it works
17:10:29ftsfso far I have a hard coded triangle and can move the camera around =)
17:10:33krux02https://github.com/krux02/opengl-sandbox/blob/master/examples/mesh_loading_tiny.nim
17:11:01krux02it has lot's of debug output for me, so that I see that I load the correct data
17:11:38krux02it renders the bones and their names, and also the mesh
17:12:12krux02I've written a macro that generates all the opengl glue code
17:12:15ftsfawesome
17:12:37krux02it just doesn't work on a mac
17:13:16ftsfi guess i'll need some simple collision stuff too, might look into bullet or something
17:13:24krux02I can't support mac, because mac doesn't support opengl anymore, the latest opengl version they support is 7 years old
17:13:35krux02yea bullet is hard to wrap
17:13:45ftsfreally =( that's depressing
17:13:48krux02I can tell you, you don't need bullet
17:14:02couven92when else?
17:14:15krux02I all depends on what you want to do
17:14:17couven92how to do else for a when statement?
17:14:29krux02I also thought for a long time, just include bullet and all your problems are gone
17:14:45krux02I have used bullet, and no it dosn't really solve any of the interesting problems
17:14:50ftsfcouven92, when(foo): ... else: ...
17:14:56krux02and introduces a big set of new problems
17:15:27couven92ftsf, okay... does else when work?
17:15:29krux02couven92, yes just put an else it is no different than the else from if
17:15:45ftsfcouven92, i'm sure i've used it before. are you having problems with it?
17:15:52PMunchWhat about elif?
17:16:00krux02elif works
17:16:12PMunchSo there's no special elwh: :P
17:16:17krux02when ...: ... elif: ... else: ...
17:16:50krux02yes no special elif
17:17:01krux02elwhen:
17:17:11krux02sounds like an elvish name
17:17:17PMunchHaha :P
17:18:18krux02ftsf: to go back to you bullet problem
17:18:33krux02what do you think bullet helps you to solve
17:18:44*Ven joined #nim
17:19:00krux02I tried to use it for my character controller, but that really did not work out, bullet does not solve that for you
17:19:01ftsfcollision response
17:19:07*Ven is now known as Guest36584
17:19:15krux02collision response of what
17:19:35ftsfcharacter against the world and other moving objects
17:19:49krux02yes, that is exactly what bullet does not solve for you
17:20:09krux02you can have a ball against the world
17:20:11krux02or a box
17:20:14krux02or a cone
17:20:20krux02or a whatever
17:20:26krux02also ragdoll
17:20:41krux02but there is no human-like
17:20:55ftsfahh, well that's fine
17:21:04ftsfhuman can be approximated by a ball
17:21:12krux02no it can't
17:21:31ftsffor this case it's fine
17:21:42*jjido joined #nim
17:21:45krux02how would you do accelerate
17:22:41ftsfi haven't looked at it recently
17:23:08krux02well the initial idea is to add force to the player
17:23:24krux02and then the player grinds on the floor
17:23:43krux02and then all of a sudden you have better control as long as you are in air, but not on the ground
17:24:21krux02and when you want to add something like an ice surface, the ice surface gives you better control than anything with friction
17:24:28krux02even though it should be the other way around
17:25:26*Guest36584 quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:25:42krux02the cleanest solution that I know, is that you have two main states for you player, one is attached2ground and one is inAir
17:25:57krux02then you can control air and on ground differently
17:26:10krux02and you can tread on ground as a 2D problem
17:27:54krux02the player can become a circle on the navigation mesh, and you can't fall through the floor anymore
17:28:15krux02also the physics doesn't need to constantly push the player away from the ground anymore
17:28:26ftsfyes that will be fine for this
17:28:29krux02that is also used in 2D games
17:28:37ftsfit's basically a 2d game with 3d graphics
17:28:52krux02and for that you don't need bullet
17:30:24krux02when you want to shoot balls in a pile of boxes, bullet can really help your game, but you don't want to do that, bullet might not be worth it
17:30:32krux02or you can do it for visual effects
17:30:51krux02but I guess that is not what you intend to do
17:30:58ftsfyeah
17:31:02ftsfbedtime, night o/
17:31:14couven92hmmm... in a passL pragma... how to resolve a relative path?
17:31:40couven92I want a path relative to file I am in, not relative to file I am compiling...
17:31:40*mjanssen left #nim (#nim)
17:31:57krux02couven92, I do something smart staticExec("readlink -f .")
17:32:26krux02that works (on unix machines)
17:32:40demi-couven92: why do you need relative paths?
17:33:12krux02demi-, because he probably bundles his executable with some library
17:33:16couven92krux02, howto? and the whole reason I am doing this is because I need link paths for wxWidgets
17:33:59*Andris_zbx quit (Remote host closed the connection)
17:34:01demi-is there no -rpath style command to say "look relative to the executable" on linux?
17:34:10*brson quit (Ping timeout: 268 seconds)
17:35:10krux02demi-, https://github.com/krux02/tblis-nim/blob/master/tblis.nim#L10
17:35:30krux02it's a hack
17:35:32demi-that seems like a gross hack
17:35:38krux02I don't like it
17:35:46krux02but I don't know any better
17:36:12krux02I don't even understand the linker flags
17:36:21demi-hence my question, on os x we have something called @executable_path/ and @loader_path/ which tell the linker to look relative to the executable or loading location
17:36:25krux02it is just what cmake generated
17:36:34krux02and it also works for gcc/clang only
17:36:34demi-you should look at the linker's man page
17:36:46demi-there should be more info there
17:36:48krux02compile on windows, both readlink and the compiler flags would just fail
17:37:02krux02I know the linkers man page
17:37:18krux02at some point I was "ah screw this, copy paste"
17:37:51krux02I failed to link statically
17:38:29couven92I should really simply define a wxWidgets path variable
17:38:37couven92and then do a path join
17:39:43demi-are you shipping this as source or as binary?
17:40:20demi-because if it is source you should just provide standard search locations to link against the library, possibly using an environment variable if you need to get something user-defined
17:42:47*rauss joined #nim
17:43:16*PMunch quit (Quit: leaving)
17:44:23demi-presumably this isn't the first time this problem is needed to be solved, so surely wxWidgets dos have some guidance about this
17:44:52*jjido quit (Read error: Connection reset by peer)
17:45:54krux02demi-, I am shipping as source, but I can't assume at all, that the source I am wrapping is something that is installed, it's too obscure and rare
17:46:34krux02I bundle the dependency in the exact version that I know that compiles
17:46:35demi-you should be able to safely assume standard search paths, or as i said, use an environment variable
17:47:02krux02demi-, no environment variables are horrible and ugly
17:47:13demi-better than what you showed me
17:47:26krux02I doubt it
17:48:03*libman joined #nim
17:48:04*brechtm_ joined #nim
17:48:31krux02If you want anybody to be able to reproduce your build, you should not assume 20 environment variables set correctly with libraries compiled in exactly the one version you had
17:48:53krux02it just pushes the propability of a reproducable build to almost 0
17:49:25krux02better something that does not work on all platforms, than something that doesn't work at all
17:49:46*Trustable quit (Remote host closed the connection)
17:50:08krux02my mantra is more "come with batteries included, or don't come at all"
17:51:23*brechtm quit (Ping timeout: 264 seconds)
17:51:42krux02I would agree, when there would be a package for this library for major distributions and it would have some level of adoption, for for things that are very rare, it doesn't make sense to not bundle it
17:52:30demi-believe it or not, my comments were directed at couven92, not you :)
17:52:49krux02demi-, well we had the same problem
17:53:27krux02but yes wxWidgets is available for distributions
17:53:45krux02but it's ugly is several ways, I am happy I don't have to mess with it
17:55:36demi-tbqh, i think your problem here is you are using a language's constructs in-place of an actual build tool; which is why this is so ugly.
18:00:06couven92But I still go for the path configured through the .cfg for you application... Considering all the options and how wxNim is done, it seems like the best way to do it... It's a fork from Araq anyways, so we'll see what he has to say about it :P
18:12:09*smt_ joined #nim
18:12:45*brson joined #nim
18:13:01*BitPuffin|osx joined #nim
18:14:37*BitPuffin|osx quit (Remote host closed the connection)
18:14:59*girvo joined #nim
18:15:42*smt quit (Ping timeout: 260 seconds)
18:19:28*girvo quit (Ping timeout: 240 seconds)
18:34:26*brechtm_ quit (Remote host closed the connection)
18:42:25*brechtm joined #nim
18:42:25*avsej quit (Quit: Quit)
18:43:14*avsej joined #nim
18:43:14*avsej quit (Changing host)
18:43:14*avsej joined #nim
18:44:07*avsej left #nim (#nim)
18:45:04*pie__ joined #nim
18:46:21couven92uhm... how do you define a define in a nim.cfg file?
18:47:10demi-what do you mean?
18:47:33couven92`--define:wxWidgetsPath:"../../wxWidgets-3.0.2"` gives me: `nim.cfg(1, 24) Error: identifier expected, but found ':'`
18:48:19stisa-d:<something> I think?
18:48:32*krux02 quit (Quit: Leaving)
18:49:17stisaI think the second : should be an =
18:49:39demi-you may need to do encapsulate it in quotes properly or not use a `:` there
18:49:42couven92hmm... stisa nope, neither work
18:50:12demi-`--define:"wxWidgetsPath:'../../wxWidgets-3.0.2'"`
18:50:43couven92demi-, yeah! :)
18:51:01couven92But now I get: `lib\pure\os.nim(83, 15) Error: undeclared identifier: 'os'`
18:51:26couven92(and yes, my source includes os)
18:55:46dom96What is this define for?
18:56:17couven92to optionally specify the path for wxWidgets
18:56:56dom96ahh, Nim supports key-value defines too.
18:57:04dom96It looks weird with the :
18:57:29dom96So you have your own 'os' module?
18:57:34couven92nope
18:57:40couven92standard library os
18:57:49dom96weird
18:57:58dom96Try isolating this problem
18:58:27couven92I'm running nim compiled from the devel branch, compiled March 1st 2017 (Version 0.16.1)
18:58:39couven92Maybe switch back to the release?
19:00:22*brechtm quit (Remote host closed the connection)
19:00:36couven92Ah, ok, I simply changed `os` to `ospaths` (since I only use os for joinPath)
19:01:45couven92But now I am having troble checking whether this wxWidgetsPath define has a value... `when len(wxWidgetsPath) < 1:` gives me undeclared identifier: 'wxWidgetsPath'
19:02:18*mwbrown joined #nim
19:02:20couven92How do I verfiy the presence of a value of a define?
19:02:54*krux02 joined #nim
19:04:08def-couven92: when defined(wxWidgetsPath) maybe
19:04:38couven92def-, yeah of course, but how to check whether wxWidgetsPath actually has a value?
19:04:43def-wait, misread the question, not sure
19:04:45couven92and how to use that value?
19:07:14def-couven92: google leads me here: https://forum.nim-lang.org/t/2398
19:08:16couven92Why does Araq set the value of line in that example?
19:08:32def-not sure, try without defining it
19:08:49stisahttps://nim-lang.org/docs/manual.html#implementation-specific-pragmas-compile-time-define-pragmas
19:08:51def-without a surrounding when you could use that as a default value
19:09:09couven92ahhh
19:11:50couven92ok, thanks... now everything works beautifully! :)
19:21:40*krux02 quit (Quit: Leaving)
19:34:06Arrrrstrange that shuffle doesn't accept an openArray
19:38:32FromGitter<raydf> Hi everyone
19:38:47FromGitter<raydf> what kind of encoding string has?
19:38:51FromGitter<raydf> utf8?
19:39:50dom96none
19:42:00FromGitter<raydf> i'm writing a string in a webservice with json and some strings has latin accents like &uacute;, how can i make sure i can output utf8 bytes seq?
19:59:10*couven92 quit (Quit: Client disconnecting)
20:03:08*girvo joined #nim
20:04:20dom96raydf: isn't that an html encoding?
20:04:52*xet7 joined #nim
20:07:19*girvo quit (Ping timeout: 240 seconds)
20:13:25*nsf quit (Quit: WeeChat 1.7)
20:16:40*BitPuffin|osx joined #nim
20:19:09*couven92 joined #nim
20:25:42*Arrrr quit (Quit: Leaving.)
20:29:05*user0____ joined #nim
20:37:21*user0____ quit (Quit: user0____)
20:37:30*user0____ joined #nim
20:41:56zachcarterQuestion - I’ve built a little test SDL app that runs on android
20:42:15zachcarterI have a third party library that I’d like to use with this app, and I’ve written bindings to it
20:42:35zachcarternow in my bindings I’m doing this:
20:42:53zachcarterhttps://github.com/zacharycarter/bgfx.nim/blob/master/bgfxdotnim.nim#L2-L10
20:43:07zachcarterhowever for android - I don’t want to link dynamically
20:43:25zachcarterI know I can do the dynlib override thing when compiling and substitue a static lib for the shared library
20:43:41zachcarterbut my question is this - let’s say I have another project which depends on these bindings and I’ve referenced it in my nimble file
20:43:46*nsf joined #nim
20:43:51zachcarterhow am I supposed to handle that situation?
20:44:01*user0____ quit (Quit: user0____)
20:44:12zachcarterIs there a way to do the dynlib override and static linking inside the nim code of my bindings when android is the OS?
20:44:28zachcarterotherwise I’m clueless as to how to handle this type of situation
20:48:05*Trustable joined #nim
20:48:42*bjz joined #nim
20:51:02*nsf quit (Quit: WeeChat 1.7)
20:52:15*rokups quit (Quit: Connection closed for inactivity)
20:54:28subsetparkIs Jester the most robust solution for a REST server?
21:04:14*MyMind joined #nim
21:06:53*Sembei quit (Ping timeout: 260 seconds)
21:09:33*rauss quit (Quit: WeeChat 1.7)
21:17:02demi-zachcarter: you might be able to use a nimble task for that
21:17:18zachcarterdemi- hmm okay
21:18:05*Sentreen quit (Ping timeout: 260 seconds)
21:24:02*onionhammer quit (Quit: WeeChat 1.0.1)
21:30:37*Sentreen joined #nim
21:35:25*pie____ joined #nim
21:37:54*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
21:38:25*pie__ quit (Ping timeout: 258 seconds)
21:41:00*onionhammer joined #nim
21:51:17*girvo joined #nim
21:55:29*girvo quit (Ping timeout: 240 seconds)
22:03:46zachcarterdemi-: okay I can define a nimble task to clone my project and compile it with the flags to make it link statically but then what
22:04:05zachcarterhow do I make project B depend on it?
22:06:29*ofelas quit (Ping timeout: 240 seconds)
22:07:25dom96You should be able to do it inside a config.nims file
22:07:40dom96when defined(android): --dynlibOverride
22:07:43dom96or something like that
22:08:34demi-yeah, that is what i meant
22:09:53*couven92 quit (Quit: Client Disconnecting)
22:10:44zachcarterhmm okay thanks
22:10:49*ggVGc joined #nim
22:12:48*elrood quit (Quit: Leaving)
22:18:20*tankfeeder joined #nim
22:20:28*Vladar quit (Quit: Leaving)
22:23:07*ofelas joined #nim
22:56:58*mwbrown quit (Ping timeout: 240 seconds)
23:01:00*libman quit (Quit: Connection closed for inactivity)
23:12:19*ofelas quit (Ping timeout: 240 seconds)
23:15:09*Trustable quit (Remote host closed the connection)
23:22:10*kulelu88 joined #nim
23:27:29*ofelas joined #nim
23:27:44*bjz joined #nim
23:35:43*tankfeeder quit (Quit: Leaving)
23:39:29*girvo joined #nim
23:44:01*girvo quit (Ping timeout: 256 seconds)
23:54:47*Nobabs27 joined #nim
23:56:42*bjz_ joined #nim
23:57:37*bjz quit (Ping timeout: 256 seconds)