00:03:27 | Joe_knock | Araq: Are you familiar with small web-based projects? |
00:03:28 | * | darkf joined #nimrod |
00:04:05 | * | bjz quit (Ping timeout: 244 seconds) |
00:13:46 | * | xenagi joined #nimrod |
00:20:39 | Onionhammer | Joe_knock you referring to small web-based projects in nim? |
00:28:25 | Joe_knock | Onionhammer: Yeah |
00:33:38 | willwillson | what project are you working on joe? You seem to need very high performance! :D |
00:33:45 | * | DiffuseStorm quit (Remote host closed the connection) |
00:34:07 | Joe_knock | willwillson: More so the case of being miserly with server costs :P |
00:35:17 | Joe_knock | I am currently trying to mimick some of my flask apps in jester (to see how it works). |
00:36:58 | willwillson | can't say I've tried jester yet, certainly looks interesting though... |
00:37:29 | willwillson | did you benchmark the async branch? |
00:38:01 | Joe_knock | If python has flask and that has Jinja2, we need Nimja3 :P |
00:40:31 | willwillson | i thought emerald templating looked interesting: https://github.com/flyx/emerald |
00:41:06 | * | Sembei quit (Quit: WeeChat 1.1-dev) |
00:41:37 | Joe_knock | oh there is 1!!! |
00:41:39 | Joe_knock | awesome |
00:41:49 | willwillson | there are a few :D |
00:42:16 | willwillson | https://github.com/idlewan/jade-nim |
00:43:01 | Joe_knock | I like how they're all "started" and then forgotten about :'D |
00:44:16 | willwillson | maybe that just means that they are stable... |
00:45:07 | Joe_knock | emerald: "Emerald is a macro-based type-safe templating engine for producing well-formed HTML 5 web pages with Nimrod. It's currently under development. Most features are still missing." :P |
00:46:20 | * | Joe_knock is now known as Joe_knock_afk |
00:46:22 | willwillson | I guess it was wishful thinking! |
00:46:44 | * | Joe_knock_afk is now known as Joe_knock |
00:47:07 | Joe_knock | I am trying to go back to commit 1 of jinja2, but github is not friendly like that. |
00:47:12 | * | Joe_knock is now known as Joe_knock_afk |
00:49:47 | willwillson | I take it you've seen stdtmpl: http://build.nimrod-lang.org/docs/filters.html ? |
01:00:32 | * | brson quit (Quit: leaving) |
01:08:53 | * | noam quit (Ping timeout: 260 seconds) |
01:14:01 | * | brson joined #nimrod |
01:14:01 | * | brson quit (Client Quit) |
01:15:14 | * | Joe_knock_afk is now known as Joe_knock |
01:15:23 | Joe_knock | willwillson: Thanks for that link. |
01:15:32 | * | q66 quit (Quit: Leaving) |
01:16:57 | willwillson | no worries, you might want to check out https://github.com/nimrod-code/nimforum to see it in action |
01:18:27 | Joe_knock | are you a newbie to static languages/nimrod? willwillson |
01:19:20 | willwillson | pretty much :D |
01:23:42 | Joe_knock | aah so I'm not alone :P |
01:46:02 | * | brson joined #nimrod |
01:46:04 | * | brson quit (Client Quit) |
01:46:12 | * | brson joined #nimrod |
01:51:16 | * | Celestic quit (Ping timeout: 246 seconds) |
01:54:09 | * | francisl joined #nimrod |
02:23:12 | * | willwillson quit (Read error: Connection reset by peer) |
02:34:12 | * | EXetoC quit (Remote host closed the connection) |
02:38:53 | * | Joe_knock quit (Ping timeout: 240 seconds) |
02:43:24 | * | fowl joined #nimrod |
02:58:14 | * | zahary1 joined #nimrod |
02:59:51 | * | zahary quit (Ping timeout: 246 seconds) |
03:27:48 | * | quasinoxen joined #nimrod |
03:31:22 | * | flaviu1 quit (Ping timeout: 240 seconds) |
03:58:22 | * | brson quit (Quit: leaving) |
04:18:15 | * | xenagi quit (Quit: Leaving) |
04:20:20 | * | noam joined #nimrod |
04:22:00 | * | saml_ joined #nimrod |
04:23:21 | * | noam quit (Client Quit) |
04:24:26 | * | noam joined #nimrod |
04:37:33 | * | Demos quit (Read error: Connection reset by peer) |
05:07:02 | * | BlaXpirit joined #nimrod |
05:09:33 | * | nande quit (Remote host closed the connection) |
05:10:42 | * | francisl quit (Quit: francisl) |
05:40:55 | * | vendethiel quit (Quit: q+) |
05:41:38 | * | saml_ quit (Quit: Leaving) |
05:44:27 | * | dirkk0 joined #nimrod |
05:50:30 | * | dirkk0 quit (Quit: Leaving) |
06:11:08 | * | rpag joined #nimrod |
06:17:27 | * | dirkk0 joined #nimrod |
06:33:42 | * | dirkk0 quit (Quit: Leaving) |
07:03:27 | * | fowl quit (Ping timeout: 246 seconds) |
07:43:02 | * | Matthias247 joined #nimrod |
07:46:25 | * | vissborg quit (Remote host closed the connection) |
07:46:29 | * | johnsoft quit (Ping timeout: 260 seconds) |
07:46:44 | * | johnsoft joined #nimrod |
07:48:07 | * | vissborg joined #nimrod |
07:53:36 | * | BlaXpirit quit (Quit: Quit Konversation) |
08:09:47 | * | johnsoft quit (Ping timeout: 245 seconds) |
08:10:34 | * | johnsoft joined #nimrod |
08:16:15 | * | johnsoft quit (Ping timeout: 246 seconds) |
08:17:03 | * | johnsoft joined #nimrod |
08:17:44 | * | noam quit (Ping timeout: 260 seconds) |
08:36:01 | * | Matthias247 quit (Read error: Connection reset by peer) |
08:37:23 | * | skyfex quit (Quit: Computer has gone to sleep.) |
08:37:55 | * | skyfex joined #nimrod |
09:20:35 | * | kuzy000_ joined #nimrod |
09:23:54 | * | noam joined #nimrod |
09:35:23 | * | jasondotstar joined #nimrod |
09:38:26 | * | DiffuseStorm joined #nimrod |
10:17:35 | * | BitPuffin joined #nimrod |
10:29:01 | * | bjz joined #nimrod |
10:41:25 | * | bjz quit (Read error: Connection reset by peer) |
10:41:28 | * | bjz_ joined #nimrod |
10:46:03 | * | Rational joined #nimrod |
10:46:37 | * | DiffuseStorm left #nimrod ("Leaving") |
10:58:10 | * | pafmaf joined #nimrod |
10:59:38 | * | pafmaf quit (Client Quit) |
11:30:39 | * | BlameStross quit (Ping timeout: 272 seconds) |
11:42:32 | * | BlaXpirit joined #nimrod |
11:48:26 | Araq | ping Varriount_ |
12:06:22 | * | bjz_ quit (Quit: Textual IRC Client: www.textualapp.com) |
12:06:40 | * | bjz joined #nimrod |
12:22:15 | * | BitPuffin` joined #nimrod |
12:22:32 | * | BitPuffin quit (Quit: See you on the dark side of the moon!) |
12:23:42 | * | BitPuffin` is now known as BitPuffin |
12:33:28 | * | Trustable joined #nimrod |
13:03:32 | * | darkf quit (Quit: Leaving) |
13:27:05 | * | untitaker quit (Ping timeout: 272 seconds) |
13:31:01 | * | prosper_ joined #nimrod |
13:33:59 | * | untitaker joined #nimrod |
13:37:17 | * | askatasuna joined #nimrod |
13:49:26 | * | askatasuna quit (Ping timeout: 258 seconds) |
13:50:22 | * | fowl joined #nimrod |
14:28:21 | * | askatasuna joined #nimrod |
14:34:17 | * | prosper__ joined #nimrod |
14:34:59 | * | Demos joined #nimrod |
14:35:13 | * | prosper_ quit (Read error: Connection reset by peer) |
15:04:15 | * | io2 joined #nimrod |
15:18:11 | * | perturbation joined #nimrod |
15:22:28 | * | prosper__ quit (Remote host closed the connection) |
15:33:39 | * | prosper_ joined #nimrod |
15:41:22 | * | quasinoxen quit (Ping timeout: 258 seconds) |
15:44:31 | * | quasinoxen joined #nimrod |
15:52:09 | * | woodgiraffe joined #nimrod |
15:57:20 | * | Joe_knock joined #nimrod |
15:57:31 | * | Joe_knock quit (Changing host) |
15:57:31 | * | Joe_knock joined #nimrod |
16:07:02 | * | BlaXpirit quit (Quit: Quit Konversation) |
16:08:40 | * | BlaXpirit joined #nimrod |
16:09:52 | * | prosper_ quit (Remote host closed the connection) |
16:10:13 | * | prosper_ joined #nimrod |
16:34:00 | * | q66 joined #nimrod |
16:37:57 | * | prosper_ quit (Read error: Connection reset by peer) |
16:38:26 | * | prosper_ joined #nimrod |
16:38:45 | perturbation | is there a good reason to favor using {.dynlib, nodecl.} pragmas for wrapping C libraries over using {.header.}? More portable (don't need header files?) |
16:39:14 | * | Joe_knock quit (Quit: Leaving) |
16:39:49 | Araq | yeah |
16:40:09 | Araq | that's why I prefer .dynlib, I don't need to have headers around |
16:40:36 | Araq | plus .header won't work with an LLVM backend |
16:41:26 | perturbation | good to know - thanks |
16:43:23 | Araq | btw you shouldn't use .nodecl |
16:43:30 | Araq | it's very rarely necessary |
16:43:59 | Araq | most code out there uses it because it used to be necessary |
16:44:21 | perturbation | hmmm... I was getting memory leaks without it when I checked with valgrind |
16:44:39 | Araq | that makes no sense whatsoever |
16:44:55 | Araq | and checking with valgrind is quite broken anyway |
16:45:24 | perturbation | s/memory leaks/'still accessible memory'/ |
16:48:03 | * | Joe_knock joined #nimrod |
16:55:09 | perturbation | tested with clang and valgrind still doesn't complain... am I lucky :) ? what's wrong with nodecl? |
16:55:57 | perturbation | oh |
16:56:09 | perturbation | I'm giving the imported stuff the same names as in the header file |
16:56:11 | perturbation | that's why |
17:00:02 | * | wkoch joined #nimrod |
17:01:30 | * | wkoch quit (Client Quit) |
17:04:24 | * | prosper_ quit (Remote host closed the connection) |
17:16:48 | woodgiraffe | I'm trying to loop over the fields of a type, having access to their name and type, in a template/macro - any pointers? |
17:23:30 | * | Jehan_ joined #nimrod |
17:27:18 | Araq | woodgiraffe: usual way is to use system.fieldPairs and overloading instead of a macro |
17:27:38 | Araq | an immediate macro can access the type as the AST |
17:28:00 | Araq | and then you can do stuff, but there is no type API yet |
17:28:58 | woodgiraffe | Araq: thanks, will look into it |
17:32:20 | * | perturbation quit (Quit: Leaving) |
17:38:46 | * | perturbation joined #nimrod |
17:40:25 | * | Fran__ joined #nimrod |
17:42:34 | * | enquora joined #nimrod |
17:44:02 | * | Francisco quit (Ping timeout: 245 seconds) |
17:46:30 | perturbation | I'm going crazy - I'm getting a double free (or 'invalid read of size 4') when trying to call a clean-up function on what should be non-GC'd memory and Araq should be right about not needing 'nodecl' but it's broken ('still accessible') without it |
17:46:39 | perturbation | can I post a gist and someone can take a look? |
17:46:49 | Jehan_ | perturbation: Sure. |
17:47:10 | Jehan_ | No promises that I'll actually be able to help, though, but I can try. |
17:48:29 | perturbation | https://gist.github.com/singularperturbation/b48c2c6234a17c188aaa |
17:48:55 | perturbation | thanks Jehan! |
17:51:52 | Jehan_ | Hmm, you call mkd_cleanup() even if mkd_in() returned nil? |
17:52:42 | perturbation | hmmm... yeah. That should be fixed |
17:53:21 | perturbation | but it *does* output formatted HTML, so mkd_in() should be returning a PMMIOT |
17:55:46 | * | Matthias247 joined #nimrod |
17:57:13 | Jehan_ | I'm still sorting a few things out, but here's how the interface works: |
17:57:41 | Jehan_ | using dynlib and passL:-lwhatever are mutually exclusive. |
17:58:34 | Jehan_ | If you declare a proc as dynlib, Nim will grab the lib with dlopen(), look up the symbols in there, and use the function pointers to call them. |
17:59:23 | Jehan_ | If you mix and match dynlib and implicit use of passL, this may, depending on how DLLs work on your OS, create runtime confusion. |
17:59:33 | perturbation | good to know |
18:00:26 | Jehan_ | What nodecl does in conjunction with dynlib is to assume that this proc will not go through the dlopen mechanism. |
18:00:43 | Jehan_ | (I'm not sure if that's intended, but that's what happens.) |
18:01:31 | Jehan_ | But that's no different from not using dynlib at all in the importc pragma. |
18:03:00 | Jehan_ | But in general, all importc procs should have the same pragma. This is best done using either {.push …} and {.pop.} or declaring a custom pragma. |
18:04:05 | perturbation | I'll give it another look... it compiles fine (removing the passL and nodecl pragmas, with just dynlib) but now leaks more memory |
18:04:12 | perturbation | two steps forward, eh? :) |
18:05:45 | Araq | you need to run it in a loop to see if it leaks |
18:06:04 | Araq | it could simply cache stuff, you know |
18:06:58 | Jehan_ | Also, if you use nodecl, there will not actually be a C prototype if you use dynlib. |
18:07:47 | Jehan_ | In particular, that means that a function that returns a 64-bit value or a pointer will instead be assumed to return a 32-bit int on most 64-bit architectures. |
18:08:12 | Jehan_ | "nodecl" means: I provide a C prototype myself somewhere (e.g., through {.emit.}). |
18:08:55 | * | johnsoft quit (Ping timeout: 272 seconds) |
18:09:07 | perturbation | I took out nodecl (didn't realize it conflicted with dynlib) |
18:09:12 | * | johnsoft joined #nimrod |
18:09:34 | Jehan_ | Honestly, I hadn't know that myself until I looked at the generated code. :) |
18:09:39 | Jehan_ | known* |
18:18:16 | * | EXetoC joined #nimrod |
18:46:56 | * | willwillson joined #nimrod |
18:58:20 | perturbation | ok - so markdown() calls mkd_cleanup() internally - it's not needed to call directly - so that solves that mystery |
19:00:40 | perturbation | now I just need to figure out where I'm leaking memory / do some more cleanup |
19:00:46 | perturbation | thanks Jehan, Araq |
19:03:02 | Onionhammer | Joe_knock sorry i disappeared yesterday before I could reply.. but you should check out nim-templates |
19:03:10 | Onionhammer | https://github.com/onionhammer/nim-templates |
19:03:41 | Joe_knock | Onionhammer: No probs. Thanks for the link. |
19:03:50 | Onionhammer | also Jester |
19:04:18 | Onionhammer | my site is built on jester/nim-templates with nginx web server |
19:04:21 | Joe_knock | I'd really like to see what web apps have been built so far with Nim. |
19:04:43 | Onionhammer | │ untitaker │13:12:56 +bastard_ | I can now import and export .mdls straight from Milkshape3d │ |
19:04:43 | Joe_knock | Onionhammer: Link? |
19:04:44 | Onionhammer | 13:18:16 --> | EXetoC ([email protected] |
19:04:47 | Onionhammer | erm |
19:04:49 | Onionhammer | oops |
19:04:52 | Onionhammer | http://www.eoleary.me/Blog/The-Templates-Library |
19:05:05 | * | Fran__ is now known as Francisco |
19:05:34 | Onionhammer | it's hosted on a cubox-i, so not a powerhouse server |
19:06:01 | Joe_knock | Onionhammer: Is it running on an SPA or is it that fast?? |
19:06:17 | Onionhammer | hmm? |
19:06:35 | Onionhammer | it's not an SPA |
19:06:41 | Onionhammer | it uses ajax to retrieve other articles |
19:07:07 | Onionhammer | but then it also changes the URL so if you refresh ur still at the same url |
19:07:22 | Joe_knock | aah okay. I figured there was some JS involved. |
19:07:27 | Onionhammer | yep |
19:08:06 | Joe_knock | Onionhammer: Have you successfully built an API with Jester? |
19:08:08 | Onionhammer | it will be even faster once the new asyncio stuff is stable |
19:08:16 | Onionhammer | built an API? |
19:08:31 | Joe_knock | Yes, for eg. a CRUD app |
19:08:56 | Onionhammer | I haven't done a CRUD app in nim/jester |
19:09:08 | Onionhammer | but are you asking about writing a web service or something? |
19:10:05 | Joe_knock | Onionhammer: Yeah. It specifies that Jester is similar to Sinatra which is similar to Flask. So using some of my flask code, I want to build the same API in nim/jester |
19:10:43 | Onionhammer | i've never used sinatra/flask etc, I'm primarily asp.net/mvc at work |
19:10:54 | Onionhammer | so there's a terminology gap here ;) |
19:11:29 | Joe_knock | aah I see :P Are you familiar with RESTful services though? |
19:11:31 | Onionhammer | it would be pretty easy to write a JSON webservice or something though.. |
19:11:54 | Onionhammer | yeah that would be easy |
19:12:04 | Onionhammer | the hard part woudl be the logic |
19:12:32 | Onionhammer | you can do routes in jester like get "applications/delete/@id" |
19:12:42 | Onionhammer | and the @id becomes a variable in the request handler |
19:12:57 | Joe_knock | That's the one part I can't seem to clearly understand in RESTful services. How/Where to provide the logic. |
19:13:33 | Onionhammer | have you looked at the jester readme? |
19:14:01 | Onionhammer | there aren't really good patterns established for web apps in nim right now, i'm still developing mine |
19:14:22 | Onionhammer | but jester/asyncio etc needs to be fixed up before i do much more work w/ it |
19:14:39 | Onionhammer | currently it doesnt build on OSX |
19:15:03 | Joe_knock | Low bus factor Onionhammer :P dom96 now has a life, so we'll have to pick up his Jester code |
19:15:12 | Onionhammer | heh |
19:15:19 | Onionhammer | yeah unfortunately i have a life too :\ |
19:15:34 | Onionhammer | the only reason im able to talk right now is because I'm at work and happen to be between projects :) |
19:16:06 | shodan45 | Onionhammer: a bit off topic, but I just read your "controllershell" blog post... SDL2's joystick support is incomplete? |
19:16:14 | Joe_knock | they don't pay you for 10% open source contributions? :( |
19:16:29 | Onionhammer | shodan45 not SDL2's support |
19:16:36 | Onionhammer | nimrod's SDL2 wrapper |
19:16:43 | shodan45 | ohhhh |
19:16:47 | shodan45 | missed that :) |
19:16:52 | Onionhammer | np :) |
19:17:05 | Onionhammer | Joe_knock ha, no unfortunately not :p |
19:17:30 | shodan45 | Onionhammer: you have any screenshots of it? I've been wanting something similar to it for ages now |
19:17:49 | Onionhammer | shodan45 I meant to add some screenshots of it for a while, but havent gotten around to it yet |
19:17:54 | Onionhammer | I'll make some tonight though if I remember! |
19:18:08 | Onionhammer | it's pretty basic, and very customizeable, you can change around the fonts and colors and padding and whatnot |
19:18:17 | shodan45 | Onionhammer: ok, I'll have my browser auto-refresh every 5 minutes then ;) |
19:18:24 | Onionhammer | lol |
19:18:39 | Joe_knock | I think nim has a low-level binding issue. There's tons of cool things we can bind it too, but not many folks have the necessary knowledge for those upstream tasks that need being done for the derivative works. |
19:18:56 | * | shodan45 misses that built-in feature from Konqueror :( |
19:19:09 | Joe_knock | shodan45: DDoS :O |
19:19:10 | Onionhammer | shodan45 i made myself a reminder for tonight |
19:19:43 | shodan45 | Joe_knock: with great power comes great responsibility ;) |
19:20:11 | Joe_knock | :'D |
19:21:58 | * | Mat3 joined #nimrod |
19:22:02 | Mat3 | hello |
19:22:29 | shodan45 | Mat3: hello |
19:23:03 | Mat3 | hi shodan45 |
19:39:54 | * | flaviu1 joined #nimrod |
20:14:14 | perturbation | one last question re: that markdown wrapper I was working on... I'm 90% sure things are correct now |
20:14:26 | perturbation | but if I run through valgrind, I still get 5 more allocs than free's |
20:14:47 | perturbation | if I run the main() proc in a loop, it's always only 5, and it looks like they come from dlopen() calls |
20:15:17 | perturbation | is this just a false positive? no complaints from valgrind if I use passL w/ header instead of dynlib |
20:16:16 | Araq | perturbation: yes. false positive. |
20:16:23 | Jehan_ | perturbation: The thing is that the dynamic library, once opened with dlopen(), will never be closed. |
20:16:39 | Jehan_ | Which means that all memory allocated through it will persist until the program exits. |
20:19:05 | perturbation | okay - that makes sense |
20:19:56 | perturbation | should (can?) I free that memory manually with dlclose/or the moral equivalent? |
20:19:59 | * | BlameStross joined #nimrod |
20:20:12 | * | BlameStross left #nimrod (#nimrod) |
20:23:44 | Jehan_ | Why? |
20:25:21 | Jehan_ | This isn't DOS. The OS will automatically reuse the process's memory once it's terminated. |
20:27:20 | perturbation | well |
20:27:29 | perturbation | for one curious :) |
20:27:44 | perturbation | for another, want to know what The Right(tm) Is |
20:28:07 | Jehan_ | To just let the OS do it. |
20:28:09 | perturbation | and also I've been conditioned to feel a deep sense of unease if valgrind says anything to me |
20:28:41 | Jehan_ | Otherwise, the GC would have to run an extra collection at the end of the program, for example. For no reason at all. |
20:29:07 | shodan45 | OCD GC? :) |
20:29:37 | Jehan_ | Well, frankly, part of the reason to use a language with GC and bound checking is to be able to toss valgrind on the trash. |
20:29:55 | perturbation | I mean - what if the leftover memory was significant from a crypto standpoint? |
20:30:06 | perturbation | shh-- it's okay, valgrind baby, he doesn't mean it |
20:30:25 | Jehan_ | If it's significant from a crypto standpoint, as you put it, then free isn't going to fix it. |
20:30:34 | Jehan_ | Because free isn't going to zero the underlying memory. |
20:30:57 | Jehan_ | Zeroing memory with sensitive data is actually a pretty difficult problem. |
20:31:17 | * | flaviu11 joined #nimrod |
20:32:17 | * | perturbation remembers reading an article a few weeks back about how most attempts at zeroing out buffers would be optimized away by the compiler since the memory wasn't read again\ |
20:32:41 | * | flaviu11 quit (Client Quit) |
20:32:45 | perturbation | in most implementations of C, I mean |
20:33:18 | Mat3 | may I notice that some operating systems can not grant memory deallocation in all cases ? |
20:34:49 | Jehan_ | Mat3: Yeah, but if you're using them, you've got way bigger headaches. |
20:38:15 | shodan45 | perturbation: from my limited microcontroller programming, adding "volatile" to the type might fix that |
20:39:10 | * | BlameStross joined #nimrod |
20:40:50 | perturbation | shodan: it got hairier than that |
20:40:55 | Jehan_ | shodan45: Yes and no. |
20:41:02 | perturbation | I'll see if I can find the article |
20:41:12 | Jehan_ | And a big problem is that if you have volatile everywhere, then your performance will go to hell. |
20:42:13 | Jehan_ | Consider, for example, an AES implementation, where literally every bit of the state and the key would have to be volatile if you really want to be safe. |
20:42:16 | shodan45 | wait, I know! inline asm! :) |
20:47:36 | EXetoC | bacons |
20:56:28 | fowl | sup nimrods |
21:11:28 | * | BitPuffin quit (Ping timeout: 244 seconds) |
21:16:38 | Mat3 | how can I read from stdin in raw mode within Nimrod ? |
21:17:06 | Mat3 | exist there a getkey like function or something = |
21:18:05 | fowl | you could use the same functions you would use to do it from c (some ioctl calls?) |
21:22:56 | * | Demos_ joined #nimrod |
21:23:27 | Araq | Jehan_, perturbation actually we should generate some "closeDLLs" proc that can be called at shutdown for valgrind etc. but it's of super low priority |
21:24:16 | Mat3 | fowl: Altering the termios configuration is a Un*x only solution |
21:25:23 | Araq | Mat3: whatever you call in C, you can call from Nim |
21:25:40 | Mat3 | (I even do not know how to accomplish raw keyboard input for Windows) |
21:25:40 | Jehan_ | Araq: I think the point is that there's no portable way to do it in C. |
21:26:27 | * | Demos quit (Ping timeout: 244 seconds) |
21:26:30 | Araq | quite likely, yes |
21:26:40 | Mat3 | ok, Windows based C compiler has a simple and nice conio.h library |
21:27:03 | Araq | Mat3: conio.h may be C compiler specific though |
21:27:10 | Araq | it's usually better to use the win API directly |
21:27:54 | * | quasinoxen quit (Ping timeout: 258 seconds) |
21:30:16 | * | Mat3 thinks a Nimrod standard library for console access (something like the OS/2 VIO interface) would be a good idea |
21:30:44 | fowl | there is a terminal module |
21:31:10 | Araq | yeah, we need to enhance terminal.nim |
21:35:40 | perturbation | Araq - is there a good list of things that could be worked on (github project list maybe?) that I/we could help with? |
21:36:04 | perturbation | I don't know enough to write parser/compiler internals |
21:36:13 | Mat3 | Araq: I spend some time on this after finishing these compiler port |
21:36:15 | perturbation | but I could help with some stuff / improve documentation |
21:39:08 | * | dom96 quit (Excess Flood) |
21:40:19 | * | dom96 joined #nimrod |
21:40:50 | Mat3 | I think this would greatly help attracting programmers (documentation is relevant to quite anything) |
21:41:26 | * | dom96 quit (Excess Flood) |
21:41:33 | * | dom96 joined #nimrod |
21:41:37 | Mat3 | hi dom96 |
21:41:54 | Mat3 | how's your study ? |
21:44:10 | * | Joe_knock ponders about college ... ehh. dom96 must be drunk on a friday night :'D |
21:45:27 | * | Jesin quit (Quit: Leaving) |
21:45:53 | * | Jesin joined #nimrod |
21:46:39 | dom96 | hey guys |
21:46:42 | dom96 | Just got a chromebook |
21:46:55 | dom96 | And nah, I'm not drunk :P |
21:51:44 | Mat3 | good for you, have you tried to install a useful operating system for it yet ? |
21:52:36 | * | askatasuna quit (Quit: WeeChat 1.0) |
21:52:45 | * | BlaXpirit quit (Quit: Quit Konversation) |
21:52:48 | * | askatasuna joined #nimrod |
21:52:54 | * | askatasuna quit (Client Quit) |
21:56:04 | Araq | perturbation: most important: |
21:56:09 | Araq | install bigbreak |
21:56:24 | Araq | make PRs to Babel packages that don't compile with it |
21:58:11 | Jehan_ | dom96: Not sure why you felt the need to mention that. :) |
21:58:40 | Jehan_ | I've been toying with the idea of getting a Chromebook myself. |
22:00:11 | dom96 | Jehan_: I got the HP Chromebook 14, it's pretty nice. |
22:00:27 | Jehan_ | dom96: What are you using it for? |
22:00:30 | dom96 | Mat3: not yet. Chrome OS is alright. |
22:00:40 | dom96 | Jehan_: I'll be taking it to lectures for note taking. |
22:00:47 | dom96 | Jehan_: Haven't done much with it yet. |
22:00:52 | dom96 | But first impressions are good. |
22:01:07 | dom96 | The Chrome OS IRC client is pretty shit though. |
22:01:09 | Jehan_ | dom96: I've mostly been thinking about having one as a PDF reader for papers. |
22:01:44 | dom96 | Jehan_: That would work. |
22:02:04 | dom96 | Might be a bit overkill though. But perhaps you dislike touch screens. |
22:02:13 | Jehan_ | Unfortunately, there's no equivalent to Skim for ChromeOS. |
22:02:38 | dom96 | What's that? |
22:03:21 | Jehan_ | dom96: PDF reader for OS X. |
22:04:13 | Jehan_ | One that is designed for marking up PDFs with notes etc. |
22:04:49 | dom96 | I see. |
22:04:57 | Mat3 | well, you probably can install Arch Linux and profitate from the bright software base |
22:05:02 | Jehan_ | On the other hand, getting a Macbook Air just to keep my main monitor free would be overkill. |
22:05:12 | dom96 | The build quality of this chromebook is very mac-like. |
22:05:27 | Mat3 | or try to make a Hackintosh out of it (with some upgrading) |
22:05:46 | dom96 | But it's possible that I am wrong because I don't really have that much experience with macs. |
22:06:55 | * | quasinoxen joined #nimrod |
22:07:05 | Jehan_ | dom96: It's not the build I'm concerned with, it's the software. :) |
22:07:36 | Jehan_ | Macs are nice, but I'd use a Linux computer if it ran the software I need. |
22:12:03 | Joe_knock | Jehan_: There is tablet software where you can "write" in PDFs |
22:12:10 | * | Jehan_ quit (Quit: Leaving) |
22:12:48 | * | Jehan_ joined #nimrod |
22:15:00 | perturbation | Araq: bigbreak won't compile for me right now, but I'll try it later on and add PRs to anything that I notice breaking |
22:16:35 | perturbation | I just want to try and help if there's some low-hanging fruit :) |
22:16:54 | dom96 | Jehan_: Chrome remote desktop is working very well. |
22:17:59 | Jehan_ | dom96: Hmm, interesting, I hadn't thought about that. |
22:18:36 | dom96 | Jehan_: This was my plan all along :) |
22:18:40 | dom96 | Impressed it works this well. |
22:18:47 | Jehan_ | Heh. :) |
22:20:52 | Joe_knock | dom96: As far as coming to terms with Jester, can I use the older version? |
22:22:08 | dom96 | Joe_knock: You can, but I wouldn't recommend it. |
22:23:06 | Joe_knock | I don't want to break my current nim version, but ehh. not sure what to do. Guess I can just wait till bigbreak is stable |
22:25:23 | * | Matthias247 quit (Read error: Connection reset by peer) |
22:26:36 | EXetoC | meaning 0.9.6? :p |
22:27:02 | Araq | bigbreak IS more stable than devel, I think |
22:27:18 | Araq | since there are some fixes that have not been backported |
22:28:53 | * | saml quit (Read error: Connection reset by peer) |
22:36:23 | * | def- quit (Ping timeout: 240 seconds) |
22:39:03 | Joe_knock | bigbreak is bigbreak :P meaning things like gtk2 dont work, right? |
22:39:29 | Araq | I don't know |
22:39:44 | Araq | yeah I think that's broken a bit |
22:40:12 | Joe_knock | Okay, let me do it then. bigbreak here I come |
22:41:53 | Trustable | Hi all, I want to try out sdl2/audio. When I import it, I get the error "undeclared identifier SDL_BYTEORDER". How can I declare it? |
22:42:39 | * | io2 quit (Ping timeout: 258 seconds) |
22:43:25 | Araq | Trustable: complain at fowl ? |
22:43:56 | fowl | sdl2's audio module is not finished |
22:44:00 | Trustable | It's this source line: https://github.com/nimrod-code/sdl2/blob/master/src/sdl2/audio.nim#L118 |
22:44:20 | * | def- joined #nimrod |
22:44:36 | Trustable | flow: ok, is it already usable? |
22:44:48 | fowl | https://github.com/nimrod-code/sdl2/issues/1 |
22:45:11 | fowl | Trustable, everything but the net and audio modules are |
22:45:16 | * | kuzy000_ quit (Ping timeout: 260 seconds) |
22:45:38 | Trustable | flow: I will try to get around this error |
22:48:39 | * | francisl joined #nimrod |
22:51:22 | * | Jehan_ quit (Quit: Leaving) |
22:53:13 | Mat3 | probably it would be better for all programmers who relate on SDL if you work on the problem (complete the audio part) instead of code a workaround |
22:54:40 | * | perturbation quit (Quit: goodnight all) |
22:54:57 | * | francisl quit (Quit: francisl) |
22:55:22 | Mat3 | ciao |
22:55:26 | * | Mat3 quit (Quit: Verlassend) |
23:00:20 | * | io2 joined #nimrod |
23:01:03 | fowl | Trustable, i will try to finish the audio module this weekend |
23:02:15 | Trustable | EXetoC, I made a PR for OpenGL: https://github.com/nimrod-code/opengl/pull/6 |
23:02:32 | fowl | no promises though, i'm also working on remodeling my kitchen and dining room |
23:03:44 | * | enquora quit (Quit: enquora) |
23:04:22 | Trustable | fowl, thx, I watch for changes |
23:09:33 | Varriount_ | Meep |
23:09:46 | * | Varriount_ is now known as Varriount |
23:11:11 | * | EXetoC quit (Quit: WeeChat 1.0.1) |
23:11:18 | fowl | commented on your opengl pullrequest Trustable |
23:11:45 | Varriount | Araq: I saw yours and Jehan's post on inheritance for value types on the forums. Perhaps the compiler should warn when a value type is being inherited from? |
23:12:40 | * | io2 quit (Quit: ...take irc away, what are you? genius, billionaire, playboy, philanthropist) |
23:14:36 | * | def- quit (Ping timeout: 250 seconds) |
23:14:49 | Demos_ | slicing is pretty bad, I would agree with eliminating it, I am OK with having ptrs to object types |
23:16:54 | Trustable | fowl: I changed it like suggested |
23:18:16 | * | def- joined #nimrod |
23:20:52 | * | bjz quit (Quit: Textual IRC Client: www.textualapp.com) |
23:21:14 | * | bjz joined #nimrod |
23:21:24 | fowl | Trustable, don't define PGLfloat/double, change references to them to 'ptr TGfloat' |
23:22:00 | Trustable | fowl: ok |
23:22:26 | fowl | in fact just search and replace "PGL" with "ptr TGL" |
23:24:28 | Trustable | fowl: done |
23:25:47 | fowl | Trustable, thanks, its merged |
23:26:22 | Trustable | fowl: fine :) |
23:27:40 | Araq | hi Varriount |
23:27:46 | Araq | this weekend is release |
23:28:04 | Araq | are you ready? |
23:30:07 | * | Jesin quit (Quit: Leaving) |
23:36:21 | * | quasinoxen quit (Ping timeout: 272 seconds) |
23:36:24 | * | quasinoxen joined #nimrod |
23:36:41 | Varriount | Araq: Yes. |
23:37:14 | Varriount | Araq: I'm fixing babel packages at the moment, but yes, I'm ready. |
23:37:21 | * | quasinoxen quit (Client Quit) |
23:38:00 | * | def- quit (Ping timeout: 260 seconds) |
23:38:35 | Araq | yay, excellent! |
23:38:46 | * | def- joined #nimrod |
23:41:44 | * | darkf joined #nimrod |
23:42:40 | * | Joe_knock quit (Quit: Leaving) |
23:47:50 | Araq | Varriount: dunno yet what to do about object inheritance |
23:48:07 | Araq | I think it can be made to work good enough |
23:48:37 | Araq | without having to go through ptr/ref |
23:48:56 | * | boydgreenfield joined #nimrod |
23:50:05 | * | def- quit (Ping timeout: 244 seconds) |
23:50:15 | Varriount | Araq: Oh? How? |
23:53:21 | Araq | parameter passing already is done via pointers for inheritable objects |
23:53:35 | Araq | and assignment needs to check that no slicing happens |
23:53:38 | Araq | in fact |
23:53:51 | Araq | that's how it's implemented since a long time |
23:53:58 | Araq | but apparently still buggy ;-) |
23:55:27 | NimBot | Varriount/NimLime master 414dee0 Clay Sweetser [+0 ±2 -0]: Updated nimcheck command to work with the compiler path setting.... 2 more lines |
23:55:51 | * | def- joined #nimrod |
23:55:58 | * | Varriount is now known as NimBot |
23:56:28 | NimBot | Hm... What should I use my newfound nickname for... |
23:58:25 | * | NimBot is now known as Varriount |