<< 27-09-2013 >>

00:13:17*filwit quit (Quit: Leaving)
00:18:24*q66 quit (Quit: Leaving)
00:38:38*fowl quit (Quit: Leaving)
00:46:07*Associat0r quit (Quit: Associat0r)
00:53:52*Amrykid quit (Changing host)
00:53:52*Amrykid joined #nimrod
00:53:52*Amrykid quit (Excess Flood)
00:53:52*Amrykid joined #nimrod
00:54:03*Amrykid quit (Changing host)
00:54:03*Amrykid joined #nimrod
01:04:41*DAddYE quit (Remote host closed the connection)
01:50:24*ltbarcly joined #nimrod
01:51:18*NewGuy joined #nimrod
02:52:01NewGuyA global GameStateManager contains dynamically created GameStates. Each GameState has two GameStateData objects within (a read_block and write_block). The user adds their tasks (function pointers) to the architecture. When completed, the architecture schedules them to each thread - these threads run the tasks on their individual queue (which will be reading from a read_block and writing to a write_block that were (often) created i
02:52:16NewGuyIgnore that. Copy and pasted wrong.
02:52:51NewGuySo I took some time to write out last night's question as clearly as possible. I'm still groggy from a few all nighters (uni's a bitch), but here goes.
02:52:52NewGuyA global GameStateManager contains dynamically created GameStates. Each GameState has two GameStateData objects within (a read_block and write_block).
02:53:03NewGuyThe user adds their tasks (function pointers) to the architecture. When completed, the architecture schedules them to each thread - these threads run the tasks on their individual queue (which will be reading from a read_block and writing to a write_block that were (often) created in a different thread - not thread-local copies; a pointer to a dynamic object created).
02:53:08NewGuyHow will this behave with Nimrod's GC? Will the reference counting ignore when a reference is made by another thread, Will the cyclic collector work properly, Etc?
02:53:12NewGuyIf not, the website says Nimrod is going to have a shared heap for all threads - so when can I expect that kind of functionality?
02:53:16NewGuyFurthermore, when it comes to synchronization, Nimrod uses lightweight mutexes right? The cost of it is akin to critical_sections or C++11 mutexes?
02:54:08NewGuyThanks in advance everybody. Sorry for being such a bother and pretty ugly wall of text.
03:21:41*dyu joined #nimrod
03:22:18NewGuyIf you see it - feel free to answer, I'll check the logs when I get back in the morning. Otherwise I'll just throw this up on the forum tomorrow.
03:22:23NewGuyHave a great one guys!
03:26:45*NewGuy quit (Ping timeout: 250 seconds)
03:50:10*OrionPK quit (Read error: Connection reset by peer)
04:54:08*zhtx joined #nimrod
05:09:43*brson quit (Ping timeout: 245 seconds)
05:39:10*zhtx quit (Quit: Leaving.)
06:10:55*ltbarcly quit (Quit: Computer has gone to sleep.)
06:27:04*gsp joined #nimrod
06:34:13*dyu quit (Ping timeout: 248 seconds)
06:36:41*dyu joined #nimrod
06:44:42*filwit joined #nimrod
06:45:18filwitanyone know where i can find documentation on the internal structure of TNimNode?
06:46:45filwitor is there some way to echo a list of exposed type properties maybe?
06:47:01gspfilwit: not sure if this is exactly what you're looking for, but I still had that page open from my forays into ast-internals last week: https://github.com/Araq/Nimrod/blob/c7a6a877df8a540bd96b398fc6d1b770e700dbe2/doc/astspec.txt
06:47:52filwitit would be if it actually listed all the kinds for TNodeType..
06:48:26filwitmaybe you can help though
06:48:45filwiti need to find the return type child of a Proc NimNode
06:49:09filwitif node.kind == NnkTypeDef: echo node.returnType
06:49:46filwitonly 'returnType' doesn't exist of course
06:50:19filwiti'm assuming it's 'rTy' or some other obscure abbreviation
06:57:44filwitsorry, that should be 'NnkProcDef' above, not TypeDef
06:57:50*dyu quit (Ping timeout: 264 seconds)
06:59:37*dyu joined #nimrod
07:06:36*dyu quit (Ping timeout: 256 seconds)
07:12:37filwityep, it's `node.typ`
07:14:45*dyu joined #nimrod
07:19:49*Araq_ joined #nimrod
07:25:51*dyu quit (Ping timeout: 252 seconds)
07:26:42filwithey Araq_: how do i find the return typedesc of a proc PNimrodNode?
07:27:11Araq_question doesn't parse
07:27:40filwitaka: if node.kind == NnkProcDef: node.typ = typedesc[CustomType]
07:28:13filwitsay's it can't find 'field typ', even though i see it listed in macros
07:29:29*gsp quit (Ping timeout: 240 seconds)
07:30:06Araq_you must not set the type of a node that a macro constructs
07:30:19Araq_semantic analysis will do that for you afterwards
07:31:26filwithmmm... so it's impossible to adjust the return value of a proc? what i'm really after is adding a specific type of return value
07:31:40Araq_you can alter it by altering the AST
07:32:12filwiti see, so how do i adjust the 'result' type?
07:32:28filwitjust by finding the first instance of it and setting the '.typ' ?
07:37:03filwitor i suppose just adding a line to the beginning which sets result to the return type i want?
07:37:35filwitthat could work, but what if the next line tries to reset it?
07:42:43*dyu joined #nimrod
07:53:41Araq_again, don't set '.typ'
07:54:25Araq_the result type is at theProc[paramsPos][0] or something like that
07:55:13Araq_also ... as long as my new VM hasn't been merged the macros stuff is unfortunately buggy as hell .... :-(
07:59:04*dyu quit (Ping timeout: 246 seconds)
08:05:32*Associat0r joined #nimrod
08:05:32*Associat0r quit (Changing host)
08:05:32*Associat0r joined #nimrod
08:09:54*Associat0r quit (Read error: Connection reset by peer)
08:10:57*Associat0r joined #nimrod
08:11:04*Associat0r quit (Changing host)
08:11:04*Associat0r joined #nimrod
08:41:54*dyu joined #nimrod
08:43:05filwityour new VM stuff?
08:44:01filwitalso, that sux to hear about macro's being buggy.. thanks for the heads up, but so far they're working good
08:49:26filwitactually, i came across a NimrodVM in the system module i think.. you planning JIT compiling :P
08:51:14*zahary joined #nimrod
08:52:14*zahary1 quit (Ping timeout: 240 seconds)
09:08:40Araq_we have a guy working on a JIT yes
09:08:53Araq_but my new VM is a simple register based bytecode
09:13:56Araq_interpreter
09:17:33filwitah, okay. that's interesting. Mostly for CTFE types stuff i assume. Though it would be interesting to have interpreter ability for a script engine.
09:36:04Araq_no, it's a also a scripting engine
09:40:28*gsp joined #nimrod
09:48:09*ltbarcly joined #nimrod
09:56:22*ltbarcly quit (Quit: Computer has gone to sleep.)
10:23:38*q66 joined #nimrod
10:28:39filwitAraq_: that's great :)
10:33:53*gsp quit (Ping timeout: 245 seconds)
10:37:11*filwit quit (Quit: Leaving)
11:13:00*gsp joined #nimrod
11:25:07*Araq_ quit (Quit: ChatZilla 0.9.90.1 [Firefox 23.0.1/20130814063812])
11:28:37*Boscop joined #nimrod
11:43:21*shodan45_ joined #nimrod
11:43:28*shodan45 quit (Ping timeout: 245 seconds)
11:43:52*Boscop quit (Disconnected by services)
11:44:01*Boscop joined #nimrod
11:46:55*Boscop quit (Client Quit)
12:23:57*gsp quit (Ping timeout: 252 seconds)
13:09:33*Araq_ joined #nimrod
13:54:31*zhtx joined #nimrod
13:57:59*Araq_ quit (Quit: ChatZilla 0.9.90.1 [Firefox 23.0.1/20130814063812])
14:11:04*EXetoC joined #nimrod
14:17:38*zahary quit (Ping timeout: 245 seconds)
14:18:40*ltbarcly joined #nimrod
14:19:16*zahary joined #nimrod
14:19:44*ltbarcly quit (Client Quit)
14:23:36*ltbarcly joined #nimrod
14:28:15*zahary1 joined #nimrod
14:28:46*zahary quit (Ping timeout: 245 seconds)
14:29:04*ltbarcly quit (Quit: Computer has gone to sleep.)
14:38:34*ltbarcly joined #nimrod
14:42:09*ltbarcly quit (Client Quit)
15:19:49*zhtx left #nimrod (#nimrod)
16:20:16*shodan45_ quit (Quit: Konversation terminated!)
16:34:14*gsp joined #nimrod
16:41:44*shodan45 joined #nimrod
16:47:10reactormonkAraq, PR?
17:03:06*DAddYE joined #nimrod
17:41:40Araqreactormonk: what?
17:52:39reactormonkAraq, pull request.
17:53:04Araqcan you fix 'echo' as well please?
17:53:14*Araq can't believe even 'echo' is broken ...
17:56:53reactormonkAraq, echo? O.o
17:57:20reactormonkoh, in JS. I think we should just change the default to -d:nodejs
17:58:02Araqoh so it's only wrong for not -d:nodejs ?
17:58:11reactormonkthink so
17:58:13Araqthat would explain it
17:58:23reactormonkwell, I run stuff with -d:nodejs all the time and haven't noticed too much
17:58:37AraqI can't believe I didn't test hello world with the new JS codegen
17:59:00reactormonk:-)
17:59:03Araqwell -d:nodejs should not be the default ... why should it?
17:59:10reactormonk... good question.
17:59:20reactormonkMaybe make it autodetect console.log / print ?
17:59:39Araqthe JS codegen is supporsed to be used for web frontends
17:59:44Araq*supposed
17:59:57reactormonkwith allt he JS hype
18:00:04Araqit's just that -d:nodejs makes things much easier to test
18:01:11reactormonkyup
18:01:26Araqspeaking of which
18:01:40Araqsomebody should ensure the produced C code works with emscripten
18:01:48AraqI doubt it works ...
18:02:07Araqalso ... the codegen should learn about source maps
18:11:12reactormonksource maps?
18:12:03Araqlook it up
18:16:24reactormonkhttp://www.html5rocks.com/en/tutorials/developertools/sourcemaps/ that stuff?
18:17:38Araqyes
18:19:11*brson joined #nimrod
18:19:50dyubrson: congrats on the rust 0.8 release
18:23:27Araqyeah congrats
18:26:50*dyu quit (Ping timeout: 256 seconds)
18:29:25*filwit joined #nimrod
18:30:31Araqwb filwit
18:30:32filwithello nimrod folks
18:30:37filwithi Araq
18:31:08brsonAraq: thanks!
18:37:13Araqfilwit: the slides turned out to be slightly too easy for the audience
18:37:32Araqas everybody there knows what a hygienic macro system is ...
18:37:36filwitwell, it was a PL conference i guess
18:37:45Araqyeah ...
18:38:05filwityeah, i had no idea what a hygienic macro system was until i read more about it just a day ago
18:38:14filwitso maybe it's just me who's behind, ha
18:39:05filwitmy Kate Nimrod language support file is coming together nicely
18:39:14filwitone sec, i'll show you a screeny
18:42:18Araqok
18:45:36filwithttp://reign-studios.net/philipwitte/hymn/kate-screenshot.png
18:46:16filwitso it highlights the proc names (and type/part names)
18:46:36filwitand highlights capital symbols
18:47:01filwiti'll put it on github when it's more complete for Kate support (with my part/inits/etc stuff stripped out of course)
18:47:13filwitKate/Kdevelop support
18:47:27filwiti was going blind trying to code with flat text
18:47:51Araqyou could use Aporia, you know
18:48:08filwityeah, i would
18:48:16filwitbut i really, raelly like kate now..
18:48:26filwitand on KDE, GTK apps dont run as well
18:48:45filwiti really like the "100 mile view" kate has as well
18:49:46filwitbut i will pull and build Aporia just to have it as an option, and maybe contribute back a little if i find any issue, i know dom96 is doing good work there, and i would like to see the changes at some point
18:52:20filwitoh, and in other new, i may have gotten my brother on board with helping make a Nimrod game engine :D
18:53:14filwithe's still reserved, but I showed him some of stuff i was playing around with in Nimrod design, and how capable the macro's are to allow me to do my own thing, and he's interested
18:54:13Araqgreat now buy commercial support from me
18:54:18*q66 quit (Ping timeout: 245 seconds)
18:54:44filwitha! maybe when i have more money
18:55:59*q66 joined #nimrod
18:56:24Araqanybody watched "FireFly"?
18:56:31Araqit has some good ratings
18:56:43*MFlamer joined #nimrod
18:56:46filwitexcellent show
18:56:56Araqreally?
18:57:07Araqit can't be good because I never heard of it :P
18:57:09filwityeah, one of my favorites
18:57:29filwitthat's just your lack of worldliness.. everyone knows of Firefly :P
18:57:46filwitnah, but it's great, and funny
18:58:13filwitpisses me off Fox canceled it after airing some episodes out of order
18:58:42Araqhey, I'm just thinking like the average developer here
18:59:12filwitwell, you'll probably like the show, you should watch it
18:59:18filwitthen watch the movie Serenity
18:59:28Araqwell I watched the movie years ago
18:59:36filwitwhich is pretty much the whole show condensed into a movie, and played out a little differently
18:59:45filwitahh... well then
18:59:58filwitthe show is still worth a watch
19:00:10filwitit fills out more and has more humor
19:01:12*zahary1 quit (Read error: Connection reset by peer)
19:01:23*zahary joined #nimrod
19:03:38Araqhmm
19:05:13filwitDexter's also a pretty good show, if you haven't seen it
19:05:32AraqI'm at season 5
19:05:40filwitah, okay
19:05:49filwiti still have to watch the season finally
19:05:57filwitthe show* finally i mean
19:07:09filwitidk, there really aren't that many shows i like
19:07:23filwitDownton Abby was pretty good
19:07:39filwitwhich was surprising
19:07:55filwiti just read books
19:08:37Araqhttp://www.youtube.com/watch?v=zIom3LSbB0I
19:09:45filwitha
19:17:09dom96hello
19:22:36MFlamerFinale Breaking Bad this Sunday!
19:23:03filwithi dom96
19:23:26MFlamerthats funny.......I diddnt watch the youtube video first
19:23:52dom96The last season of Dexter has been pretty silly.
19:25:57filwitdom96: yeah, i wasn't a fan of it either
19:26:29filwitdom96: season 6 sucked as well, and season 7 was... odd, but some cool stuff happened at least
19:26:57filwitdom96: season 8 though, doesn't seem like it has a clear direction.
19:27:05filwitthis is really cool: http://www.youtube.com/watch?v=lX6JcybgDFo
19:37:26Araqgah I don't get "FireFly"
20:02:17*filwit quit (Quit: Leaving)
20:06:02Araqping MFlamer
20:06:12MFlamerping
20:06:17Araqsorry I haven't yet found the time to really run your code
20:06:44Araqhow's your progress? I fear it's some remaining threading bug in nimrod's runtime tbh
20:06:59MFlamerIt's ok, I'm making progress isolating it.
20:07:23MFlamerI found some problems in the table logic.
20:08:20MFlamerBut, there still may be other issues, I will clean up everything I can, then bug you if I get stuck and think it's in the runtime
20:08:57MFlamerI'm gonna spend some hours on it tonight.
20:09:05Araqalright great
20:09:21Araqyou should really use ptr array instead of pointer arithmetic btw
20:09:27Araqwill also simplify the code
20:09:51MFlamerbut ten they have to be fixed size?
20:10:22MFlameror, like in your examle just make them huge and be carefull not to over index?
20:10:45MFlamergetting sloppy in my typing!
20:11:41Araqit's an "idiom" to use an upper bound that's way too large
20:11:58Araqthis way you at least get some sanity checking
20:12:07Araqlike it's not a negative index
20:12:28Araqplus it simplifies address computations
20:14:57MFlamerok
21:30:00*MFlamer quit (Quit: Page closed)
21:30:25*MFlamer joined #nimrod
21:33:18*Amrykid quit (Excess Flood)
21:33:44*Amrykid joined #nimrod
22:04:22NimBotAraq/Nimrod master 8f027d8 Araq [+6 ±3 -0]: examples from the talk part of test suite
22:04:22NimBotAraq/Nimrod master 7ccee37 Araq [+0 ±2 -1]: fixes for niminst
22:04:22NimBotAraq/Nimrod master 47f6d18 Araq [+0 ±0 -0]: Merge branch 'master' of https://github.com/Araq/Nimrod
22:33:47*OrionPK joined #nimrod
22:40:32Araqgood night