00:00:11 | BitPuffin | dom96: yeah totally! |
00:00:36 | dom96 | I feel like I haven't experienced all the cool game modes. |
00:00:44 | BitPuffin | me neither :P |
00:03:02 | BitPuffin | dom96: btw what is your steam? |
00:03:05 | BitPuffin | gonna hack it |
00:03:08 | BitPuffin | err I mean add it |
00:05:09 | dom96 | http://steamcommunity.com/id/dom96 |
00:06:14 | dom96 | Good night |
00:06:38 | * | hoverbear joined #nimrod |
00:07:59 | Varriount | Hello hoverbear |
00:08:06 | hoverbear | Hey varr |
00:08:10 | hoverbear | Varriount* |
00:09:23 | BitPuffin | dom96: I added you ;_; |
00:09:28 | BitPuffin | and you say good night! |
00:09:32 | BitPuffin | !?!?!?? |
00:12:16 | filwit | it's like 12am in the UK now i think |
00:14:04 | vidot_j | Question : How to use openDefaultBrowser please ? |
00:14:43 | vidot_j | because : import os, import osproc, import strutils |
00:14:56 | fowl | http://build.nimrod-code.org/docs/browsers.html#101 |
00:15:00 | vidot_j | openDefaultBrower("http://www.google.com/") |
00:15:07 | vidot_j | no work |
00:15:27 | EXetoC | that's what the browsers module imports |
00:15:35 | OrionPK | you just need to import browsers |
00:15:39 | fowl | you import browsers |
00:16:06 | BitPuffin | bowser |
00:16:52 | BitPuffin | EXetoC: YO I added yo on shteem |
00:16:52 | vidot_j | it work |
00:16:55 | vidot_j | thanks ^^ |
00:17:11 | vidot_j | I'm still struggling to read the doc =) |
00:21:45 | filwit | vidot_j: out of curiosity, what language are you "coming from"? |
00:22:15 | vidot_j | C language filwit .. ^^ |
00:23:08 | filwit | vidot_j: hmmm.. okay, thanks |
00:23:20 | vidot_j | but i'm very bad in english --> read a doc in english .. (y) |
00:23:30 | filwit | ahh, i see |
00:23:46 | filwit | what country are you from? |
00:24:36 | vidot_j | France |
00:24:36 | vidot_j | for me, learning nimrod is learning English |
00:24:55 | filwit | ah, Bonjour! (don't actually know French) |
00:25:03 | OrionPK | well, probably mostly written by a german guy |
00:25:07 | vidot_j | ahah Bonjour :) |
00:25:29 | filwit | i took french in HS, but i barely remember anything |
00:25:40 | EXetoC | parapluie |
00:25:47 | OrionPK | sacre bleu! |
00:25:54 | vidot_j | lol |
00:26:30 | filwit | Je m'appelle Philip. Je suit American... yeah. that's about it |
00:26:55 | vidot_j | I'm in a school program, learning nimrod is a challenge for me :) |
00:27:00 | vidot_j | je suis * :) |
00:27:07 | vidot_j | Americain * |
00:27:11 | filwit | i can imagine |
00:27:18 | filwit | lol, thanks |
00:27:29 | filwit | i thought i would probably mess stuff up :) |
00:27:59 | vidot_j | lol :p |
00:29:16 | Araq | MFlamer: last chance to ask me something |
00:29:22 | vidot_j | filwit, Since when are you learning nimrod ? |
00:30:00 | filwit | vidot_j: hmm.. 8-12 months i think. |
00:30:13 | EXetoC | some range |
00:30:20 | vidot_j | filwit, i hate you >< |
00:30:30 | filwit | EXetoC, you're from D right? |
00:30:38 | filwit | vidot_j: :P |
00:31:01 | filwit | EXetoC: i'm pretty sure we had a convo about atheism a long time ago on there |
00:31:33 | OrionPK | touchy subject |
00:31:36 | Araq | oh yeah I remember that. you spammed my channel |
00:31:50 | filwit | OrionPK: not trying to rehash it :) |
00:32:01 | filwit | Araq: oh, maybe it was here, lol |
00:33:43 | Araq | and what's worse somebody said the Koran is similar to the Bible ... and I wasn't here to correct that guy |
00:33:55 | EXetoC | eh |
00:34:26 | filwit | Araq: uhoh.. probably shouldn't have mentioned religion on the internet... |
00:34:27 | OrionPK | that must have been awful for you araq |
00:34:38 | OrionPK | someone is wrong on the internet |
00:45:47 | vidot_j | import graphics <-- display an error ? |
00:47:04 | * | hoverbear quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
00:48:33 | fowl | vidot_j, you have to be more specific |
00:51:04 | vidot_j | fowl, I wrote "import graphics" nim in my file and I compiled:. "Error: internal error: wanted: tyFloat64 got: tyFloat" |
00:51:25 | vidot_j | fowl, I wrote "import graphics" in my file and I compiled:. "Error: internal error: wanted: tyFloat64 got: tyFloat" |
00:51:47 | Araq | use the latest nimrod from master |
00:52:04 | vidot_j | i use 0.9.2 version |
00:53:45 | Araq | use 0.9.3 please |
00:56:13 | vidot_j | nimrod website or github ? |
00:56:24 | Araq | github |
00:57:03 | vidot_j | ok ^^ |
00:57:53 | filwit | vidot_j: let us know if you have any questions or problems building it. |
00:58:34 | vidot_j | filwit, yes no prob |
00:59:17 | vidot_j | https://github.com/Araq/Nimrod |
00:59:33 | vidot_j | Araq, : where is the file build.sh ? |
00:59:53 | vidot_j | where is build.sh file * |
01:00:14 | Araq | first version was better english ;-) |
01:00:38 | Araq | the build instructions changed, build.sh is now in the .zip |
01:04:27 | vidot_j | build.sh isn't int the .zip ^^ |
01:04:36 | vidot_j | build.sh isn't in the .zip ^^ * |
01:05:44 | vidot_j | Araq, * |
01:07:05 | Araq | vidot_j: try this please: http://build.nimrod-code.org/commits/linux-x86/nimrod_c5926224ad22_csources.zip |
01:08:38 | filwit | why can't you just git clone it? |
01:09:28 | filwit | did something change and now the github build instructions aren't accurate? |
01:16:52 | vidot_j | filwit, : 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:14 | filwit | vidot_j: you need to follow the steps exactly |
01:27:43 | filwit | vidot_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:27 | filwit | vidot_j: follow these steps exactly: https://gist.github.com/PhilipWitte/7364800 |
01:28:44 | vidot_j | yes i undestand =) |
01:28:49 | vidot_j | Araq it work |
01:29:09 | filwit | i think Araq may have gone to bed |
01:29:30 | vidot_j | ok ^^ |
01:29:40 | vidot_j | but now : aporia don't compile .. |
01:29:54 | filwit | what distro are you on? |
01:30:03 | vidot_j | xubuntu 13.04 |
01:30:07 | filwit | hmm... |
01:30:17 | vidot_j | filwit, Traceback (most recent call last) |
01:30:17 | vidot_j | aporia.nim(2329) aporia |
01:30:17 | vidot_j | aporia.nim(2305) checkAlreadyRunning |
01:30:17 | vidot_j | sockets.nim(418) connect |
01:30:17 | vidot_j | sockets.nim(159) $ |
01:30:18 | vidot_j | Error: unhandled exception: value out of range: 55679 [EOutOfRange] |
01:30:47 | filwit | did you modify Aporia at all? |
01:31:23 | vidot_j | no |
01:31:34 | filwit | let met try building it, one sec |
01:33:10 | filwit | vidot_j: something is wrong. I just build Aporia and it works |
01:33:33 | filwit | viddot_j: i would completely remove both repos and start from the beginning |
01:34:27 | filwit | vidot_j: btw, did you just clone Aporia? |
01:34:55 | filwit | vidot_j: and also, after you build Nimrod, are you using the new Nimrod (that you built), or the 0.9.2 version? |
01:35:19 | filwit | (run $ nimrod and see what the output is) |
01:35:38 | vidot_j | the nex |
01:35:40 | vidot_j | new * |
01:35:58 | filwit | ? |
01:36:25 | filwit | oh i see |
01:36:39 | filwit | hmmm..brb |
01:37:02 | * | BitPuffin quit (Ping timeout: 240 seconds) |
01:38:57 | Varriount | Anyone have any ideas on how I should go about wrapping a C library that uses widechars for api calls? |
01:46:33 | filwit | Varriount: int16? |
01:47:49 | filwit | Varriount: nevermind, don't do that (it's wrong) |
01:49:20 | filwit | Varriount: isn't wchar the same as short? |
01:49:45 | filwit | Varriount: 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:56 | Varriount | filwit, the thing is, it uses them for the functional part of the api |
02:17:14 | Varriount | You 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:30 | vidot_j | .. |
02:35:35 | vidot_j | aporia don't compile |
02:35:45 | filwit | vidot_j: still huh? |
02:35:54 | vidot_j | filwit, yes :/ |
02:36:04 | filwit | vidot_j: i just compiled it and it works though, so it's got to be something with your system |
02:36:25 | filwit | vidot_j: i'm not sure what dependencies are required for it |
02:36:56 | vidot_j | Aporia worked before |
02:37:16 | filwit | before what? |
02:38:45 | filwit | Varriount: sorry i missed your earlier statements. Though i'm not sure if i can help |
02:38:59 | filwit | Varriount: i'm not the best person when it comes to linking with C |
02:40:09 | filwit | vidot_j: i'm not sure what to tell you. Araq or Dom96 might have more options for you tomorrow |
02:40:37 | vidot_j | ok ^^ |
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:47 | vidot_j | filwit, |
04:45:53 | * | Ricky_Ricardo quit (Quit: Ricky_Ricardo) |
04:46:01 | filwit | vidot_j: yes? |
04:46:08 | vidot_j | i'm ywo |
04:46:23 | filwit | vidot_j: ywo? |
04:46:29 | vidot_j | hmm.. |
04:46:41 | vidot_j | you know me on this login ? |
04:47:05 | filwit | vidot_j: no... you are new here right? |
04:47:13 | filwit | vidot_j: i just met you today |
04:47:17 | vidot_j | the french |
04:47:30 | filwit | yes, i know |
04:47:33 | filwit | what's up? |
04:47:46 | vidot_j | hmm |
04:48:26 | vidot_j | yyou can look at the history and give me the link to araq 0.9.3? |
04:49:09 | filwit | one sec |
04:49:36 | filwit | http://build.nimrod-code.org/commits/linux-x86/nimrod_c5926224ad22_csources.zip |
04:49:52 | filwit | of course, that's the x86 version |
04:50:22 | filwit | that may be why you can't build Aporia (if you're trying to use those csource on a 64bit machine) |
04:50:46 | filwit | i would recommend just following the directions on the github readme: https://github.com/Araq/Nimrod |
04:55:19 | filwit | vidot_j: btw, ce le heure en France est-ce? |
04:57:46 | vidot_j | i'm back |
04:57:56 | vidot_j | filwit, 05:57 am |
04:58:10 | filwit | :) |
04:58:18 | filwit | damn |
04:59:08 | * | NimBot joined #nimrod |
05:01:20 | filwit | j'ai souviens un peu francais, mais je veux Google Translate pour aider. :) |
05:03:07 | * | NimBot joined #nimrod |
05:04:05 | filwit | bon matin |
05:04:28 | vidot_j | filwit, : aporia work =) |
05:04:38 | filwit | vidot_j: awesome! |
05:05:24 | * | xenagi quit (Quit: Leaving) |
05:07:24 | vidot_j | filwit : but import graphics no x) |
05:07:33 | vidot_j | filwit : but no import graphics * |
05:08:23 | filwit | vidot_j: what is the error? |
05:08:33 | vidot_j | could not load: libSDL.so(|.1|.0) |
05:08:33 | vidot_j | Error: execution of an external program failed |
05:09:04 | filwit | vidot_j: try "import SDL" |
05:09:14 | filwit | vidot_j: do you have SDL 1 installed? |
05:09:51 | * | fowl quit (Quit: Leaving) |
05:09:55 | vidot_j | I do not think |
05:10:13 | vidot_j | it's a problem ?. |
05:10:25 | filwit | yes |
05:10:47 | filwit | the graphics module uses SDL |
05:11:49 | filwit | le module graphics SDL besoin pour fonctionner |
05:13:03 | vidot_j | i understand English, but i don't know how to write =) |
05:13:23 | filwit | ah, okay :) |
05:13:55 | vidot_j | filwit, Do you know the package to install ? |
05:14:37 | * | NimBot joined #nimrod |
05:15:28 | filwit | vidot_j: there's more i think. let me look it up |
05:16:06 | vidot_j | thanks ^^ |
05:16:12 | vidot_j | libsdl1.2-dev =) |
05:16:32 | vidot_j | i'm noob on nimrod but no on linux xD |
05:16:36 | filwit | vidot_j: yes, but you might also need sdlgfx or sdl-image or something like that |
05:16:51 | filwit | vidot_j: k, great |
05:17:24 | vidot_j | ok I'll watch |
05:19:43 | vidot_j | it work =) |
05:19:50 | filwit | vidot_j: awesome! |
05:20:03 | vidot_j | filwit, thanks for your help =) |
05:20:17 | filwit | vidot_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:11 | BitPuffin | ahoy guys |
11:17:26 | * | DAddYE quit (Ping timeout: 240 seconds) |
11:19:12 | EXetoC | ahoy-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:50 | webskipper | Hi |
12:19:27 | webskipper | have a struct here and want to translate it manually for a small benchmark test. The similar keyword in nimrod is type ? |
12:19:36 | webskipper | c struct, sry |
12:21:38 | webskipper | .... struct Node_S { .... struct Node_S * child_l; .... }; |
12:38:44 | CarpNet | yeah, 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:15 | BitPuffin | man |
12:57:19 | BitPuffin | I miss arch :( |
12:59:54 | * | webskipper quit (Ping timeout: 252 seconds) |
13:02:13 | * | webskipper joined #nimrod |
13:04:48 | webskipper | CarpNet: and with traced pointer ? child_l: ref Node_S ? |
13:07:52 | * | p0nce is now known as ponce |
13:08:22 | CarpNet | yeah ref is GC'd and ptr is a raw pointer, though I think a traced pointer is the preferred style |
13:14:49 | webskipper | so 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:47 | CarpNet | well 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:13 | webskipper | CarpNet: http://bpaste.net/show/147871/ |
13:20:25 | * | DAddYE quit (Ping timeout: 272 seconds) |
13:20:45 | * | isenmann quit (Quit: Leaving.) |
13:32:42 | CarpNet | this 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:15 | webskipper | ah ty |
13:57:21 | * | ponce quit (Killed (barjavel.freenode.net (Nickname regained by services))) |
13:57:35 | * | p0nce joined #nimrod |
13:59:36 | webskipper | SIGSEGV: Illegal storage access. (Attempt to read from nil?) if num (depth) > 14 for me |
14:05:38 | webskipper | is it out of memory ? |
14:07:57 | EXetoC | I usually get "out of memory" then |
14:08:28 | EXetoC | don't you get a stack trace? |
14:08:53 | webskipper | .... |
14:09:02 | webskipper | bench.nim(25) |
14:09:34 | webskipper | make_tree |
14:09:48 | webskipper | mom |
14:10:43 | EXetoC | that almost helps |
14:11:02 | webskipper | so, here: |
14:11:03 | webskipper | http://bpaste.net/show/147883/ |
14:11:27 | webskipper | source code: https://gist.github.com/acolley/7371049 by CarpNet |
14:11:43 | webskipper | testest with 8gb ram |
14:11:49 | webskipper | testsed |
14:11:53 | webskipper | tested |
14:12:59 | * | OrionPK joined #nimrod |
14:13:15 | webskipper | have to go, sry |
14:13:23 | webskipper | cya |
14:16:14 | * | DAddYE joined #nimrod |
14:17:45 | EXetoC | webskipper: it exits successfully for me, and I can only assume that you've made changes that don't affect the semantics |
14:18:10 | EXetoC | because the line numbers don't match |
14:18:14 | * | webskipper quit (Ping timeout: 264 seconds) |
14:19:38 | EXetoC | dude, just idle :/ |
14:20:38 | * | DAddYE quit (Ping timeout: 240 seconds) |
14:20:46 | Ricky_Ricardo | Speaking 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:12 | EXetoC | Speaking of idling, who wants to play Idle RPG? |
14:21:30 | EXetoC | some are |
14:21:51 | Ricky_Ricardo | hah , that's a thing? |
14:22:26 | EXetoC | Ricky_Ricardo: yes, it's amazing. http://idlerpg.net/ |
14:24:42 | EXetoC | that 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:49 | MFlamer | Araq: I hope you meant last chance to ask you something for last night.....not forever |
16:23:28 | EXetoC | :/ |
16:27:04 | OrionPK | if anyone is on windows... Dexpot just changed my life |
16:27:19 | OrionPK | nothing will ever be the same |
16:31:19 | EXetoC | fk yeah innovation :p |
16:31:39 | dom96 | hello |
16:38:42 | BitPuffin | hey dom96 |
16:39:22 | EXetoC | hi bots and humans |
16:42:29 | BitPuffin | guten 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:18 | Dirkson | Anyone here have experience with the "haxe" language? |
17:16:09 | Dirkson | And, if so, what features of nimrod made you chose it over haxe? |
17:16:35 | fowl | Dirkson, haxe build requirements, some xml file that configured everything, confused me |
17:16:43 | * | Dirkson nods |
17:17:02 | fowl | and it being another OO language, disinterested me |
17:17:14 | Dirkson | Nimrod is not an oo language? |
17:17:40 | fowl | oo 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:22 | fowl | i would say procedural/imperative |
17:18:43 | Dirkson | Really? Well, I suppose you could do all three in it, eh? : ) |
17:18:52 | BitPuffin | Dirkson: you can do anything you want in nimrod |
17:18:54 | BitPuffin | :P |
17:19:05 | fowl | "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:10 | Dirkson | "You can do anything at ZomboCom! Anything at all!" |
17:19:48 | BitPuffin | dom96: 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:17 | fowl | while you guys are working on stuff im going to watch always sunny |
17:20:20 | fowl | cheers |
17:20:34 | Dirkson | For 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:41 | dom96 | BitPuffin: indeed |
17:20:44 | Dirkson | fowl: Cheers : ) Thanks for the input |
17:23:44 | * | gradha joined #nimrod |
17:25:57 | * | bchar joined #nimrod |
17:34:52 | gradha | Dirkson: I tried to learn haxe twice, but couldn't because of installation/toolchain problems |
17:35:03 | Dirkson | gradha: *nods* |
17:35:07 | gradha | Dirkson: the first time I managed to install all tools but none worked |
17:35:31 | gradha | the 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:48 | gradha | the flash exporter was even worse, missing basic things like simple clicks on my laptop |
17:35:53 | Dirkson | Hunh |
17:36:11 | gradha | plus 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:29 | Dirkson | Ouch |
17:36:36 | gradha | the haxe community has presumably very good support, but in both cases I asked in the mailing lists/forums and nobody answered |
17:37:19 | gradha | maybe 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:28 | Dirkson | *nods* |
17:37:51 | gradha | however it has more "critical mass" (whatever that means) so there's more people and projects using it |
17:38:18 | gradha | plus its ties to flash/actionscript mean lots of designers wanna-be-programmers can whip up fun stuff quickly which visually looks cool |
17:38:52 | gradha | I guess haxe is good if you like flashy things |
17:39:47 | Dirkson | Mostly 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:50 | EXetoC | because of the language or the libs? |
17:39:59 | EXetoC | I guess the later, unless it's a weird DSL of some sort |
17:40:46 | gradha | Dirkson: "write once run everywhere" is ok if you don't mind sticking to the lowest common denominator |
17:41:43 | Dirkson | gradha: *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:46 | gradha | Dirkson: are you on mac or linux? |
17:44:13 | Dirkson | gradha: I code on linux, cross compile for windows, and borrow the neighbors mac to scream at incoherantly a few times a year. |
17:45:00 | bchar | The file 'bin/nimrod' is not executable by this user |
17:45:05 | bchar | do I have a permissions issue here then? |
17:45:05 | gradha | if 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:29 | gradha | bchar: that's certainly weird, usually compilers generate binaries with execution bits on |
17:45:53 | bchar | I downloaded a precompiled one from the farm |
17:46:12 | bchar | I was getting other errors using the instructions from the site |
17:46:16 | gradha | bchar: maybe the containing zip/whatever didn't preserve them |
17:46:24 | gradha | bchar: yeah, you need to use the github instructions |
17:46:26 | bchar | weird, alright |
17:46:32 | bchar | oh ok |
17:46:33 | bchar | thanks |
17:46:56 | gradha | bchar: basically follow https://github.com/Araq/Nimrod#compiling |
17:47:13 | bchar | can't wait to try it out. nimrod looks insanely well thought-out. |
17:47:16 | bchar | thanks again |
17:47:33 | dom96 | bchar: have you tried chmod +x bin/nimrod? |
17:47:54 | gradha | apparently there is a shortage of automatic website uploader software which prevents the nimrod webpage from being correct |
17:47:55 | bchar | ha yeah I think that fixed it |
17:47:57 | bchar | nice, dom96 |
17:48:31 | gradha | dom96: how come the zips don't include execution bits? |
17:48:42 | dom96 | gradha: Dunno. |
17:48:45 | gradha | oh, wait, maybe zip doesn't support fancy stuff |
17:48:49 | dom96 | yeah |
17:48:49 | Dirkson | gradha: 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:23 | gradha | Dirkson: it was enough if you went to the last post to grab the binaries, but hey, thanks for reading |
17:49:44 | gradha | right now I'm upgrading my mothers laptop because I'm afraid of upgrading mine |
17:50:10 | gradha | then if everything goes well I'll upgrade my father |
17:50:21 | gradha | then, if after several months nobody has complained, maybe, and only maybe I'll upgrade mine |
17:50:43 | * | DAddYE joined #nimrod |
17:53:46 | Dirkson | gradha: 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:20 | fowl | arduino |
17:54:31 | gradha | I'd say using programming languages which don't encourange memory wasting are more important than lib sharing |
17:57:16 | Dirkson | gradha: Agreed. I snarfle a ton of ram, but I do so legitimately ^^ |
17:57:50 | Dirkson | Well, mostly legitimately. There's a big chunk of graphics data I can and should unload when switching spaceships, but currently do not. |
17:59:46 | eigenlicht | someone working on a matrix algebra lib already? |
18:00:04 | gradha | eigenlicht: I believe there's one in babel already |
18:00:51 | gradha | eigenlicht: see if https://bitbucket.org/BitPuffin/linagl is good for you |
18:01:04 | eigenlicht | gradha: that's about opengl stuff, isn't it? |
18:01:10 | EXetoC | yes that is in babel |
18:01:10 | eigenlicht | also, nothing there actually |
18:01:35 | gradha | there is stuff like https://bitbucket.org/BitPuffin/linagl/src/fbb421f4e9eb39b2a2ddfc446937c9a375e2fa00/src/linagl/matrix.nim?at=default |
18:01:59 | gradha | doesn't seem to depend on opengl, maybe its purpose is to be used with it though |
18:02:05 | BitPuffin | :D |
18:02:16 | gradha | BitPuffin: defend yourselve! |
18:02:37 | BitPuffin | no why the fuck would a math library depend on opengl :P |
18:02:48 | gradha | because you can? |
18:02:49 | BitPuffin | it is intended to be used with opengl though |
18:02:55 | BitPuffin | but it doesn't call any opengl functions |
18:02:58 | BitPuffin | because that wouldn't make sense |
18:03:36 | EXetoC | you can tailor it towards OpenGL, but actually referencing OpenGL symbols would be silly :p |
18:03:44 | BitPuffin | yup |
18:03:46 | eigenlicht | I didn't even see the src directory at first :P not usd to bitbucket |
18:04:01 | BitPuffin | eigenlicht: that math library is gonna get a lot better in a few days |
18:04:05 | gradha | eigenlicht: just use babel instead: "babel install linagl" |
18:04:09 | eigenlicht | why lin_agl_ actually? |
18:04:11 | EXetoC | babel search math |
18:04:24 | EXetoC | I like the babel search functionality now that it doesn't require exact matches c(:)-< |
18:04:44 | BitPuffin | EXetoC: _lin_ear _a_lgebra for open_gl_ |
18:04:48 | BitPuffin | i mean eigenlicht |
18:04:48 | EXetoC | I'm always tired on fridays. tits |
18:05:13 | BitPuffin | or something like that |
18:07:05 | BitPuffin | eigenlicht: makes sense? :P |
18:07:25 | EXetoC | composability ftw in other words |
18:08:45 | BitPuffin | awye |
18:09:06 | EXetoC | speaking of composability... is the plan to create a re-usable engine first rather than coupling it with the game? |
18:10:09 | BitPuffin | EXetoC: you mean my plan? |
18:10:42 | EXetoC | BitPuffin: yeah |
18:16:47 | BitPuffin | EXetoC: 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:01 | EXetoC | some plans |
18:23:48 | * | brson joined #nimrod |
18:26:55 | BitPuffin | EXetoC: indeeders |
18:28:58 | * | CarpNet quit (Quit: Leaving) |
18:33:26 | * | filwit joined #nimrod |
18:34:50 | gradha | dom96: can you try http://dl.dropbox.com/u/145894/t/hehe.zip and see the permissions |
18:40:44 | * | OrionPK joined #nimrod |
18:43:38 | BitPuffin | eigenlicht: if your needs isn't to use it with opengl that is fine too. The library uses N-Dimensional matrices and vectors |
18:44:17 | BitPuffin | eigenlicht: 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:09 | dom96 | gradha: Seems the permissions are preserved. |
18:45:21 | EXetoC | bad zip client then perhas |
18:45:34 | EXetoC | not you obviously :p |
18:45:49 | * | enurlyx joined #nimrod |
18:45:52 | gradha | according to the man page I'm using infozip from 2008 |
18:46:18 | gradha | doesn't seem to be very fancy |
18:47:11 | gradha | hmm... maybe it's propietary? |
18:48:03 | BitPuffin | what are you guys on about? |
18:48:05 | * | fredmorcos quit (Quit: Leaving) |
18:48:40 | gradha | we are trying to find out why dom96 is using some zip generation method from the past |
18:48:47 | gradha | like from fat16 days or something |
18:50:18 | BitPuffin | lol |
18:50:24 | BitPuffin | dom96: why man why man |
18:50:27 | BitPuffin | why man |
18:52:13 | * | filwit quit (Quit: Leaving) |
18:52:21 | dom96 | I blame everyone except myself. |
18:52:37 | gradha | dom96: do you have 7za on your machine? |
18:52:53 | dom96 | gradha: on Windows sure, but i'm not currently on Windows. |
18:53:19 | gradha | presumably p7zip can create zip files, so I'd presume it supports execution bits too |
18:53:32 | gradha | it should be available through "apt-get search p7zip" or something fancy like that |
18:53:45 | BitPuffin | dom96: pacman -S 7z |
18:54:46 | gradha | 7za a file.zip -mx=9 -r directory |
18:55:29 | gradha | yes, it preserved the executable bit too |
18:55:48 | gradha | maybe the problem is with the build machine having some old not updated zip creation binary? |
18:55:53 | dom96 | nimbuild uses some GNU thing I think |
18:56:05 | BitPuffin | gzip? |
18:56:13 | gradha | that explains everything, you are not supposed to run GNU software |
18:56:33 | BitPuffin | gradha hates Free Software? |
18:56:40 | BitPuffin | who would have known |
18:56:45 | BitPuffin | Freedom hater!! |
18:56:50 | dom96 | 'zip' |
18:56:59 | gradha | BitPuffin: call me back when hurd is ready, please |
18:57:05 | BitPuffin | gradha: :P |
18:57:09 | BitPuffin | gradha: fuck the GPL though |
18:57:26 | dom96 | Hey, I worship the RMS. |
18:57:39 | BitPuffin | stallman is a hypocrite |
18:57:45 | gradha | BitPuffin: in my awesome days I wrote info help for the GNU tools |
18:58:08 | gradha | BitPuffin: it's like html but more convoluted, doesn't support anything but text and is a pain to write/setup |
18:58:20 | gradha | like man pages, only worse |
18:58:20 | BitPuffin | gradha: :P |
18:58:58 | gradha | IIRC some months ago they released a new version of the info program |
18:59:13 | gradha | I really couldn't believe my eyes, like "wtf, have these people not discovered html yet?" |
18:59:48 | gradha | even with a text browser like links or elinks html is much better/easier to write than info/man pages |
18:59:59 | gradha | but yeah, free software people like to be kept in the dark ages |
19:02:09 | EXetoC | fsf pplz or fs people in general? |
19:02:21 | BitPuffin | EXetoC: probably fs |
19:02:26 | EXetoC | cus im a free software dude and I'm more awesome than those punks innit |
19:02:31 | BitPuffin | but he means 100% fs ppl |
19:02:46 | BitPuffin | EXetoC: you still run proprietary software so you are not a free software dude |
19:02:52 | BitPuffin | stallman would weep for you |
19:02:57 | EXetoC | :/ |
19:02:59 | gradha | so fsf people are like 150% of fs people? |
19:03:05 | EXetoC | wut |
19:03:37 | BitPuffin | EXetoC: but that's fine, you don't wanna be like that anyway |
19:03:49 | gradha | nah, I don't care about free or not, but for some reason people supporting free software don't seem to like progress |
19:04:39 | BitPuffin | GPL does not comply with what freedom means to me. Why would a free license impose restrictions |
19:04:59 | EXetoC | I do care to some agree, but I'm not a zealot anymore |
19:05:26 | BitPuffin | you mean degree? |
19:06:12 | EXetoC | broken keyboard |
19:06:43 | BitPuffin | EXetoC: broken mind :P |
19:07:24 | gradha | GPL (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:56 | gradha | so nuke earth and reboot |
19:09:37 | BitPuffin | gradha: or just stop caring so fucking much and release your software into the public domain, so that everyone can profit with it |
19:12:27 | gradha | btw, what's the weekly reddit nimrod post we have to upvote? |
19:12:44 | BitPuffin | hmm |
19:12:46 | BitPuffin | good question |
19:12:51 | BitPuffin | I might be able to provide one for next week |
19:12:55 | BitPuffin | if I get this blog done |
19:14:14 | EXetoC | BitPuffin: nope broken keyboard |
19:14:43 | BitPuffin | EXetoC: but you can write e :P |
19:15:44 | EXetoC | yeah but it was broken at that very moment |
19:15:50 | BitPuffin | I just ordered field recording stuffs |
19:15:53 | BitPuffin | EXetoC: sure :D |
19:15:59 | BitPuffin | well not just |
19:16:02 | BitPuffin | a few minutes ago |
19:21:17 | EXetoC | I've been thinking about doing that, but everything requires monies these days |
19:22:09 | BitPuffin | EXetoC: cost around 3000 SEK what I ordered |
19:22:17 | BitPuffin | although I order some extra stuff |
19:22:21 | BitPuffin | mixing headphones etc |
19:22:28 | BitPuffin | so it all went for 5000 |
19:23:48 | BitPuffin | EXetoC: I bought Sony PCM M10 and Rode NTG-2 |
19:24:01 | BitPuffin | EXetoC: I can tell you if they were good if you consider them one day :p |
19:24:11 | gradha | so hows Stockholm? I'm getting a work offer from there, can't move at the moment |
19:24:18 | BitPuffin | shit |
19:24:42 | EXetoC | rly |
19:25:02 | EXetoC | BitPuffin: I never have money, but ok sure :p |
19:25:26 | BitPuffin | I don't live in sthlm though |
19:26:55 | gradha | I'll answer the recruiter: "guys told me on irc it's shit, so no thanks" |
19:27:19 | BitPuffin | gradha: where do you currently live? |
19:27:21 | EXetoC | I don't have anything to compare with really |
19:27:41 | gradha | BitPuffin: spain, the most prosperous country from the north of africa |
19:28:00 | BitPuffin | gradha banderas |
19:29:09 | BitPuffin | gradha: well if you enjoy ridiculous political drama and snob party culture you are gonna love stockholm |
19:29:58 | gradha | I 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:18 | BitPuffin | gradha: it's really only cold during winter |
19:30:36 | gradha | how many months does the winder last? |
19:30:47 | BitPuffin | 3-4 or so |
19:31:11 | EXetoC | but vitamin D is awesome, so take supplements :p |
19:31:17 | gradha | it's better than spain already, whre it's like one or two weeks, if at all |
19:31:35 | EXetoC | gradha: did you live in russia previously? |
19:32:01 | gradha | previously I lived in mexico, but I was too small to recall that |
19:35:48 | gradha | dom96: I was thinking of adding a "babel pkgpath" which would display the full path to the installed package, what do you think? |
19:36:14 | gradha | also maybe "babel binpath", but that gets flaky if there is more than a single binary inside a package |
19:36:28 | gradha | the purpose of the command is being able to do "cd `babel pkgpath whatever`" |
19:36:50 | gradha | and then you can read the readme, see the docs, etc, which now is missing from the amazing user experience |
19:37:11 | dom96 | gradha: hrm, yes. I like that. |
19:37:13 | gradha | AFAICS the windows port would change the current directory, is that possible? |
19:37:22 | dom96 | "babel binpath" is a bit pointless though, no? |
19:37:27 | dom96 | all binaries are in the same dir anyway |
19:37:47 | gradha | it's also not clear if binpath would point to the real binary or the symlink/bat file |
19:38:08 | EXetoC | then why do you have a polish name? weird... |
19:38:13 | EXetoC | j/k. chill dude |
19:38:32 | gradha | EXetoC: polish people are awesome, ask dom96 about it |
19:38:45 | dom96 | gradha: <3 |
19:40:32 | dom96 | gradha: 'which bin' |
19:41:03 | gradha | dom96: 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:09 | EXetoC | is it just me or are there quite a few polish people in the UK? |
19:41:14 | EXetoC | gradha: do you speak it? |
19:41:38 | gradha | EXetoC: only to other polish people, otherwise it's confusing |
19:41:50 | EXetoC | I can see why |
19:42:05 | dom96 | gradha: Well I think having the PATH updated is kind of a requirement for Babel anyway. |
19:42:35 | dom96 | EXetoC: Yep. Well, in Northern Ireland there sure is a lot. |
19:42:58 | BitPuffin | dom96: the new sockets stuff in jester is fucking awesome for workflow, thanks for fixing it :D |
19:43:01 | dom96 | Portuguese/Latvian/Lithuanian/Filipino etc too |
19:43:09 | dom96 | BitPuffin: np :D |
19:43:20 | dom96 | BitPuffin: Glad it works :) |
19:44:23 | BitPuffin | dom96: so far I haven't had any issues :D |
19:46:58 | EXetoC | is it compatible with the JS target? |
19:49:06 | * | dymk quit (Ping timeout: 252 seconds) |
19:49:24 | OrionPK | what new socket stuff in jester? |
19:52:26 | dom96 | OrionPK: REUSEADDR |
19:52:32 | OrionPK | ah |
19:53:16 | EXetoC | for not having to wait between restarts, right? |
19:54:36 | dom96 | yeah |
19:57:37 | EXetoC | using asyncio already eh? ok that's good. I'll have to re-build Nimrod yet again |
19:58:06 | * | dymk joined #nimrod |
19:59:38 | EXetoC | maybe a pull will do, but I'm installing through the package manager |
19:59:48 | OrionPK | jester's asyncio only works in linux |
20:00:00 | OrionPK | because of bugs in the httpserver module |
20:01:18 | EXetoC | ok |
20:10:41 | * | OrionPK quit (Ping timeout: 250 seconds) |
20:15:16 | EXetoC | dom96: is there anything in the OS module that might be useful when targeting JS? there's mostly path/file stuff in there |
20:15:34 | EXetoC | I'm trying to target JS while using Jester in case that wasn't clear |
20:16:59 | dom96 | I don't think so. What are you making? |
20:17:58 | EXetoC | dom96: I'm trying to run the example, which does compile with the C target now that I've upgraded Nimrod |
20:18:14 | dom96 | huh, 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:23 | EXetoC | dom96: 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:31 | EXetoC | so a simple shell script should do |
20:32:51 | EXetoC | weird innit |
20:43:34 | * | fredmorcos quit (Quit: Leaving) |
21:00:30 | EXetoC | my unimaginative brain is struggling with this, but I should have a working example in a minute |
21:04:49 | BitPuffin | OrionPK: so the async doesn't work on *BSD? |
21:04:55 | OrionPK | no idea |
21:05:23 | BitPuffin | OrionPK: so you were referring to windows then? |
21:05:29 | OrionPK | and OSX |
21:05:31 | dom96 | tbh i'm surprised the async httpserver works at all |
21:05:40 | BitPuffin | ah |
21:05:48 | BitPuffin | well OSX is BSD I guess |
21:08:21 | BitPuffin | dom96: it's a hack? |
21:08:50 | BitPuffin | missing workflow stuff in jester now would be automatic server restart |
21:09:20 | dom96 | BitPuffin: Recompilation times would be terrible I think |
21:09:25 | BitPuffin | and what else would be nice would be a way to automatically recompile javascript nimrod |
21:09:31 | BitPuffin | so you could write it all in nimrod |
21:09:56 | BitPuffin | dom96: well it could recompile and if that succeeded and is done, _then_ restart the server |
21:10:40 | dom96 | hrm, I suppose. But then I see myself refreshing it constantly and getting annoyed at the wait anyway. |
21:10:59 | BitPuffin | dom96: well at least it wins over doing it manually |
21:11:14 | dom96 | And when you're debugging something not knowing whether the server restarted could be disastrous |
21:11:22 | BitPuffin | dom96: and doesn't nimrod cache jester and stdlib stuff? |
21:11:41 | BitPuffin | it does |
21:12:06 | BitPuffin | in fact recompilation speed is really fast now that I am testing |
21:12:19 | BitPuffin | of course I'm only dealing with the demo app so far because I lost my data :/ |
21:12:45 | dom96 | yes, well it gets longer and longer by the time you import a couple of other modules. |
21:12:59 | BitPuffin | dom96: well those modules are only compiled once anyway |
21:13:32 | BitPuffin | and if you don't know if it has restarted yet just look at the console |
21:14:02 | BitPuffin | the point is to eliminate ctrl+c && nimrod c -r app.nim all the time |
21:14:08 | dom96 | Sure. I agree it would be a nice feature. |
21:14:20 | dom96 | We need a portable fsmonitor though |
21:14:31 | dom96 | and for that I need to finish new asyncio... |
21:14:46 | BitPuffin | get to work son :P |
21:14:49 | BitPuffin | I'm gonna work now |
21:15:12 | dom96 | Yeah, I should... |
21:15:55 | BitPuffin | dom96: 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:39 | EXetoC | I hack on Jester running in a browser lol jk |
21:17:47 | BitPuffin | :P |
21:17:53 | BitPuffin | actually that would be pretty awesome |
21:18:03 | BitPuffin | would enable some kind of web tutorial for jester |
21:18:16 | BitPuffin | but I guess first we need to be able to compile the compiler to javascript |
21:18:23 | dom96 | I don't think that would work. |
21:18:36 | dom96 | You can't create a listening socket using browser JS. |
21:18:37 | EXetoC | don't be so negative man |
21:18:43 | BitPuffin | says those who refuse to try |
21:19:39 | BitPuffin | there has to be some way to make something like jester://blabla avilable in the brewser |
21:19:49 | EXetoC | BitPuffin: 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:06 | BitPuffin | EXetoC: doesn't scale |
21:22:56 | fowl | what scales these days |
21:26:02 | * | fowl quit (Read error: Connection reset by peer) |
21:28:11 | * | bchar quit (Quit: leaving) |
21:28:16 | Araq | hi guys, anything important? |
21:30:04 | EXetoC | I'm just trying to figure out if I can attach onmousedown to some tag, when targeting JS |
21:30:29 | BitPuffin | Araq: a lot of things are important, why? |
21:30:47 | EXetoC | I'm tracing the uses of TEvent and trying to figure out what's going on |
21:30:51 | EXetoC | (dom module) |
21:30:55 | BitPuffin | #proc htmlLayout(title="BitPuffin", subtitle="", content=""): string = |
21:31:01 | EXetoC | nothing too important |
21:31:05 | BitPuffin | hmm why does that say Error: ')' expected |
21:39:54 | EXetoC | I 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:21 | BitPuffin | EXetoC: yeah I've had similar issues too |
21:40:26 | BitPuffin | the dom module is kind of borked |
21:40:31 | EXetoC | or if it's just incomplete |
21:40:47 | Araq | the dom module is OLD |
21:40:51 | Araq | fix it |
21:41:03 | BitPuffin | yeah it really needs fixing |
21:41:28 | BitPuffin | but seriously |
21:41:32 | BitPuffin | why am I getting das error |
21:44:45 | BitPuffin | a webgl module would also be nice |
21:44:52 | BitPuffin | and htmlgen updated to html5 tags |
21:48:46 | * | webskipper joined #nimrod |
21:52:08 | EXetoC | Araq: I might, but right now I can't even figure how it's tied to the JS backend |
21:53:08 | EXetoC | var window... |
21:55:09 | gradha | if 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:36 | gradha | I guess this is known, and will be fixed by the next awesome vm, right? |
21:55:39 | fowl | gradha, wow you're slow |
21:56:02 | fowl | gradha, you've been with us too long to be surprised that nimrod i sucks |
21:56:28 | gradha | I know, that's why I don't report these things, or idetools |
21:57:01 | Araq | well alloc/dealloc are not particularly easy to emulate ... |
21:57:15 | gradha | I 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:19 | gradha | who am I kidding, me reading newspapers… |
21:59:25 | * | brson joined #nimrod |
22:00:13 | fowl | whoops |
22:00:25 | fowl | proc SetTextureAlphaMod*(texture: PTexture; alpha: Uint8): SDL_Return {.importc: "SDL_GetTextureAlphaMod", discardable.} |
22:02:51 | EXetoC | wut |
22:03:19 | Araq | and that's why you should use c2nim :P |
22:03:40 | fowl | i do my wrappers by hand, you can feel the love that way |
22:05:07 | gradha | manly love, handcrafted |
22:05:12 | webskipper | what is diff between object and TObject ? |
22:05:37 | EXetoC | Araq: 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:53 | fowl | webskipper, TObject is the base, inheritable type you can inherit from |
22:06:23 | fowl | webskipper, object is a type that has fields (like a pascal record or c struct) |
22:06:24 | gradha | according to system.nim docs "TObject = object" |
22:06:24 | webskipper | fowl: ok, what about type |
22:06:25 | webskipper | TNode = ptr object ? |
22:06:39 | webskipper | like struct than ? |
22:06:44 | webskipper | ok |
22:07:17 | BitPuffin | EXetoC: try reading the source then instead of grepping >.< |
22:07:24 | gradha | TNode is an object pointer |
22:07:35 | Araq | EXetoC: well it's importc'ed and JS provides the global document variable |
22:09:16 | webskipper | can 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:55 | webskipper | its a bit low, with python and C I can creater bigger trees with depth > 20 |
22:10:54 | Araq | well your code is aweful |
22:11:10 | BitPuffin | hahahaha |
22:11:14 | Araq | obviously you need to allocate sizeof(TNode_S[]) |
22:11:17 | gradha | aweful = full of awesomes? |
22:11:47 | BitPuffin | yeah webskipper obviously :P |
22:11:54 | BitPuffin | DID YOU NOT KNOW THAT?!?!? |
22:12:19 | EXetoC | I'm clueless. might look at it again tomorrow |
22:12:26 | BitPuffin | isn't PNode a more appropriate name |
22:12:54 | gradha | webskipper: 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:04 | webskipper | its not my code ^^ |
22:13:09 | BitPuffin | I agree with webskipper |
22:13:09 | webskipper | my original code is in C |
22:13:11 | BitPuffin | I mean gradha |
22:13:14 | BitPuffin | >.< |
22:13:23 | webskipper | its translated by CarpNet |
22:13:55 | Araq | webskipper: well it's wrong |
22:14:08 | webskipper | why TNode_S[] ? |
22:14:17 | Araq | and indeed you shouldn't start with Nimrod by playing with 'cast' and 'alloc0' |
22:14:22 | EXetoC | webskipper: the code you showed me before ran just fine |
22:14:24 | fowl | webskipper, TNode_S is a pointer to an object, so its size is 8 bytes (sizeof(pointer)) |
22:14:38 | EXetoC | and the line numbers didn't even match up, so I don't know |
22:15:13 | fowl | webskipper, please read the tutorial |
22:15:55 | webskipper | node = (Node *) malloc( sizeof( struct Node_S ) ); works for me in C |
22:16:16 | fowl | webskipper, then use TNode and ptr TNode |
22:16:18 | fowl | .. |
22:16:25 | gradha | in C that's getting the size of the structure, not the size of a pointer to that structure |
22:16:30 | EXetoC | Araq: I just assumed that the current version of the dom module could actually be used for something |
22:16:31 | fowl | webskipper, read the tutorial anyways |
22:16:34 | fowl | webskipper, then the manual |
22:16:38 | webskipper | aiaiai |
22:16:38 | fowl | because nimrod != c |
22:16:43 | EXetoC | but it can't, right? in which case I'd have to implement a million things probably |
22:16:47 | gradha | webskipper: and if the docs are not enough, ask fowl |
22:16:59 | webskipper | cmon you redefined alloc ? |
22:17:27 | Araq | EXetoC: well it worked for anything I did with it |
22:17:31 | fowl | webskipper, would you allocate a chunk of memory the size of a pointer to this struct, to hold the data for the struct? |
22:17:35 | fowl | webskipper, that is what you're doing |
22:17:46 | fowl | webskipper, send me $15 and ill spend two hours helping you and fixing your code |
22:18:17 | fowl | and walking you through things that are documented |
22:18:29 | webskipper | fowl: youre reading from nimrod alloc ? |
22:18:39 | webskipper | fowl: tell about i mean |
22:18:42 | fowl | webskipper, no more free help |
22:19:01 | fowl | someone else might be up to it but im broke as a joke |
22:19:18 | Araq | fowl: I know you need the money, but that's not helpful. |
22:19:28 | Araq | webskipper: 'alloc' works like in C |
22:19:33 | fowl | Araq, well hes not listening so im not inclined to stress myself for him |
22:19:48 | webskipper | I guess its better to use OO variant than |
22:20:27 | BitPuffin | oh no now he really opened pandoras chest |
22:20:33 | Araq | webskipper: you do 'ptr object' and thus have not many ways left to get to the underlying object/struct |
22:20:41 | Araq | which you need for 'sizeof' |
22:20:48 | Araq | just like you do in C |
22:22:04 | BitPuffin | don't you C that |
22:22:13 | EXetoC | Araq: but did you have to use it in conjunction with an xml/html module or something? |
22:22:15 | webskipper | I try to understand the syntax - if its not comparable with structs I will recode it. |
22:23:37 | gradha | webskipper: 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:46 | BitPuffin | Araq: 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:54 | BitPuffin | since I guess that would only be the size of the ptr |
22:24:16 | EXetoC | webskipper: [] 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:36 | EXetoC | I assume that the same principle applies when said symbol is a type rather than an instance |
22:24:44 | Araq | BitPuffin: what's the alternative? introducing some inconsistency for the poor guys who deal with low level stuff but shouldn't? |
22:25:07 | fowl | EXetoC, 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:19 | EXetoC | k |
22:25:22 | * | markhend joined #nimrod |
22:25:25 | * | gradha notices the cat alarm |
22:25:29 | Araq | hi markhend welcome |
22:26:44 | BitPuffin | Araq: well both could work, just saying that sizeof(PNode) is useless ay? |
22:27:01 | Araq | why is it useless? |
22:27:10 | BitPuffin | well is it useful? |
22:27:35 | BitPuffin | doesn't it just return the size of the address? |
22:27:43 | Araq | so? |
22:27:49 | BitPuffin | is that ever useful? |
22:27:55 | Araq | yes? |
22:27:58 | BitPuffin | when? |
22:28:09 | gradha | when you want to know the size of an address |
22:28:11 | Araq | when you're in a generic mood? |
22:28:27 | BitPuffin | o_O |
22:28:45 | BitPuffin | I mean what would be a real world use for it |
22:28:46 | webskipper | gradha: ty, what about "new(release)" line 14 ? did you forget something there ? |
22:28:58 | gradha | webskipper: what did I forget? |
22:29:17 | webskipper | gradha: result is not defined there |
22:29:26 | Araq | proc allocArray[T](size: int): ptr array [maxSize, T] = cast[...](alloc(sizeof(T) * size)) |
22:29:41 | Araq | according to you this should fail for T = ptr int |
22:29:43 | gradha | webskipper: huh? it is, the result of the proc |
22:30:10 | gradha | webskipper: result is the implicit variable of the proc |
22:30:14 | BitPuffin | Araq: are you talking to me? |
22:30:18 | EXetoC | webskipper: see the definition of 'new' in system.nim |
22:30:18 | Araq | yes |
22:30:19 | gradha | webskipper: and you have defined the type of the proc in the signature |
22:31:05 | gradha | webskipper: 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:17 | gradha | webskipper: so it already knows the type |
22:31:38 | BitPuffin | Araq: 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:44 | BitPuffin | and if not then maybe they should be equal |
22:31:48 | BitPuffin | but clearly they shouldn't |
22:32:25 | gradha | webskipper: 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:25 | BitPuffin | hmm |
22:33:23 | EXetoC | isn't that basically the same as "sizeof(object) == sizeof(ref object)"? |
22:34:22 | webskipper | gradha: k, I try to understand the semantic of "new(result)" |
22:34:32 | Araq | gradha: you're not up to date :P you can do: |
22:34:53 | webskipper | gradha: because result is not defined before, its irritating me |
22:35:00 | Araq | result = PNode(id: counter, child_l: l, child_r: r) |
22:35:13 | gradha | webskipper: all procs which return anything have a magical result variable automatically defined |
22:35:22 | fowl | webskipper, you know what would clear things up for you? reading the tutorial and/or manual.. |
22:35:25 | webskipper | Araq: thats not written there... :D |
22:35:43 | webskipper | magic... |
22:35:51 | * | markhend_ joined #nimrod |
22:36:08 | fowl | webskipper, from the documentation for new(): creates a new object of type T and returns a safe (traced) reference to it in a. |
22:36:14 | webskipper | fowl: stop it please |
22:36:17 | * | markhend quit (Ping timeout: 250 seconds) |
22:36:38 | fowl | fine, 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:14 | webskipper | fowl: 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:15 | gradha | webskipper: at http://nimrod-code.org/tut1.html#result-variable you have explained all the magic you are lacking |
22:37:35 | gradha | webskipper: fowl is complaining that this is explained pretty early, yet you are already trying to do "advanced" stuff |
22:37:59 | gradha | webskipper: 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:25 | gradha | webskipper: sometimes to learn a new language it is best to unlearn the ones you know |
22:38:48 | webskipper | gradha: i dont think that it is a good idea to have a variable never viewable before - but its only my view. |
22:39:15 | webskipper | gradha: i dont agŕee about your last sentence |
22:39:27 | gradha | webskipper: well, you know that C actually has to store the return value somewhere? that's the result variable, which nimrod makes available |
22:39:37 | EXetoC | explicit is often better than implicit, but I see why it's convenient so I approve |
22:39:42 | gradha | webskipper: you've been using an implicit return variable all your life, you just haven't though of it yet |
22:40:22 | BitPuffin | gradha: http://25.media.tumblr.com/db649f4441940d7fcbbc2bd5d6646bc1/tumblr_mjqawy8GO51rmsmhho1_250.gif |
22:40:28 | webskipper | gradha: you should not expect that users have a C backend. |
22:40:32 | webskipper | background |
22:40:38 | EXetoC | I don't know if that is conceptually correct in the case where the return keyword is used |
22:40:54 | gradha | webskipper: well, tell me of any language that returns stuff without an implicit variable |
22:41:00 | EXetoC | it's available to the caller though |
22:41:01 | webskipper | dont know about a magic result variable in C - thats new for me too I have to say. |
22:41:07 | BitPuffin | Well at least I thought it was funny |
22:41:16 | BitPuffin | That's all that matters :'( |
22:41:53 | webskipper | gradha: python, java, ?. write "return result" ? does it work ? |
22:42:05 | gradha | webskipper: 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:28 | gradha | brb |
22:43:56 | BitPuffin | webskipper: 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:21 | Araq | webskipper: 'result' implements what's in C++ "named return value optimization" |
22:44:41 | Araq | apart from that Delphi and Eiffel have an implicit 'result' and it simply works |
22:45:50 | Araq | and it's confusing perhaps for like 5 minutes IMHO |
22:46:09 | BitPuffin | I dunno |
22:46:13 | BitPuffin | even less than that tbh |
22:46:18 | BitPuffin | it was like "oh!" |
22:46:21 | BitPuffin | and then it was fine |
22:46:24 | EXetoC | that's very transparent though, so I don't know if it's a good analogy |
22:47:05 | BitPuffin | Araq: does it poop out if you do var result in a proc? |
22:47:13 | BitPuffin | or does it just "shadow" the implicit one |
22:47:13 | EXetoC | everyone learns differently, and some are not the best english speakers |
22:47:15 | webskipper | Araq: but its bad style in my view :D |
22:47:39 | EXetoC | you should've seen me when I first started programming. I was like "functions? wut?" |
22:47:40 | webskipper | Araq: Should be there a clear paradigma, no magic |
22:48:01 | BitPuffin | EXetoC: yeah for sure |
22:48:46 | BitPuffin | webskipper: no magic = binary code |
22:48:53 | EXetoC | lots of things are magic already if you don't know the language |
22:48:59 | webskipper | Araq: If I had a time back machine I would ask my teacher now "what about the predefined result variable..." whooot.... :D |
22:49:30 | BitPuffin | keywords are magic more or less |
22:49:35 | BitPuffin | and syntax even |
22:49:52 | BitPuffin | well even binary is magic |
22:50:01 | BitPuffin | because why does that register mean that |
22:50:06 | BitPuffin | why is that implicitly the way it is |
22:50:42 | BitPuffin | http://i.imgur.com/ChHNZ.gif |
22:50:43 | webskipper | Is there a list of keywords for nimrod ? |
22:50:56 | BitPuffin | webskipper: yes in the manual |
22:51:32 | EXetoC | webskipper: ok that doesn't make any sense. there isn't one way to do anything |
22:51:48 | EXetoC | if so, then we'd all be happy with Cobol or something like that |
22:52:09 | Araq | webskipper: http://nimrod-code.org/theindex.html search for "keywords" |
22:52:52 | webskipper | Araq: not in list ? |
22:52:58 | webskipper | Araq: result ? |
22:53:14 | BitPuffin | webskipper: http://nimrod-code.org/manual.html#identifiers-keywords |
22:53:23 | BitPuffin | ah |
22:53:33 | Araq | "result" is no keyword |
22:53:44 | webskipper | raise ref return |
22:53:48 | Araq | "result" is no keyword |
22:53:53 | webskipper | WHY ? |
22:53:56 | webskipper | my god |
22:54:08 | Araq | so that you can do: |
22:54:10 | EXetoC | it's an implicit variable |
22:54:28 | webskipper | not viewable for the user, fine |
22:54:37 | Araq | proc aggregate(result: var string) = ... |
22:54:56 | Araq | it's much better for refactorings if it's no keyword |
22:57:12 | webskipper | btw gradha, your version works fine, ty |
22:57:27 | gradha | webskipper: 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:26 | gradha | webskipper: anyway you can ignore result if it is confusing and simply use return, nothing bad is going to happen |
22:59:02 | webskipper | gradha, simply using return I prefer :D |
22:59:12 | webskipper | gradha, I am human, no machine :D |
22:59:42 | gradha | webskipper: good to hear, you will surely love playing https://www.youtube.com/watch?v=yMqL1iWfku4 in the background while you code |
22:59:58 | Araq | I know nobody who doesn't use "result" but *shrug* |
23:00:18 | EXetoC | webskipper: but apparently everyone else is |
23:00:26 | EXetoC | since we're able to comprehend |
23:00:40 | Araq | you also might get less efficient code this way fyi |
23:03:09 | EXetoC | it's good to know what people think, but feel free to re-evaluate when you know the language a little bit better. |
23:03:37 | EXetoC | result has allowed my functions to be a little more readable at times |
23:03:43 | EXetoC | ok I'm done |
23:04:06 | gradha | EXetoC: so when are you releasing it? |
23:04:18 | EXetoC | wut |
23:04:36 | gradha | EXetoC: didn't you mean with "I'm done" you have finished your latest amazing nimrod software? |
23:05:19 | gradha | I'm still debugging why nimcache takes a funny path in my ouroboros version of the compiler |
23:05:30 | gradha | no fun to recompile for each tweak |
23:05:45 | EXetoC | no, I rarely write anything useful |
23:07:03 | * | Amrykid quit (Excess Flood) |
23:07:27 | * | Amrykid joined #nimrod |
23:08:49 | BitPuffin | OrionPK: sha1 plz ;_; |
23:08:54 | BitPuffin | I need it xD |
23:08:59 | OrionPK | u need to use it? |
23:09:16 | BitPuffin | yeah, well I guess I could copy it but it would be nice to have it in babel |
23:09:42 | OrionPK | spose.. |
23:11:47 | BitPuffin | dom96: is quick to merge |
23:11:49 | BitPuffin | I hope :P |
23:12:12 | gradha | BitPuffin: it depends on the phase of the moon |
23:12:30 | BitPuffin | gradha: yup |
23:13:42 | dom96 | Actually my behaviour is pretty predictable. |
23:13:51 | dom96 | Almost scarily so. |
23:13:56 | gradha | dom96: surely you jest |
23:14:50 | * | gradha thinks what could rhyme with ouroboros while it compiles |
23:15:30 | MFlamer | why can't I de ref a pointer with []? |
23:15:46 | MFlamer | I thought I did this all the time |
23:16:53 | Araq | yeah well it doesn't work for types yet |
23:17:37 | * | gradha looks at the moon phase, then looks at dom96 |
23:19:04 | MFlamer | so I gotta cast to a ptr (type) and then deref? |
23:19:52 | MFlamer | It would be a bit much to expect it to come back typed |
23:20:07 | MFlamer | pointer is like void |
23:21:59 | EXetoC | void pointer? :p |
23:23:36 | MFlamer | yeah |
23:28:22 | Araq | no you can't deref a *type* yet |
23:28:31 | Araq | as in sizeof(pint[]) |
23:29:53 | EXetoC | mmh, pint |
23:30:48 | OrionPK | there, send a pull request for sha1 |
23:30:53 | OrionPK | sent* |
23:31:56 | gradha | hopefully the official sizeof(pint[]) is measured in guiness |
23:32:38 | BitPuffin | Araq: using [] as the last argument to db_sqlite.Exec seems common enough that maybe it should be the default value? |
23:35:57 | Araq | hmm yeah. in fact, I thought I made it work already |
23:36:59 | BitPuffin | oh maybe in the git version |
23:37:03 | BitPuffin | I haven't checked |
23:37:51 | BitPuffin | nope no default value there either |
23:37:59 | BitPuffin | but maybe it works because of some varargs thing? |
23:38:13 | Araq | varargs support no args at all, yeah |
23:39:46 | BitPuffin | wait a minute is this a regression? |
23:40:27 | BitPuffin | https://gist.github.com/BitPuffin/7379399 |
23:40:32 | * | xenagi joined #nimrod |
23:40:35 | BitPuffin | thanks worthless github syntax highlighting |
23:40:38 | gradha | Araq: why was getApplicationDir deprecated in favour of getAppDir? length? |
23:41:15 | Araq | gradha: consistency with the naming conventions |
23:41:34 | BitPuffin | nimforum even does % on the TSqlQuery |
23:41:39 | Araq | BitPuffin: no, you're doing it wrong |
23:41:50 | BitPuffin | how so Araq ? |
23:41:53 | Araq | there is no % for TSql |
23:42:15 | BitPuffin | Araq: do I need extra ()? or what? |
23:42:33 | xenagi | BitPuffin, you know that syntax is... um configurable, right? |
23:42:34 | BitPuffin | ah yeah I do |
23:42:49 | gradha | you can use % first, then wrap that inside an TSql |
23:42:52 | BitPuffin | xenagi: I did configure it to be nimrod |
23:42:58 | BitPuffin | gradha: yeah I was missing () |
23:43:13 | BitPuffin | between sql and """ there should be ( |
23:43:18 | BitPuffin | and then ) before the , |
23:44:40 | BitPuffin | hmm |
23:44:43 | BitPuffin | invalid format string |
23:44:48 | BitPuffin | oh |
23:44:51 | BitPuffin | missing the # |
23:44:53 | BitPuffin | silly me |
23:47:20 | * | enurlyx quit (Quit: Nettalk6 - www.ntalk.de) |
23:50:44 | gradha | Araq: the logic for compiler/options.getGeneratedPath does weird things for the nimcache directory when I install the compiler in ~/bin |
23:51:50 | BitPuffin | Araq: it isn't legal to but operator symbols in a proc name right? |
23:52:27 | BitPuffin | other than for operators I mean |
23:52:35 | BitPuffin | and without having to call it like `this?` |
23:53:17 | Araq | gradha: quite possible. please fix it |
23:53:50 | Araq | BitPuffin: yeah. nimrod is not ruby. question marks in identifiers are childish |
23:54:39 | BitPuffin | Araq: alrighty then. Well I think they can be descriptive but they are not essential, and they probably complicate parsing quite a bit |
23:55:08 | Araq | we have a type system to tell the people it returns a bool |
23:55:34 | BitPuffin | well, more to tell the compiler it returns a bool |
23:57:14 | Araq | so are you telling me you don't read prototypes either? |
23:57:22 | webskipper | do we have an eclipse plugin (syntax highlighting) for nimrod ? |
23:57:39 | Araq | I'm beginnung to understand why you guys seem to be confused all the time ... |
23:58:02 | BitPuffin | Araq: I do when I write code, but not always when i read code |
23:58:22 | BitPuffin | if I didn't read the prototype i wouldn't even know that a proc existed and what parameters it took |
23:58:27 | BitPuffin | so it's a weird assumption to make |
23:58:30 | Araq | yeah well when I read code I have something which I call "context" |
23:58:47 | Araq | like 'if foo(a, b)' # hm, perhaps foo returns a bool here |
23:59:26 | BitPuffin | Araq: could also return an object and the if would pass if it wasn't nil |
23:59:42 | Araq | ? |
23:59:51 | webskipper | isset() |
23:59:58 | Araq | 'if' only works with bool unless you defined a converter |