<< 11-03-2014 >>

00:07:25*DAddYE quit (Remote host closed the connection)
00:08:01*DAddYE joined #nimrod
00:11:07*Matthias247 quit (Quit: Matthias247)
00:12:26*DAddYE quit (Ping timeout: 244 seconds)
00:14:06*xenagi joined #nimrod
00:18:54*q66 quit (Quit: Leaving)
00:28:25*filwit quit (Quit: Leaving)
00:33:22*zielmicha quit (Quit: Connection closed for inactivity)
00:55:33*Demos joined #nimrod
00:57:26*Varriount|Mobile quit (Read error: Connection reset by peer)
00:57:54*brson quit (Read error: Operation timed out)
00:59:35DemosBitPuffin, BitPuffin, BitPuffin, BitPuffin I saw a commit that mentioned semistatic
01:04:49xenagiI don't think you highlighted him enough lol
01:05:20*carum joined #nimrod
01:11:00EXetoCBitPuffin BitPuffin BitPuffin you like bacon?
01:11:37*Varriount quit (Ping timeout: 240 seconds)
01:16:55*carum quit (Remote host closed the connection)
01:22:56*carum joined #nimrod
01:23:10*carum quit (Remote host closed the connection)
01:27:08flaviuIs there a way to manually advance a closure iterator?
01:27:25Demoshe said to poke him when semistatic commit was in
01:30:18*DAddYE joined #nimrod
01:53:33*carum joined #nimrod
02:01:21*carum quit (Ping timeout: 240 seconds)
02:05:09*carum joined #nimrod
02:22:18*carum quit (Ping timeout: 240 seconds)
02:23:38*carum joined #nimrod
02:24:34Skrylarhrm.
02:24:48Skrylari seem to have produced a compiler derp by using two generic types in one object
02:24:55fowlhi Skrylar
02:25:00Skrylarhi fowl
02:25:17fowlhows that
02:25:22fowlyou mean foo[a,b] = object
02:28:24*DAddYE quit (Remote host closed the connection)
02:28:52*DAddYE joined #nimrod
02:33:30*DAddYE quit (Ping timeout: 265 seconds)
02:34:02flaviuAre there known issues with generic first class iterators?
02:36:38*carum quit (Remote host closed the connection)
02:37:39*DAddYE joined #nimrod
02:45:33Skrylarfowl: yeah, i did that and it gave me "internal error: replacetypevarst"
02:47:18*Varriount|Mobile joined #nimrod
02:47:45SkrylarAh. It was elsewhere
02:47:59Skrylarthe struct after it didn't put in the type parameters, so the compiler was giving indecipherable errors about it
02:50:25*BitPuffin quit (Ping timeout: 265 seconds)
02:53:13flaviuhttps://gist.github.com/flaviut/9478636 is a bug, right? Not just me messing up the syntax?
02:53:30*DAddYE quit (Remote host closed the connection)
02:53:59*DAddYE joined #nimrod
02:58:18*DAddYE quit (Ping timeout: 240 seconds)
03:00:54Skrylarflaviu: i think the problem is because you put {.closure.} on the second iterator
03:01:00Skrylarbut that isn't part of the signature to the first iterator
03:01:52SkrylarSo they are 'technically' not the same type.
03:02:30flaviuSkrylar: Nope, doesn't help
03:02:53flaviuThanks though, I guess I'll submit a bug report
03:05:23fowlflaviu, no
03:05:47fowlflaviu, you have to instantiate the iterator then it calls like a function
03:07:12fowlhttp://nimrod-lang.org/manual.html#first-class-iterators
03:08:43Demosif he is getting an ICE it is by definition a bug
03:10:08fowloh wait
03:11:40flaviufowl, that fixes it, thanks
03:12:14*Varriount joined #nimrod
03:12:19flaviuDemos: Should I report a bug still, maybe for a better error message?
03:13:26fowlflaviu, you fixed it?
03:13:55flaviuYes, https://gist.github.com/f67b06f850c9f56c0006 works
03:14:09flaviuor at least compiles
03:14:27VarriountGrargh. Demos, have you found any sane way to get around the need to use multiple casts and conversions for every call to opengl?
03:17:13fowlflaviu, you can use return input()
03:19:04flaviuthanks
03:21:16*Varriount_ joined #nimrod
03:24:01*Varriount quit (Ping timeout: 240 seconds)
03:26:18*Varriount_ is now known as Varriount
03:26:33*flaviu quit (Quit: night)
03:27:45*carum joined #nimrod
03:33:38Skrylarinteresting
03:33:47SkrylarnewSeq fails if you have seq[Node[K,V]]
03:34:27*Boscop__ joined #nimrod
03:35:47*Boscop_ quit (Read error: Connection reset by peer)
03:43:51DemosVarriount, you only really need one, I changed the type of THandle to GLuint in my opengl.nim file
03:44:09*DAddYE joined #nimrod
03:44:23DemosSkrylar, try newSeq(var seq[T]; len)
03:45:45VarriountDemos: I'm not sure how big of a cut-down that would have on the amount of conversions I have to make to get around the type restrictions.
03:46:10Demosfor me the biggest thing is just casting the constants to the right type
03:46:24Demosit is not so bad imo
03:46:37Demosless annoying the having to cast for literal initialization
03:54:15*DAddYE quit (Remote host closed the connection)
04:21:14*nequitans_ joined #nimrod
04:21:21nequitans_ahoy!
04:25:33nequitans_Finally finished debugging some Nimrod, and have some super fast shared memory code. Going to post the blog post on reddit/r/nimrod now. Thanks for all your feedback on the post! While there are always things I want to add/improve, I think this is a nice point to post.
04:26:43Demosnequitans, you may want to wait until "prime time" to post it on proggit and HN
04:26:54*DAddYE joined #nimrod
04:27:15nequitans_Demos, ah, cool. Never heard of proggit
04:27:37Demosreddit.com/r/programming
04:28:03nequitans_Ah, cool
04:28:13nequitans_what's the prime time to post, would you say?
04:29:02runvnc_I think its when people are supposed to be working but are on the internet instead
04:29:54nequitans_lol
04:30:07nequitans_and what's HN
04:30:28runvnc_news.ycombinator.com
04:31:33nequitans_ah, cool. Till tomorrow
04:31:37*DAddYE quit (Remote host closed the connection)
04:31:45*DAddYE joined #nimrod
04:32:00Demosessentially you want to post when you can get the Most momentium, and you want to tell us when you post as well so we can all upvote at the same time
04:32:13nequitans_I see
04:32:31nequitans_glad I messaged beforehand
04:33:47*DAddYE quit (Remote host closed the connection)
04:34:16Demosmaybe post it tomorrow at 0100 GMT
04:35:49*carum quit (Remote host closed the connection)
04:48:59nequitans_So Demos, would that be tomorrow at 9PM EDT?
04:49:12Demossounds about right
04:49:17Demos7-8PM is ideal
04:49:22DemosEDT
04:49:25nequitans_kk
04:49:36nequitans_i'll let everyone know
04:53:48VarriountGah. The thing worse than a bug with a mysterious error message is a bug without a mysterious error message.
05:02:04*xenagi quit (Remote host closed the connection)
05:04:36nequitans_Varriount, no msg at all? ;)
05:05:07Varriountnequitans: Nope. Just a black screen.
05:05:40VarriountI'm following an opengl tutorial, using nimrod, and even though the tutorial source and my source are almost exact, nothing is displayed.
05:08:05nequitans_ouch
05:08:29nequitans_maybe some external issue
05:10:51*Skrylar continues to put off having to deal with opengl ._.
05:11:22VarriountSkrylar: Use SDL2 if you can
05:11:43Varriountnequitans: Unlikely, since another tutorial with similar code worked.
05:11:59Skrylarsdl2 is nice
05:12:19Skrylari'm about ~50% done with the hashtable code for dealing with text in guis
05:12:44VarriountMaybe I should just switch to SDL2. I wanted to learn OpenGL, but if I can't even get the code to work...
05:13:47*nequitans_ quit (Ping timeout: 252 seconds)
05:18:06runvnc_hello
05:18:06VarriountHi runvnc_
05:18:13runvnc_I have this bcrypt thing and I am using .cdecl. to bring in some functions
05:18:30runvnc_if I see const char * and char *, can I just use cstring for both of them?
05:18:33runvnc_both types of arguments
05:18:44Skrylaryes though the non-const char would probably be 'var cstring'
05:18:53Skrylarsince const is implicit in nimrod
05:19:00runvnc_oh ok duh
05:19:02runvnc_thanks
05:19:26fowlSkrylar, what
05:19:35VarriountIf I recall correctly, the 'const' modifier in C/C++ is a compile-time feature, not a run-time one.
05:19:37Skrylarfowl: ?
05:20:12runvnc_well the one that isn't const is supposed to be modified so it makes sense to say var
05:20:20fowlSkrylar, var cstring would be char**
05:20:35runvnc_well, made sense to me
05:20:50runvnc_int crypt_blowfish(const char *key, const char *salt, char *encrypted)
05:20:55Skrylarwhat other modifier would you use? 'ptr cstring' would be a pointer too
05:21:08fowlSkrylar, i dont see char ** there
05:21:08runvnc_I can use cstring for the first to arguments right? or now
05:21:09runvnc_no
05:21:16fowlrunvnc_, use cstring for all of them
05:21:16runvnc_sorry this is a basic question
05:21:23runvnc_ok thanks
05:22:45fowlyou can name the function blowfish and use {.importc:"crypt_$1".}
05:23:08VarriountAh! Finally.
05:23:13runvnc_ok heh
05:23:25VarriountTurns out I wasn't telling opengl to use my shaders.
05:23:34Skrylarderp :o
05:25:03*aftershave quit (Remote host closed the connection)
05:26:43DemosVarriount, what you have is called "find the triangle" keep at it
05:27:21Demosmuch eaiser with Direct3D actually since you can use a real debugger to see your state
05:27:25Demosapitrace kinda sucks
05:27:29Demosanyway I am off to bed
05:28:13Demosbut know that I spent like 8 solid hours of debugging traceing an issue that turned out to be me trying to use nimrod's uint (64bit unsigned integer) as a GL_UNSIGNED_INT (32bit unsigned integer)
05:28:19*Demos quit (Read error: Connection reset by peer)
05:51:01*Demos joined #nimrod
05:57:29*xtagon quit (Ping timeout: 240 seconds)
06:15:08*Demos quit (Ping timeout: 244 seconds)
06:23:17*DAddYE joined #nimrod
06:35:17*shodan45 quit (Ping timeout: 244 seconds)
06:42:08VarriountAnyone know how I would go about incorperating a static lib into a nimrod program, assuming that the lib has a companion header file that can be wrapped with c2nim?
07:06:20*nande quit (Read error: Connection reset by peer)
07:15:37VarriountSkrylar: You still here?
07:16:53*shodan45 joined #nimrod
07:20:17*skyfex quit (Quit: Computer has gone to sleep.)
07:24:56SkrylarVarriount: i'm still alive
07:25:26Skrylarthe way i did it was to use {.passl: "-lfoo".} or something similar to that
07:25:47VarriountThanks
07:25:49VarriountSkrylar: Not beaten to death by wild hash algorithms then? I heard they can be quite harsh. :p
07:26:02Skrylarit took a bit of searching to find that command's existence, but it does make it so if say... you use an ncurses module it will also link in ncurses
07:26:17Skrylarnah i've been loafing :<
07:26:50Skrylarhave to do the part where it plays musical chairs with the hash entries but its mostly done
07:28:26VarriountHm. What order doe
07:28:45VarriountWhat order do linker arguments need to be passed in for gcc?
07:52:30Skrylardependencies last IIRC
07:52:37Skrylare.g. "-lrequirespng -lpng"
07:53:14Skrylarthough its a little silly that there still *is* an order
08:01:19*DAddYE quit (Remote host closed the connection)
08:01:46*DAddYE joined #nimrod
08:05:59*DAddYE quit (Ping timeout: 240 seconds)
08:07:33*zielmicha joined #nimrod
08:11:37SkrylarVarriount: that said i think there's actually a pragma used by the wrappers to tell them which lib to import, which might be more correct than janking it with passl
08:12:25VarriountSkrylar: Yeah, I know, however gcc is saying that it can't find the lib, even though it's in the cwd
08:14:24Skrylaryou have to give nimrod a -l,-L.
08:14:39Skrylarthe cwd isn't part of the search path by default :\
08:23:30VarriountSkrylar: I did. Anyway, it's moot now, I switched to another lib that actually has the decency to provide dll's.
08:25:37fowlwhat are you working on Varriount
08:25:48Varriountfowl: OpenGl tutorial
08:26:01VarriountRather, I'm trying to actually get through one.
08:26:03fowlbtw you might fight less with gl functions if you use 32 bit types
08:26:29VarriountI gave up on using SOIL, and switched to FreeImage.
08:26:41Varriountfowl: Thank you, duly noted.
08:29:06Skrylari remember using a few cints
08:29:14Skrylarthat was with ncurses though
08:31:40*Varriount|Mobile quit (Ping timeout: 265 seconds)
08:33:39VarriountAw.. My phone battery died.
08:58:53AraqVarriount: it doesn't really matter if bootstrapping with VS doesn't work, we need a test for it, so we can fix it and keep it working
08:59:35VarriountAraq: Ok
09:02:18*DAddYE joined #nimrod
09:06:25*DAddYE quit (Ping timeout: 240 seconds)
09:16:41*moeen joined #nimrod
09:16:54SkrylarVarriount: am i going to have to correct the opengl situation with nimrod? :/
09:17:27moeenhi everyone
09:17:31Skrylarhi moeen
09:17:33VarriountSkrylar: Correct it how?
09:17:56SkrylarVarriount: there have been a lot of issues in IRC lately in that people can't get it working
09:18:54VarriountThe main problem/annoyance that I have with it atm is that OpenGl's design relies on C's... flexibility when it comes to types - things like functions taking both signed and unsigned ints
09:19:46VarriountWhich ends up with me casting or converting about half of all the parameters I send to OpenGl calls.
09:20:31Skrylarthose functions usually take void pointers
09:20:45Skrylarand have a GL_X enumeration stuck to them
09:21:19*skyfex joined #nimrod
09:22:02VarriountSkrylar: Yes. I know. It's nothing that can really be solved without pasting another layer of indirection on top of everything. A consequence of using a C wrapper, I guess,
09:22:46Varriount-lc:\users\clay\projects\nimrod-scripts\nimgl\libSOIL
09:22:53VarriountBlargh
09:23:20VarriountI know I've been using yhe command prompt too long when I press 'enter
09:23:24Varriount to copy stuff
09:25:13fowl-lSOIL should work
09:25:55Varriountfowl: Keep in mind that I'm on windows.
09:25:57*skyfex quit (Ping timeout: 264 seconds)
09:26:16fowl-llibSOIL then?
09:26:48VarriountTried that too. None of them work, even when the exact path of the lib file is given.
09:27:30Varriountld.exe: cannot find -lc:\users\clay\projects\nimrod-scripts\nimgl\libSOIL.a
09:28:00VarriountEven when libSOIL.a has that exact path. -_-
09:28:58VarriountI tried FreeImage, however I get an off center, rotated result with it.
09:29:20fowlyou shouldnt need the .a
09:30:15Varriountfowl: I've tried it without the .a, same result
09:39:34VarriountOk. I got ld to find the static lib by passing libSOIL.a as a file, however it's now complaining about undefined references to the OpenGl DLL. Wonderful
09:40:04fowli thought you said you had a dll
09:40:18Varriountfowl: I have the opengl dll somewhere on my system
09:40:38VarriountI have the static lib in the same path as my main code.
09:44:10Varriountfowl: You said that DevIL was another option?
09:44:20fowlyea
09:44:38fowlfor loading texture
09:46:51Araqhi moeen welcome
09:47:37AraqVarriount: Skrylar: I think the opengl wrapper's types might be wrong and also perhaps a few more overloads / converters are required
09:48:14Araqin fact, I think new overloads solve your issues and yet don't break the code out there
09:48:48VarriountAraq: "A few more" implies that there are already overloads/converters in the wrapper, which, afaik, there aren't.
09:49:39VarriountI haven't seen any incorrect types, but then again, I'm still on the 'loading textures' part of the tutorial.
09:51:28Varriountfowl: Do you have a wrapper available for DevIL?
09:51:36fowlVarriount, i fought with GL once, made some overloads, not much https://github.com/fowlmouth/nimlibs/blob/master/fowltek/gl_helpers.nim
09:52:01fowlVarriount, yeah, fowltek/dev/{il,ilut}
10:02:47*DAddYE joined #nimrod
10:03:03fowlbrb
10:06:00Skrylarswap() isn't going to do anything stupid if i ask it to swap a local variable with an array element is it?
10:06:58*DAddYE quit (Ping timeout: 240 seconds)
10:08:39VarriountSkrylar: I don't think you can - an array element isn't a 'var'
10:09:12VarriountUnless you mean a local reference/copy of an array element
10:09:42Varriountfowl: When you get the chance, do you think you could split off that DevIL library into it's own package?
10:10:51SkrylarVarriount: well it compiles
10:11:08Skrylarthough yes, its through a var object so changes should be allowed
10:11:28Skrylarin this case its swapping with a limbo value in the parent object, and the 'database' which is a big sequence
10:11:31VarriountSkrylar: Do you mean 'swap(localVar, localArray[1])?
10:11:39Skrylarswap(self.limbo, self.database[x])
10:12:21VarriountHm. I would think that would swap whatever is contained in limbo with whatever is contained in database[x]
10:12:33Skrylarthats fine
10:15:52*Varriount wonders how swap works internally
10:16:09Skrylarsupposedly its more efficient
10:16:23Skrylarit probably does the usual swap routine without the GC having to do the intermediate ref/deref
10:17:01*BitPuffin joined #nimrod
10:18:39VarriountHi BitPuffin.
10:19:19BitPuffinheyo Varriount
10:19:27BitPuffinping zahary zahary_office
10:42:37Skrylarwell piss. i got bit by that check bug in unittest again :|
10:42:47Skrylaron an up note it lead me to diagnosing another whoops elsewhere, so its not all bad
10:43:49fowlVarriount, you can move it. i usually wait until someone shows interest then have them move the lib
10:46:01fowlVarriount, Skrylar btw if you want to look up what magic functions do (swap is {.magic:"Swap".}) grep for mSwap in the compiler
10:49:46*moeen quit (Quit: Page closed)
10:56:46Skrylarwell thats disheartening. in my stress test there are 1024 buckets, it reaches a load factor of ~50% before running out of space
11:00:39VarriountSkrylar: Well, you did better than whatever I could do.
11:00:49VarriountI'm still trying to load textures. T_T
11:04:39Varriountfowl: Just a question - Did you write your DevIL wrapper by hand?
11:05:48fowlVarriount, yessir. i think the function you want is GLuint ilutOglLoadImage(char *FileName);
11:06:49Varriountfowl: I'm trying to use only OpenGl 3+ api's, and I don't know what api ilutOglLoadImage uses.
11:07:11VarriountIn any case, I've found a method that's not too hard.
11:07:24fowlwhy that limit
11:08:03Varriountfowl: OpenGl ES
11:08:17VarriountAlso, things are deprecated for a reason.
11:09:48fowlVarriount, i bet all the texture related gl calls are still in opengl core (since like version 1)
11:13:02Varriountfowl: Teeny problem with ilutOglLoadImage - It's not in your wrapper.
11:13:31fowlilut isnt close to complete
11:14:10fowlproc OglLoadImage*(filename:cstring):TGLuint
11:14:27Varriountfowl: Which is why I'm using c2nim to wrap the rest of it.
11:14:48VarriountRight now, I'm correcting errors in the generated nimrod files.
11:14:50fowlmeh i just imported the functions i need as i need them
11:15:35fowland writing it by hand makes you more intimate with the api
11:16:32Skrylarmhm, loading textures is the same
11:16:45SkrylarglGenTextures, and then glUploadTexture with the pixel formats set IIRC
11:17:05Skrylarthough you no longer enable/disable texture mapping, you bind the texture handle to a sampler on your shader pipeline
11:18:08VarriountSkrylar: I haven't seen glUploadTexture used yet in the tutorial, however I am using a sampler in the fragment shader.
11:19:11Skrylari don't remember the function names verbatim at the moment
11:19:21Skrylarjust the process (i posted that flowchart of it the other day)
11:22:08*skyfex joined #nimrod
11:26:25*skyfex quit (Ping timeout: 240 seconds)
11:40:49VarriountOdd.. why would the nimrod compiler complain that random importc'd procedures are already defined, when they are only found once, in a file with no imports or includes..
11:46:31*aftershave joined #nimrod
12:12:40*darkf quit (Ping timeout: 244 seconds)
12:15:35Varriountfowl: Good news! The DevIL wrappers work. Bad news - I still can't display my textures properly.
12:18:59EXetoCI always get some part of the process wrong
12:19:44EXetoCwhat tutorial is it?
12:20:17VarriountEXetoC: http://open.gl/textures
12:21:24EXetoCVarriount: I assume you attempted to draw a non-textured polygon first
12:22:03VarriountEXetoC: Yes. One moment, I'll show you what I have
12:22:43VarriountEXetoC: http://imgur.com/BbUkRnd
12:22:57VarriountThat's with DevIL
12:23:31fowlVarriount, do you try a devil tutorail
12:23:47Varriountfowl: Yes.
12:23:51EXetoCbeen there. any of the coordinates might be wrong
12:24:10EXetoCvertex or texture coordinates
12:24:39fowlgl is confusing :/
12:25:31VarriountActually, comparing DevIL and FreeImage, both give me the same results.
12:25:44VarriountThe bug must be hiding somewhere else. :/
12:25:55EXetoCyeah so check the coordinates
12:26:05VarriountAh well, at least nimrod now has a nearly complete DevIL wrapper
12:26:23EXetoCwhat primitive are you rendering?
12:26:40VarriountTwo triangles, or one rectangle.
12:27:08fowlVarriount, you are going to put it in its own package right
12:27:15Varriountfowl: Yes.
12:27:23fowlgood stuff
12:28:24Varriountfowl: It was actually pretty easy. It's nice to see neat, orderly header files.
12:29:46fowldoes the resulting nimrod look nice
12:29:56fowlusing push: cdecl,dynlib,importc
12:30:14EXetoCwhat about this quad (vertcoord, texcoord), ...: ((-1, -1), (0, 0)), ((1, -1), (1, 0)), ((1, 1), (1, 1)), ((-1, 1), (0, 1))
12:30:34EXetoCthough I do prefer triangle primitives, and in this case I'd use a strip, but it doesn't matter now
12:30:57Varriountfowl: It looks so-so.
12:32:47VarriountEXetoC: Here's the program: https://gist.github.com/Varriount/9484684
12:36:47BitPuffinVarriount: looks great, ship it
12:37:11fowlVarriount, i dont think you need to cast glint to gluint
12:37:15fowla type conversion should work
12:37:17Varriountfowl: Yes I do.
12:38:04fowlvar x = 1.glint; var y = x.gluint wfm
12:38:05BitPuffinEXetoC: I dunno, you rarely need strips in real life
12:38:16BitPuffinonly when doing like a plane or something
12:38:31Varriountfowl: If I don't cast them, I get type errors.
12:38:49BitPuffinthat's not casting
12:38:52BitPuffinthat's converting
12:38:56BitPuffinhuuuUUUUUUuuuUUUUge difference
12:38:57VarriountThat's converting, yes.
12:39:28fowlglEnableVertexAttribArray(x.gluint) wfm
12:39:34BitPuffinthe fuck is wfm
12:39:39fowlworks for me
12:39:40BitPuffinwait for massage?
12:39:42BitPuffinah
12:39:48fowli just invented it
12:39:53fowlprepare to hear it often
12:39:56BitPuffinwell get rid of it
12:40:01fowlwfys
12:40:08BitPuffinI'll always interpret it as wait for massage
12:40:10fowlcan you guess what that one means
12:40:10Varriountfowl: You still have to convert.
12:40:29BitPuffinpls ljsis
12:40:36BitPuffinidkiili
12:40:49BitPuffinfdyremtttylt?
12:41:32BitPuffinaka please let's just speak in shortucts. I don't know if I like it. fowl do you really expect me to talk to you like this?
12:41:52BitPuffintfs
12:42:03fowlBitPuffin, you are the king of hyperbole
12:42:12BitPuffintruly
12:42:24fowlhyperbolicpuffin
12:42:38BitPuffinhyperdemonicoverloardpuffin
12:42:59BitPuffinhey guise, noose, I'm working on a different game now xD
12:43:24VarriountBitBlitPuffin?
12:43:39BitPuffinL3L
12:44:05fowlVarriount, conversions are way easier on the eyes than casts
12:44:16BitPuffinand they are more correct
12:44:18Varriountfowl: But they run the risk of altering data.
12:44:54BitPuffinare uint and int actually cast compatible thinking of it? I mean one bit in a signed int negates the whole shebackle
12:45:08BitPuffinbut I guess maybe that's the last one
12:45:14BitPuffinso if you don't have any number above that
12:45:17BitPuffinguess you'rea fine
12:45:22BitPuffinstill, stahp
12:45:26fowlVarriount, i dont know about that
12:46:32VarriountAs I understand it, type casts just tell the compiler to treat some portion of data as another type, while conversions actually convert the data.
12:46:50BitPuffinVarriount: yeah exactly
12:46:54BitPuffinwhich is a bad idea
12:46:56BitPuffindun do it
12:47:08BitPuffinbecause your data in one type, might not mean the same in the other
12:47:16BitPuffinhence the conversion part is the way of the future
12:47:45BitPuffinbut I guess when you know for dick diddely sure they are the same casts are faster
12:47:53BitPuffinbut then you better be dick diddely sure as fuck
12:48:04BitPuffinor the code is spoof
12:48:13BitPuffinwho talks like this anyway
12:48:20fowlwell
12:48:32fowlgl scalar types should probably be distinct
12:48:54fowlwith converters that cast to/from unsigned versions
12:49:25BitPuffinyeah I think I agree
12:49:44VarriountIt looks as if the texture is being.. anchored to the wrong vertices.
12:49:58*awestroke joined #nimrod
12:50:06VarriountHi awestroke
12:50:20awestrokeVarriount: hello
12:50:39BitPuffinguten tag ja awestroke
12:50:49BitPuffinVarriount: stahp doing that
12:51:49VarriountDon't mind BitPuffin, he's just a bit cuckoo.
12:52:44BitPuffinI am going insane
12:52:53BitPuffinI don't want to deal with this shitty bug in my objective-c
12:52:56BitPuffinso I'm just bored
12:55:04VarriountBitPuffin: Read a book on the internals of an OS.
12:56:07BitPuffinVarriount: no u
12:59:04VarriountI found out why my image was wrong. I was using sizeof(float) instead of sizeof(glFloat)
12:59:15BitPuffinnub
12:59:33VarriountOf course, now for some reason the image is upside-down, but that's way better than before.
12:59:44fowlprogress!
13:00:08VarriountIt's raining rainbow kittens.
13:00:53EXetoCrearrange the y-coord
13:01:00BitPuffinmaybe you are interpreting the y coordinate wrong
13:01:05BitPuffinquite EXetoC, men are working
13:01:42fowlpuffinbits
13:01:53BitPuffinquiet
13:01:55BitPuffinsuch english
13:01:57BitPuffinwow
13:05:33VarriountWho's in charge of the freeimage babel package?
13:05:43BitPuffinshaft?
13:10:33Varriount!lastseen Demos
13:15:05AraqBitPuffin: fix nimrod on macosx please
13:16:31BitPuffinAraq: aight
13:16:39BitPuffinwhat was the line I was supposed to comment out again?
13:16:49EXetoCthat's cheating
13:17:02BitPuffinEXetoC: your mom is cheating
13:17:03BitPuffinon your dad
13:17:05BitPuffinwait what
13:17:54EXetoC:E
13:18:30AraqBitPuffin: the call to dealloc in growObj, gc.nim
13:18:42BitPuffinaight
13:18:52BitPuffinwill do that later
13:18:54BitPuffinjk right now :P
13:19:41BitPuffinwhat the heck is gc2
13:20:05BitPuffinDeferred reference counting reborn
13:20:16VarriountSounds.. sexy.
13:21:24BitPuffinAraq: rawDealloc(gch.region, ol), that line?
13:22:41Araqyup
13:22:52BitPuffinholy macaroni
13:23:01*skyfex joined #nimrod
13:24:14BitPuffinhttps://github.com/Araq/Nimrod/issues/941
13:26:53VarriountHm. So why does this bug only affect Maxcs?
13:27:04*skyfex quit (Ping timeout: 244 seconds)
13:27:17BitPuffinOS Eggs
13:27:56*nequitans_ joined #nimrod
13:28:50VarriountHi nequitans
13:29:51*Endy joined #nimrod
13:30:11VarriountHello Endy
13:30:32AraqBitPuffin: ok so the bug is somewhere else
13:31:20BitPuffinAraq: oight moit
13:32:18BitPuffinit's like I am the one who gets all the bugs
13:32:23BitPuffineveryone else gets a nice time
13:32:34BitPuffins' unfee
13:32:46Araqyeah but it's your own fault
13:32:51VarriountOy!
13:32:54*Varriount throws an upside-down rainbow kitten at BitPuffin
13:33:00Araqyou should use a real OS
13:33:02BitPuffinAraq: how is it MY fault
13:33:04BitPuffinlol
13:33:15BitPuffinbetter than the Widow's operating system
13:33:23EXetoCcus <1.0
13:33:29Araqlike Gentoo which just broke every lib*.so loading via dlsym
13:33:30BitPuffindoesn't zahary use mac too
13:33:41EXetoCAraq: yeah?
13:33:54Araqand I'm sure they argue it's "technically correct"
13:33:54BitPuffinAraq: anyways I don't use macs because I like it
13:34:10BitPuffinI use it because ouch oh ess devel for wurk
13:34:40BitPuffinbut claiming that nimrod shouldn't work on mac and it's my fault for using it on mac is wrong and you know it! :)
13:34:49BitPuffinlike even if I would write my games shit in linux
13:34:49VarriountAraq: Anywhere I can get information on how Gentoo broke shared lib loading?
13:35:00BitPuffinI'd still want to have a mac and widows version available
13:35:05*nequitans_ quit (Remote host closed the connection)
13:35:07AraqVarriount: just read the most recent bug report from zielmicha
13:35:27BitPuffinand it would be KINDA HARD to do that without proper mac support
13:35:27VarriountOh that, yeah, I read it.
13:35:57VarriountI thought dlsym was something like hardlinks.
13:35:58BitPuffinI mean the whole reason (except for lots of others) I use nimrod is because it's portable ass fuck
13:36:12BitPuffincould even run it on a console that has a closed tool chain
13:36:19BitPuffinbecause who doesn't speak C amirite
13:36:33zielmichaVarriount, Araq: libc maintainers say that you shouldn't load shared objects, without qualifier
13:36:48AraqBitPuffin: ccgexprs.nim(1841), add doAssert isAllocatedPtr(n)
13:36:50zielmichabecaus libz.so.1 and libz.so.2 may have different ABI
13:37:11Araqah, so let's break everything because it *may* not work in theory
13:37:29BitPuffinoki
13:38:47BitPuffinAraq: you mean inside the else I presume
13:39:15AraqBitPuffin: activate brain
13:39:27Araqif the node is not called 'n' but 'e', use 'e'
13:39:28BitPuffinif the answer was correct then it is very much running
13:39:48Araqif isAllocatedPtr is not exported, export it
13:39:57Araqit it needs a cast to pointer, cast it
13:40:15BitPuffinyeah it gave me an error about not finding isAllocatedPenis
13:42:14Varriountzielmicha: Could you explain a bit more about Gentoo and its use of linker scripts? I always thought that linking was done at compile-time, not run-time
13:44:28zielmichaon Linux, *.so files are used both by dynamic linker/loader (eg /lib/ld-linux.so.2) and ld, the binary that turns .o files into executables (/usr/bin/ld)
13:45:06zielmichaonly the latter understands linker scripts
13:45:52zielmichaand this is not a problem for "normal" applications, because ld embeds library names with ABI versions (like libutil.so.1, so libutil.so)
13:46:06BitPuffinError: type mismatch: got (pointer) but expected ystem.isAllocatedPtr(a: TMemRegion, p: pointer): bool
13:46:14BitPuffinwhat do I give it as TMemRegion Araq
13:46:37VarriountBitPuffin: I like to think that, despite the radiance the Linux distro's show in comparison to the grungy Windows, I still run Windows in an effort to benefit the poor, wayword souls out there who still haven't seen the light of Linux.
13:47:07zielmichasane distros (not Gentoo) use symlinks (/lib/libz.so -> /lib/libz.so.1), but there is some reason for using ld scripts (cross compiling?)
13:47:22Araqzielmicha: we can in fact easily fix it
13:47:42BitPuffinVarriount: pfffff
13:47:43Araqour dlopen wrapper needs to learn about linker scripts
13:47:53BitPuffinVarriount: Widows running people are Widows
13:48:27AraqBitPuffin: there is a version of isAllocatedPtr without a memory region
13:48:45zielmichaI think that right solution is to change 'const libz = "libz.so"' -> 'const libz = "libz.so.1"'
13:49:28BitPuffinAraq: not in alloc.nim that I could find no
13:50:06BitPuffinwell unless you count the one inside a template
13:50:09EXetoCis it just one distro being all weird?
13:50:53EXetoCwhere did the symlink go?
14:01:37VarriountAraq: On the topic of writing bootstrap tests for the vcc compiler, how would you like me to go about actually bootstrapping nimrod from the tester?
14:02:36VarriountI could either have the tester try to directly compile nimrod.nim, or modify koch.nim to support creation of a temp compiler with boot-time parameters.
14:03:37Araqcompile directly nimrod.nim
14:03:57Araq"koch" does not perform any magic
14:04:15VarriountAraq: Are there any other compilers that you want tested?
14:04:25EXetoCok so gentoo decided to follow some questionable advice, in which case maybe users should be allowed to override the lib paths for bindings
14:04:31AraqLLVM comes to mind
14:05:06Araqgentoo broke nimrod and haskell for "correctness"
14:05:19Araqthat's all there is to say about it
14:05:39*wstrk joined #nimrod
14:05:40*Varriount wonders if Araq is trying to move functionality from the buildbot into the tester
14:06:45*awestroke quit (Ping timeout: 264 seconds)
14:06:52VarriountHi wstrk
14:07:15VarriountAre you awestruck?
14:09:36*faassen joined #nimrod
14:09:37Varriountdom96: Ping
14:09:53VarriountHey faassen
14:11:03faassenhey.
14:14:16*[1]Endy joined #nimrod
14:16:14VarriountOh no. I feared this day would one day come.
14:16:56VarriountProlonged exposure to the windows command line has caused me to use the backslash when writing paths.
14:17:20*Endy quit (Ping timeout: 252 seconds)
14:17:21*[1]Endy is now known as Endy
14:18:26*wstrk quit (Ping timeout: 252 seconds)
15:01:28*yawnt is now known as img
15:01:39*img is now known as yawnt
15:13:12*soc joined #nimrod
15:23:52*skyfex joined #nimrod
15:28:01*skyfex quit (Ping timeout: 240 seconds)
15:33:45*shodan45 quit (Quit: Konversation terminated!)
15:39:30*Demos joined #nimrod
15:41:02BitPuffinheyo Demos thanks for alerting me
15:41:10Demosno problem
15:41:17BitPuffinstill getting the error though so zahary probably fixed something, just not my problem
15:49:22Demosdarn
15:49:27Demosis there a ticket open for it?
15:52:41Demosnow lets see if nimrod will compile on plan9
15:59:37BitPuffinno there is nöt
16:08:40Demosyou should open one
16:09:22DemosI gotta go but for the record nimrod does not compile on plan9, at least not eaisly. pan9's standard C library is a bit strange I think
16:10:45Demosalthough I am liking how they simplified C a whole lot. they have #pragma link and a sane way of searching for stuff. Still textual includes though
16:16:57BitPuffinyeah I probably should
16:17:09BitPuffinthey have their own compiler too don't they?
16:25:21*Demos quit (Ping timeout: 265 seconds)
16:52:04dom96helloooo
16:58:57*BitPuffin quit (Ping timeout: 264 seconds)
17:02:31*DAddYE joined #nimrod
17:19:53*skyfex joined #nimrod
17:24:30nequitansHi varriount, (from hours ago :))
17:25:03dom96Varriount: sup?
17:43:52*nande joined #nimrod
17:48:53*BitPuffin joined #nimrod
17:53:41*shodan45 joined #nimrod
18:12:25*carum joined #nimrod
18:24:27zahary_officeBitPuffin, I compiled your gist yesterday
18:24:52zahary_officehaven't yet fixed the other proc foo[T, I] issue tho
18:25:39zahary_officethere was only a trivial error at the end of the gist - a vector that was still using a range
18:27:14*brson joined #nimrod
18:27:55*q66 joined #nimrod
18:27:55*q66 quit (Changing host)
18:27:55*q66 joined #nimrod
18:38:04*nande quit (Read error: Connection reset by peer)
18:39:19*brson quit (Quit: leaving)
18:39:34*brson joined #nimrod
18:39:52*nande joined #nimrod
18:40:41*BitPuffin quit (Ping timeout: 265 seconds)
18:43:48zielmichaI've created a list of Babel packages http://atomshare.net/nimrod/pkglist.html (source https://github.com/zielmicha/babel-pkglist)
18:44:11zielmichaIt may be worth integrating into nimbuild or something (cc dom96)
18:46:10Araqzielmicha: excellent, can you integrate this somehow into http://build.nimrod-lang.org/docs/lib.html ?
18:46:37zielmichaSo merge it into main Nimrod repo?
18:47:04zahary_officeyou can also host it an an iframe if you want to develop it separately
18:50:34Araqzielmicha: the source is in doc/lib.txt
18:52:12*carum quit (Remote host closed the connection)
18:52:23*carum joined #nimrod
19:01:13*carum quit (Read error: Connection reset by peer)
19:01:34*carum joined #nimrod
19:13:04*carum quit (Remote host closed the connection)
19:14:53*Demos joined #nimrod
19:21:39dom96zielmicha: very nice
19:23:12renesacI think you should put only a link to this list on doc/lib.txt, so it can be updated independent of the compiler
19:24:02*bgeorg quit (Remote host closed the connection)
19:24:43dom96it should be dynamically generated by nimbuild
19:24:55AraqI agree with dom96
19:25:43renesachum, so the script zielmicha will be called by nimbuild?
19:25:57renesac*used will be
19:26:32renesacor it will be done via regular pull requests?
19:27:08zielmichadoc/lib.txt may contain Javascript (with link fallback) to load the list?
19:28:26zielmichathen you can find any module using ctrl-f in lib.html
19:28:32Araqzielmicha: that's easily doable with .. raw:: html
19:49:32skyfexAraq: FYI, didn't have time to look at those issues this weekend, a bit busy with a few other things
19:52:56Araqskyfex: alright no worries
19:54:41skyfexBut I have started on a libusb interface.. I need it for one of those things I have to finish. I'm just doing just the bits I absolutely need for now though
19:57:23skyfexIf I do type Something = ptr some_struct, can I make that opaque?
19:58:03skyfexmmm.. oh, I suppose not exporting Something will work
19:58:05skyfexheh
20:01:20Araqyup
20:04:32*io2 joined #nimrod
20:05:16*carum joined #nimrod
20:09:53skyfexand if I in the pure C-like interface have a struct that export all fields, and in the Nimrod interface I want to have the same struct, but only export some of them.. I just create an identical struct (well, object), with only those fields exported.. then cast to the other definition when I call the C-functions
20:10:46Demosyou should just be able to give C your struct, so long as it is the same size
20:11:03Demosnot exporting a symbol does not make the struct ABI incompatible with your C struct
20:11:17Demosin fact C has no notion of exporting or not exporting individual members
20:11:52zielmichaI get "niminst.txt(31, 1) Error: cannot open 'doc/mytest.cfg'" from ./koch web, both on devel and master
20:12:36Araqzielmicha: recompile koch itself
20:13:39zielmicharecompiling haven't helped
20:14:25zielmichahm, maybe I need to set PATH=path-to-current-nimrod-bin:$PATH
20:15:46Araqwell I had the same issue but I fixed it
20:15:57Araqthe docgen now considers the current path
20:16:08Araqno idea why it's still a problem for you
20:23:32*skyfex quit (Remote host closed the connection)
20:24:53*nande quit (Remote host closed the connection)
20:25:07*skyfex joined #nimrod
20:31:37zielmichalib.html with integrated babel package list would look like this: http://users.atomshare.net/~zlmch/nimdoc/upload/lib.html
20:31:46zielmicha(scroll to down of page)
20:32:39zielmichaI inject package list with <script src="//atomshare.net/nimrod/pkglist.js"></script>, which contains document.write(atob(base64 encoded html))
20:33:18*Demos quit (Ping timeout: 265 seconds)
20:38:15*Demos joined #nimrod
20:38:46Araqzielmicha: looks nice
20:39:05Araqwell actually the layout is pretty awful but that's not your fault
20:39:21Araqfilwit has a new design of the documentation in the works
20:39:38Demosthat looks the same as before?
20:39:59DemosOooOO it has babel packages
20:40:31Demosnot sure about the sorting by stars
20:40:31*carum quit (Remote host closed the connection)
20:41:20*carum joined #nimrod
20:43:38*himpol joined #nimrod
20:43:48Araqhi himpol welcome
20:47:26*donova quit (Remote host closed the connection)
20:47:27*himpol quit (Remote host closed the connection)
20:48:20dom96Definitely need a better style.
20:48:24Araqping Varriount
20:48:41dom96But yeah, we should add something like that. In the future we can create a website dedicated to it.
20:50:10*Mat3 joined #nimrod
20:50:14Mat3hi all
20:50:22Demoshi Mat3!
20:50:23Araqhi Mat3
20:50:28*carum quit (Remote host closed the connection)
20:50:31Mat3hi Demos and Araq
20:50:57Demosdid you guys see Sony's ATF GUI tool?
20:53:03*carum joined #nimrod
20:54:26AraqDemos: only skimmed the reddit message
20:54:38DemosI poked around the samples a bit
20:55:18Mat3no
20:56:00*carum quit (Remote host closed the connection)
20:56:26*carum joined #nimrod
20:57:29*Matthias247 joined #nimrod
20:59:56*carum quit (Remote host closed the connection)
21:01:23*silven quit (Remote host closed the connection)
21:10:30*io2_ joined #nimrod
21:12:31*brson_ joined #nimrod
21:16:19*Demos quit (Ping timeout: 265 seconds)
21:31:36*NimBot joined #nimrod
21:32:58*shodan45 quit (*.net *.split)
21:32:58*DAddYE quit (*.net *.split)
21:32:59*nequitans quit (*.net *.split)
21:32:59*brihat quit (*.net *.split)
21:32:59*betawaffle quit (*.net *.split)
21:32:59*runvnc_ quit (*.net *.split)
21:32:59*oxful quit (*.net *.split)
21:34:50EXetoCwoot
21:36:35*shodan45 joined #nimrod
21:38:06*nequitans joined #nimrod
21:38:08*Araq_bnc joined #nimrod
21:38:09*Araq_bnc is now known as Araq
21:38:12*Kooda joined #nimrod
21:38:25*brihat joined #nimrod
21:38:50*Amrykid joined #nimrod
21:39:02*Mat3 quit (*.net *.split)
21:39:02*io2 quit (*.net *.split)
21:39:03*brson quit (*.net *.split)
21:39:03*Endy quit (*.net *.split)
21:39:03*Varriount quit (*.net *.split)
21:39:04*icebattle quit (*.net *.split)
21:39:04*askatasuna quit (*.net *.split)
21:39:04*noam quit (*.net *.split)
21:39:04*cark quit (*.net *.split)
21:39:05*icebattl1 quit (*.net *.split)
21:39:05*skyfex quit (*.net *.split)
21:39:06*zielmicha quit (*.net *.split)
21:39:06*psquid quit (*.net *.split)
21:39:06*CarpNet quit (*.net *.split)
21:39:07*fowl quit (*.net *.split)
21:39:20*dom96 joined #nimrod
21:39:49*Demos joined #nimrod
21:41:06*DAddYE joined #nimrod
21:41:06*runvnc_ joined #nimrod
21:41:06*reactormonk joined #nimrod
21:41:06*profmakx joined #nimrod
21:41:06*icebattl1 joined #nimrod
21:41:06*skyfex joined #nimrod
21:41:06*zielmicha joined #nimrod
21:41:06*psquid joined #nimrod
21:41:06*CarpNet joined #nimrod
21:41:06*fowl joined #nimrod
21:41:10*faassen left #nimrod (#nimrod)
21:42:05*io2_ is now known as io2
21:42:23*profmakx is now known as Guest3642
21:42:27*shodan45 quit (Remote host closed the connection)
21:42:46*shodan45 joined #nimrod
21:43:59runvnc_l
21:45:06*Mat3 joined #nimrod
21:45:24*betawaffle joined #nimrod
21:49:12*oxful joined #nimrod
21:54:59dom96And Github is down.
21:55:41Demoswowah
21:55:48Demostoo web scale I guess
21:58:48*io2 quit ()
22:01:53runvnc_I wonder if there was some kind of greater internet outage or AWS issue because the github thing seems to be about the same time as the irc netsplit
22:03:00EXetoCmaybe one of the main tubes or something
22:08:42runvnc_or maybe just the universe trying to point out how wise it is for everyone to rely on centralized services
22:10:06runvnc_The domain/server-based internet is going to go away and be replaced with some type of p2p encrypted thing sort of like this http://en.wikipedia.org/wiki/Named_data_networking
22:11:16Mat3I suspect some cable damage
22:24:01Mat3ciao
22:24:13*Mat3 quit (Quit: Verlassend)
22:24:29*flaviu joined #nimrod
22:25:03flaviuWhat if any code in the tutorials was automatically compiled as if it was a test case?
22:25:39*shodan45 quit (Quit: Konversation terminated!)
22:26:51Araqflaviu: yeah we need to do that
22:33:58flaviuOk, I'll see if I can put something together
22:40:13NimBotAraq/Nimrod devel 84f41e2 Dominik Picheta [+0 ±3 -0]: tasyncawait now works on Linux.... 4 more lines
22:43:42dom96nequitans: Yo. Could you maybe submit your article to reddit a bit earlier? At 1AM GMT Araq and I will likely already be fast asleep.
22:50:24reactormonkok, sqlite is too slow. paralleize inserts?
22:50:45reactormonk... and use a real engine?
22:51:09runvnc_you are going to bed in an hour?
22:51:19runvnc_and he was going to submit to proggit at then
22:51:42Araqreactormonk: what are you doing?
22:52:16AraqI think you need to skip the db_sqlite layer so you can use prepared statements
22:52:41Araqafaik sqlite performs no query caching on its own, unfortunately
22:52:55dom96runvnc_: 1AM GMT is in two hours.
22:52:55reactormonkAraq, writing from zmq to sqlite
22:53:07runvnc_ok thanks dom96
22:53:09Araqprepared statements help a lot for insert performance iirc
22:53:35dom96But yeah, I may be going to sleep in about an hour.
22:55:16Araqnequitans: how does this even compile?
22:55:19Araqtype Matrix = object
22:55:21Araq nrows, ncols: int
22:55:22Araq data: seq[Matrix.T]
22:55:38reactormonkAraq, hm.
22:55:55Araqyou need the Matrix[T] = object here
23:03:58Araqgood night
23:05:04NimBotAraq/Nimrod devel 320e58f Dominik Picheta [+0 ±2 -0]: EOS exception now contains the error code.
23:07:24*yawnt left #nimrod (#nimrod)
23:37:10*darkf joined #nimrod
23:41:13*Matthias247 quit (Read error: Connection reset by peer)
23:42:22reactormonksooo how do I speed up sqlite inserts?
23:42:29NimBotnimrod-code/packages master c494799 Jason Livesay [+0 ±1 -0]: add bcrypt
23:42:29NimBotnimrod-code/packages master 99d2eca Dominik Picheta [+0 ±1 -0]: Merge pull request #49 from ithkuil/master... 2 more lines
23:43:04dom96'night
23:54:38*soc left #nimrod ("PING 1394582078")
23:58:29*carum quit (Remote host closed the connection)