00:10:00 | * | laaron quit (Remote host closed the connection) |
00:10:10 | * | laaron joined #nim |
00:14:17 | * | rockcavera quit (Remote host closed the connection) |
00:37:30 | owl_000 | `echo fmt("Circumference : {here:.2f}, Radius : {r}", 2 * PI * r)` how to move `2 * PI * r` in `{here}` |
00:47:06 | owl_000 | i fixed it, `echo fmt("Circumference : {2*PI*float(r):.2f}, Radius : {r}")` |
01:26:52 | FromGitter | <awr1> hm interesting |
01:26:53 | FromGitter | <awr1> https://twitter.com/steveklabnik/status/1167241262531076096 |
01:27:11 | FromGitter | <awr1> the linux kernel might be getting an optional C+rust build |
01:36:30 | * | ng0_ joined #nim |
01:39:20 | * | ng0 quit (Ping timeout: 260 seconds) |
01:40:33 | * | krux02_ quit (Remote host closed the connection) |
01:44:35 | * | Hideki quit (Remote host closed the connection) |
01:45:03 | * | ng0_ quit (Quit: Alexa, when is the end of world?) |
01:45:28 | * | Hideki joined #nim |
01:49:43 | owl_000 | *victory* today i have completed tut 1. though i skipped some parts. but tut 2 seems just summary and difficult too. |
01:50:01 | * | Hideki quit (Ping timeout: 258 seconds) |
01:50:31 | * | theelous3 joined #nim |
01:59:38 | * | owl_000 quit (Ping timeout: 245 seconds) |
01:59:47 | * | owl joined #nim |
02:05:40 | * | owl is now known as owl_000 |
02:07:54 | * | owl joined #nim |
02:10:55 | * | owl_000 quit (Ping timeout: 244 seconds) |
02:26:55 | * | Hideki joined #nim |
03:03:51 | FromGitter | <Obround> How do you make a dispatch map with a proc that has an argument running on genrics? I've tried this, but it does not work: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5d69e3972efeca1df524fbf9] |
03:05:07 | FromGitter | <Obround> How do you make a dispatch map with a proc that has an argument running on genrics? I've tried this, but it does not work: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5d69e3e35b9a174fdf0c6be8] |
03:08:22 | * | theelous3 quit (Ping timeout: 245 seconds) |
03:23:00 | FromGitter | <awr1> the generic parameter needs to be decided up front, you can't have a table with procs of potentially different signatures |
03:28:32 | FromGitter | <awr1> to my knowledge you can't pass generic procs as callbacks |
03:29:01 | FromGitter | <awr1> the closest thing you will find in the stdlib is something like https://nim-lang.org/docs/sequtils.html#filter.i%2CopenArray%5BT%5D%2Cproc%28T%29 |
03:29:27 | FromGitter | <awr1> where the proc intakes generic argument T, but the proc itself is not a generic |
03:30:31 | FromGitter | <awr1> you can do something like `var dispatch_map = initOrderedTablestring, factorial[int ().type]()` but that only gets you halfway |
03:30:42 | FromGitter | <Obround> Ok... |
03:31:21 | FromGitter | <Obround> Hmm... |
03:32:36 | FromGitter | <awr1> the only way you could concievably do it IMO is with proc literals |
03:32:40 | FromGitter | <awr1> i.e. lambdas |
03:32:58 | * | Hideki quit (Ping timeout: 245 seconds) |
03:33:50 | FromGitter | <Obround> Ok, thanks :) |
03:42:58 | * | chemist69 quit (Ping timeout: 276 seconds) |
03:44:43 | * | chemist69 joined #nim |
03:51:51 | * | kungtotte quit (Quit: WeeChat 2.5) |
04:05:44 | * | laaron quit (Remote host closed the connection) |
04:08:35 | * | laaron joined #nim |
04:09:38 | * | endragor joined #nim |
04:24:06 | owl | wNim only for windows gui frame work, it takes little bit longer time to compile than Nigui, much shorter than `ui`. exe size 300-400kb, upx compressed 100kb-200kb. little bit difficult than nigui. but it is whole GUI framework for windows. all common widgets are available. only for windows |
04:25:49 | owl | all the examples use many icon(png) files. but a bare bone hello world is around 198kb, upx- 79kb. |
04:27:37 | owl | why i focus on small exe, because i believe small exe is a feature of nim (which other lacks). |
04:28:30 | owl | https://github.com/khchen/wNim |
04:28:52 | FromGitter | <gogolxdong> register works , anyone can log on with his own account. |
05:01:17 | * | oculux quit (Ping timeout: 245 seconds) |
05:26:47 | * | laaron quit (Remote host closed the connection) |
05:28:21 | * | laaron joined #nim |
05:35:10 | * | solitudesf joined #nim |
05:46:11 | * | dddddd quit (Remote host closed the connection) |
06:08:08 | * | arecaceae quit (Remote host closed the connection) |
06:08:34 | * | arecaceae joined #nim |
06:10:45 | * | absolutejam joined #nim |
06:11:53 | * | narimiran joined #nim |
06:28:48 | * | vesper11 quit (Ping timeout: 245 seconds) |
06:30:02 | * | adeohluwa joined #nim |
06:30:28 | adeohluwa | i'm back! |
06:30:44 | adeohluwa | like a spinal cord |
06:37:57 | * | solitudesf quit (Ping timeout: 245 seconds) |
06:39:38 | * | vesper11 joined #nim |
06:50:36 | * | laaron quit (Quit: ZNC 1.7.1 - https://znc.in) |
06:52:47 | * | laaron joined #nim |
07:00:00 | * | gmpreussner quit (Quit: kthxbye) |
07:02:26 | * | adeohluwa quit (Ping timeout: 258 seconds) |
07:04:49 | * | gmpreussner joined #nim |
07:12:05 | * | Trustable joined #nim |
07:30:32 | * | Hideki joined #nim |
07:35:01 | * | Hideki quit (Ping timeout: 258 seconds) |
07:40:40 | * | Ven`` joined #nim |
07:41:16 | * | absolutejam quit (Quit: WeeChat 2.5) |
07:50:01 | * | amrit_ joined #nim |
07:50:29 | * | amrit_ is now known as ZORR0W |
07:50:39 | FromGitter | <mratsim> @Obround callbacks are concrete types with an address, generics only live in the compiler, so you can only store instantiated generics like @awr1 said |
07:54:25 | * | ZORR0W quit (Client Quit) |
07:55:11 | * | ZORR0W joined #nim |
07:57:36 | * | Vladar joined #nim |
08:20:25 | * | oculux joined #nim |
08:22:59 | * | laaron quit (Remote host closed the connection) |
08:25:03 | * | Ven`` quit (Read error: Connection reset by peer) |
08:25:34 | * | laaron joined #nim |
08:37:21 | * | nsf joined #nim |
08:45:52 | * | narimiran quit (Ping timeout: 245 seconds) |
08:49:20 | livcd | gogolxdong hmmmm |
08:54:27 | livcd | gogolxdong: I was afraid you already executed my startup idea damn! |
08:59:33 | FromGitter | <gogolxdong> haha, then it's for you. :) |
08:59:59 | livcd | But can you explain a bit what it is ? Is this a hobby or part of what you do at your company ? |
09:00:06 | livcd | You were also hiring few months ago if I am not mistaken |
09:01:38 | FromGitter | <gogolxdong> It's our company production. |
09:01:59 | * | Hideki joined #nim |
09:02:06 | livcd | Cool |
09:02:21 | FromGitter | <gogolxdong> I was hired two years ago to work at this company. |
09:05:35 | livcd | What should be the main product? |
09:10:16 | FromGitter | <gogolxdong> Two productions by far are both cloud relevant. |
09:12:15 | livcd | I still dont know what it is though :D what you are doing |
09:12:15 | FromGitter | <gogolxdong> CMP is Cross-Cloud Management Platform and Cloudfast is about cloud interconnection, both in Nim. |
09:12:29 | livcd | ohh |
09:19:08 | * | ZORR0W quit (Quit: leaving) |
09:19:31 | * | ZORR0W joined #nim |
09:24:07 | * | ng0 joined #nim |
09:46:12 | * | solitudesf joined #nim |
09:49:05 | * | krux02 joined #nim |
10:17:58 | * | ZORR0W quit (Read error: Connection reset by peer) |
10:23:40 | * | ZORR0W joined #nim |
10:25:13 | * | owl quit (Ping timeout: 246 seconds) |
11:31:04 | * | nsf quit (Quit: WeeChat 2.5) |
11:51:15 | * | endragor quit (Remote host closed the connection) |
11:57:25 | * | Hideki quit (Remote host closed the connection) |
11:57:46 | * | Hideki joined #nim |
12:34:23 | * | oculux quit (Quit: blah) |
12:36:02 | * | oculux joined #nim |
13:07:08 | * | solitudesf quit (Ping timeout: 245 seconds) |
13:17:59 | * | ZORR0W quit (Read error: Connection reset by peer) |
13:23:37 | * | ZORR0W joined #nim |
13:47:12 | * | narimiran joined #nim |
13:52:48 | FromGitter | <sheerluck> hi all. I have ```type Dollars* = distinct float``` I cannot ```echo 25.Dollars``` bc I don't have neither `$` nor strVal. How do I write body of proc `$`(x: Dollars): string = ????? |
13:53:40 | narimiran | use `{.borrow.}`? see the examples here: https://nim-lang.github.io/Nim/manual.html#distinct-type-modelling-currencies |
13:55:15 | FromGitter | <sheerluck> @narimiran Thank you, it works! ^_^ |
13:57:36 | * | laaron quit (Remote host closed the connection) |
14:01:52 | * | laaron joined #nim |
14:13:28 | Zevv | you still here narimiran? |
14:13:41 | narimiran | aaaa, thanks for the reminder :) :) |
14:13:49 | Zevv | oh no not even that :) |
14:14:11 | Zevv | I'm looking for someone to shed some light over a funny API i just figured out, but I'm wondering if it is valid, common or just a hack? |
14:14:28 | Zevv | http://ix.io/1TUi look at the line peg(...) |
14:15:25 | narimiran | i've never seen something like that :) |
14:15:28 | Zevv | after some refactoring I found that I lost all typedescs from my code, and this works. It looks kind of funny but it does seem an appropriate construct |
14:16:12 | disruptek | awesome. |
14:16:16 | Zevv | the macro itself just expects an nnkExprColonExpr and picks it apart into identifier and type-describing nimnode |
14:16:32 | disruptek | that's what nim's about; nothing hackish here. |
14:16:50 | disruptek | invent your own semantics given remotely sensible syntax. |
14:16:56 | Zevv | well, then I'll keep it in, I kind of like it. Thanks for the feedback |
14:17:15 | disruptek | just document it. ;-) |
14:17:38 | Zevv | yeah you can't tell from the macro signature what is supposed to go in, but it's always like that with macros |
14:17:53 | Zevv | I got a ton of new features in npeg, I think I'll drop a 1.0 in the near future. |
14:19:00 | disruptek | makes sense, it's a great contribution. |
14:28:46 | * | endragor joined #nim |
14:30:13 | * | endragor quit (Remote host closed the connection) |
14:37:36 | Zevv | stupid question: I have a library consisting of a number of modules. My top level module gets all the documentation and exports a few types that are defined in one of the submodules. How can I still add this type to the generated docs? |
14:42:13 | * | nif quit (Quit: ...) |
14:42:31 | * | Hideki quit (Remote host closed the connection) |
14:42:32 | * | nif joined #nim |
14:43:18 | * | Hideki joined #nim |
14:47:02 | disruptek | actually, that seems like a great question, especially as you extend it to objects that you may want to document though they are constructed/wrapped by libraries. |
14:47:27 | disruptek | did you try to document the `export` statement? |
14:47:35 | Zevv | exactly. And I can't move the type definition to toplevel because it is needed and imported by a lot of modules |
14:47:38 | Zevv | oh no let me see |
14:47:48 | * | Hideki quit (Ping timeout: 258 seconds) |
14:48:10 | Zevv | no luck |
14:48:34 | disruptek | the site of the typedef... you tried documenting it there, right? |
14:48:39 | Zevv | well, nevermind. The module docs are obligatory stuff, I just refer to the README as this will never all fit in here. |
14:49:27 | Zevv | sure |
14:50:19 | disruptek | feels like we want a pragma that toggles exposure of exported symbol docs. |
14:52:18 | Zevv | Well, if the symbol is explictly exported maybe doc could reduce that is the right thing to do? |
14:53:40 | * | theelous3 joined #nim |
14:54:04 | disruptek | if the modules are perfectly encapsulated, sure. |
14:55:32 | disruptek | not sure we have a way to document, say, a ffi function that we prototype but don't define in our code. adding docs to an export statement could do that. |
14:57:22 | * | nsf joined #nim |
14:58:42 | disruptek | also, you might want to override the docs of a type you are exporting in order to provide better context. maybe a macro could implement this. |
14:59:24 | Zevv | probably no single one best solution here |
15:00:10 | disruptek | could be we need a compiler hook and then everything can work with a similarly simple semantic. |
15:19:15 | * | Hideki joined #nim |
15:20:35 | * | dddddd joined #nim |
15:43:48 | * | Hideki quit (Ping timeout: 245 seconds) |
15:56:48 | * | endragor joined #nim |
16:21:43 | * | ZORR0W quit (Ping timeout: 245 seconds) |
16:23:51 | * | ZORR0W joined #nim |
16:27:18 | * | Trustable quit (Remote host closed the connection) |
16:29:19 | * | nif quit (Quit: ...) |
16:29:28 | * | nif joined #nim |
16:31:10 | * | tane joined #nim |
16:40:06 | * | adeohluwa joined #nim |
16:44:42 | rayman22201 | A similar problem happened for the docs when os.nim in the stdlib got split into sub modules. I don't know if we ever figured out a fix 😕 |
16:56:20 | * | kuon joined #nim |
16:56:55 | adeohluwa | jester |
16:57:00 | adeohluwa | returns an error |
16:57:11 | * | kuon__ joined #nim |
16:57:22 | * | kuon quit (Remote host closed the connection) |
16:57:25 | * | kuon__ quit (Read error: Connection reset by peer) |
16:57:45 | * | kuon joined #nim |
16:58:06 | * | kuon quit (Remote host closed the connection) |
16:58:08 | adeohluwa | htmlbeast.nim (282,17) undeclared identifier: addTimer |
16:59:55 | adeohluwa | httpbeast.nim (282,17) undeclared identifier: addTimer |
17:03:17 | * | kuon__ joined #nim |
17:03:22 | * | kuon__ quit (Read error: Connection reset by peer) |
17:03:37 | Zevv | this dude with the sunglasses on the forum, I don't know what to make of him |
17:04:17 | Zevv | adeohluwa: please provide more context. "jester returns an error" is not something we can reproduce to help you |
17:04:25 | narimiran | don't ever trust people who wear sunglasses indoors!! |
17:04:40 | narimiran | (i'm browsing forum indoors) |
17:04:47 | adeohluwa | @Zevv sorry i got disconnected |
17:04:48 | Zevv | please be precesie, ideally provide a complete working piece of code that we can run that shows this error |
17:04:48 | adeohluwa | httpbeast.nim (282,17) undeclared identifier: addTimer |
17:04:52 | Zevv | adeohluwa: np :) |
17:04:55 | adeohluwa | got it |
17:05:11 | Zevv | narimiran: yeah, you're right, it's the *sunglasses* that is my problem |
17:05:17 | narimiran | :D :D |
17:05:33 | * | leorize_ joined #nim |
17:05:49 | adeohluwa | @Zevv running the basic hello world example on github using htmlgen |
17:06:48 | adeohluwa | @Zevv running the basic hello world example on github using htmlgen |
17:06:48 | Zevv | adeohluwa: ok, I just confirmed that that works for me, latest jester and latest nim. What versions are you using? |
17:07:03 | adeohluwa | running it on android |
17:07:05 | adeohluwa | :D |
17:07:08 | adeohluwa | termux |
17:07:15 | Zevv | Well, there you have some interesting info |
17:07:34 | adeohluwa | latest jester |
17:07:37 | adeohluwa | latest nim |
17:07:49 | adeohluwa | 0.20.2 |
17:08:44 | Zevv | well, indeed, in the selectors code I can see this is not supported on android |
17:08:47 | Zevv | don't know *why* though |
17:08:59 | adeohluwa | ohhhhh |
17:09:02 | adeohluwa | thanks! |
17:09:24 | * | leorize quit (Ping timeout: 260 seconds) |
17:10:00 | Zevv | I think android support does not get much love these days, and termux is a bit the odd one out, as it is neither android nor linux, but a bit of both |
17:13:38 | * | solitudesf joined #nim |
17:22:02 | * | adeohluwa quit (Remote host closed the connection) |
17:25:49 | alexander92 | hmm |
17:25:54 | alexander92 | working with docker is fun .. |
17:27:18 | * | adeohluwa joined #nim |
17:27:44 | alexander92 | actually in a good sense |
17:37:37 | livcd | i dont see any benefit |
17:40:59 | * | Hideki joined #nim |
17:43:12 | * | endragor quit (Remote host closed the connection) |
17:44:49 | alexander92 | a bit easier to run tests in a "cleaned up" env |
17:45:10 | alexander92 | maybe nix is a better idea for that indeed |
17:45:27 | alexander92 | but it's not really addressing this actually: only repr |
17:45:34 | * | Hideki quit (Ping timeout: 244 seconds) |
17:48:33 | * | V-X joined #nim |
17:52:37 | tane | are there ways to set a sequence's capacity after construction, i.e. not using newSeqOfCap |
17:53:12 | * | adeohluwa left #nim (#nim) |
17:53:29 | * | adeohluwa joined #nim |
17:53:30 | * | wildtrees joined #nim |
17:53:36 | * | adeohluwa quit (Remote host closed the connection) |
17:56:38 | FromDiscord_ | <Shield> recently I've learned about docker cross compilation toolchain, it that easy to playw with? I want to try some android stuff too |
18:00:00 | * | V-X quit (Remote host closed the connection) |
18:06:14 | * | theelous3 quit (Ping timeout: 244 seconds) |
18:07:55 | * | al_ joined #nim |
18:12:41 | * | laaron quit (Quit: ZNC 1.7.1 - https://znc.in) |
18:13:13 | * | laaron joined #nim |
18:28:49 | * | laaron quit (Quit: ZNC 1.7.1 - https://znc.in) |
18:32:01 | * | laaron joined #nim |
18:50:27 | * | Yardanico_ quit (Ping timeout: 245 seconds) |
18:59:16 | * | Yardanico joined #nim |
19:07:53 | * | endragor joined #nim |
19:08:10 | * | endragor quit (Remote host closed the connection) |
19:17:32 | * | ZORR0W quit (Ping timeout: 245 seconds) |
19:18:16 | lqdev[m] | is there a way of running two tasks in parallel using async/await? or do I have to use threads? |
19:19:42 | * | ZORR0W joined #nim |
19:23:34 | FromGitter | <awr1> a matter of which i've been perpetually confused w/r/t nim is whether `string` or `seq[byte]` should be used for binary data, b/c i feel like i've seen both |
19:24:49 | FromGitter | <awr1> and nim, to my knowledge, doesn't offer easy transitions between the two, requiring a copy-out or pointer-hackery that doesn't come bundled in the stdlib |
19:28:02 | * | kungtotte joined #nim |
19:30:44 | rayman22201 | @lqdev[m] async == concurrency, threads == parallelism. They are used for different things. I really need to finish that tutorial I started writing about this... |
19:31:15 | rayman22201 | @awr1: good question. seq[byte] makes more sense to me semantically, but I also have seen both, so idk... |
19:31:22 | FromGitter | <awr1> also unrelated: why does the stdlib have seperate type definitions for ref types? like `TableRef`? what's wrong with just using `ref Table`? |
19:46:56 | * | actuallybatman joined #nim |
19:49:10 | disruptek | awr1: well, it's buggy, for one thing. |
19:49:23 | * | al_ quit (Quit: al_) |
19:57:18 | shashlick | @Shield look at nightlies |
19:57:41 | shashlick | We use docker for creating Linux as well as arm binaries |
19:58:08 | disruptek | what's shakin', shashlick? |
20:00:21 | * | krux02 quit (Remote host closed the connection) |
20:03:12 | FromDiscord_ | <aolko> so guys |
20:03:23 | FromDiscord_ | <aolko> what about that jetbrains nim plugin? |
20:10:53 | * | actuallybatman quit (Ping timeout: 245 seconds) |
20:12:06 | disruptek | sounds like a solid first project for you. |
20:16:09 | * | actuallybatman joined #nim |
20:16:34 | shashlick | Chilling out @disruptek, long weekend, family visiting, etc |
20:16:57 | disruptek | just in time to go back to work. 😉 |
20:17:20 | shashlick | My backlog is out of control |
20:17:26 | shashlick | But eh |
20:17:31 | * | Vladar quit (Remote host closed the connection) |
20:18:26 | disruptek | awr1: btw, this is the thread i was ref'ing wrt `ref`: https://forum.nim-lang.org/t/5130 |
20:23:01 | shashlick | It's like depth first all the time - enhance nimterop so that I can get nimarchive done so that choosenim can support 7z and xz natively so that we can get rid of the duplicate xz and zip files being posted today |
20:23:57 | FromDiscord_ | <aolko> yeah right, except i ain't a jetbrains plugin dev 👌 |
20:24:42 | disruptek | yeah, like sysadmin work. many layers of onion. |
20:24:56 | disruptek | it all makes me cry. |
20:25:06 | Zevv | Wow, once more I find an amazing Nim package I never heard about. We *really* need a proper 'recommended' list. |
20:25:21 | disruptek | what is it? |
20:25:25 | Zevv | zero-functional |
20:25:33 | disruptek | ah yeah. |
20:28:48 | disruptek | anything in the `important packages` list, i guess. |
20:31:18 | Zevv | yeah, I was just going from the top of the list to see what else I miss out on |
20:31:52 | FromGitter | <awr1> https://github.com/VPashkov/awesome-nim |
20:32:40 | FromGitter | <awr1> @disruptek how is ref alias buggy there? |
20:33:33 | disruptek | using `ref Foo` doesn't work while using `type FooRef = ref Foo` does. |
20:34:02 | FromGitter | <awr1> is there a minimal example of this not working |
20:34:23 | disruptek | i think mratsim said he couldn't seem to reproduce it with a more minimal example. |
20:34:34 | FromGitter | <awr1> the OP in the thread said using the alias didn't fix anything |
20:36:59 | disruptek | right, i misremembered. |
20:39:10 | FromGitter | <awr1> i'll take your word for it and assume that there is a bug with it, although stylistically i'm still not certain why we have ref aliases everywhere. i can sorta get it if you don't want the root type to be public, but still |
20:40:02 | disruptek | i think it's mostly irrelevant now due to changes in the compiler. |
20:41:00 | disruptek | the bug is apparently with a `ref Db` return type; changing it to return `Db` fixed it. i don't understand why; that's why i'm calling it a bug. |
20:42:50 | disruptek | honestly, i can't imagine a scenario that should yield the runtime behavior and yet shouldn't fail during compilation. |
20:47:16 | FromDiscord_ | <Shield> is there a string and seq library that works with pointers and compatible with the normal string and seq? |
20:48:45 | lqdev[m] | rayman22201: I'm talking about two blocking tasks running both at the same task. is that possible? |
20:48:53 | lqdev[m] | s/task/time/ |
20:52:41 | disruptek | lqdev[m]: it is with threads. |
20:52:44 | rayman22201 | async lets you run a non-blocking task while another blocking task is blocked. Threads will let you run two blocking tasks at the same time. Note, that each thread will block when it hits it's own blocking operation. |
20:53:10 | * | bastienleonard joined #nim |
20:53:48 | * | narimiran quit (Ping timeout: 245 seconds) |
20:57:02 | rayman22201 | That being said, you can use this: https://nim-lang.github.io/Nim/asyncfutures.html#and%2CFuture%5BT%5D%2CFuture%5BY%5D |
20:57:21 | rayman22201 | which isn't actually parallel, but simpler and might be good enough |
21:03:44 | lqdev[m] | nope, this won't do, I already tried |
21:03:49 | lqdev[m] | what about coroutines? |
21:04:23 | lqdev[m] | I know they're experimental and such, but all I'm doing is a simple hobby project so it's not a problem |
21:04:52 | rayman22201 | Don't use them. They are super not supported. |
21:04:58 | rayman22201 | Use threadpools |
21:05:12 | rayman22201 | code for coro hasn't been touched in a long time |
21:05:42 | rayman22201 | Or Yuri's threadpools, which are a bit better than the std lib version: https://github.com/yglukhov/threadpools |
21:08:21 | FromGitter | <awr1> if you're pining for the future, idk if you've seen picasso yet |
21:08:22 | lqdev[m] | `'readChars' is not GC-safe as it performs an indirect call here [GcUnsafe2]` how can I get around this? I need to pass things around with callbacks. I guess channels? |
21:09:39 | lqdev[m] | ah, `They are unstable when used with spawn` |
21:09:55 | rayman22201 | use FlowVars |
21:10:04 | rayman22201 | it's like a Future, but for threadpools |
21:11:54 | lqdev[m] | okay, I think I know what to do next |
21:11:55 | lqdev[m] | thanks! |
21:17:33 | FromGitter | <Obround> how do you run Nim code without creating a new file and running it? Something like python's `exec`? |
21:18:27 | * | tane quit (Quit: Leaving) |
21:24:23 | * | bastienleonard left #nim ("ERC (IRC client for Emacs 26.2)") |
21:29:24 | shashlick | Nim is compiled, not interpreted so that's not possible |
21:30:17 | shashlick | Also, the nim vm which is used at compile time and could potentially do that isn't available at run time so |
21:42:23 | * | Hideki joined #nim |
21:46:44 | * | thomasross joined #nim |
21:46:47 | * | Hideki quit (Ping timeout: 258 seconds) |
21:48:39 | Araq | huh? you can import the compiler as a library |
21:53:37 | lqdev[m] | hmm, I think I'll have to resort to using normal threads since I need to have a proc with a while true loop that continuously does the blocking operation and reports back when there's an event |
21:54:12 | * | PMunch joined #nim |
21:57:06 | rayman22201 | ah, ok. Regular thread + channels or shared memory with a lock is the way to go for that. |
22:02:23 | * | PMunch quit (Remote host closed the connection) |
22:02:38 | Araq | https://github.com/nim-lang/Nim/pull/12022 it's green! |
22:05:14 | * | PMunch joined #nim |
22:05:23 | * | PMunch quit (Remote host closed the connection) |
22:13:06 | * | ZORR0W quit (Read error: Connection reset by peer) |
22:18:38 | * | ZORR0W joined #nim |
22:26:16 | * | solitudesf quit (Ping timeout: 258 seconds) |
22:31:57 | * | theelous3 joined #nim |
22:37:58 | * | theelous3 quit (Ping timeout: 245 seconds) |
22:48:14 | FromGitter | <awr1> @Obround maybe it's a false memory but I think there is something in the compiler that take nim code as stdin? or something to that effect? i don't *quite* remember |
22:50:19 | FromGitter | <awr1> i think the functionality for getting the compiler to work on modules in a "file-less" way is already there, probably for `nim secret` |
22:50:33 | FromGitter | <awr1> maybe i'm wrong |
22:53:12 | FromGitter | <awr1> i think this stuff will become more concrete once the notion of a REPL in Nim becomes more properly codified, whether it's building upon `nim secret` or leveraging `nimhcr` |
22:56:24 | FromGitter | <awr1> right now using nimscript in an app is a cool idea that needs a better interface |
23:01:18 | * | ng0 quit (Quit: Alexa, when is the end of world?) |
23:02:43 | * | endragor joined #nim |
23:02:47 | * | endragor quit (Remote host closed the connection) |
23:04:44 | * | endragor joined #nim |
23:11:00 | * | theelous3 joined #nim |
23:16:58 | * | theelous3 quit (Ping timeout: 246 seconds) |
23:17:47 | * | endragor quit (Remote host closed the connection) |
23:32:19 | * | wildtrees quit (Quit: Leaving) |
23:47:20 | FromGitter | <Obround> Hmm |
23:47:36 | FromGitter | <Obround> Can `nim secret` be used from the program? |
23:49:40 | FromGitter | <awr1> you can try. but like i said the ability to integrate the compiler into other apps needs work |
23:50:30 | FromGitter | <Obround> Ok. |
23:55:37 | * | junland quit (Quit: %ZNC Disconnected%) |
23:59:22 | * | junland joined #nim |