00:00:13 | zachcarter | ah you guys are using JACK? |
00:00:24 | zachcarter | cool |
00:02:10 | zachcarter | to answer your question Idlework about whether all the proc sound could be supported: I’m not sure if it could all be supported as it stands right now, but I’d definitely be willing to add whatever support is necessary to get things working. If it’s just playing sounds and adjusting gain - I dont think that’s a problem. If it’s more than that then we may need to expose some more functionality through sound. |
00:04:35 | zachcarter | also Idlework: If you guys don’t want to ditch the codebase you have now and just want to swap out SDL2 for bgfx or something similar, I could potentially help with that too |
00:05:01 | zachcarter | going to run out and grab some food, be back in a few |
00:06:41 | ldlework | zachcarter: yeah its a synthesizer so it generates actual sound data on the fly |
00:06:51 | ldlework | continuously |
00:07:25 | * | PMunch quit (Quit: leaving) |
00:37:02 | zachcarter | Idlework: right |
00:37:20 | zachcarter | Idlework: if all that needs to be done is to play that stream of data, then sound is probably sufficient |
00:37:34 | ldlework | zachcarter: oh nice |
00:37:39 | ldlework | zachcarter: btw we're in #zynth |
00:37:46 | ldlework | if you wanna hang out and participate in discussions |
00:37:51 | zachcarter | okay cool |
00:45:34 | * | Guest93374 quit (Quit: Leaving) |
00:51:58 | * | fastrom joined #nim |
01:16:24 | * | jez__ joined #nim |
01:22:24 | libman | I humbly hope that the Nim community will tolerate one "please use MIT" license nag issue per restrictively licensed module, ex https://github.com/unicredit/cello/issues/1 |
01:49:35 | * | smt_ quit (Read error: Connection reset by peer) |
01:54:14 | * | smt joined #nim |
01:57:15 | * | chemist69 quit (Ping timeout: 256 seconds) |
02:09:07 | * | jez__ quit (Quit: :q!) |
02:09:35 | * | ftsf quit (Remote host closed the connection) |
02:09:36 | * | chemist69 joined #nim |
02:09:52 | * | ftsf joined #nim |
02:23:18 | * | smt_ joined #nim |
02:23:32 | * | smt quit (Ping timeout: 260 seconds) |
02:59:24 | * | fastrom quit (Quit: Leaving.) |
02:59:42 | * | fastrom joined #nim |
03:00:10 | * | fastrom quit (Client Quit) |
03:11:20 | Lord_Nightmare | libman: i'm in agreement, apache2 prevents use/linking with gplv2 unless a specific extra compatibility statement is attached to apache2, hence i avoid it |
03:11:39 | Lord_Nightmare | this is also why the openssl relicensing to apache2 is such a terrible idea |
03:12:44 | Lord_Nightmare | libman: is there a problem with using mit-alike licenses, like 3bsd, 2bsd, isc ? |
03:15:03 | libman | MIT-alike ("copyfree") licenses are the least problematic alternative. Even "public domain" can involve some legal BS in some jurisdictions. |
03:16:14 | libman | My goal is to nag the Nim ecosystem into a state of "don't worry about legalese and just code", which will happen if all core libraries and tools use copyfree licenses. ;-) |
03:56:23 | * | zachcarter quit (Quit: zachcarter) |
04:33:00 | * | ftsf quit (Ping timeout: 246 seconds) |
04:42:07 | ldlework | what does setupForeignThreadGc do |
04:44:59 | * | ftsf joined #nim |
04:58:01 | * | shashlick quit (Ping timeout: 256 seconds) |
04:58:43 | * | shashlick joined #nim |
05:17:27 | * | chemist69 quit (Ping timeout: 240 seconds) |
05:20:16 | * | chemist69 joined #nim |
05:55:30 | * | IRCFrEAK joined #nim |
05:56:53 | * | IRCFrEAK left #nim (#nim) |
06:35:09 | * | Vladar joined #nim |
06:36:13 | * | nsf joined #nim |
06:38:36 | ldlework | How do I import https://github.com/oprypin/nim-random if there is a stdlib module by the same name? |
07:03:28 | * | yglukhov joined #nim |
07:08:21 | * | couven92 joined #nim |
07:09:55 | ldlework | yay just got my biome generator working again for latest nim |
07:15:31 | * | rokups joined #nim |
07:16:19 | ldlework | is there a way to have nimble tell you what version of a package you have installed? |
07:18:02 | Araq | ldlework: dunno, but you can just look into ~/.nimble/pckgs/ |
07:18:13 | Araq | *pkgs |
07:21:25 | ldlework | generators.nim(29, 1) Warning: overloaded '.' and '()' operators are now .experimental; () is deprecated [Deprecated] |
07:21:28 | ldlework | awwww |
07:25:52 | ldlework | Araq: expr and stmt are deprecated? |
07:26:35 | ldlework | What does my macro return...? |
07:26:47 | Araq | it returns 'untyped' |
07:27:06 | Araq | also: 'expr' -> 'untyped' and 'stmt' -> 'untyped' |
07:29:48 | ldlework | thanks |
07:32:13 | ldlework | Araq: I'm so glad my crazy macro ECS has survived all this time with barely scrapes and brusies |
07:32:14 | ldlework | good job |
07:35:00 | ldlework | well maybe I spoke too soon haha |
07:38:19 | ldlework | Araq: was there a module with a `to` method |
07:38:23 | ldlework | I forget... |
07:38:26 | ldlework | oh there's an index |
07:38:59 | ldlework | well hard to search |
07:39:42 | ldlework | marshal |
07:40:51 | ldlework | there we go |
07:40:54 | ldlework | no more warnings ø/ |
07:41:40 | FromGitter | <TiberiumPY> Btw, I'm really interested in https://github.com/oprypin/nim-random |
07:41:48 | FromGitter | <TiberiumPY> Maybe just fork and rename ? |
07:42:14 | chemist69 | Araq: isn't it `expr` -> `typed` ? |
07:43:49 | FromGitter | <TiberiumPY> well, this random library uses interesting thing |
07:44:00 | FromGitter | <TiberiumPY> It has a macro in |
07:44:06 | FromGitter | <TiberiumPY> The main file |
07:44:26 | FromGitter | <TiberiumPY> And staticRead's another .Nim file |
07:44:28 | Araq | chemist69: it's actually expr->untyped and stmt->typed but 'stmt' is used for 'untyped' bodies in 99% of all cases |
07:45:10 | Araq | so I suggested the more likely transition path |
07:45:55 | Araq | to solve the conflict, import "nim-random/random" or some path that works |
07:46:08 | chemist69 | now I'm really confused. Have to read up on this again... |
07:50:59 | * | ftsf quit (Quit: :q!) |
08:01:04 | * | libman quit (Quit: Connection closed for inactivity) |
08:23:59 | * | fastrom joined #nim |
08:26:42 | euantor | TiberiumPY: What are you wanting to do with nim-random? I recently knocked together a simple too lto read random data from system sources of randomness |
08:27:43 | euantor | nim-random has similar capabilities, but doesn't use the same techniques such as using `arc4random` on OpenBSD or the `getrandom` systemcall on Linux |
08:30:33 | euantor | And on Windows nim-random uses CryptGenRandom which is more heavyweight than RtlGenRandom (which CryptGenRandom actually uses under the hood) |
08:31:35 | euantor | My library lacks a lot of the fancy extra features, as mine is just based on what libsodium provides |
08:45:43 | * | PMunch joined #nim |
08:52:03 | * | Senketsu_ joined #nim |
08:52:20 | * | yglukhov_ joined #nim |
08:52:29 | * | fredrik92 joined #nim |
08:52:50 | * | Pisuke joined #nim |
08:54:57 | * | yglukhov quit (Ping timeout: 264 seconds) |
08:55:33 | * | couven92 quit (Ping timeout: 264 seconds) |
08:55:33 | * | Senketsu quit (Ping timeout: 264 seconds) |
08:56:09 | * | MyMind quit (Ping timeout: 264 seconds) |
09:29:02 | * | Arrrr joined #nim |
09:42:01 | FromGitter | <Natsirtt> Hey @Araq :) Indeed on windows, trying to access environment variables from a loaded DLL is what's triggering my Illegal storage access error ; thanks for the pointers! |
09:54:44 | * | Sembei joined #nim |
10:00:50 | Araq | ping PMunch |
10:00:59 | PMunch | Hi Araq |
10:02:15 | Araq | oh hi. that was quick. |
10:02:39 | PMunch | Haha, I get notified when I'm highligted :) |
10:02:50 | Araq | so I've a DOM creating DSL and it requires me to write |
10:03:00 | Araq | let tree = createDom(tr) do: ... |
10:03:16 | Araq | and in the ... the macro does a statement/expression distinction |
10:03:40 | Araq | and an expression 'x' is transformed into tmp.add x |
10:03:51 | Araq | and 'tmp' are introduced to build the tree as necessary |
10:04:16 | Araq | and this weekend I patched Nim to avoid the ugly 'do' notation in this context ;-) |
10:04:39 | Araq | I think your wxWidgets DSLs should take the same approach |
10:04:57 | Araq | so instead of foo%bar or whatever it was called |
10:05:18 | Araq | leave the 'let foo = bar: ...' part so that it is obvious a new identifier is introduced |
10:06:08 | PMunch | Well the foo%bar is inside the macro |
10:06:19 | PMunch | genui: doesn't really return anything. |
10:06:21 | Araq | in my DSL tag(attr=value): ... produces <tag attr=value>...</tag> |
10:06:56 | Araq | but for flexibility it should support explicit Nim identifiers, so some widgets can be referenced from outside |
10:07:26 | Araq | don't you think it would work for your case too? |
10:13:24 | PMunch | Hmm, it might. I'll look into it :) |
10:13:33 | PMunch | But I've got to go now, back in a couple of hours. |
10:14:39 | Araq | sure thing |
10:15:37 | * | fredrik92 quit (Quit: Client disconnecting) |
10:47:55 | yglukhov_ | Araq, dom96, sorry, just noticed i've made a commit to sdl2 without a pr. pls review. |
11:06:43 | * | arnetheduck joined #nim |
11:44:18 | * | zachcarter joined #nim |
11:44:45 | * | couven92 joined #nim |
11:45:31 | * | krux02 quit (Remote host closed the connection) |
11:54:51 | * | bjz joined #nim |
12:01:04 | * | jackv quit (Quit: ZNC - 1.6.0 - http://znc.in) |
12:09:20 | * | krux02 joined #nim |
12:20:45 | * | BitPuffin|osx joined #nim |
12:33:23 | * | zachcarter quit (Quit: zachcarter) |
12:35:31 | * | jackv joined #nim |
12:44:13 | * | rolha joined #nim |
12:44:48 | * | rolha left #nim (#nim) |
12:51:37 | * | fastrom quit (Quit: Leaving.) |
12:53:29 | * | smt_ quit (Ping timeout: 240 seconds) |
13:02:47 | FromGitter | <TiberiumPY> hmm, is there a place where I can submit a bug in github web? |
13:03:06 | FromGitter | <TiberiumPY> https://github.com/Vladar4/ng2planetoids/blob/master/src/rock.nim ⏎ ⏎ GitHub doesn't know about ' in Nim |
13:03:07 | * | PMunch quit (Quit: leaving) |
13:03:13 | FromGitter | <TiberiumPY> (starting on line 53) |
13:05:57 | Araq | I don't remember, github uses some broken Nim lexer written in Python |
13:06:14 | Araq | you would fix it there and wait for github to use a more recent version of the library. |
13:06:26 | Araq | that would be within next 5-10 years. |
13:06:47 | Araq | it took them that long to rename 'nimrod' to 'nim'. |
13:12:05 | FromGitter | <stisa> @TiberiumPY maybe https://github.com/github/linguist/blob/master/README.md#theres-a-problem-with-the-syntax-highlighting-of-a-file |
13:12:52 | dom96 | Araq: no, it doesn't anymore. |
13:13:02 | dom96 | It uses the Sublime text syntax higlighter |
13:13:26 | Araq | does it change much? |
13:18:21 | * | zachcarter joined #nim |
13:18:27 | FromGitter | <TiberiumPY> https://github.com/Varriount/NimLime |
13:18:44 | FromGitter | <TiberiumPY> so if Varriount will release new version, github will automatically pick it up? |
13:23:40 | * | bjz_ joined #nim |
13:24:26 | * | bjz quit (Ping timeout: 240 seconds) |
13:34:54 | Araq | no, it won't and that's why everything I said is relevant. |
13:43:54 | FromGitter | <TiberiumPY> Araq - btw, bitbucket still calls Nim as "Nimrod" |
13:50:28 | * | smt joined #nim |
14:02:25 | * | bjz joined #nim |
14:03:32 | * | bjz_ quit (Ping timeout: 260 seconds) |
14:13:00 | * | ludocode_ is now known as ludocode |
14:13:31 | * | ludocode quit (Quit: ludocode) |
14:16:16 | * | ludocode joined #nim |
14:28:14 | * | couven92 quit (Quit: Client disconnecting) |
14:31:16 | * | xet7 quit (Quit: Leaving) |
14:33:26 | * | bjz_ joined #nim |
14:34:27 | * | bjz quit (Ping timeout: 240 seconds) |
14:41:10 | * | Tiberium joined #nim |
14:41:35 | chemist69 | when I try to install c2nim with nimble, I get this error: `[...]/.nimble/pkgs/compiler-0.16.1/compiler/idents.nim(15, 21) Error: cannot open 'etcpriv'` |
14:42:05 | * | fastrom joined #nim |
14:47:01 | * | cheatfate quit (Read error: Connection reset by peer) |
14:47:20 | * | cheatfate joined #nim |
14:50:23 | Araq | chemist69: ugh, use the compiler/ from git devel |
14:50:42 | Araq | nim c --noNimblePath -p:../nim |
14:50:57 | Araq | or wherever your nim/compiler resides |
14:51:51 | chemist69 | my Nim compiler is completely updated to devel. The error is in the compiler sources that are pulled into the nimble pkg dir, I guess. |
14:55:16 | Araq | nim c --noNimblePath -p:../nim c2nim.nim |
14:56:08 | zachcarter | Does anyone have some very simple examples of asyncdispatch using futures and await? I’m pretty much a noob when it comes to using async / await |
14:56:18 | chemist69 | ok, thanks |
14:56:22 | * | rauss joined #nim |
14:57:23 | zachcarter | I’d like to find a way to call the sdl_image load methods asyncrhonously / on another thread if I can |
14:57:39 | zachcarter | asynchronously* |
15:03:02 | zachcarter | dom96: does your book cover async / await pretty well? |
15:04:34 | * | bjz_ quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
15:05:22 | FromGitter | <evacchi> how could I define a joinThread(maxMillis: int) i.e., await for some threads to terminate up to a given max time ? |
15:06:22 | FromGitter | <evacchi> I could do an os.sleep :P but of course, if the threads terminate before the timeout I would like to retun immediately |
15:08:12 | * | libman joined #nim |
15:08:50 | Araq | evacchi: you need to wrap OS specific stuff and patch system/threads.nim |
15:10:21 | FromGitter | <evacchi> ouch |
15:11:10 | FromGitter | <evacchi> maybe I'll try and deal with it at a higher level |
15:14:35 | * | bjz joined #nim |
15:17:23 | * | yglukhov_ quit (Remote host closed the connection) |
15:34:50 | * | Trustable joined #nim |
15:35:46 | * | azur_kind joined #nim |
15:42:50 | dom96 | zachcarter: yes |
15:43:01 | zachcarter | sweet I’ll grab a copy thanks |
15:47:04 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
15:52:31 | SusWombat | can anyone tell me why i can load a dll with loadLib but not a .so? |
15:54:20 | SusWombat | nvm ... forgot "./" |
16:00:21 | * | Serenitor joined #nim |
16:02:01 | * | gogogo2go joined #nim |
16:07:26 | FromGitter | <Varriount> SusWombat: It's always those finicky Lorie platform details |
16:07:39 | FromGitter | <Varriount> *little |
16:10:57 | FromGitter | <Varriount> Araq: Here's a comment you'll love: https://news.ycombinator.com/item?id=14023906 |
16:22:18 | * | sz0 joined #nim |
16:26:56 | * | yglukhov joined #nim |
16:31:41 | * | yglukhov quit (Ping timeout: 260 seconds) |
16:33:34 | * | krux02 quit (Quit: Leaving) |
16:35:11 | * | nsf quit (Quit: WeeChat 1.7) |
16:36:19 | SusWombat | When i loop over stdin.lines how do i find out that there are no lnew liones anymore? as it seems to never stop looping? |
16:51:38 | Tiberium | while readLine(stdin) maybe? |
16:51:39 | Tiberium | idk |
16:55:16 | * | gogogo2go quit (Quit: Leaving) |
16:57:07 | * | arnetheduck quit (Ping timeout: 256 seconds) |
16:57:16 | subsetpark | I believe the last line will be an empty string |
16:57:59 | subsetpark | Then again, that might only be when a socket is closed. Otherwise you might have to watch out for a control sequence |
17:01:15 | Tiberium | socket? |
17:01:31 | Tiberium | suswombat was talking about stdin |
17:01:48 | subsetpark | I know, that's why I amended my answer :) |
17:02:31 | * | xet7 joined #nim |
17:06:41 | Arrrr | It shouldn't be necessary to check against EOL. |
17:06:49 | Arrrr | Maybe your file is infinite. |
17:07:51 | SusWombat | well stdin is propably infinite O: |
17:10:05 | * | yglukhov joined #nim |
17:12:54 | Arrrr | I thought it was from reading a file |
17:13:14 | subsetpark | piping a text file through `for line in stdin.lines` does the right thing - it processes each line of the file and then exits the loop |
17:19:56 | * | azur_kind quit (Remote host closed the connection) |
17:27:58 | * | Sembei quit (Ping timeout: 240 seconds) |
17:34:26 | Tiberium | hmm, how can I fix this error? https://gist.github.com/TiberiumN/49becb2878bb5bbf87fa18e677540e2f |
17:36:19 | Tiberium | ah, return type |
17:36:35 | Tiberium | well it worked |
17:38:31 | * | yglukhov quit (Remote host closed the connection) |
17:40:31 | Tiberium | can I have something like "zip" in Python? |
17:40:47 | Tiberium | so I have two openarrays, and I want to iterate over them at once |
17:40:57 | Tiberium | like for first, second in zip(firstarray, secondarray): |
17:41:02 | Tiberium | in macro |
17:42:28 | Tiberium | ah, nvm |
17:42:42 | * | yglukhov joined #nim |
17:48:13 | dom96 | hello guys |
17:48:44 | Tiberium | hi |
17:51:30 | Tiberium | dom96, can I pass module or modules to macro? |
17:51:45 | Tiberium | so I have imported module "greeting", and I want to pass it to macro |
17:51:51 | Tiberium | like myMacro(greeting) |
17:52:07 | dom96 | No idea, try it and see. |
17:52:41 | Tiberium | well I'm trying to call a proc from this module in a macro :D |
17:53:57 | * | yglukhov quit (Remote host closed the connection) |
18:04:50 | * | yglukhov joined #nim |
18:05:53 | libman | gradha removed his repo, so https://github.com/Araq/badger_bits points to many 404s |
18:10:14 | Araq | libman: so create a PR |
18:11:28 | libman | Is that better than an IRC mention for such a casual observation? I have no clue what that project is, just surfed onto it for a second and bumped into a dead link. |
18:15:27 | Araq | well if you want me to do anything, a PR is better |
18:16:14 | Araq | I couldn't care less about dead links on my gradha forks, I only forked it to not lose it |
18:16:52 | SusWombat | How can i kill a spawned task= |
18:16:54 | SusWombat | ?* |
18:23:43 | Araq | you can't. |
18:24:13 | SusWombat | ok ty |
18:28:10 | * | couven92 joined #nim |
18:32:43 | * | yglukhov quit (Remote host closed the connection) |
18:32:54 | * | Matthias247 joined #nim |
18:33:24 | * | yglukhov joined #nim |
18:41:16 | SusWombat | can i redirect stdin without reading from it? |
18:41:17 | * | SusWombat_ joined #nim |
18:41:18 | * | SusWombat quit (Remote host closed the connection) |
18:41:58 | * | couven92 quit (Remote host closed the connection) |
18:42:13 | * | couven92 joined #nim |
18:56:40 | ldlework | dom96, if I supported Nim in Action, do I get a copy of the book at some point |
18:59:55 | * | Arrrr quit (Quit: Leaving.) |
19:31:22 | * | esauceda joined #nim |
19:31:27 | * | esauceda left #nim (#nim) |
19:39:17 | * | bjz joined #nim |
19:45:28 | * | shashlick quit (Ping timeout: 240 seconds) |
19:45:48 | * | shashlick joined #nim |
19:46:01 | SusWombat_ | how do i kill a thread? |
19:46:14 | cheatfate | you can't kill thread |
19:46:58 | SusWombat_ | why :( |
19:47:32 | ldlework | Does Nim have a single-thread async library? |
19:47:33 | dom96 | ldlework: supported? |
19:47:39 | ldlework | dom96, paid for it |
19:47:44 | ldlework | will I eventually get a real copy |
19:48:12 | cheatfate | SusWombat: there many reasons, but currently we can't do it properly |
19:48:51 | SusWombat_ | cheatfate, thing is even when i spawn readline or loop through stdin via spawn and load a dynlib under windows stdin blocks :/ it doesnt under linux tho |
19:48:55 | couven92 | cheatfate, because of GC? I guess the call to ExitThread (or pthread_exit) is not the issue? |
19:49:03 | SusWombat_ | so thats why i wanted to kill the reading while loading a lib |
19:49:16 | dom96 | ldlework: What do you mean by "real copy"? |
19:49:24 | SusWombat_ | a printed book i guess |
19:49:25 | ldlework | a dead tree copy |
19:49:30 | ldlework | to put on my bookshelf |
19:49:33 | dom96 | ldlework: Did you pay for one? |
19:49:35 | dom96 | If so, yes. |
19:49:36 | ldlework | to objectify my personhood |
19:49:49 | cheatfate | couven92, call to ExitThread of course will exit thread, but it also introduce you memory leak |
19:50:07 | ldlework | dom96, I have access to the manning previews, so I paid early support. Does that result in getting shiped the final book at the end? I just forget the terms. |
19:50:21 | couven92 | cheatfate, yeah... that's what I meant with GC... Makes sense |
19:50:35 | dom96 | ldlework: It depends on if you bought the ebook or the printed book. |
19:50:41 | SusWombat_ | cheatfate, do you have any idea regarding my problem |
19:50:54 | dom96 | SusWombat_: Are you trying to read from stdin without blocking? |
19:50:55 | ldlework | dom96, aha gotcha |
19:52:35 | SusWombat_ | dom96, yes and i do it via spawn but as soon as i do loadLib under windows it blocks again |
19:52:37 | cheatfate | SusWombat_, windows stdin blocks until Enter pressed |
19:52:50 | SusWombat_ | cheatfate, yeah and i need to get around it :/ |
19:52:55 | cheatfate | you can't |
19:53:26 | cheatfate | there is a way but then you will need to draw cursor and perform editing by yourself |
19:53:50 | cheatfate | handle cursor keys and all other crap |
19:54:13 | ldlework | "windows stdin blocks until Enter is pressed" does not sound like an accurate depiction of the situation |
19:54:27 | SusWombat_ | well its exactly what happens |
19:54:48 | SusWombat_ | cheatfate, how would i go about that? |
19:55:05 | SusWombat_ | how would i do that* |
19:55:06 | ldlework | stdin doesen't "block" |
19:55:14 | ldlework | that doesn't even make sense as a phrase. |
19:55:24 | SusWombat_ | it does |
19:55:46 | ldlework | Whatt does "block" mean to you? |
19:55:54 | dom96 | reading from stdin does |
19:56:02 | dom96 | It's clear what SusWombat_ means |
19:56:35 | dom96 | SusWombat_: Not sure if you're aware but my book has an example of how to do that with 'spawn': https://github.com/dom96/nim-in-action-code/blob/master/Chapter3/ChatApp/src/client.nim#L38 |
19:56:44 | dom96 | It doesn't go as far as supporting what you want though |
19:56:47 | ldlework | Reading from stdin blocks if you use a blocking API to read it. |
19:56:49 | dom96 | (it still requires pressing enter) |
19:57:17 | SusWombat_ | dom96, yeah i looked at your code but like you said you still need to press enter |
20:00:16 | cheatfate | SusWombat_, you need functions getNumberOfConsoleEvents/peekConsoleInput/readConsoleInput |
20:02:16 | * | rokups quit (Quit: Connection closed for inactivity) |
20:04:03 | Serenitor | reading stdin only blocks one thread though, isn't that right? so with threading you could use it effectively non-blocking |
20:04:11 | * | Tiberium quit (Remote host closed the connection) |
20:05:44 | ldlework | There are also non-blocking API's to read from files including stdin |
20:06:05 | ldlework | IO is not inherently blocking, it is the mechanism by which you access IO that is either blocking or not. |
20:06:25 | SusWombat_ | it seems to block only when i load a library under windows tho |
20:07:00 | ldlework | I mean I know I've used Twisted with Python on windows and streamed stdin in a non-blocking way |
20:07:39 | SusWombat_ | so when i spawn "proc processCommands(): void = |
20:07:39 | SusWombat_ | for line in stdin.lines: |
20:07:39 | SusWombat_ | if line == "help": |
20:07:39 | SusWombat_ | echo "Go wikiüpedia noob"" |
20:08:10 | SusWombat_ | it doesntz block but as soon as i do loadLib("bla.dll") it starts to block |
20:29:42 | * | devted joined #nim |
20:33:10 | * | Sembei joined #nim |
20:44:07 | ldlework | Are there any example uses of embedded nimscript? |
20:44:16 | ldlework | Using nimscript to script a nim application? Other than the compiler? |
20:44:57 | ldlework | It would be cool if NimScript actually exposed the VM as an object |
20:45:08 | ldlework | so you could maintain multiple isolated vm instances |
20:45:18 | ldlework | an were able to expose native functions to their runtime |
20:45:24 | ldlework | and able to manually tick the vm |
20:45:29 | ldlework | Araq: am I dreaming? |
20:48:25 | FromGitter | <Varriount> SusWombat_: What dll is this? |
20:48:48 | SusWombat_ | A dll i made with nim c --app:lib |
20:49:12 | SusWombat_ | i dont actually use the lib its just for testing the loading |
20:49:59 | * | zachcarter quit (Ping timeout: 260 seconds) |
20:51:04 | * | libman quit (Quit: Connection closed for inactivity) |
20:52:44 | * | Trustable quit (Remote host closed the connection) |
20:54:25 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
20:56:52 | * | Nobabs27 joined #nim |
20:57:57 | FromGitter | <Varriount> And as soon as you load it, the app blocks/pauses? |
20:58:04 | FromGitter | <Varriount> For how long? |
20:58:05 | * | yglukhov quit (Remote host closed the connection) |
20:58:22 | SusWombat_ | forever till you place enter |
20:58:28 | SusWombat_ | press* |
20:58:49 | SusWombat_ | in the console |
20:59:06 | * | rauss quit (Quit: WeeChat 1.7) |
21:00:06 | FromGitter | <Varriount> Why? Do you have some wait for console input? |
21:06:40 | SusWombat_ | well i read from stdin all the time |
21:06:52 | SusWombat_ | to react to entered commands |
21:07:04 | * | Vladar quit (Quit: Leaving) |
21:07:08 | SusWombat_ | and when i do loadLib it blocks every output |
21:08:39 | * | chemist69 quit (Ping timeout: 260 seconds) |
21:21:24 | cheatfate | SusWombat_, try to load any other dlls, openssl for example |
21:21:36 | cheatfate | i think its a problem with nim dlls |
21:22:15 | SusWombat_ | cheatfate, ok gonna try this later thanks |
21:22:29 | SusWombat_ | wouldnt fix my problem but it would be intresting to see |
21:23:53 | cheatfate | I think nim dll is allocating console in stub |
21:24:06 | cheatfate | so its why everything is blocks |
21:24:25 | SusWombat_ | cheatfate, but why only under windows tho? |
21:24:58 | cheatfate | because windows is not *nix |
21:25:41 | FromGitter | <TiberiumPY> :) |
21:29:57 | cheatfate | SusWombat_, do you have any `echo` or any other functions which interacts with stdin/stdout inside of your dll? |
21:30:53 | SusWombat_ | cheatfate, no |
21:31:05 | SusWombat_ | or wait |
21:31:16 | SusWombat_ | but like i said i dont call anything frin the dll |
21:31:22 | SusWombat_ | from* |
21:32:14 | cheatfate | SusWombat_, it doesn't matter because if you have `echo` or any other functions then initialization of console will be performed |
21:32:34 | cheatfate | can you gist your <namedll>.c from nimcache folder? |
21:35:26 | * | chemist69 joined #nim |
21:44:25 | * | bjz joined #nim |
21:51:28 | * | zachcarter joined #nim |
21:53:50 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
21:56:23 | * | zachcarter_ joined #nim |
21:56:49 | * | devted quit (Quit: Sleeping.) |
21:57:21 | * | zachcarter quit (Ping timeout: 264 seconds) |
21:57:21 | * | zachcarter_ is now known as zachcarter |
22:00:25 | * | bjz joined #nim |
22:06:53 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
22:10:20 | ldlework | Does Nim have a way to get a unique id for a given instance of a RootObj? |
22:13:05 | * | nsf joined #nim |
22:28:37 | ldlework | Let's say I have two types Param and Bind which both have variants discriminant on ParamKind |
22:29:22 | ldlework | In the definition of Bind, when casing the kind to define the variants, is there a way I can have each variant of Bind have a reference to a specific variant of Param? |
22:37:16 | * | LeNsTR quit (Changing host) |
22:37:16 | * | LeNsTR joined #nim |
22:40:58 | * | LeNsTR is now known as lenstr |
22:44:55 | FromGitter | <Varriount> ldlework: At compile time, or runtime |
22:47:46 | ldlework | FromGitter: compile time, as part of the definition of Bind |
22:47:46 | FromGitter | ldlework, I'm a bot, *bleep, bloop*. I relay messages between here and https://gitter.im/nim-lang/Nim |
22:47:52 | ldlework | err Varriount |
22:48:19 | ldlework | Varriount, https://gist.github.com/dustinlacewell/11bc5985ef34c0f12c510efb3a0f970e |
22:48:26 | ldlework | makes little sense |
22:49:37 | ldlework | there are variants of Parameter for each ParameterKind |
22:49:40 | ldlework | I only want Binds to bind to Parameters of the right variation |
22:50:25 | FromGitter | <Varriount> first off, all member names have to be unique |
22:51:07 | ldlework | huh |
22:51:52 | FromGitter | <Varriount> And I'm not quite understanding what you need. Why not use a generic (or better yet, a concept)? |
22:52:21 | SusWombat_ | cheatfate, sry im very tired lets continue tommorow k? thanks so far anyway! |
22:52:52 | FromGitter | <Varriount> ldlework: What's your overall goal here? |
22:53:10 | ldlework | Varriount, does marshalling generic types to/from json work? |
22:53:27 | ldlework | Varriount: Trying to define a data model for a music patch graph |
22:53:42 | ldlework | like thing of creating nodes in 2D of various types that define parameters |
22:53:57 | ldlework | a binding represents a connection between a module and the parameter of another module |
22:54:21 | ldlework | I want parameters/bindings to define a type/kind and make it so they only work with each other |
22:55:01 | ldlework | Are variants not the right way to go? |
22:55:31 | FromGitter | <Varriount> Hm. Good question |
22:55:53 | FromGitter | <Varriount> Are you trying to create a series of data structures similar to the ones in the json module? |
23:02:55 | ldlework | Varriount, no literally I'm building a modular synthesizer. Exactly as I described. Modules defined typed inputs and outputs. There are like 5 types of data. I want to model connections between them but ensuring that only connections of the same type are possible |
23:03:34 | * | qzo joined #nim |
23:04:02 | FromGitter | <Varriount> Ah, I see. |
23:04:38 | FromGitter | <Varriount> Well why not have each module contain a sequence/table for each kind of parameter? |
23:05:02 | ldlework | clumsy |
23:05:19 | * | nsf quit (Quit: WeeChat 1.7) |
23:05:24 | FromGitter | <Varriount> Or you have a single table that stores a sequence of parameters like the one described. |
23:05:53 | FromGitter | <Varriount> Then when you want to bind, you just compare the discriminants |
23:05:54 | ldlework | I want the modules to store their parameters as a hashtable mapping the name to the parameter |
23:06:23 | ldlework | Hmm |
23:08:05 | FromGitter | <Varriount> get the right parameter, get the left output, compare discriminants |
23:12:57 | * | chemist69 quit (Ping timeout: 264 seconds) |
23:12:58 | * | Sembei quit (Ping timeout: 240 seconds) |
23:14:25 | * | sz0 quit (Quit: Connection closed for inactivity) |
23:15:24 | Serenitor | any idea how I can check if I file currently being written to? I'd like to wait for an external write to complete. |
23:20:48 | * | libman joined #nim |
23:22:03 | * | Matthias247 quit (Read error: Connection reset by peer) |
23:22:22 | * | Nobabs27 quit (Quit: Leaving) |
23:22:37 | * | Nobabs27 joined #nim |
23:29:28 | * | zachcarter quit (Ping timeout: 240 seconds) |
23:39:38 | * | chemist69 joined #nim |