<< 08-11-2013 >>

00:00:11BitPuffindom96: yeah totally!
00:00:36dom96I feel like I haven't experienced all the cool game modes.
00:00:44BitPuffinme neither :P
00:03:02BitPuffindom96: btw what is your steam?
00:03:05BitPuffingonna hack it
00:03:08BitPuffinerr I mean add it
00:05:09dom96http://steamcommunity.com/id/dom96
00:06:14dom96Good night
00:06:38*hoverbear joined #nimrod
00:07:59VarriountHello hoverbear
00:08:06hoverbearHey varr
00:08:10hoverbearVarriount*
00:09:23BitPuffindom96: I added you ;_;
00:09:28BitPuffinand you say good night!
00:09:32BitPuffin!?!?!??
00:12:16filwitit's like 12am in the UK now i think
00:14:04vidot_jQuestion : How to use openDefaultBrowser please ?
00:14:43vidot_jbecause : import os, import osproc, import strutils
00:14:56fowlhttp://build.nimrod-code.org/docs/browsers.html#101
00:15:00vidot_jopenDefaultBrower("http://www.google.com/")
00:15:07vidot_jno work
00:15:27EXetoCthat's what the browsers module imports
00:15:35OrionPKyou just need to import browsers
00:15:39fowlyou import browsers
00:16:06BitPuffinbowser
00:16:52BitPuffinEXetoC: YO I added yo on shteem
00:16:52vidot_jit work
00:16:55vidot_jthanks ^^
00:17:11vidot_jI'm still struggling to read the doc =)
00:21:45filwitvidot_j: out of curiosity, what language are you "coming from"?
00:22:15vidot_jC language filwit .. ^^
00:23:08filwitvidot_j: hmmm.. okay, thanks
00:23:20vidot_jbut i'm very bad in english --> read a doc in english .. (y)
00:23:30filwitahh, i see
00:23:46filwitwhat country are you from?
00:24:36vidot_jFrance
00:24:36vidot_jfor me, learning nimrod is learning English
00:24:55filwitah, Bonjour! (don't actually know French)
00:25:03OrionPKwell, probably mostly written by a german guy
00:25:07vidot_jahah Bonjour :)
00:25:29filwiti took french in HS, but i barely remember anything
00:25:40EXetoCparapluie
00:25:47OrionPKsacre bleu!
00:25:54vidot_jlol
00:26:30filwitJe m'appelle Philip. Je suit American... yeah. that's about it
00:26:55vidot_jI'm in a school program, learning nimrod is a challenge for me :)
00:27:00vidot_jje suis * :)
00:27:07vidot_jAmericain *
00:27:11filwiti can imagine
00:27:18filwitlol, thanks
00:27:29filwiti thought i would probably mess stuff up :)
00:27:59vidot_jlol :p
00:29:16AraqMFlamer: last chance to ask me something
00:29:22vidot_jfilwit, Since when are you learning nimrod ?
00:30:00filwitvidot_j: hmm.. 8-12 months i think.
00:30:13EXetoCsome range
00:30:20vidot_jfilwit, i hate you ><
00:30:30filwitEXetoC, you're from D right?
00:30:38filwitvidot_j: :P
00:31:01filwitEXetoC: i'm pretty sure we had a convo about atheism a long time ago on there
00:31:33OrionPKtouchy subject
00:31:36Araqoh yeah I remember that. you spammed my channel
00:31:50filwitOrionPK: not trying to rehash it :)
00:32:01filwitAraq: oh, maybe it was here, lol
00:33:43Araqand what's worse somebody said the Koran is similar to the Bible ... and I wasn't here to correct that guy
00:33:55EXetoCeh
00:34:26filwitAraq: uhoh.. probably shouldn't have mentioned religion on the internet...
00:34:27OrionPKthat must have been awful for you araq
00:34:38OrionPKsomeone is wrong on the internet
00:45:47vidot_jimport graphics <-- display an error ?
00:47:04*hoverbear quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:48:33fowlvidot_j, you have to be more specific
00:51:04vidot_jfowl, I wrote "import graphics" nim in my file and I compiled:. "Error: internal error: wanted: tyFloat64 got: tyFloat"
00:51:25vidot_jfowl, I wrote "import graphics" in my file and I compiled:. "Error: internal error: wanted: tyFloat64 got: tyFloat"
00:51:47Araquse the latest nimrod from master
00:52:04vidot_ji use 0.9.2 version
00:53:45Araquse 0.9.3 please
00:56:13vidot_jnimrod website or github ?
00:56:24Araqgithub
00:57:03vidot_jok ^^
00:57:53filwitvidot_j: let us know if you have any questions or problems building it.
00:58:34vidot_jfilwit, yes no prob
00:59:17vidot_jhttps://github.com/Araq/Nimrod
00:59:33vidot_jAraq, : where is the file build.sh ?
00:59:53vidot_jwhere is build.sh file *
01:00:14Araqfirst version was better english ;-)
01:00:38Araqthe build instructions changed, build.sh is now in the .zip
01:04:27vidot_jbuild.sh isn't int the .zip ^^
01:04:36vidot_jbuild.sh isn't in the .zip ^^ *
01:05:44vidot_jAraq, *
01:07:05Araqvidot_j: try this please: http://build.nimrod-code.org/commits/linux-x86/nimrod_c5926224ad22_csources.zip
01:08:38filwitwhy can't you just git clone it?
01:09:28filwitdid something change and now the github build instructions aren't accurate?
01:16:52vidot_jfilwit, : i cloned the link "https://github.com/Araq/Nimrod" but this archive = no build.sh
01:23:36*mflamer_ joined #nimrod
01:26:41*shevy left #nimrod ("I'll be back ... maybe")
01:27:14filwitvidot_j: you need to follow the steps exactly
01:27:43filwitvidot_j: you have to clone the csource repo into the Nimrod one (the build.sh is part of the csources repo, not Nimrod)
01:28:27filwitvidot_j: follow these steps exactly: https://gist.github.com/PhilipWitte/7364800
01:28:44vidot_jyes i undestand =)
01:28:49vidot_jAraq it work
01:29:09filwiti think Araq may have gone to bed
01:29:30vidot_jok ^^
01:29:40vidot_jbut now : aporia don't compile ..
01:29:54filwitwhat distro are you on?
01:30:03vidot_jxubuntu 13.04
01:30:07filwithmm...
01:30:17vidot_jfilwit, Traceback (most recent call last)
01:30:17vidot_japoria.nim(2329) aporia
01:30:17vidot_japoria.nim(2305) checkAlreadyRunning
01:30:17vidot_jsockets.nim(418) connect
01:30:17vidot_jsockets.nim(159) $
01:30:18vidot_jError: unhandled exception: value out of range: 55679 [EOutOfRange]
01:30:47filwitdid you modify Aporia at all?
01:31:23vidot_jno
01:31:34filwitlet met try building it, one sec
01:33:10filwitvidot_j: something is wrong. I just build Aporia and it works
01:33:33filwitviddot_j: i would completely remove both repos and start from the beginning
01:34:27filwitvidot_j: btw, did you just clone Aporia?
01:34:55filwitvidot_j: and also, after you build Nimrod, are you using the new Nimrod (that you built), or the 0.9.2 version?
01:35:19filwit(run $ nimrod and see what the output is)
01:35:38vidot_jthe nex
01:35:40vidot_jnew *
01:35:58filwit?
01:36:25filwitoh i see
01:36:39filwithmmm..brb
01:37:02*BitPuffin quit (Ping timeout: 240 seconds)
01:38:57VarriountAnyone have any ideas on how I should go about wrapping a C library that uses widechars for api calls?
01:46:33filwitVarriount: int16?
01:47:49filwitVarriount: nevermind, don't do that (it's wrong)
01:49:20filwitVarriount: isn't wchar the same as short?
01:49:45filwitVarriount: i'm not a C guy, but if so, then there's 'cshort' available
01:58:18*hoverbear joined #nimrod
02:02:43*MFlamer quit (Ping timeout: 244 seconds)
02:06:55*DAddYE quit (Remote host closed the connection)
02:07:31*DAddYE joined #nimrod
02:12:31*DAddYE quit (Ping timeout: 272 seconds)
02:16:56Varriountfilwit, the thing is, it uses them for the functional part of the api
02:17:14VarriountYou have to input strings as commands
02:19:49*dyu joined #nimrod
02:27:03*vidot_j quit (Remote host closed the connection)
02:27:27*webskipper joined #nimrod
02:32:08*webskipper quit (Ping timeout: 244 seconds)
02:35:08*vidot_j joined #nimrod
02:35:30vidot_j..
02:35:35vidot_japoria don't compile
02:35:45filwitvidot_j: still huh?
02:35:54vidot_jfilwit, yes :/
02:36:04filwitvidot_j: i just compiled it and it works though, so it's got to be something with your system
02:36:25filwitvidot_j: i'm not sure what dependencies are required for it
02:36:56vidot_jAporia worked before
02:37:16filwitbefore what?
02:38:45filwitVarriount: sorry i missed your earlier statements. Though i'm not sure if i can help
02:38:59filwitVarriount: i'm not the best person when it comes to linking with C
02:40:09filwitvidot_j: i'm not sure what to tell you. Araq or Dom96 might have more options for you tomorrow
02:40:37vidot_jok ^^
02:50:03*dyu quit (Ping timeout: 252 seconds)
03:00:29*xenagi joined #nimrod
03:16:27*delian2 quit (Remote host closed the connection)
03:17:05*delian2 joined #nimrod
03:25:30*vidot_j quit (Remote host closed the connection)
03:34:49*DAddYE joined #nimrod
03:42:41*fowl quit (Read error: Connection reset by peer)
03:47:43*fowl joined #nimrod
03:57:08*freezerburnv joined #nimrod
03:58:19*hoverbear quit (Quit: Textual IRC Client: www.textualapp.com)
04:01:01*mflamer_ quit (Ping timeout: 244 seconds)
04:07:44*brson quit (Ping timeout: 244 seconds)
04:21:30*OrionPK quit (Quit: Leaving)
04:25:52*Ricky_Ricardo quit (Quit: laptop[lid].close)
04:31:31*Ricky_Ricardo joined #nimrod
04:36:02*freezerburnv quit (Quit: freezerburnv)
04:44:52*vidot_j joined #nimrod
04:45:47vidot_jfilwit,
04:45:53*Ricky_Ricardo quit (Quit: Ricky_Ricardo)
04:46:01filwitvidot_j: yes?
04:46:08vidot_ji'm ywo
04:46:23filwitvidot_j: ywo?
04:46:29vidot_jhmm..
04:46:41vidot_jyou know me on this login ?
04:47:05filwitvidot_j: no... you are new here right?
04:47:13filwitvidot_j: i just met you today
04:47:17vidot_jthe french
04:47:30filwityes, i know
04:47:33filwitwhat's up?
04:47:46vidot_jhmm
04:48:26vidot_jyyou can look at the history and give me the link to araq 0.9.3?
04:49:09filwitone sec
04:49:36filwithttp://build.nimrod-code.org/commits/linux-x86/nimrod_c5926224ad22_csources.zip
04:49:52filwitof course, that's the x86 version
04:50:22filwitthat may be why you can't build Aporia (if you're trying to use those csource on a 64bit machine)
04:50:46filwiti would recommend just following the directions on the github readme: https://github.com/Araq/Nimrod
04:55:19filwitvidot_j: btw, ce le heure en France est-ce?
04:57:46vidot_ji'm back
04:57:56vidot_jfilwit, 05:57 am
04:58:10filwit:)
04:58:18filwitdamn
04:59:08*NimBot joined #nimrod
05:01:20filwitj'ai souviens un peu francais, mais je veux Google Translate pour aider. :)
05:03:07*NimBot joined #nimrod
05:04:05filwitbon matin
05:04:28vidot_jfilwit, : aporia work =)
05:04:38filwitvidot_j: awesome!
05:05:24*xenagi quit (Quit: Leaving)
05:07:24vidot_jfilwit : but import graphics no x)
05:07:33vidot_jfilwit : but no import graphics *
05:08:23filwitvidot_j: what is the error?
05:08:33vidot_jcould not load: libSDL.so(|.1|.0)
05:08:33vidot_jError: execution of an external program failed
05:09:04filwitvidot_j: try "import SDL"
05:09:14filwitvidot_j: do you have SDL 1 installed?
05:09:51*fowl quit (Quit: Leaving)
05:09:55vidot_jI do not think
05:10:13vidot_jit's a problem ?.
05:10:25filwityes
05:10:47filwitthe graphics module uses SDL
05:11:49filwitle module graphics SDL besoin pour fonctionner
05:13:03vidot_ji understand English, but i don't know how to write =)
05:13:23filwitah, okay :)
05:13:55vidot_jfilwit, Do you know the package to install ?
05:14:37*NimBot joined #nimrod
05:15:28filwitvidot_j: there's more i think. let me look it up
05:16:06vidot_jthanks ^^
05:16:12vidot_jlibsdl1.2-dev =)
05:16:32vidot_ji'm noob on nimrod but no on linux xD
05:16:36filwitvidot_j: yes, but you might also need sdlgfx or sdl-image or something like that
05:16:51filwitvidot_j: k, great
05:17:24vidot_jok I'll watch
05:19:43vidot_jit work =)
05:19:50filwitvidot_j: awesome!
05:20:03vidot_jfilwit, thanks for your help =)
05:20:17filwitvidot_j: np :)
05:26:14*vidot_j quit (Remote host closed the connection)
05:39:55*vidot_j joined #nimrod
05:40:31*mflamer joined #nimrod
05:40:50*vidot_j quit (Remote host closed the connection)
05:52:06*mflamer quit (Ping timeout: 244 seconds)
05:55:05*mflamer joined #nimrod
06:25:24*DAddYE quit (Remote host closed the connection)
06:25:33*DAddYE joined #nimrod
06:27:13*filwit quit (Quit: Leaving)
06:27:44*mflamer quit (Ping timeout: 244 seconds)
08:10:19*DAddYE quit (Remote host closed the connection)
08:10:46*DAddYE joined #nimrod
08:15:02*DAddYE quit (Ping timeout: 240 seconds)
08:28:13*Jackneill joined #nimrod
09:11:22*CarpNet joined #nimrod
09:11:39*DAddYE joined #nimrod
09:16:03*DAddYE quit (Ping timeout: 260 seconds)
10:12:28*DAddYE joined #nimrod
10:16:38*DAddYE quit (Ping timeout: 240 seconds)
10:28:48*Araq_ joined #nimrod
10:32:57*ics quit (Ping timeout: 265 seconds)
10:35:23*delian2 quit (Ping timeout: 272 seconds)
10:51:54*ics joined #nimrod
10:52:46*p0nce is now known as ponce
10:53:32*delian2 joined #nimrod
11:06:45*BitPuffin joined #nimrod
11:13:17*DAddYE joined #nimrod
11:15:11BitPuffinahoy guys
11:17:26*DAddYE quit (Ping timeout: 240 seconds)
11:19:12EXetoCahoy-hoy
11:34:05*Araq_ quit (Quit: ChatZilla 0.9.90.1 [Firefox 25.0/20131025151332])
11:40:48*webskipper joined #nimrod
11:45:11*BitPuffin quit (Quit: WeeChat 0.4.2)
11:47:26*BitPuffin joined #nimrod
12:14:06*DAddYE joined #nimrod
12:16:31*BitPuffin quit (Remote host closed the connection)
12:16:59*BitPuffin joined #nimrod
12:18:14*DAddYE quit (Ping timeout: 240 seconds)
12:18:50webskipperHi
12:19:27webskipperhave a struct here and want to translate it manually for a small benchmark test. The similar keyword in nimrod is type ?
12:19:36webskipperc struct, sry
12:21:38webskipper.... struct Node_S { .... struct Node_S * child_l; .... };
12:38:44CarpNetyeah, so from that snippet i would map it like so https://gist.github.com/acolley/7370453
12:42:45*Ricky_Ricardo joined #nimrod
12:50:18*ponce is now known as Guest40469
12:50:18*Guest40469 quit (Killed (adams.freenode.net (Nickname regained by services)))
12:50:31*p0nce joined #nimrod
12:57:15BitPuffinman
12:57:19BitPuffinI miss arch :(
12:59:54*webskipper quit (Ping timeout: 252 seconds)
13:02:13*webskipper joined #nimrod
13:04:48webskipperCarpNet: and with traced pointer ? child_l: ref Node_S ?
13:07:52*p0nce is now known as ponce
13:08:22CarpNetyeah ref is GC'd and ptr is a raw pointer, though I think a traced pointer is the preferred style
13:14:49webskipperso nimrod has no structs but objects ?
13:15:21*ponce is now known as Guest50867
13:15:21*Guest50867 quit (Killed (hubbard.freenode.net (Nickname regained by services)))
13:15:27*DAddYE joined #nimrod
13:15:32*p0nce joined #nimrod
13:15:47CarpNetwell as far as i can tell your basic type is just a struct, if you start using inheritance and dynamic dispatch methods then you get all that other stuff
13:17:52*BitPuffin quit (Ping timeout: 264 seconds)
13:20:13webskipperCarpNet: http://bpaste.net/show/147871/
13:20:25*DAddYE quit (Ping timeout: 272 seconds)
13:20:45*isenmann quit (Quit: Leaving.)
13:32:42CarpNetthis should give you the same structure for the tree https://gist.github.com/acolley/7371049
13:48:56*p0nce is now known as ponce
13:52:15webskipperah ty
13:57:21*ponce quit (Killed (barjavel.freenode.net (Nickname regained by services)))
13:57:35*p0nce joined #nimrod
13:59:36webskipperSIGSEGV: Illegal storage access. (Attempt to read from nil?) if num (depth) > 14 for me
14:05:38webskipperis it out of memory ?
14:07:57EXetoCI usually get "out of memory" then
14:08:28EXetoCdon't you get a stack trace?
14:08:53webskipper....
14:09:02webskipperbench.nim(25)
14:09:34webskippermake_tree
14:09:48webskippermom
14:10:43EXetoCthat almost helps
14:11:02webskipperso, here:
14:11:03webskipperhttp://bpaste.net/show/147883/
14:11:27webskippersource code: https://gist.github.com/acolley/7371049 by CarpNet
14:11:43webskippertestest with 8gb ram
14:11:49webskippertestsed
14:11:53webskippertested
14:12:59*OrionPK joined #nimrod
14:13:15webskipperhave to go, sry
14:13:23webskippercya
14:16:14*DAddYE joined #nimrod
14:17:45EXetoCwebskipper: it exits successfully for me, and I can only assume that you've made changes that don't affect the semantics
14:18:10EXetoCbecause the line numbers don't match
14:18:14*webskipper quit (Ping timeout: 264 seconds)
14:19:38EXetoCdude, just idle :/
14:20:38*DAddYE quit (Ping timeout: 240 seconds)
14:20:46Ricky_RicardoSpeaking of idling, are you guys all based out of Europe / Asia? This is the only room I see people talk in during my early morning coding time. It's refreshing.
14:21:12EXetoCSpeaking of idling, who wants to play Idle RPG?
14:21:30EXetoCsome are
14:21:51Ricky_Ricardohah , that's a thing?
14:22:26EXetoCRicky_Ricardo: yes, it's amazing. http://idlerpg.net/
14:24:42EXetoCthat pudge dude seem to be pretty good at it
14:28:45*BitPuffin joined #nimrod
14:31:45*zanoni quit (Ping timeout: 252 seconds)
14:39:00*zanoni joined #nimrod
14:59:48*XAMPP quit (Ping timeout: 252 seconds)
15:12:22*Ricky_Ricardo quit (Quit: laptop[lid].close)
15:17:02*DAddYE joined #nimrod
15:21:26*DAddYE quit (Ping timeout: 240 seconds)
15:29:37*q66_ joined #nimrod
15:30:12*q66 quit (Disconnected by services)
15:30:16*q66_ is now known as q66
16:17:09*MFlamer joined #nimrod
16:18:19*DAddYE joined #nimrod
16:22:29*DAddYE quit (Ping timeout: 248 seconds)
16:22:49MFlamerAraq: I hope you meant last chance to ask you something for last night.....not forever
16:23:28EXetoC:/
16:27:04OrionPKif anyone is on windows... Dexpot just changed my life
16:27:19OrionPKnothing will ever be the same
16:31:19EXetoCfk yeah innovation :p
16:31:39dom96hello
16:38:42BitPuffinhey dom96
16:39:22EXetoChi bots and humans
16:42:29BitPuffinguten kwell EXetoC
16:47:01*OrionPK quit (Ping timeout: 250 seconds)
16:52:19*MFlamer quit (Remote host closed the connection)
17:07:53*fowl joined #nimrod
17:09:41*fredmorcos joined #nimrod
17:15:18DirksonAnyone here have experience with the "haxe" language?
17:16:09DirksonAnd, if so, what features of nimrod made you chose it over haxe?
17:16:35fowlDirkson, haxe build requirements, some xml file that configured everything, confused me
17:16:43*Dirkson nods
17:17:02fowland it being another OO language, disinterested me
17:17:14DirksonNimrod is not an oo language?
17:17:40fowloo is possible, but its not the focus
17:17:46*ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
17:18:05*Dirkson considers, "Nimrod is more for functional programming?"
17:18:22fowli would say procedural/imperative
17:18:43DirksonReally? Well, I suppose you could do all three in it, eh? : )
17:18:52BitPuffinDirkson: you can do anything you want in nimrod
17:18:54BitPuffin:P
17:19:05fowl"methods" provide multiple dispatch which is a lot more powerful than having functions bound to an object (though this pattern is also possible, see the streams module)
17:19:10Dirkson"You can do anything at ZomboCom! Anything at all!"
17:19:48BitPuffindom96: I think optimizing jester and getting it to 0.1 is higher priority than a game :P I'm gonna get my shit together now and work on my personal website and then my game and then concurrently my company website (which I want to run on nimrod)
17:20:17fowlwhile you guys are working on stuff im going to watch always sunny
17:20:20fowlcheers
17:20:34DirksonFor years I've wanted a better CMS system than what I have. I really think php is a bad thing to build websites atop of.
17:20:41dom96BitPuffin: indeed
17:20:44Dirksonfowl: Cheers : ) Thanks for the input
17:23:44*gradha joined #nimrod
17:25:57*bchar joined #nimrod
17:34:52gradhaDirkson: I tried to learn haxe twice, but couldn't because of installation/toolchain problems
17:35:03Dirksongradha: *nods*
17:35:07gradhaDirkson: the first time I managed to install all tools but none worked
17:35:31gradhathe second time I managed to get an iOS simulator test working, but the performance was horrific
17:35:37*shodan45 quit (Quit: Konversation terminated!)
17:35:48gradhathe flash exporter was even worse, missing basic things like simple clicks on my laptop
17:35:53DirksonHunh
17:36:11gradhaplus I couldn't generate native binaries because at some point some part of the toolchain called a binary which coredumped without error message
17:36:29DirksonOuch
17:36:36gradhathe haxe community has presumably very good support, but in both cases I asked in the mailing lists/forums and nobody answered
17:37:19gradhamaybe I'm bad luck brian, but then the language looked like a mess from actionscript and something more evil so I decided to look elsewhere
17:37:28Dirkson*nods*
17:37:51gradhahowever it has more "critical mass" (whatever that means) so there's more people and projects using it
17:38:18gradhaplus its ties to flash/actionscript mean lots of designers wanna-be-programmers can whip up fun stuff quickly which visually looks cool
17:38:52gradhaI guess haxe is good if you like flashy things
17:39:47DirksonMostly I thought the "write once, run everywhere" thing was cool : ) It's the ideal I try for in my C code. (And usually miss by a few ifdef win32's )
17:39:50EXetoCbecause of the language or the libs?
17:39:59EXetoCI guess the later, unless it's a weird DSL of some sort
17:40:46gradhaDirkson: "write once run everywhere" is ok if you don't mind sticking to the lowest common denominator
17:41:43Dirksongradha: *shrugs* I don't seem to miss out on many cool things by doing it with C. Although I have had to swap an embarassing number of libraries out for not successfully doing the whole "run everywhere" bit.
17:43:46gradhaDirkson: are you on mac or linux?
17:44:13Dirksongradha: I code on linux, cross compile for windows, and borrow the neighbors mac to scream at incoherantly a few times a year.
17:45:00bcharThe file 'bin/nimrod' is not executable by this user
17:45:05bchardo I have a permissions issue here then?
17:45:05gradhaif you are on linux now you could download some experimental nimrod compiler binaries from http://forum.nimrod-code.org/t/194 and see if they turn your machine into a malware honeypot
17:45:29gradhabchar: that's certainly weird, usually compilers generate binaries with execution bits on
17:45:53bcharI downloaded a precompiled one from the farm
17:46:12bcharI was getting other errors using the instructions from the site
17:46:16gradhabchar: maybe the containing zip/whatever didn't preserve them
17:46:24gradhabchar: yeah, you need to use the github instructions
17:46:26bcharweird, alright
17:46:32bcharoh ok
17:46:33bcharthanks
17:46:56gradhabchar: basically follow https://github.com/Araq/Nimrod#compiling
17:47:13bcharcan't wait to try it out. nimrod looks insanely well thought-out.
17:47:16bcharthanks again
17:47:33dom96bchar: have you tried chmod +x bin/nimrod?
17:47:54gradhaapparently there is a shortage of automatic website uploader software which prevents the nimrod webpage from being correct
17:47:55bcharha yeah I think that fixed it
17:47:57bcharnice, dom96
17:48:31gradhadom96: how come the zips don't include execution bits?
17:48:42dom96gradha: Dunno.
17:48:45gradhaoh, wait, maybe zip doesn't support fancy stuff
17:48:49dom96yeah
17:48:49Dirksongradha: I am liking this "Users prefer static linking" article ^^ Hell, /I'm/ afraid of upgrades, and I'm a computer guy. Most of my day to day dev tools haven't been upgraded in months or years.
17:49:23gradhaDirkson: it was enough if you went to the last post to grab the binaries, but hey, thanks for reading
17:49:44gradharight now I'm upgrading my mothers laptop because I'm afraid of upgrading mine
17:50:10gradhathen if everything goes well I'll upgrade my father
17:50:21gradhathen, if after several months nobody has complained, maybe, and only maybe I'll upgrade mine
17:50:43*DAddYE joined #nimrod
17:53:46Dirksongradha: Theoretically dynamic linking is useful because it can save on ram usage. In practice, everyone has 16gb of ram, and saving 4mb*5 just doesn't matter at all.
17:54:03*MFlamer joined #nimrod
17:54:20fowlarduino
17:54:31gradhaI'd say using programming languages which don't encourange memory wasting are more important than lib sharing
17:57:16Dirksongradha: Agreed. I snarfle a ton of ram, but I do so legitimately ^^
17:57:50DirksonWell, mostly legitimately. There's a big chunk of graphics data I can and should unload when switching spaceships, but currently do not.
17:59:46eigenlichtsomeone working on a matrix algebra lib already?
18:00:04gradhaeigenlicht: I believe there's one in babel already
18:00:51gradhaeigenlicht: see if https://bitbucket.org/BitPuffin/linagl is good for you
18:01:04eigenlichtgradha: that's about opengl stuff, isn't it?
18:01:10EXetoCyes that is in babel
18:01:10eigenlichtalso, nothing there actually
18:01:35gradhathere is stuff like https://bitbucket.org/BitPuffin/linagl/src/fbb421f4e9eb39b2a2ddfc446937c9a375e2fa00/src/linagl/matrix.nim?at=default
18:01:59gradhadoesn't seem to depend on opengl, maybe its purpose is to be used with it though
18:02:05BitPuffin:D
18:02:16gradhaBitPuffin: defend yourselve!
18:02:37BitPuffinno why the fuck would a math library depend on opengl :P
18:02:48gradhabecause you can?
18:02:49BitPuffinit is intended to be used with opengl though
18:02:55BitPuffinbut it doesn't call any opengl functions
18:02:58BitPuffinbecause that wouldn't make sense
18:03:36EXetoCyou can tailor it towards OpenGL, but actually referencing OpenGL symbols would be silly :p
18:03:44BitPuffinyup
18:03:46eigenlichtI didn't even see the src directory at first :P not usd to bitbucket
18:04:01BitPuffineigenlicht: that math library is gonna get a lot better in a few days
18:04:05gradhaeigenlicht: just use babel instead: "babel install linagl"
18:04:09eigenlichtwhy lin_agl_ actually?
18:04:11EXetoCbabel search math
18:04:24EXetoCI like the babel search functionality now that it doesn't require exact matches c(:)-<
18:04:44BitPuffinEXetoC: _lin_ear _a_lgebra for open_gl_
18:04:48BitPuffini mean eigenlicht
18:04:48EXetoCI'm always tired on fridays. tits
18:05:13BitPuffinor something like that
18:07:05BitPuffineigenlicht: makes sense? :P
18:07:25EXetoCcomposability ftw in other words
18:08:45BitPuffinawye
18:09:06EXetoCspeaking of composability... is the plan to create a re-usable engine first rather than coupling it with the game?
18:10:09BitPuffinEXetoC: you mean my plan?
18:10:42EXetoCBitPuffin: yeah
18:16:47BitPuffinEXetoC: the engine for my current project will be used for this game and one other (and possibly two more in series of the project after this ane) and then I'm gonna write some other engines etc for other projects. Taking the experience of writing a few engines over a few years I will write a unified API for writing game engines
18:21:48*shodan45 joined #nimrod
18:23:01EXetoCsome plans
18:23:48*brson joined #nimrod
18:26:55BitPuffinEXetoC: indeeders
18:28:58*CarpNet quit (Quit: Leaving)
18:33:26*filwit joined #nimrod
18:34:50gradhadom96: can you try http://dl.dropbox.com/u/145894/t/hehe.zip and see the permissions
18:40:44*OrionPK joined #nimrod
18:43:38BitPuffineigenlicht: if your needs isn't to use it with opengl that is fine too. The library uses N-Dimensional matrices and vectors
18:44:17BitPuffineigenlicht: the only thing that makes it 3d specific is really that there will be some extra procs in there for rotation matrices and lookAt matrices etc
18:45:09dom96gradha: Seems the permissions are preserved.
18:45:21EXetoCbad zip client then perhas
18:45:34EXetoCnot you obviously :p
18:45:49*enurlyx joined #nimrod
18:45:52gradhaaccording to the man page I'm using infozip from 2008
18:46:18gradhadoesn't seem to be very fancy
18:47:11gradhahmm... maybe it's propietary?
18:48:03BitPuffinwhat are you guys on about?
18:48:05*fredmorcos quit (Quit: Leaving)
18:48:40gradhawe are trying to find out why dom96 is using some zip generation method from the past
18:48:47gradhalike from fat16 days or something
18:50:18BitPuffinlol
18:50:24BitPuffindom96: why man why man
18:50:27BitPuffinwhy man
18:52:13*filwit quit (Quit: Leaving)
18:52:21dom96I blame everyone except myself.
18:52:37gradhadom96: do you have 7za on your machine?
18:52:53dom96gradha: on Windows sure, but i'm not currently on Windows.
18:53:19gradhapresumably p7zip can create zip files, so I'd presume it supports execution bits too
18:53:32gradhait should be available through "apt-get search p7zip" or something fancy like that
18:53:45BitPuffindom96: pacman -S 7z
18:54:46gradha7za a file.zip -mx=9 -r directory
18:55:29gradhayes, it preserved the executable bit too
18:55:48gradhamaybe the problem is with the build machine having some old not updated zip creation binary?
18:55:53dom96nimbuild uses some GNU thing I think
18:56:05BitPuffingzip?
18:56:13gradhathat explains everything, you are not supposed to run GNU software
18:56:33BitPuffingradha hates Free Software?
18:56:40BitPuffinwho would have known
18:56:45BitPuffinFreedom hater!!
18:56:50dom96'zip'
18:56:59gradhaBitPuffin: call me back when hurd is ready, please
18:57:05BitPuffingradha: :P
18:57:09BitPuffingradha: fuck the GPL though
18:57:26dom96Hey, I worship the RMS.
18:57:39BitPuffinstallman is a hypocrite
18:57:45gradhaBitPuffin: in my awesome days I wrote info help for the GNU tools
18:58:08gradhaBitPuffin: it's like html but more convoluted, doesn't support anything but text and is a pain to write/setup
18:58:20gradhalike man pages, only worse
18:58:20BitPuffingradha: :P
18:58:58gradhaIIRC some months ago they released a new version of the info program
18:59:13gradhaI really couldn't believe my eyes, like "wtf, have these people not discovered html yet?"
18:59:48gradhaeven with a text browser like links or elinks html is much better/easier to write than info/man pages
18:59:59gradhabut yeah, free software people like to be kept in the dark ages
19:02:09EXetoCfsf pplz or fs people in general?
19:02:21BitPuffinEXetoC: probably fs
19:02:26EXetoCcus im a free software dude and I'm more awesome than those punks innit
19:02:31BitPuffinbut he means 100% fs ppl
19:02:46BitPuffinEXetoC: you still run proprietary software so you are not a free software dude
19:02:52BitPuffinstallman would weep for you
19:02:57EXetoC:/
19:02:59gradhaso fsf people are like 150% of fs people?
19:03:05EXetoCwut
19:03:37BitPuffinEXetoC: but that's fine, you don't wanna be like that anyway
19:03:49gradhanah, I don't care about free or not, but for some reason people supporting free software don't seem to like progress
19:04:39BitPuffinGPL does not comply with what freedom means to me. Why would a free license impose restrictions
19:04:59EXetoCI do care to some agree, but I'm not a zealot anymore
19:05:26BitPuffinyou mean degree?
19:06:12EXetoCbroken keyboard
19:06:43BitPuffinEXetoC: broken mind :P
19:07:24gradhaGPL (and really anything which is good for other people first instead of yourself) only works if your population is not filled with assholes
19:07:56gradhaso nuke earth and reboot
19:09:37BitPuffingradha: or just stop caring so fucking much and release your software into the public domain, so that everyone can profit with it
19:12:27gradhabtw, what's the weekly reddit nimrod post we have to upvote?
19:12:44BitPuffinhmm
19:12:46BitPuffingood question
19:12:51BitPuffinI might be able to provide one for next week
19:12:55BitPuffinif I get this blog done
19:14:14EXetoCBitPuffin: nope broken keyboard
19:14:43BitPuffinEXetoC: but you can write e :P
19:15:44EXetoCyeah but it was broken at that very moment
19:15:50BitPuffinI just ordered field recording stuffs
19:15:53BitPuffinEXetoC: sure :D
19:15:59BitPuffinwell not just
19:16:02BitPuffina few minutes ago
19:21:17EXetoCI've been thinking about doing that, but everything requires monies these days
19:22:09BitPuffinEXetoC: cost around 3000 SEK what I ordered
19:22:17BitPuffinalthough I order some extra stuff
19:22:21BitPuffinmixing headphones etc
19:22:28BitPuffinso it all went for 5000
19:23:48BitPuffinEXetoC: I bought Sony PCM M10 and Rode NTG-2
19:24:01BitPuffinEXetoC: I can tell you if they were good if you consider them one day :p
19:24:11gradhaso hows Stockholm? I'm getting a work offer from there, can't move at the moment
19:24:18BitPuffinshit
19:24:42EXetoCrly
19:25:02EXetoCBitPuffin: I never have money, but ok sure :p
19:25:26BitPuffinI don't live in sthlm though
19:26:55gradhaI'll answer the recruiter: "guys told me on irc it's shit, so no thanks"
19:27:19BitPuffingradha: where do you currently live?
19:27:21EXetoCI don't have anything to compare with really
19:27:41gradhaBitPuffin: spain, the most prosperous country from the north of africa
19:28:00BitPuffingradha banderas
19:29:09BitPuffingradha: well if you enjoy ridiculous political drama and snob party culture you are gonna love stockholm
19:29:58gradhaI enjoy not meeting people or seeing the sun, so I was looking forward to go to a northern country where its freezing cold
19:30:18BitPuffingradha: it's really only cold during winter
19:30:36gradhahow many months does the winder last?
19:30:47BitPuffin3-4 or so
19:31:11EXetoCbut vitamin D is awesome, so take supplements :p
19:31:17gradhait's better than spain already, whre it's like one or two weeks, if at all
19:31:35EXetoCgradha: did you live in russia previously?
19:32:01gradhapreviously I lived in mexico, but I was too small to recall that
19:35:48gradhadom96: I was thinking of adding a "babel pkgpath" which would display the full path to the installed package, what do you think?
19:36:14gradhaalso maybe "babel binpath", but that gets flaky if there is more than a single binary inside a package
19:36:28gradhathe purpose of the command is being able to do "cd `babel pkgpath whatever`"
19:36:50gradhaand then you can read the readme, see the docs, etc, which now is missing from the amazing user experience
19:37:11dom96gradha: hrm, yes. I like that.
19:37:13gradhaAFAICS the windows port would change the current directory, is that possible?
19:37:22dom96"babel binpath" is a bit pointless though, no?
19:37:27dom96all binaries are in the same dir anyway
19:37:47gradhait's also not clear if binpath would point to the real binary or the symlink/bat file
19:38:08EXetoCthen why do you have a polish name? weird...
19:38:13EXetoCj/k. chill dude
19:38:32gradhaEXetoC: polish people are awesome, ask dom96 about it
19:38:45dom96gradha: <3
19:40:32dom96gradha: 'which bin'
19:41:03gradhadom96: that only works if you have your PATH updated, not sure if it would be of any use if it's not there though
19:41:09EXetoCis it just me or are there quite a few polish people in the UK?
19:41:14EXetoCgradha: do you speak it?
19:41:38gradhaEXetoC: only to other polish people, otherwise it's confusing
19:41:50EXetoCI can see why
19:42:05dom96gradha: Well I think having the PATH updated is kind of a requirement for Babel anyway.
19:42:35dom96EXetoC: Yep. Well, in Northern Ireland there sure is a lot.
19:42:58BitPuffindom96: the new sockets stuff in jester is fucking awesome for workflow, thanks for fixing it :D
19:43:01dom96Portuguese/Latvian/Lithuanian/Filipino etc too
19:43:09dom96BitPuffin: np :D
19:43:20dom96BitPuffin: Glad it works :)
19:44:23BitPuffindom96: so far I haven't had any issues :D
19:46:58EXetoCis it compatible with the JS target?
19:49:06*dymk quit (Ping timeout: 252 seconds)
19:49:24OrionPKwhat new socket stuff in jester?
19:52:26dom96OrionPK: REUSEADDR
19:52:32OrionPKah
19:53:16EXetoCfor not having to wait between restarts, right?
19:54:36dom96yeah
19:57:37EXetoCusing asyncio already eh? ok that's good. I'll have to re-build Nimrod yet again
19:58:06*dymk joined #nimrod
19:59:38EXetoCmaybe a pull will do, but I'm installing through the package manager
19:59:48OrionPKjester's asyncio only works in linux
20:00:00OrionPKbecause of bugs in the httpserver module
20:01:18EXetoCok
20:10:41*OrionPK quit (Ping timeout: 250 seconds)
20:15:16EXetoCdom96: is there anything in the OS module that might be useful when targeting JS? there's mostly path/file stuff in there
20:15:34EXetoCI'm trying to target JS while using Jester in case that wasn't clear
20:16:59dom96I don't think so. What are you making?
20:17:58EXetoCdom96: I'm trying to run the example, which does compile with the C target now that I've upgraded Nimrod
20:18:14dom96huh, you're trying to run Jester in the browser!?
20:18:29*fredmorcos joined #nimrod
20:18:43*shodan45 quit (Quit: Konversation terminated!)
20:26:01*OrionPK joined #nimrod
20:27:23EXetoCdom96: that's not the right approach. maybe I thought I could mix the two or something, which would confine everything to a single program, but that might be tricky
20:27:31EXetoCso a simple shell script should do
20:32:51EXetoCweird innit
20:43:34*fredmorcos quit (Quit: Leaving)
21:00:30EXetoCmy unimaginative brain is struggling with this, but I should have a working example in a minute
21:04:49BitPuffinOrionPK: so the async doesn't work on *BSD?
21:04:55OrionPKno idea
21:05:23BitPuffinOrionPK: so you were referring to windows then?
21:05:29OrionPKand OSX
21:05:31dom96tbh i'm surprised the async httpserver works at all
21:05:40BitPuffinah
21:05:48BitPuffinwell OSX is BSD I guess
21:08:21BitPuffindom96: it's a hack?
21:08:50BitPuffinmissing workflow stuff in jester now would be automatic server restart
21:09:20dom96BitPuffin: Recompilation times would be terrible I think
21:09:25BitPuffinand what else would be nice would be a way to automatically recompile javascript nimrod
21:09:31BitPuffinso you could write it all in nimrod
21:09:56BitPuffindom96: well it could recompile and if that succeeded and is done, _then_ restart the server
21:10:40dom96hrm, I suppose. But then I see myself refreshing it constantly and getting annoyed at the wait anyway.
21:10:59BitPuffindom96: well at least it wins over doing it manually
21:11:14dom96And when you're debugging something not knowing whether the server restarted could be disastrous
21:11:22BitPuffindom96: and doesn't nimrod cache jester and stdlib stuff?
21:11:41BitPuffinit does
21:12:06BitPuffinin fact recompilation speed is really fast now that I am testing
21:12:19BitPuffinof course I'm only dealing with the demo app so far because I lost my data :/
21:12:45dom96yes, well it gets longer and longer by the time you import a couple of other modules.
21:12:59BitPuffindom96: well those modules are only compiled once anyway
21:13:32BitPuffinand if you don't know if it has restarted yet just look at the console
21:14:02BitPuffinthe point is to eliminate ctrl+c && nimrod c -r app.nim all the time
21:14:08dom96Sure. I agree it would be a nice feature.
21:14:20dom96We need a portable fsmonitor though
21:14:31dom96and for that I need to finish new asyncio...
21:14:46BitPuffinget to work son :P
21:14:49BitPuffinI'm gonna work now
21:15:12dom96Yeah, I should...
21:15:55BitPuffindom96: I hack on jester app, you hack on jester, such a nice symmetry
21:16:30*Jackneill quit (Read error: Operation timed out)
21:17:39EXetoCI hack on Jester running in a browser lol jk
21:17:47BitPuffin:P
21:17:53BitPuffinactually that would be pretty awesome
21:18:03BitPuffinwould enable some kind of web tutorial for jester
21:18:16BitPuffinbut I guess first we need to be able to compile the compiler to javascript
21:18:23dom96I don't think that would work.
21:18:36dom96You can't create a listening socket using browser JS.
21:18:37EXetoCdon't be so negative man
21:18:43BitPuffinsays those who refuse to try
21:19:39BitPuffinthere has to be some way to make something like jester://blabla avilable in the brewser
21:19:49EXetoCBitPuffin: or we take the usual approach and actually let the server run the compiler in a container and then send the output back :p
21:20:06BitPuffinEXetoC: doesn't scale
21:22:56fowlwhat scales these days
21:26:02*fowl quit (Read error: Connection reset by peer)
21:28:11*bchar quit (Quit: leaving)
21:28:16Araqhi guys, anything important?
21:30:04EXetoCI'm just trying to figure out if I can attach onmousedown to some tag, when targeting JS
21:30:29BitPuffinAraq: a lot of things are important, why?
21:30:47EXetoCI'm tracing the uses of TEvent and trying to figure out what's going on
21:30:51EXetoC(dom module)
21:30:55BitPuffin#proc htmlLayout(title="BitPuffin", subtitle="", content=""): string =
21:31:01EXetoCnothing too important
21:31:05BitPuffinhmm why does that say Error: ')' expected
21:39:54EXetoCI don't know if this is outside the scope of its intended functionality, since TNode doesn't reference TEvent
21:40:18*fowl joined #nimrod
21:40:21BitPuffinEXetoC: yeah I've had similar issues too
21:40:26BitPuffinthe dom module is kind of borked
21:40:31EXetoCor if it's just incomplete
21:40:47Araqthe dom module is OLD
21:40:51Araqfix it
21:41:03BitPuffinyeah it really needs fixing
21:41:28BitPuffinbut seriously
21:41:32BitPuffinwhy am I getting das error
21:44:45BitPuffina webgl module would also be nice
21:44:52BitPuffinand htmlgen updated to html5 tags
21:48:46*webskipper joined #nimrod
21:52:08EXetoCAraq: I might, but right now I can't even figure how it's tied to the JS backend
21:53:08EXetoCvar window...
21:55:09gradhaif I modify hallo.nim to import xmltree everything is ok, but trying "import xmltree" in interactive repl seems to complain about undeclared alloc/dealloc
21:55:36gradhaI guess this is known, and will be fixed by the next awesome vm, right?
21:55:39fowlgradha, wow you're slow
21:56:02fowlgradha, you've been with us too long to be surprised that nimrod i sucks
21:56:28gradhaI know, that's why I don't report these things, or idetools
21:57:01Araqwell alloc/dealloc are not particularly easy to emulate ...
21:57:15gradhaI only wanted to hear good things about the new awesome vm
21:58:29*brson quit (Ping timeout: 248 seconds)
21:58:47*gradha opens newspaper and reads headline: "since the merge of the new nimrod vm poverty has fallen to record levels and wars are stopping everywhere"
21:59:19gradhawho am I kidding, me reading newspapers…
21:59:25*brson joined #nimrod
22:00:13fowlwhoops
22:00:25fowlproc SetTextureAlphaMod*(texture: PTexture; alpha: Uint8): SDL_Return {.importc: "SDL_GetTextureAlphaMod", discardable.}
22:02:51EXetoCwut
22:03:19Araqand that's why you should use c2nim :P
22:03:40fowli do my wrappers by hand, you can feel the love that way
22:05:07gradhamanly love, handcrafted
22:05:12webskipperwhat is diff between object and TObject ?
22:05:37EXetoCAraq: for example, I'm trying to figure out how dom.document for example is initialized, but no amount of grepping gives me a clue
22:05:53fowlwebskipper, TObject is the base, inheritable type you can inherit from
22:06:23fowlwebskipper, object is a type that has fields (like a pascal record or c struct)
22:06:24gradhaaccording to system.nim docs "TObject = object"
22:06:24webskipperfowl: ok, what about type
22:06:25webskipper TNode = ptr object ?
22:06:39webskipperlike struct than ?
22:06:44webskipperok
22:07:17BitPuffinEXetoC: try reading the source then instead of grepping >.<
22:07:24gradhaTNode is an object pointer
22:07:35AraqEXetoC: well it's importc'ed and JS provides the global document variable
22:09:16webskippercan you have a look on https://gist.github.com/acolley/7371049 please. I get this error message if num (depth of tree) >= 15: http://bpaste.net/show/147883/
22:09:55webskipperits a bit low, with python and C I can creater bigger trees with depth > 20
22:10:54Araqwell your code is aweful
22:11:10BitPuffinhahahaha
22:11:14Araqobviously you need to allocate sizeof(TNode_S[])
22:11:17gradhaaweful = full of awesomes?
22:11:47BitPuffinyeah webskipper obviously :P
22:11:54BitPuffinDID YOU NOT KNOW THAT?!?!?
22:12:19EXetoCI'm clueless. might look at it again tomorrow
22:12:26BitPuffinisn't PNode a more appropriate name
22:12:54gradhawebskipper: why the need for alloc and such? do you need especially manual memory management? I just do without it and let nimrod do the work
22:13:04webskipperits not my code ^^
22:13:09BitPuffinI agree with webskipper
22:13:09webskippermy original code is in C
22:13:11BitPuffinI mean gradha
22:13:14BitPuffin>.<
22:13:23webskipperits translated by CarpNet
22:13:55Araqwebskipper: well it's wrong
22:14:08webskipperwhy TNode_S[] ?
22:14:17Araqand indeed you shouldn't start with Nimrod by playing with 'cast' and 'alloc0'
22:14:22EXetoCwebskipper: the code you showed me before ran just fine
22:14:24fowlwebskipper, TNode_S is a pointer to an object, so its size is 8 bytes (sizeof(pointer))
22:14:38EXetoCand the line numbers didn't even match up, so I don't know
22:15:13fowlwebskipper, please read the tutorial
22:15:55webskippernode = (Node *) malloc( sizeof( struct Node_S ) ); works for me in C
22:16:16fowlwebskipper, then use TNode and ptr TNode
22:16:18fowl..
22:16:25gradhain C that's getting the size of the structure, not the size of a pointer to that structure
22:16:30EXetoCAraq: I just assumed that the current version of the dom module could actually be used for something
22:16:31fowlwebskipper, read the tutorial anyways
22:16:34fowlwebskipper, then the manual
22:16:38webskipperaiaiai
22:16:38fowlbecause nimrod != c
22:16:43EXetoCbut it can't, right? in which case I'd have to implement a million things probably
22:16:47gradhawebskipper: and if the docs are not enough, ask fowl
22:16:59webskippercmon you redefined alloc ?
22:17:27AraqEXetoC: well it worked for anything I did with it
22:17:31fowlwebskipper, would you allocate a chunk of memory the size of a pointer to this struct, to hold the data for the struct?
22:17:35fowlwebskipper, that is what you're doing
22:17:46fowlwebskipper, send me $15 and ill spend two hours helping you and fixing your code
22:18:17fowland walking you through things that are documented
22:18:29webskipperfowl: youre reading from nimrod alloc ?
22:18:39webskipperfowl: tell about i mean
22:18:42fowlwebskipper, no more free help
22:19:01fowlsomeone else might be up to it but im broke as a joke
22:19:18Araqfowl: I know you need the money, but that's not helpful.
22:19:28Araqwebskipper: 'alloc' works like in C
22:19:33fowlAraq, well hes not listening so im not inclined to stress myself for him
22:19:48webskipperI guess its better to use OO variant than
22:20:27BitPuffinoh no now he really opened pandoras chest
22:20:33Araqwebskipper: you do 'ptr object' and thus have not many ways left to get to the underlying object/struct
22:20:41Araqwhich you need for 'sizeof'
22:20:48Araqjust like you do in C
22:22:04BitPuffindon't you C that
22:22:13EXetoCAraq: but did you have to use it in conjunction with an xml/html module or something?
22:22:15webskipperI try to understand the syntax - if its not comparable with structs I will recode it.
22:23:37gradhawebskipper: see if this makes any sense https://gist.github.com/gradha/7378640/revisions though I make no guarantees on it doing what you want (because I don't know what you want)
22:23:46BitPuffinAraq: speaking of isn't it kind of a pitfall to have to do sizeof(PNode[]) considering you'll rarely need the size of PNode
22:23:54BitPuffinsince I guess that would only be the size of the ptr
22:24:16EXetoCwebskipper: [] is also for dereferencing, so if TNode_S is some pointer type (say, ref object), then TNode_S[] will be just 'object' I think
22:24:36EXetoCI assume that the same principle applies when said symbol is a type rather than an instance
22:24:44AraqBitPuffin: what's the alternative? introducing some inconsistency for the poor guys who deal with low level stuff but shouldn't?
22:25:07fowlEXetoC, there is no dereferencing of a typedesc, that was symbolic to say that you need the size of the underlying object, not a ptr to it
22:25:19EXetoCk
22:25:22*markhend joined #nimrod
22:25:25*gradha notices the cat alarm
22:25:29Araqhi markhend welcome
22:26:44BitPuffinAraq: well both could work, just saying that sizeof(PNode) is useless ay?
22:27:01Araqwhy is it useless?
22:27:10BitPuffinwell is it useful?
22:27:35BitPuffindoesn't it just return the size of the address?
22:27:43Araqso?
22:27:49BitPuffinis that ever useful?
22:27:55Araqyes?
22:27:58BitPuffinwhen?
22:28:09gradhawhen you want to know the size of an address
22:28:11Araqwhen you're in a generic mood?
22:28:27BitPuffino_O
22:28:45BitPuffinI mean what would be a real world use for it
22:28:46webskippergradha: ty, what about "new(release)" line 14 ? did you forget something there ?
22:28:58gradhawebskipper: what did I forget?
22:29:17webskippergradha: result is not defined there
22:29:26Araqproc allocArray[T](size: int): ptr array [maxSize, T] = cast[...](alloc(sizeof(T) * size))
22:29:41Araqaccording to you this should fail for T = ptr int
22:29:43gradhawebskipper: huh? it is, the result of the proc
22:30:10gradhawebskipper: result is the implicit variable of the proc
22:30:14BitPuffinAraq: are you talking to me?
22:30:18EXetoCwebskipper: see the definition of 'new' in system.nim
22:30:18Araqyes
22:30:19gradhawebskipper: and you have defined the type of the proc in the signature
22:31:05gradhawebskipper: there are several overloads for new, and I'm using the one where you pass it the variable holding the type (http://nimrod-code.org/system.html#140)
22:31:17gradhawebskipper: so it already knows the type
22:31:38BitPuffinAraq: well no not according to me. I wasn't saying that it is best to make it so that sizeof(PNode[]) == sizeof(PNode) I just wanted to know if there is anywhere that sizeof(PNode) is useful
22:31:44BitPuffinand if not then maybe they should be equal
22:31:48BitPuffinbut clearly they shouldn't
22:32:25gradhawebskipper: there are just different ways of writing code, I try to choose the most confortable one, which tends to be the one I have to type less
22:32:25BitPuffinhmm
22:33:23EXetoCisn't that basically the same as "sizeof(object) == sizeof(ref object)"?
22:34:22webskippergradha: k, I try to understand the semantic of "new(result)"
22:34:32Araqgradha: you're not up to date :P you can do:
22:34:53webskippergradha: because result is not defined before, its irritating me
22:35:00Araqresult = PNode(id: counter, child_l: l, child_r: r)
22:35:13gradhawebskipper: all procs which return anything have a magical result variable automatically defined
22:35:22fowlwebskipper, you know what would clear things up for you? reading the tutorial and/or manual..
22:35:25webskipperAraq: thats not written there... :D
22:35:43webskippermagic...
22:35:51*markhend_ joined #nimrod
22:36:08fowlwebskipper, from the documentation for new(): creates a new object of type T and returns a safe (traced) reference to it in a.
22:36:14webskipperfowl: stop it please
22:36:17*markhend quit (Ping timeout: 250 seconds)
22:36:38fowlfine, you aggravate me anyways. read the fucking documentation or you will never get anywhere in life
22:36:40*fowl left #nimrod ("Leaving")
22:37:14webskipperfowl: its not about new - its about result - result is not defined. sorry that I dont have in mind that there is a "magic" variable result, automatically defined by nimrod
22:37:15gradhawebskipper: at http://nimrod-code.org/tut1.html#result-variable you have explained all the magic you are lacking
22:37:35gradhawebskipper: fowl is complaining that this is explained pretty early, yet you are already trying to do "advanced" stuff
22:37:59gradhawebskipper: maybe you should give C translations a rest and try to read the tutorial with an open mind?
22:38:09*markhend_ quit (Client Quit)
22:38:25gradhawebskipper: sometimes to learn a new language it is best to unlearn the ones you know
22:38:48webskippergradha: i dont think that it is a good idea to have a variable never viewable before - but its only my view.
22:39:15webskippergradha: i dont agŕee about your last sentence
22:39:27gradhawebskipper: well, you know that C actually has to store the return value somewhere? that's the result variable, which nimrod makes available
22:39:37EXetoCexplicit is often better than implicit, but I see why it's convenient so I approve
22:39:42gradhawebskipper: you've been using an implicit return variable all your life, you just haven't though of it yet
22:40:22BitPuffingradha: http://25.media.tumblr.com/db649f4441940d7fcbbc2bd5d6646bc1/tumblr_mjqawy8GO51rmsmhho1_250.gif
22:40:28webskippergradha: you should not expect that users have a C backend.
22:40:32webskipperbackground
22:40:38EXetoCI don't know if that is conceptually correct in the case where the return keyword is used
22:40:54gradhawebskipper: well, tell me of any language that returns stuff without an implicit variable
22:41:00EXetoCit's available to the caller though
22:41:01webskipperdont know about a magic result variable in C - thats new for me too I have to say.
22:41:07BitPuffinWell at least I thought it was funny
22:41:16BitPuffinThat's all that matters :'(
22:41:53webskippergradha: python, java, ?. write "return result" ? does it work ?
22:42:05gradhawebskipper: I'm not expecting users to have any background, but you are translating some code from C, so what the hell are you doing if you don't know C?
22:42:28gradhabrb
22:43:56BitPuffinwebskipper: if we shouldn't expect users to have a background then having a result variable makes perfect sense because they wouldn't be used to anything :P
22:44:21Araqwebskipper: 'result' implements what's in C++ "named return value optimization"
22:44:41Araqapart from that Delphi and Eiffel have an implicit 'result' and it simply works
22:45:50Araqand it's confusing perhaps for like 5 minutes IMHO
22:46:09BitPuffinI dunno
22:46:13BitPuffineven less than that tbh
22:46:18BitPuffinit was like "oh!"
22:46:21BitPuffinand then it was fine
22:46:24EXetoCthat's very transparent though, so I don't know if it's a good analogy
22:47:05BitPuffinAraq: does it poop out if you do var result in a proc?
22:47:13BitPuffinor does it just "shadow" the implicit one
22:47:13EXetoCeveryone learns differently, and some are not the best english speakers
22:47:15webskipperAraq: but its bad style in my view :D
22:47:39EXetoCyou should've seen me when I first started programming. I was like "functions? wut?"
22:47:40webskipperAraq: Should be there a clear paradigma, no magic
22:48:01BitPuffinEXetoC: yeah for sure
22:48:46BitPuffinwebskipper: no magic = binary code
22:48:53EXetoClots of things are magic already if you don't know the language
22:48:59webskipperAraq: If I had a time back machine I would ask my teacher now "what about the predefined result variable..." whooot.... :D
22:49:30BitPuffinkeywords are magic more or less
22:49:35BitPuffinand syntax even
22:49:52BitPuffinwell even binary is magic
22:50:01BitPuffinbecause why does that register mean that
22:50:06BitPuffinwhy is that implicitly the way it is
22:50:42BitPuffinhttp://i.imgur.com/ChHNZ.gif
22:50:43webskipperIs there a list of keywords for nimrod ?
22:50:56BitPuffinwebskipper: yes in the manual
22:51:32EXetoCwebskipper: ok that doesn't make any sense. there isn't one way to do anything
22:51:48EXetoCif so, then we'd all be happy with Cobol or something like that
22:52:09Araqwebskipper: http://nimrod-code.org/theindex.html search for "keywords"
22:52:52webskipperAraq: not in list ?
22:52:58webskipperAraq: result ?
22:53:14BitPuffinwebskipper: http://nimrod-code.org/manual.html#identifiers-keywords
22:53:23BitPuffinah
22:53:33Araq"result" is no keyword
22:53:44webskipperraise ref return
22:53:48Araq"result" is no keyword
22:53:53webskipperWHY ?
22:53:56webskippermy god
22:54:08Araqso that you can do:
22:54:10EXetoCit's an implicit variable
22:54:28webskippernot viewable for the user, fine
22:54:37Araqproc aggregate(result: var string) = ...
22:54:56Araqit's much better for refactorings if it's no keyword
22:57:12webskipperbtw gradha, your version works fine, ty
22:57:27gradhawebskipper: you don't need a time machine to ask about result variables, simply think what code does the compiler generate for you when you write a function call
22:58:26gradhawebskipper: anyway you can ignore result if it is confusing and simply use return, nothing bad is going to happen
22:59:02webskippergradha, simply using return I prefer :D
22:59:12webskippergradha, I am human, no machine :D
22:59:42gradhawebskipper: good to hear, you will surely love playing https://www.youtube.com/watch?v=yMqL1iWfku4 in the background while you code
22:59:58AraqI know nobody who doesn't use "result" but *shrug*
23:00:18EXetoCwebskipper: but apparently everyone else is
23:00:26EXetoCsince we're able to comprehend
23:00:40Araqyou also might get less efficient code this way fyi
23:03:09EXetoCit's good to know what people think, but feel free to re-evaluate when you know the language a little bit better.
23:03:37EXetoCresult has allowed my functions to be a little more readable at times
23:03:43EXetoCok I'm done
23:04:06gradhaEXetoC: so when are you releasing it?
23:04:18EXetoCwut
23:04:36gradhaEXetoC: didn't you mean with "I'm done" you have finished your latest amazing nimrod software?
23:05:19gradhaI'm still debugging why nimcache takes a funny path in my ouroboros version of the compiler
23:05:30gradhano fun to recompile for each tweak
23:05:45EXetoCno, I rarely write anything useful
23:07:03*Amrykid quit (Excess Flood)
23:07:27*Amrykid joined #nimrod
23:08:49BitPuffinOrionPK: sha1 plz ;_;
23:08:54BitPuffinI need it xD
23:08:59OrionPKu need to use it?
23:09:16BitPuffinyeah, well I guess I could copy it but it would be nice to have it in babel
23:09:42OrionPKspose..
23:11:47BitPuffindom96: is quick to merge
23:11:49BitPuffinI hope :P
23:12:12gradhaBitPuffin: it depends on the phase of the moon
23:12:30BitPuffingradha: yup
23:13:42dom96Actually my behaviour is pretty predictable.
23:13:51dom96Almost scarily so.
23:13:56gradhadom96: surely you jest
23:14:50*gradha thinks what could rhyme with ouroboros while it compiles
23:15:30MFlamerwhy can't I de ref a pointer with []?
23:15:46MFlamerI thought I did this all the time
23:16:53Araqyeah well it doesn't work for types yet
23:17:37*gradha looks at the moon phase, then looks at dom96
23:19:04MFlamerso I gotta cast to a ptr (type) and then deref?
23:19:52MFlamerIt would be a bit much to expect it to come back typed
23:20:07MFlamerpointer is like void
23:21:59EXetoCvoid pointer? :p
23:23:36MFlameryeah
23:28:22Araqno you can't deref a *type* yet
23:28:31Araqas in sizeof(pint[])
23:29:53EXetoCmmh, pint
23:30:48OrionPKthere, send a pull request for sha1
23:30:53OrionPKsent*
23:31:56gradhahopefully the official sizeof(pint[]) is measured in guiness
23:32:38BitPuffinAraq: using [] as the last argument to db_sqlite.Exec seems common enough that maybe it should be the default value?
23:35:57Araqhmm yeah. in fact, I thought I made it work already
23:36:59BitPuffinoh maybe in the git version
23:37:03BitPuffinI haven't checked
23:37:51BitPuffinnope no default value there either
23:37:59BitPuffinbut maybe it works because of some varargs thing?
23:38:13Araqvarargs support no args at all, yeah
23:39:46BitPuffinwait a minute is this a regression?
23:40:27BitPuffinhttps://gist.github.com/BitPuffin/7379399
23:40:32*xenagi joined #nimrod
23:40:35BitPuffinthanks worthless github syntax highlighting
23:40:38gradhaAraq: why was getApplicationDir deprecated in favour of getAppDir? length?
23:41:15Araqgradha: consistency with the naming conventions
23:41:34BitPuffinnimforum even does % on the TSqlQuery
23:41:39AraqBitPuffin: no, you're doing it wrong
23:41:50BitPuffinhow so Araq ?
23:41:53Araqthere is no % for TSql
23:42:15BitPuffinAraq: do I need extra ()? or what?
23:42:33xenagiBitPuffin, you know that syntax is... um configurable, right?
23:42:34BitPuffinah yeah I do
23:42:49gradhayou can use % first, then wrap that inside an TSql
23:42:52BitPuffinxenagi: I did configure it to be nimrod
23:42:58BitPuffingradha: yeah I was missing ()
23:43:13BitPuffinbetween sql and """ there should be (
23:43:18BitPuffinand then ) before the ,
23:44:40BitPuffinhmm
23:44:43BitPuffininvalid format string
23:44:48BitPuffinoh
23:44:51BitPuffinmissing the #
23:44:53BitPuffinsilly me
23:47:20*enurlyx quit (Quit: Nettalk6 - www.ntalk.de)
23:50:44gradhaAraq: the logic for compiler/options.getGeneratedPath does weird things for the nimcache directory when I install the compiler in ~/bin
23:51:50BitPuffinAraq: it isn't legal to but operator symbols in a proc name right?
23:52:27BitPuffinother than for operators I mean
23:52:35BitPuffinand without having to call it like `this?`
23:53:17Araqgradha: quite possible. please fix it
23:53:50AraqBitPuffin: yeah. nimrod is not ruby. question marks in identifiers are childish
23:54:39BitPuffinAraq: alrighty then. Well I think they can be descriptive but they are not essential, and they probably complicate parsing quite a bit
23:55:08Araqwe have a type system to tell the people it returns a bool
23:55:34BitPuffinwell, more to tell the compiler it returns a bool
23:57:14Araqso are you telling me you don't read prototypes either?
23:57:22webskipperdo we have an eclipse plugin (syntax highlighting) for nimrod ?
23:57:39AraqI'm beginnung to understand why you guys seem to be confused all the time ...
23:58:02BitPuffinAraq: I do when I write code, but not always when i read code
23:58:22BitPuffinif I didn't read the prototype i wouldn't even know that a proc existed and what parameters it took
23:58:27BitPuffinso it's a weird assumption to make
23:58:30Araqyeah well when I read code I have something which I call "context"
23:58:47Araqlike 'if foo(a, b)' # hm, perhaps foo returns a bool here
23:59:26BitPuffinAraq: could also return an object and the if would pass if it wasn't nil
23:59:42Araq?
23:59:51webskipperisset()
23:59:58Araq'if' only works with bool unless you defined a converter