00:01:40 | Trioxin | whipping up a sweet bitcoin auto-trader in Nim |
00:04:23 | FromGitter | <zacharycarter> I just made 2k off a bitcoin the other day :P |
00:04:50 | FromGitter | <zacharycarter> only had one though womp womp |
00:12:43 | PMunch | Ugh, my dad told me the other day that he bought a couple bitcoin back when they came out "just to test it" |
00:13:30 | PMunch | Apparently last time he checked they were at $1.4M, but obviously he's lost the key... |
00:21:55 | pydsigner | Woops. |
00:23:49 | PMunch | Yeah... |
00:23:51 | * | PMunch quit (Quit: leaving) |
00:27:43 | * | rauss joined #nim |
00:53:42 | * | daaf joined #nim |
00:54:34 | * | daaf quit (Client Quit) |
00:54:48 | * | daaf joined #nim |
01:02:16 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
01:15:00 | * | Nobabs27 quit (Quit: Leaving) |
01:16:46 | * | chemist69 quit (Ping timeout: 240 seconds) |
01:22:48 | * | dddddd_ quit (Remote host closed the connection) |
01:30:45 | * | chemist69 joined #nim |
01:42:18 | * | jsgrant__ joined #nim |
01:43:18 | ftsf | hmm $(foo).toLowerAscii() complains that toLowerAscii receives a Foo instead of string |
01:43:34 | ftsf | this seems like a very strange order of operations |
01:46:18 | * | bjz joined #nim |
01:52:24 | * | pilne quit (Quit: Quitting!) |
02:03:37 | * | daaf quit (Remote host closed the connection) |
02:52:02 | * | def-pri-pub joined #nim |
03:07:00 | * | arnetheduck joined #nim |
03:11:05 | * | Neomex joined #nim |
03:14:20 | * | libman joined #nim |
03:32:15 | * | WhiskyRyan joined #nim |
03:43:49 | * | yingjun_ joined #nim |
03:44:25 | * | WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
03:44:48 | yingjun_ | hello guys |
03:45:44 | yingjun_ | can somebody recommend a nim gui package for android? |
03:58:45 | * | yingjun_ quit (Remote host closed the connection) |
03:58:56 | * | yingjun_ joined #nim |
04:02:19 | * | yingjun_ quit (Remote host closed the connection) |
04:11:06 | * | def-pri-pub quit (Quit: leaving) |
04:13:49 | * | vlad1777d joined #nim |
04:20:07 | FromGitter | <shmup> So I wanna check out this library (https://github.com/ftsf/nico) and a requirement is the gifenc module (asked to install with nimble install). I can find no existence of this. I see a c99 library though: https://github.com/lecram/gifenc |
04:20:31 | FromGitter | <shmup> I did ask in a new issue, but wanted to see if there's something I'm just not understanding |
04:23:36 | demi- | shmup: https://github.com/ftsf/gifenc |
04:23:59 | shmup | lmao. i did terrible at google I think. thanks |
04:24:32 | shmup | related: the author has made some cute looking games with it: https://impbox.itch.io/smalltrek https://impbox.itch.io/moving-in https://impbox.itch.io/vektor2089 |
04:27:10 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
04:36:42 | ftsf | o/ shmup |
04:37:00 | ftsf | tjamls |
04:37:02 | ftsf | thanks |
04:40:08 | shmup | heh hey ftsf, so now I'm trying to build your example. it "cannot open 'nico/stb_image' |
04:40:35 | shmup | i have installed stb_image |
04:41:06 | ftsf | how are you building the example? |
04:41:22 | shmup | nim c example.nim |
04:41:56 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
04:42:01 | ftsf | nim c -p:. examples/paintout.nim |
04:43:11 | shmup | same outcome |
04:43:45 | ftsf | ahh |
04:43:53 | ftsf | it's because they're not there |
04:45:02 | FromGitter | <Varriount> @shmup If you have nimble, you can do `nimble install nico`, and all the dependencies should be installed. |
04:45:30 | ftsf | it's not published in nimble |
04:47:18 | ftsf | i should port it to use stb_image-Nim, i'm currently vendoring some other version |
04:48:04 | ftsf | https://github.com/msiglreith/nim-stb_image this one |
04:49:26 | ftsf | conflicting package names |
04:57:57 | * | jsgrant__ quit (Ping timeout: 240 seconds) |
05:57:50 | * | rauss quit (Quit: WeeChat 1.8) |
05:58:36 | * | rauss joined #nim |
06:04:15 | * | yingjun_ joined #nim |
06:07:24 | * | Kingsqueee quit (Quit: https://i.imgur.com/qicT3GK.gif) |
06:08:28 | * | yingjun_ quit (Ping timeout: 240 seconds) |
06:08:47 | * | yingjun_ joined #nim |
06:10:31 | * | Trioxin quit (Ping timeout: 246 seconds) |
06:14:37 | yingjun_ | hello? |
06:15:28 | FromGitter | <mratsim> hello yingjun_ |
06:16:10 | yingjun_ | hi |
06:16:21 | * | rauss quit (Quit: WeeChat 1.8) |
06:16:35 | yingjun_ | I am trying to find a gui package for andriod |
06:16:42 | yingjun_ | can you give me some advice? |
06:18:10 | FromGitter | <mratsim> There was this topic: https://forum.nim-lang.org/t/2670 |
06:19:11 | FromGitter | <mratsim> Also a lot of people are doing games in Nim, so I think SDL bindings are in a better state (and can probably be used on android) than GUI stuff |
06:23:14 | yingjun_ | you mean SDL is better than nimx? |
06:23:48 | ftsf | SDL isn't a gui |
06:24:31 | ftsf | but you can make your own gui with it, but it's a lot of work |
06:29:18 | yingjun_ | ok |
06:29:32 | yingjun_ | is nimx built on SDL? |
06:30:08 | ftsf | hmm could be, it requires it |
06:30:13 | ftsf | i've never used nimx |
06:30:27 | yingjun_ | ok |
06:30:48 | yingjun_ | do you have any other recommendations for me ? |
06:30:58 | ftsf | for android gui, i'm not sure |
06:31:04 | ftsf | i don't know of any good options |
06:31:11 | yingjun_ | ok |
06:36:29 | FromGitter | <mratsim> If you can create a DSL that translates to React-Native, it can probably reuse the html DSL for the HTML tags, and the json DSL for the CSS parts |
06:37:12 | FromGitter | <mratsim> and the rest of the Nim code can be compiled to JS |
06:38:04 | yingjun_ | ok |
06:38:33 | * | Etheco quit (Ping timeout: 260 seconds) |
06:44:24 | ftsf | shmup, just updated nico, should work now |
06:50:28 | * | Trioxin joined #nim |
07:00:15 | FromGitter | <mratsim> Faster command-line in <insert whatever language> Rust version: https://users.rust-lang.org/t/faster-command-line-tools-in-d-rust/10992 |
07:15:50 | * | yglukhov joined #nim |
07:21:56 | FromGitter | <NevnHiwEjuam_twitter> Hmm... curious. When GC is disabled, do ref types become synonymous with ptr types? Some of Nim's library only expose ref types as opposed to the underlying value type (AsyncSocket, for example) |
07:58:55 | * | ronny joined #nim |
07:58:59 | ronny | hi |
07:59:34 | ronny | im just getting started - im wonering is anyone working on implementations of network protocols that are not dependent on a io mechanism |
08:11:14 | * | Kingsquee joined #nim |
08:11:52 | * | yingjun_ quit (Remote host closed the connection) |
08:12:09 | * | yingjun_ joined #nim |
08:13:25 | * | yingjun_ quit (Remote host closed the connection) |
08:14:29 | * | yingjun_ joined #nim |
08:18:30 | * | Arrrr joined #nim |
08:18:30 | * | Arrrr quit (Changing host) |
08:18:30 | * | Arrrr joined #nim |
08:21:27 | * | nsf1 joined #nim |
08:43:59 | * | Matthias247 joined #nim |
08:46:12 | * | rokups joined #nim |
08:48:34 | * | yglukhov quit (Remote host closed the connection) |
08:53:47 | * | yingjun_ quit (Remote host closed the connection) |
08:53:58 | * | yingjun_ joined #nim |
08:54:09 | * | Trustable joined #nim |
08:55:19 | * | yingjun_ quit (Remote host closed the connection) |
08:58:10 | * | yingjun_ joined #nim |
09:17:33 | * | yglukhov joined #nim |
09:24:45 | * | bjz joined #nim |
09:28:04 | * | bjz quit (Read error: Connection reset by peer) |
09:30:25 | * | bjz joined #nim |
10:06:38 | FromGitter | <mratsim> Isn’t `—cc:gcc` and `—cc:clang` the way to switch compiler? ⏎ I’m passing -fopenmp which clang doesn’t support, but even with —cc:gg I get a very confusing error: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59294fadfa63ba2f76859522] |
10:08:17 | FromGitter | <ftsf> that does look odd since the error is coming from clang when it's running gcc |
10:09:03 | FromGitter | <ftsf> if you run that command yourself does it do the same thing? |
10:12:24 | FromGitter | <ftsf> hmm does anyone have something similar to stringstreams for js backend? for reading binary file data. |
10:13:32 | FromGitter | <zacharycarter> ftsf: I wrapped https://github.com/englercj/resource-loader for loading resources for frag for JS backend |
10:14:06 | FromGitter | <ftsf> thanks |
10:14:17 | FromGitter | <mratsim> @fstf Yes, same error, I think something is wrong with GCC /usr/bin/gcc have to check where it comes from but it seems like a clang wrapper |
10:14:22 | FromGitter | <zacharycarter> np - not exactly an answer to your question but it may work for you |
10:14:54 | FromGitter | <ftsf> @mratsim yeah, sounds like your gcc is not gcc. =\ |
10:16:04 | FromGitter | <zacharycarter> @ftsf what os are you on? |
10:16:11 | FromGitter | <zacharycarter> err sorry |
10:16:13 | FromGitter | <zacharycarter> @mratsim |
10:16:22 | FromGitter | <mratsim> Ah, “intended by Apple” —> GCC maps to Clang |
10:16:27 | FromGitter | <ftsf> =( |
10:16:30 | FromGitter | <zacharycarter> yes if you're on osx clang = gcc |
10:16:34 | FromGitter | <zacharycarter> they symlink it |
10:16:36 | FromGitter | <ftsf> *shakes fist at apple* |
10:16:46 | FromGitter | <zacharycarter> I personally like osx |
10:17:07 | FromGitter | <zacharycarter> don't get me wrong it's not perfect but it doesn't have the linking issues I've encountered on linux distros |
10:17:17 | FromGitter | <zacharycarter> like ubuntu :/ |
10:17:50 | FromGitter | <mratsim> I like OSX for general purpose and somewhat dev too. At least I don’t have to deal with KDE/Gnome mess |
10:17:54 | FromGitter | <ftsf> i think apple stuff is fine if you only do things the way they want you to |
10:18:22 | FromGitter | <ftsf> but i think they make a lot of decisions for you that make crossplatform dev hard |
10:18:22 | FromGitter | <mratsim> Yeah, but I mostly do data science, and Cuda state on OSX is …. abysmal ... |
10:19:01 | FromGitter | <zacharycarter> ha okay |
10:19:03 | FromGitter | <zacharycarter> err ah* |
10:19:09 | FromGitter | <zacharycarter> I do mostly gamedev so I don't have to deal with Cuda much |
10:19:14 | FromGitter | <zacharycarter> not yet anyway :P |
10:19:29 | FromGitter | <zacharycarter> @ftsf that's what docker is for :P |
10:20:28 | FromGitter | <mratsim> Now if only VScode provided a remote option, so I could code from my mac on a remote linux server |
10:26:53 | FromGitter | <ftsf> hmm can I test for the existence of a field at compile time? |
10:29:36 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
10:29:49 | FromGitter | <Varriount> ftsf: https://nim-lang.org/docs/system.html#compiles,untyped |
10:31:48 | FromGitter | <ftsf> thanks! |
10:34:01 | FromGitter | <Varriount> ftsf: Fair warning, that procedure should be a method of last resort. It's been known to be buggy. |
10:34:57 | FromGitter | <ftsf> mmm okay. I'm using it as a workaround until a change to a stdlib gets merged upstream so at least it compiles but with the functionality disabled until then. |
10:37:44 | * | Matthias247 quit (Read error: Connection reset by peer) |
10:38:26 | FromGitter | <ftsf> I guess alternatively I could emit some code outside the stdlib |
10:43:30 | * | yingjun_ quit (Remote host closed the connection) |
10:43:40 | * | yingjun joined #nim |
10:45:03 | * | yingjun quit (Remote host closed the connection) |
10:47:55 | Arrrr | This is a cheap solution https://glot.io/snippets/eq8uqda09j |
10:48:42 | * | yingjun joined #nim |
10:49:27 | FromGitter | <ftsf> ahh nice |
10:49:34 | FromGitter | <Varriount> Now my question: I need to know the number of fields in a type |
10:49:35 | FromGitter | <ftsf> didn't know about fieldPairs, was looking for a hasField or something |
10:50:10 | FromGitter | <ftsf> @Varriount I guess you could count them with that? |
10:51:52 | * | yingjun quit (Remote host closed the connection) |
10:52:05 | * | yingjun joined #nim |
10:52:44 | * | yingjun quit (Remote host closed the connection) |
10:53:17 | FromGitter | <Varriount> No dice. "Wrong number of variables" |
10:54:08 | * | libman quit (Quit: Connection closed for inactivity) |
10:54:16 | FromGitter | <ftsf> what are you running? |
10:56:06 | FromGitter | <Varriount> `````` |
10:56:20 | FromGitter | <Varriount> ```template numFields(t): int = ⏎ for field, _ in fieldPairs(t()): ⏎ inc(result)``` [https://gitter.im/nim-lang/Nim?at=59295b545e34568d5e9712bc] |
10:57:57 | Arrrr | templates don't have a result field |
10:58:40 | * | rokups quit (Quit: Connection closed for inactivity) |
11:02:22 | FromGitter | <Varriount> Now I get a type mismatch |
11:02:36 | * | Snircle joined #nim |
11:02:41 | FromGitter | <Varriount> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59295cd12b926f8a6799bfc0] |
11:07:33 | * | bjz joined #nim |
11:37:51 | Arrrr | mmm, looks like the trick doesn't work for refs |
11:38:40 | Arrrr | But you can add this in that case `t()[]` |
11:39:10 | Arrrr | `fieldPairs(when t is ref: t()[] else: t())` |
11:48:15 | FromGitter | <dom96> Ftsf: Varriount: the declared process should be used not compiles for this purpose |
11:48:22 | FromGitter | <dom96> *proc |
11:49:00 | FromGitter | <ftsf> @dom69, aha! |
11:53:38 | * | yingjun joined #nim |
11:57:58 | * | yingjun quit (Ping timeout: 240 seconds) |
12:00:44 | * | Arrrr quit (Ping timeout: 246 seconds) |
12:12:00 | * | yglukhov quit (Read error: Connection reset by peer) |
12:12:36 | * | yglukhov joined #nim |
12:32:16 | * | yeeve quit (Excess Flood) |
12:32:37 | * | Neomex quit (Ping timeout: 255 seconds) |
12:34:53 | * | yeeve joined #nim |
12:39:30 | * | bjz quit (Remote host closed the connection) |
12:43:29 | * | bjz joined #nim |
12:55:11 | * | Trustable quit (Remote host closed the connection) |
12:55:31 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
12:57:17 | * | bjz joined #nim |
12:57:46 | * | Neomex joined #nim |
12:59:36 | * | rokups joined #nim |
13:06:57 | * | Kingsquee quit (Quit: https://i.imgur.com/qicT3GK.gif) |
13:11:32 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
13:22:06 | * | pilne joined #nim |
13:33:04 | * | Neomex quit (Read error: Connection reset by peer) |
13:42:54 | * | Neomex joined #nim |
13:43:32 | ftsf | glm module is broken in 0.17 https://github.com/stavenko/nim-glm/blob/master/glm/vec.nim#L215 fails to compile with Error: type mismatch: got (proc (bl: typed, op: string): NimNode{.noSideEffect.}) |
13:43:32 | ftsf | but expected one of: proc head(node: NimNode): NimNode |
13:43:59 | FromGitter | <zacharycarter> hrmmm |
13:44:14 | ftsf | that stuff goes over my head |
13:44:16 | FromGitter | <zacharycarter> my app is crashing randomly looks like due to GC trying to collect a bad reference |
13:44:31 | ftsf | =( memory corruption again? |
13:44:33 | FromGitter | <zacharycarter> I don't THINK I have any c-callbacks that are coming from other threads |
13:44:35 | FromGitter | <zacharycarter> I don't think so |
13:44:43 | * | Hekaton joined #nim |
13:44:51 | FromGitter | <zacharycarter> I'm not sure what it is |
13:45:34 | FromGitter | <zacharycarter> seems to be something with the spine integration for sure - doesn't happen w/o spine but I'm not sure what - as far as I'm aware spine isn't doing any threading so it shouldn't be due to that |
13:45:50 | * | bjz joined #nim |
13:46:42 | ftsf | does spine use callbacks? |
13:47:35 | FromGitter | <zacharycarter> yup |
13:47:41 | FromGitter | <zacharycarter> a few |
13:48:01 | FromGitter | <zacharycarter> but not during the time when my code is crashing to my knowledge |
13:48:03 | ftsf | chuck a setupforeignthreadgc in and see if it helps? |
13:48:09 | FromGitter | <zacharycarter> yeah I tried that :/ |
13:48:10 | FromGitter | <zacharycarter> no dice |
13:49:21 | * | bjz_ joined #nim |
13:50:28 | * | bjz quit (Ping timeout: 240 seconds) |
13:51:15 | FromGitter | <zacharycarter> disabling and manually stepping the GC seems to fix it |
13:51:18 | FromGitter | <zacharycarter> works for me |
13:55:35 | ftsf | nextNormal = (next - v).normal() Error: type mismatch: got (Vec2, Vec2) expected proc `-`[T](a, b: Vec2[T]): Vec2[T] |
13:55:36 | ftsf | =\ |
13:55:49 | ftsf | `foo = next - v` works |
14:00:19 | ftsf | normal(next - v) works too... |
14:00:32 | ftsf | i thought (next - v).normal() was the same as normal(next - v) |
14:11:05 | FromGitter | <mratsim> It should, is normal a template? I had some issues with template and method call syntax when it’s defined in another file |
14:11:52 | FromGitter | <mratsim> I really should open a bug about that it’s a pain |
14:12:22 | ftsf | it's a generic proc |
14:12:29 | ftsf | defined in another file |
14:22:29 | * | bjz joined #nim |
14:23:18 | FromGitter | <ephja> I've had to create separate procs in some cases |
14:23:54 | FromGitter | <ephja> also when working on vectors actually |
14:24:27 | * | bjz_ quit (Ping timeout: 272 seconds) |
14:24:44 | ftsf | interesting |
14:25:44 | ftsf | hmm another 0.17 issue, writeConfig crashes with a double free |
14:27:25 | ftsf | invalid read of size 4 in fclose from writeConfig |
14:28:40 | ftsf | works fine in 0.16 |
14:30:49 | * | libman joined #nim |
14:41:11 | * | WhiskyRyan joined #nim |
14:56:41 | * | libman quit () |
14:57:09 | * | libman joined #nim |
14:57:10 | * | yingjun joined #nim |
15:01:49 | * | yingjun quit (Ping timeout: 272 seconds) |
15:14:53 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
15:27:37 | * | nsf1 quit (Quit: WeeChat 1.7.1) |
15:39:23 | * | __james joined #nim |
15:46:15 | * | __james left #nim ("WeeChat 1.4") |
16:02:08 | * | vivus joined #nim |
16:03:47 | vivus | in a nim raw string, I have something like this: r"this is a "quoted" text" . How do I escape the " contained within the string? |
16:07:04 | vivus | figured it out. I had to use: r"this is a ""quoted"" text" |
16:13:15 | FromGitter | <mratsim> Is there a distinction between `ptr` (`const *`) and `var ptr` (`*`)? |
16:14:52 | FromGitter | <mratsim> or maybe `var ptr`just don’t exist and the location `ptr` points to is always modifiable |
16:15:58 | * | WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
16:17:49 | * | WhiskyRyan joined #nim |
16:18:49 | * | vivus quit (Quit: Leaving) |
16:19:12 | * | WhiskyRyan quit (Client Quit) |
16:25:21 | FromGitter | <kirk86> @mratsim yeah you're absolutely right. I've never understood why they haven't used operator overloading since both c/c++ allow that. Any ideas? What I'm actually interested to learn is if nim is gonna be a playground like python with all those libraries that would allow users to easily do scientific computations. So what I'm actually asking is if there is a roadmap in that direction. Nim looks like a good candidate since |
16:25:21 | FromGitter | ... also has strengths in paralell and distributed computation. |
16:26:58 | FromGitter | <mratsim> mmmh @kirk86 about your first part, are you talking about operator overloading for pointers? |
16:29:24 | * | WhiskyRyan joined #nim |
16:30:01 | FromGitter | <kirk86> In regards to torch and tensorflow instead of providing tf.multipy they could have overloaded the multiplication operator *. |
16:30:13 | FromGitter | <mratsim> Regarding the second part, it’s up to people to implement what they need and scratch their own itch. There is NimData by Bluenote10 for a pandas/dataframe library. I’m really impressed by what it does (out-of-core processing and HTML display) |
16:30:34 | FromGitter | <mratsim> ah, that was the conversation from yesterday :P |
16:30:47 | FromGitter | <kirk86> yeah ;) |
16:30:51 | FromGitter | <mratsim> but Python/Lua do not allow oerloading I think |
16:31:10 | FromGitter | <mratsim> in any case I plan to bring a torch-like package in Nim |
16:32:16 | FromGitter | <kirk86> but since both torch tensorflow use c/c++ they could have used that in the backed. Super excited about your torch-like package looking forward to it ;) |
16:34:34 | FromGitter | <kirk86> @mratsim May I ask a question since I'm not very familiar with nim at the moment? Do you know if it allow for easy parallel and distributed computation? What I mean by that is does nim has anything equivalent to what julia is offering at the moment for distributed and parallel computation? |
16:36:27 | * | Sentreen quit (Ping timeout: 240 seconds) |
16:37:12 | * | skrylar joined #nim |
16:37:14 | skrylar | mew |
16:38:13 | FromGitter | <mratsim> There is no magic decorator, but it seems easy to use OpenMP |
16:38:47 | FromGitter | <mratsim> or possible (easy ?) to use Actor model, or channels or lots of other paradigm |
16:39:14 | FromGitter | <mratsim> Passing OMP directive from Nim: https://github.com/jcosborn/qex/blob/master/src/omp.nim |
16:40:57 | FromGitter | <kirk86> @mratsim thanks but that covers only the multicore aspect. Anything about the distributed aspect? So in general nim has good features but it lacks a lot in terms of easy of use. If things change in that direction that would mean that a lot of people might come on board. |
16:41:19 | FromGitter | <mratsim> the core language is really flexible, and everything that can be done in C seems to be doable in Nim, except maybe some unsafe thing. Even using SIMD directly: https://github.com/jcosborn/qex/blob/master/src/simd/simdAvx.nim |
16:42:04 | FromGitter | <mratsim> For the distributed aspect I can’t comment, I don’t thing there is a package yet but there is nothing preventing creating one |
16:42:52 | FromGitter | <kirk86> @mratsim thanks for taking time to answer my noob questions ;) |
16:43:14 | FromGitter | <mratsim> you’re welcome |
16:48:16 | skrylar | I guess I don't understand what you are asking for. |
16:48:37 | skrylar | Distributed programming is not highly specified to begin with |
16:49:19 | skrylar | I'm guessing you want something like Erlang message passing or Workman queues? |
16:49:23 | skrylar | Sorry, gearman |
16:49:57 | * | Sentreen joined #nim |
16:50:28 | skrylar | I know there's a few things like ZeroMQ or NullMQ that let you set stuff up in a message passing manner and then act the same regardless of over-the-net or same chip |
16:50:53 | skrylar | If you just mean like, "i want to define tasks in a DSL and then throw them at an orchestration server" then, yea, that could be neat. |
16:51:02 | * | WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
16:51:04 | FromGitter | <mratsim> I thinking it’s distributed numerical computing. Sharing 1000000 x 100000000 matrices on clusters and doing computation on that |
16:51:19 | skrylar | so you do mean the erlang/gearman thing then |
16:51:54 | * | WhiskyRyan joined #nim |
16:52:02 | skrylar | Unless openmp happens to do that. Never used it directly. Have used some distributed computing stuff, but it was low level |
16:53:05 | FromGitter | <mratsim> If that’s the case, the easiest is wrapping Plasma: https://bitbucket.org/icl/plasma |
16:53:11 | FromGitter | <mratsim> which is in C |
16:53:41 | skrylar | looks like that just does it on a single mainboard |
16:54:05 | * | WhiskyRyan quit (Client Quit) |
16:54:13 | skrylar | that's why I said I don't know what you want. the encapsulations are different |
16:54:56 | skrylar | probably a terminology thing |
16:55:03 | * | WhiskyRyan joined #nim |
16:55:33 | skrylar | when someone says distributed i think multiple rack units. if they say parallel i think multiple chips in one unit |
16:56:25 | skrylar | in which case it looks like a wrapper for plasma would give you more usage of one server, yes |
16:56:28 | FromGitter | <mratsim> Apparently julia has a @distributed decorator, don’t know what it does though. I found julia syntax, pretty before using it, but then really confusing. ⏎ ⏎ Between the count from 1, the “:name” and @decorator for meta programming, it didn’t feel right (though that’s probably subjective) |
16:57:11 | skrylar | Julia does have a multi-machine map/reduce setup somewhere |
16:58:04 | skrylar | if you think a plasma wrapper would help i can look at it, although i don't have domain experience in the super high-scale matrix math stuff |
16:59:01 | * | yingjun joined #nim |
17:03:26 | * | yingjun quit (Ping timeout: 255 seconds) |
17:05:35 | * | nsf joined #nim |
17:06:11 | skrylar | was just thinking about how neat it would be to have a macro to deal with tensors tho |
17:06:43 | skrylar | have been doing complex formulas by hand with those and scratch tensors, but a decent macro could probably do it just fine. it's a basic register allocation problem afterall |
17:06:53 | shmup | ftsf++ thanks for the nico push |
17:07:33 | FromGitter | <mratsim> Personally I don’t have multi socket systems so I don’t really need Plasma, a BLAS and Cuda are just fine =) |
17:07:57 | skrylar | i need to learn one of those gpgpu things |
17:08:07 | * | skrylar has a todo to run a compute shader on vulkan and an opencl app |
17:08:20 | skrylar | vulkan is VERY verbose though |
17:08:47 | FromGitter | <mratsim> linalg from @andreaferretti supports basic Cuda, and he started a nimcuda wrapper too |
17:09:37 | FromGitter | <mratsim> I don’t know a single thing about Vulkan though, except that SPIR-V might be quite interesting in the future :p and that Apple is, as always, playing solo with Metal |
17:13:06 | skrylar | apple always has interesting requirements of their own though |
17:13:24 | skrylar | not a fan of spir |
17:13:54 | skrylar | My honest opinion of that whole thing is instead of idolziing C++0xDEADBEEF, just use friggin assembly or something |
17:14:48 | skrylar | Some special variant of LLVM-IR would be enough. Because then drivers don't worry about the compilers, they just run IR. |
17:15:21 | skrylar | The shader compiler and such can stay in the hands of people who make languages, and leave the chip makers to make chips. Otherwise it just means tons of bugs |
17:16:42 | skrylar | they might have ended up doing that, i dunno. it looked like spir made the driver manufacturer keep a C++ compiler around for shaders. but i could be very wrong |
17:17:18 | * | arnetheduck quit (Ping timeout: 260 seconds) |
17:19:37 | skrylar | time to poof |
17:19:42 | * | skrylar quit (Remote host closed the connection) |
17:26:29 | shmup | hm. did min used to accept ... parameters? ftsf is doing this in his example: min(x1,x2,x3) (same with max) |
17:26:54 | shmup | type mismatch |
17:29:50 | shmup | nah. not his example. nico.vim itself. ok it isn't a compile time erro |
17:39:01 | shmup | well for now i min(min(a, b), c) but the next roadblock is an undeclared identifier: gameControllerAddMappingsFromFile. something from sdl, yeah? @ ftsf |
17:39:24 | shmup | note this is when doing nim c -p:. examples/paintout.nim |
17:43:10 | * | Arrrr joined #nim |
17:43:10 | * | Arrrr quit (Changing host) |
17:43:10 | * | Arrrr joined #nim |
17:48:59 | * | Neomex quit (Ping timeout: 246 seconds) |
17:49:00 | * | Vladar joined #nim |
18:08:33 | * | couven92 joined #nim |
18:18:11 | demi- | hmmm i'm having a little trouble with `push`ing a header pragma, and i'm not sure why |
18:18:16 | * | nsf quit (Quit: WeeChat 1.7.1) |
18:18:41 | * | dexterk_ quit (Remote host closed the connection) |
18:19:28 | * | dexterk_ joined #nim |
18:31:49 | * | dddddd joined #nim |
18:35:27 | * | rauss joined #nim |
18:41:44 | demi- | this is the line that is being a problem, i don't think i'm doing anything wrong? https://github.com/samdmarshall/GraphQL.nim/blob/master/src/graphql/GraphQLAstVisitor.nim#L12 |
18:50:11 | FromGitter | <Varriount> demi- : and what odd behavior are you experiencing? |
18:50:36 | demi- | importing the module into an empty file says it is an invalid pragma |
18:53:34 | * | PMunch joined #nim |
18:54:08 | Arrrr | Is there a way to fix the size of int independently of your compiler? Other than spamming int32/int64? |
18:54:15 | demi- | `Error: invalid pragma: header: "GraphQLAstVisitor.h"` |
18:54:59 | dom96 | demi-: I think you might need to use the 'pragma pragma' https://nim-lang.org/docs/manual.html#pragmas-pragma-pragma |
18:55:25 | dom96 | and then push the newly defined pragma |
18:56:57 | libman | I am still "temp"-banned forum the forum. This is ridiculous... |
18:56:59 | demi- | hmmm |
18:57:05 | * | libman left #nim (#nim) |
18:57:15 | demi- | dom96: can you explain that? i don't think i've needed to do that before? |
18:58:40 | * | rokups quit (Quit: Connection closed for inactivity) |
18:59:04 | dom96 | libman: I just lifted it. If you just apologised I would have lifted it earlier. |
18:59:18 | dom96 | demi-: I'm guessing the push pragma cannot handle pragmas that take parameters. |
18:59:33 | demi- | i mean, i've specifically used this before |
19:00:13 | dom96 | hrm, then I don't know. |
19:01:15 | demi- | i'll give your suggestion a try tho, may have another package to publish |
19:14:15 | PMunch | Hmm, I'm looking at Jester and currently my little server is deployed just by running the program and exposing the port directly. While reading up on the asyncHttpServer (which Jester uses) documentation it mentions that it shouldn't be used in production and rather be put behind a reverse proxy like nginx. Is there any documentation on how to set this up? |
19:16:48 | PMunch | I found this: https://github.com/TechEmpower/FrameworkBenchmarks/tree/master/frameworks/Nim/jester |
19:16:52 | PMunch | Which gives an indication |
19:28:44 | * | Matthias247 joined #nim |
19:31:07 | dom96 | https://news.ycombinator.com/item?id=14431315 |
19:31:40 | dom96 | PMunch: there are many tutorials on how to do this for nginx, just google "nginx reverse proxy" |
19:34:05 | PMunch | Oh right, so Jester just runs on the server as normal on a non-exposed port and nginx does all the heavy lifting and proxies Jester through it? |
19:34:42 | couven92 | PMunch, yeah, that's what a Reverse Proxy does :P |
19:35:11 | PMunch | Yeah, I realised :P |
19:35:42 | dom96 | yep, I recently found that this also works for web sockets |
19:35:42 | couven92 | You do that in parts because of timeouts, DOS attacks and such stuff that might be dangerous on the public internet |
19:36:09 | dom96 | Which means SSL is easily implemented for web sockets too and adds a level of reliability for web sockets too. |
19:37:39 | * | Arrrr quit (Read error: Connection reset by peer) |
19:40:34 | * | dexterk_ quit (Read error: Connection reset by peer) |
19:40:45 | * | dexterk_ joined #nim |
19:54:45 | * | ehmry joined #nim |
20:01:15 | * | yingjun joined #nim |
20:05:53 | * | yingjun quit (Ping timeout: 260 seconds) |
20:10:32 | * | dexterk__ joined #nim |
20:10:49 | * | dexterk_ quit (Ping timeout: 245 seconds) |
20:12:32 | * | nsf joined #nim |
20:17:58 | * | Nobabs27 joined #nim |
20:18:55 | Nobabs27 | https://gist.github.com/Nobabs27/59e1333247c00f4a0b58cbd8bc53b581 |
20:18:57 | Nobabs27 | ?? |
20:24:21 | * | Hekaboi joined #nim |
20:26:16 | FromGitter | <ephja> codegen bug? |
20:27:32 | * | Hekaton quit (Ping timeout: 246 seconds) |
20:47:14 | dom96 | without seeing what test.nim looks like we can't help much |
20:50:05 | Nobabs27 | it's a success if I remove a static: var at the top |
20:51:57 | * | Jesin quit (Quit: Leaving) |
20:56:35 | * | Jesin joined #nim |
21:06:16 | * | Vladar quit (Quit: Leaving) |
21:07:22 | dom96 | Nobabs27: please report it as a bug |
21:13:14 | FromGitter | <ephja> what do you need the header for? |
21:15:28 | * | vlad1777d quit (Remote host closed the connection) |
21:28:14 | * | Nobabs27 quit (Quit: Leaving) |
21:30:11 | * | Neomex joined #nim |
21:32:28 | * | Neomex quit (Read error: Connection reset by peer) |
21:42:00 | * | bjz joined #nim |
22:02:11 | * | Sentreen quit (Ping timeout: 258 seconds) |
22:03:17 | * | yingjun joined #nim |
22:07:38 | * | yingjun quit (Ping timeout: 246 seconds) |
22:09:38 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
22:15:47 | * | Sentreen joined #nim |
22:22:13 | * | ehmry[m] left #nim ("User left") |
22:22:14 | * | ehmry[m]1 joined #nim |
22:35:46 | dom96 | yglukhov: endragor: maybe you guys could answer this? https://news.ycombinator.com/item?id=14431315 |
22:39:15 | * | ehmry quit (Disconnected by services) |
22:39:36 | * | ehmry[m]1 is now known as ehmry[m]2 |
22:39:42 | * | ehmry joined #nim |
22:39:57 | * | ehmry quit (Client Quit) |
22:41:02 | * | ehmry[m]2 is now known as ehmry |
22:43:04 | * | emery joined #nim |
22:43:12 | * | emery left #nim (#nim) |
22:55:24 | * | TheManiac quit (Ping timeout: 245 seconds) |
22:56:39 | * | Hekaton joined #nim |
23:00:37 | * | Hekaboi quit (Ping timeout: 268 seconds) |
23:06:34 | * | TheManiac joined #nim |
23:07:35 | FromGitter | <zacharycarter> I'd like to be able to answer that question! |
23:23:30 | * | yglukhov quit (Remote host closed the connection) |
23:28:18 | dom96 | I answered, but I'm very biased :) |
23:33:28 | FromGitter | <zacharycarter> yeah you are :P |
23:34:20 | FromGitter | <zacharycarter> I don't use it in production so I can't answer, but I'm pushing hard at work it's just going to be very slow to gain adoption if at all |
23:34:28 | FromGitter | <zacharycarter> that AWS sdk @Varriount is working on will be extremely helpful |
23:38:36 | * | couven92 quit (Quit: Client Disconnecting) |
23:39:53 | * | Hekaboi joined #nim |
23:43:32 | * | Hekaton quit (Ping timeout: 246 seconds) |
23:46:36 | * | WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
23:46:44 | * | Matthias247 quit (Read error: Connection reset by peer) |
23:50:35 | * | jsgrant_ joined #nim |
23:54:15 | * | nsf quit (Quit: WeeChat 1.7.1) |