00:08:23 | FromDiscord | <niltok> where should I be able to find stdlib modules in the filesystem? |
00:08:33 | FromDiscord | <niltok> i search for hashes.nim and can't find anything |
00:08:58 | FromDiscord | <Elegantbeef> it should be in your `nim/lib/pure` directory |
00:09:21 | FromDiscord | <Elegantbeef> I use choosenim on linux so it's in `~/.choosenim/version/lib/pure` |
00:10:05 | FromDiscord | <niltok> thanks, I must have been searching wrong |
00:15:58 | FromDiscord | <HuskyHacks> hello 🙂 |
00:16:05 | FromDiscord | <Elegantbeef> Hello |
00:18:17 | FromDiscord | <impbox [ftsf]> o/ ahoy there |
00:19:26 | FromDiscord | <HuskyHacks> I am a recent nim convert but for reasons that may be a little off the beaten path |
00:19:37 | FromDiscord | <Elegantbeef> `hacks` yep |
00:19:40 | FromDiscord | <HuskyHacks> 😉 |
00:19:49 | FromDiscord | <HuskyHacks> but I'm here because I want to be a better programmer |
00:20:08 | FromDiscord | <Elegantbeef> Well we will almost certainly not aid in helping malware but general nim questions can be answered |
00:20:15 | FromDiscord | <HuskyHacks> nah I got that part covered |
00:20:36 | FromDiscord | <HuskyHacks> I have a long way to go from a basic CS/programming standpoint though |
00:20:57 | FromDiscord | <HuskyHacks> and Nim is the only language that has ever made sense to me so I figured it's my best shot |
00:21:07 | FromDiscord | <Papel> sent a long message, see http://ix.io/3zv9 |
00:21:25 | FromDiscord | <Elegantbeef> Well then i welcome you to make non malicious programs 🙂 |
00:21:53 | * | arfy is also a recent nim discoverer |
00:22:12 | FromDiscord | <impbox [ftsf]> welcome! |
00:24:13 | FromDiscord | <impbox [ftsf]> I've been using nim for over 5 years now, wow |
00:24:22 | arfy | wow |
00:24:38 | FromDiscord | <Elegantbeef> I've only used it for like a year and a half |
00:27:18 | FromDiscord | <HuskyHacks> It's getting very popular with red teamers/pentesters, along with Rust |
00:28:21 | FromDiscord | <HuskyHacks> and as far as I can tell, security products don't quite "get" the structure of Nim compiled binaries yet to the extent that they can hook and analyze others, so I have a feeling it will be popular for a while until the vendors catch up |
00:31:07 | FromDiscord | <Elegantbeef> Well Nim binaries are already blocked by multiple anti viruses afaik |
00:31:54 | arfy | :( |
00:34:04 | FromDiscord | <HuskyHacks> the compiler is for sure! |
00:34:11 | FromDiscord | <HuskyHacks> I was surprised by that |
00:42:10 | FromDiscord | <cabboose> Yes it is annoying |
00:42:19 | FromDiscord | <cabboose> I turn off my antivirus with frustration whenever I’m coding |
00:42:26 | FromDiscord | <impbox [ftsf]> >_> good to know |
00:42:48 | FromDiscord | <Elegantbeef> I just use a organic freerange OS |
00:43:02 | FromDiscord | <cabboose> Sounds like a hippy thing |
00:43:21 | FromDiscord | <Elegantbeef> Nah the hippy thing is me chaning myself to a goat that's chained to a tree |
00:46:20 | NimEventer | New thread by Elcritch: Thoughts on pure Nim api for SPI & I2C device access?, see https://forum.nim-lang.org/t/8443 |
00:50:41 | arfy | ugh |
00:50:48 | FromDiscord | <Elegantbeef> hgu |
00:50:57 | arfy | trying to figure out how to get notepad++ to play nice with nim in terms of spacing |
00:55:54 | FromDiscord | <impbox [ftsf]> i haven't used that since my quake2 modding days |
00:56:17 | arfy | yeah. good tgime to try vscode. |
00:56:19 | arfy | time |
01:03:47 | FromDiscord | <Gumber> vim + nimlsp is nice |
01:03:48 | FromDiscord | <Gumber> or emacs |
01:03:58 | FromDiscord | <Gumber> or spacemacs with evil mode |
01:19:18 | * | arkurious quit (Quit: Leaving) |
01:26:33 | * | neurocyte0133 joined #nim |
01:26:33 | * | neurocyte0133 quit (Changing host) |
01:26:33 | * | neurocyte0133 joined #nim |
01:28:54 | * | neurocyte013 quit (Ping timeout: 260 seconds) |
01:28:54 | * | neurocyte0133 is now known as neurocyte013 |
02:29:55 | FromDiscord | <treeform> In reply to @fae "also i havent really": My lib uses std/json ... so you been using it too 🙂 |
02:30:17 | FromDiscord | <treeform> In reply to @Gumber "I disagree and have": do you have link? |
02:33:27 | FromDiscord | <treeform> More backends besides OpenGL would be cool. Its more work to make them happen though. |
02:34:22 | FromDiscord | <treeform> I really want to get Metal and Vulkan backends. |
02:35:01 | nrds | <Prestige99> @Elegantbeef I've been thinking about ways to make this system more robust/handle any type. Was thinking I could generate a new type that had this information stored, and a proc to update them all (so the type wouldn't matter). What do you think? Probably just an adaptation of what you created, previously |
02:35:11 | FromDiscord | <treeform> I would like to finish glfw/gl backend first. Once that is done I'll make more. |
02:35:39 | * | justsomeguy joined #nim |
02:35:56 | arfy | lol. I just ran file on a nim file and it said. python script |
02:36:05 | nrds | <Prestige99> :o |
02:36:25 | FromDiscord | <Elegantbeef> Hmm i dont know prestige |
02:36:50 | FromDiscord | <Elegantbeef> I was thinking it did need a key or something to allow calling different enimations |
02:37:19 | FromDiscord | <Elegantbeef> I dont know if it needs a type since i figure this stuff is all done at CT |
02:37:33 | nrds | <Prestige99> So my thought is that an Animation would have multiple seq[tuple[T, float]] |
02:37:51 | nrds | <Prestige99> where each is a different type, but found at compile time |
02:39:39 | nrds | <Prestige99> e.g. https://play.nim-lang.org/#ix=3zvr but the Animation type is generated |
02:39:58 | FromDiscord | <Elegantbeef> I'm just wondering if this is need |
02:40:19 | FromDiscord | <Elegantbeef> Could it not just be a compile time string -\> animation? |
02:40:46 | nrds | <Prestige99> wdym? |
02:40:55 | FromDiscord | <treeform> In reply to @tandy "what im doing is": In jsony to skip a key, you would have to override the dumpHook for the whole objet and check the keys type. A specific option dumpHook does not dump the key, so it can't skip it. |
02:41:00 | FromDiscord | <Elegantbeef> Well why does the animation object exist? |
02:41:11 | FromDiscord | <Elegantbeef> To hold data to get invoked upon right? |
02:41:17 | FromDiscord | <Elegantbeef> And to be able to use specific animators |
02:41:21 | FromDiscord | <Gumber> In reply to @treeform "do you have link?": I think we've hashed out the conversation before |
02:41:32 | nrds | <Prestige99> Yeah |
02:41:39 | FromDiscord | <Gumber> we've talked about it at least twice I think in the past treeform |
02:41:49 | * | rockcavera quit (Remote host closed the connection) |
02:41:54 | FromDiscord | <Gumber> my previous handle is Zachary Carter |
02:41:57 | FromDiscord | <Gumber> in case you weren't aware |
02:42:14 | FromDiscord | <Gumber> but I just have different requirements for my GUI libraries than you and I guess others do |
02:42:26 | FromDiscord | <Gumber> I want them to do the bare minimum for me |
02:42:28 | FromDiscord | <treeform> In reply to @tandy "what im doing is": I think this might do what you want: https://gist.github.com/treeform/b9ae82d583773dc77fd214df45d5d20c |
02:43:00 | FromDiscord | <treeform> In reply to @Gumber "my previous handle is": I was not aware sorry! |
02:43:12 | FromDiscord | <Gumber> ah no worries! I tried to do like a transition period with both names in my server nick |
02:43:27 | FromDiscord | <Gumber> but trying to get rid of my real name being associated with my discord after that whole incident last year |
02:43:43 | FromDiscord | <Elegantbeef> So i'm just wondering if there is any reason to have this leak or allow an api like https://play.nim-lang.org/#ix=3zvu |
02:45:10 | FromDiscord | <Elegantbeef> I dont know i might be missing something |
02:46:06 | nrds | <Prestige99> that would be fine I think but needs to support any type |
02:46:08 | FromDiscord | <treeform> I was working on animations like a year ago. I found its too hard to manage in code, so I just did a json file with key frames. |
02:46:21 | FromDiscord | <Elegantbeef> Well my method does support anytype |
02:46:43 | FromDiscord | <treeform> animation are hard to get right without an editor of some sort |
02:46:57 | FromDiscord | <treeform> so editor + simple keyframe format would be my vote |
02:47:27 | FromDiscord | <Elegantbeef> Yea something like that would be the best though he wants to animate fields so he needs to make the tooling in conjunction with the format |
02:47:28 | nrds | <Prestige99> oh, hmm |
02:47:33 | nrds | <Prestige99> I'll explore it more |
02:48:03 | FromDiscord | <Elegantbeef> The biggest issue with this format is it's just super hard to do anything, you really want an editor with this |
02:49:27 | FromDiscord | <Elegantbeef> Only issue is that for an editor you're pretty much forced to mark everything so you can view it's fields and actually animate it at runtime |
02:49:38 | FromDiscord | <Elegantbeef> No clue the best way to handle that/serialize that |
03:05:00 | FromDiscord | <impbox [ftsf]> I made an keyframe animation editor in nim, but each keyframe contains all the possible keys so it's a bit ugly |
03:05:42 | FromDiscord | <impbox [ftsf]> sent a code paste, see https://play.nim-lang.org/#ix=3zvB |
03:06:27 | FromDiscord | <impbox [ftsf]> would be nicer with each channel just being a seq[(time,value)] |
03:07:23 | nrds | <Prestige99> Beef I was thinking of saving the anim data in a file and loading it in, later |
03:10:38 | FromDiscord | <impbox [ftsf]> Prestige, you could just use Vec4s for all channels and make them homogenous |
03:11:21 | nrds | <Prestige99> why a Vec4? |
03:11:40 | FromDiscord | <impbox [ftsf]> since it should be able to handle all the things you want to animate |
03:11:51 | FromDiscord | <impbox [ftsf]> (not exactly sure what your requirements are) |
03:12:06 | FromDiscord | <impbox [ftsf]> but color, pos, rotation, scale, etc all fit in a vec4 |
03:12:16 | nrds | <Prestige99> I want to be able to "animate" any type - int, float, string, tuples of any data, custom types |
03:12:18 | FromDiscord | <impbox [ftsf]> as do any scalars |
03:12:27 | nrds | <Prestige99> and also invoke function calls, eventually |
03:12:35 | FromDiscord | <impbox [ftsf]> animate strings? o_O |
03:12:38 | nrds | <Prestige99> but I could handle that separately I suppose |
03:12:42 | FromDiscord | <impbox [ftsf]> how does it interpolate those? |
03:12:56 | nrds | <Prestige99> that would depend on the function provided |
03:13:09 | FromDiscord | <impbox [ftsf]> ok, so you want it to be super generic |
03:13:15 | nrds | <Prestige99> Yeah |
03:13:16 | FromDiscord | <impbox [ftsf]> but do you have a specific usecase? |
03:13:21 | nrds | <Prestige99> Trying to replicate godot's system |
03:13:28 | FromDiscord | <impbox [ftsf]> maybe just focus on your usecase rather than making it overly generic |
03:13:30 | nrds | <Prestige99> basically |
03:13:40 | FromDiscord | <Elegantbeef> It being super generic is hard to do given Nim type information is mostly gone at runtime |
03:13:53 | nrds | <Prestige99> I want to recreate a game I made in godot, and it uses this system |
03:14:05 | FromDiscord | <impbox [ftsf]> well you can do it if you dynamic dispatch |
03:15:33 | FromDiscord | <impbox [ftsf]> it'll just be very heavy |
03:17:05 | FromDiscord | <impbox [ftsf]> https://docs.godotengine.org/en/stable/classes/class_animation.html this what you're basing it off? |
03:17:24 | * | arfy8820 joined #nim |
03:18:25 | nrds | <Prestige99> basing it off using the ui |
03:18:53 | FromDiscord | <impbox [ftsf]> looks like there's a pretty limited set of track types |
03:19:17 | FromDiscord | <impbox [ftsf]> object variants seems fine |
03:19:42 | FromDiscord | <Elegantbeef> Yea object variant + method for handling lerps |
03:19:56 | * | arfy quit (Ping timeout: 246 seconds) |
03:20:00 | * | arfy8820 is now known as arfy |
03:20:06 | FromDiscord | <Elegantbeef> well procedure 😛 |
03:20:22 | nrds | <Prestige99> I was struggling to get variants working but your macro system seems to work |
03:20:56 | FromDiscord | <Elegantbeef> Well the macro system is hard to serialize |
03:21:00 | FromDiscord | <Elegantbeef> So no editor |
03:26:23 | * | justsomeguy left #nim (WeeChat 3.2) |
03:29:57 | nrds | <Prestige99> I'll try getting variants to work |
03:41:24 | NimEventer | New post on r/nim by AccountDry2463: 🍭 Үoung Scнооl Роrn 🍭, see https://reddit.com/r/nim/comments/psap7p/үoung_scнооl_роrn/ |
03:47:26 | FromDiscord | <Archion> Hi |
03:47:36 | FromDiscord | <Elegantbeef> Hello |
03:47:40 | nrds | <Prestige99> That seems like a link I don't want to click |
03:49:54 | FromDiscord | <Yardanico> uff |
03:50:31 | FromDiscord | <Yardanico> seems like it's just generic spam, not aimed at r/nim specifically (so the person/bot who posted it didn't know it gets bridged to 2+ communities) |
03:52:41 | nrds | <Prestige99> Elegantbeef: How would you go about variants here? I could make the AnimationTrack a variant, and depending on the type, pass a different generic to my seq[KeyFrame[T]]? Don't know if that'd even work |
03:55:48 | * | sagax joined #nim |
03:56:57 | FromDiscord | <Elegantbeef> Well you just make a keyframe for each value so float, int, vector... |
03:57:05 | FromDiscord | <Elegantbeef> You cannot use a generic here since that's resolved to a concrete type |
03:57:38 | nrds | <Prestige99> Hm yeah I suppose that'd work |
04:06:01 | * | supakeen quit (Quit: WeeChat 3.3) |
04:06:17 | * | Jjp137 quit (Ping timeout: 245 seconds) |
04:06:30 | * | supakeen joined #nim |
04:07:57 | * | Jjp137 joined #nim |
04:21:48 | nrds | <Prestige99> I can do something like when foo is int, but can't seem to be able to use a case statement for it? |
04:22:23 | nrds | <Prestige99> eh maybe I'm still going about this the wrong way |
04:32:00 | nrds | <Prestige99> or there isn't a way to check if a variable is a proc |
04:32:28 | FromDiscord | <Elegantbeef> `when T is proc` or have a proc that takes that parameter as a different type |
04:35:20 | nrds | <Prestige99> seems to be complaining about when T is proc |
04:35:32 | nrds | <Prestige99> like it expects a proc implementation or a type after the color |
04:35:36 | nrds | <Prestige99> colon* |
04:36:02 | nrds | <Prestige99> ah wrapping in parens worked |
04:57:37 | FromDiscord | <linux user> process goes defunt when kill or terminate |
04:57:51 | FromDiscord | <linux user> solution: discard waitforexit process |
04:58:00 | FromDiscord | <linux user> (edit) "defunt" => "zombie/defunt" |
05:02:24 | FromDiscord | <Gumber> In reply to @haxscramper "so `get_images` is declared": Soooo I tried out your suggestions and I'm still really confused. The `importcpp`s all seem correct. One fun thing is - when I remove the `vkb::detail::Result[std::vector[VkImage]]` from the equation so that only the `VkImageView` result vector is left - the code compiles and produces the correct `VkImageView` type |
05:02:59 | FromDiscord | <Gumber> and if I place the line with the `VkImageView` above the line with the `VkImage` then I get an error about `VkImage` and both lines have `VkImageView` as the type |
05:03:48 | FromDiscord | <Gumber> so I"m starting to think again that it's NOT that my `importcpp` s are incorrect somewhere but instead it's that I either haven't wrapped something I need to or there's something wrong with the cpp compiler backend |
05:25:50 | FromDiscord | <Gumber> I feel like it's because they're both just aliases to pointers to opaque types |
05:26:32 | FromDiscord | <Gumber> so the codegen is generating a typedef to alias `vkb::detail::Result[std::vector[VkImage]]` |
05:27:17 | FromDiscord | <Gumber> but I'm guessing what's happening is it goes to generate one for `vkb::detail::Result[std::vector[VkImageView]]` and is like - wait I already have that essentially because `VkImage` and `VkImageView` are just aliases to `pointer` |
05:27:26 | FromDiscord | <Gumber> maybe I need to make them a distinct pointer? is that even a thing lol? |
05:30:59 | FromDiscord | <Gumber> if you use `distinct pointer` with `importcpp` it will generate a single type def still but this time it won't even use the cpp type name it will just generate a random type name |
05:31:08 | FromDiscord | <Gumber> oh man so much weird shit with this backend |
05:31:52 | * | Pyautogui joined #nim |
05:36:36 | FromDiscord | <Gumber> I guess you can't make wandbox use the cpp backend? |
05:51:03 | FromDiscord | <Gumber> Okay |
05:53:13 | FromDiscord | <Gumber> that's what it is and I have a min reproducible example |
06:01:53 | * | Pyautogui quit (Ping timeout: 264 seconds) |
06:15:57 | NimEventer | New thread by Ingo: Socket questions. selectRead(fds), dispatcher., see https://forum.nim-lang.org/t/8444 |
06:21:36 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zwi |
06:24:10 | FromDiscord | <Elegantbeef> `nimble --version`? |
06:24:34 | FromDiscord | <Elegantbeef> Dont have arm and have never had this issue so no clue really just hoping something odd pops up |
06:25:05 | FromDiscord | <impbox [ftsf]> execption is mispelt too |
06:25:18 | FromDiscord | <Bren> I am typing it from another pc |
06:25:28 | FromDiscord | <impbox [ftsf]> oh ok |
06:26:11 | FromDiscord | <impbox [ftsf]> what are you passing to nimble when you get that error? |
06:26:19 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zwk |
06:28:02 | FromDiscord | <Bren> Not sure why it is trying to get git hash when its compiled from the source tar |
06:28:35 | FromDiscord | <Elegantbeef> Well that's the hash that nimble was built with |
06:28:48 | FromDiscord | <Bren> but its not a git repo |
06:29:21 | FromDiscord | <Bren> it is from https://nim-lang.org/install_unix.html and https://nim-lang.org/download/nim-1.4.8.tar.xz |
06:31:23 | * | neurocyte013 quit (Ping timeout: 246 seconds) |
06:33:18 | * | PMunch joined #nim |
06:34:20 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zwm |
06:35:12 | FromDiscord | <impbox [ftsf]> and the error message is the only output? |
06:35:42 | FromDiscord | <impbox [ftsf]> sent a code paste, see https://play.nim-lang.org/#ix=3zwo |
06:36:14 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zwp |
06:36:27 | FromDiscord | <xflywind> `nimble install illwill --verbose` ? |
06:36:41 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zwq |
06:37:06 | FromDiscord | <impbox [ftsf]> can try `--debug` also |
06:37:36 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zwr |
06:38:00 | FromDiscord | <Rika> Do you have git installed and updated |
06:38:09 | FromDiscord | <Bren> yes |
06:39:15 | FromDiscord | <impbox [ftsf]> any more info with --debug? |
06:39:31 | FromDiscord | <Bren> sent a code paste, see https://paste.rs/F3t |
06:40:21 | FromDiscord | <Bren> should I just blow away the tarball and tryt again? |
06:40:28 | FromDiscord | <impbox [ftsf]> can you try `which git` ? |
06:40:32 | FromDiscord | <impbox [ftsf]> it may be an alias |
06:40:41 | FromDiscord | <Rika> Or another install |
06:40:58 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zws |
06:41:08 | FromDiscord | <Rika> And the version of git is? |
06:41:16 | FromDiscord | <impbox [ftsf]> they already posted that |
06:41:18 | FromDiscord | <Rika> Oh |
06:41:20 | FromDiscord | <Rika> Okay |
06:41:24 | FromDiscord | <Bren> `git version 2.32.0` |
06:41:31 | FromDiscord | <Rika> Sorry |
06:41:39 | FromDiscord | <Bren> I can try 1.4.6 |
06:41:52 | FromDiscord | <impbox [ftsf]> only thing i can think of is nimble can't find git, but that seems odd |
06:43:01 | FromDiscord | <impbox [ftsf]> presumably it's the same output when installing any other package via nimble |
06:43:14 | FromDiscord | <Bren> ya |
06:43:34 | FromDiscord | <Bren> for whatever reason nimble when it compiles trys to get the git hash |
06:43:43 | FromDiscord | <Bren> even though it is from a tarball |
06:43:51 | FromDiscord | <Elegantbeef> That's the stored git hash from when compiled |
06:44:02 | FromDiscord | <Bren> yea but its from a tarball |
06:44:05 | FromDiscord | <Bren> there is no git hash |
06:44:07 | FromDiscord | <Bren> or repo |
06:44:15 | FromDiscord | <impbox [ftsf]> it's normal |
06:44:21 | FromDiscord | <Bren> ok |
06:44:31 | FromDiscord | <Elegantbeef> It's supposed to be the hash from the repo when it built |
06:44:31 | FromDiscord | <impbox [ftsf]> sent a code paste, see https://play.nim-lang.org/#ix=3zwu |
06:44:47 | FromDiscord | <Bren> quality |
06:45:12 | FromDiscord | <Rika> I don’t think it is related nonetheless |
06:45:23 | FromDiscord | <Bren> ok I'll try blowing it all away |
06:45:26 | FromDiscord | <Bren> and trying again |
06:46:53 | FromDiscord | <Bren> takes ages to build on this host |
06:47:07 | FromDiscord | <Bren> trying to build static compiled apps for my kindle |
06:47:46 | PMunch | For your Kindle? |
06:47:52 | PMunch | I didn't think those could run apps |
06:48:02 | FromDiscord | <Bren> yup they are just linux |
06:48:10 | PMunch | Huh, cool |
06:48:14 | FromDiscord | <Bren> if you have jailbroken them you can do whatever |
06:48:32 | FromDiscord | <Bren> people have compiled KOReader to work on them |
06:48:37 | PMunch | And here I am building my own eInk laptop like a scrub :P |
06:48:41 | FromDiscord | <Bren> so native epub support |
06:48:56 | FromDiscord | <Bren> yea you can hook up a keyboard and mouse |
06:48:58 | PMunch | Ooh, that'd be handy |
06:49:00 | * | pro joined #nim |
06:49:10 | FromDiscord | <Bren> people even got full DE working |
06:49:16 | FromDiscord | <Bren> but the NAND is old |
06:49:19 | FromDiscord | <Bren> I have a PW1 |
06:49:24 | FromDiscord | <Bren> so its has no RAM |
06:49:30 | FromDiscord | <Bren> so TUI is the way to go |
06:49:41 | PMunch | I have the one from the same gen, but not paperwhite version |
06:49:41 | FromDiscord | <Bren> but some crazy dude got chromium running on one |
06:49:53 | PMunch | Wow, that's impressive |
06:50:10 | PMunch | I'm using a single board computer and a much bigger 10.3" display |
06:50:20 | pro | is there a limit on number of tcp connections I can have open? |
06:50:21 | PMunch | Paired with an old laptop chassis that has a keyboard and mouse |
06:50:28 | PMunch | @pro, yes |
06:51:02 | pro | back to the drawing board |
06:51:15 | FromDiscord | <Rika> How many are you opening…? |
06:51:18 | PMunch | Now I'm writing my own compositor to do dithering and update windows on the panel :) |
06:51:30 | PMunch | Yeah there is a limit, but it is quite large.. |
06:51:38 | FromDiscord | <Rika> By the way how’s that dithering thing going for you |
06:51:43 | pro | it caps somewhere between 340 and 680 |
06:51:50 | PMunch | Typically if you hit it you've just forgotten to close some sockets |
06:51:54 | pro | I need to open 50000 |
06:51:55 | PMunch | That's nowhere near the limit |
06:52:07 | PMunch | Ah, 50k will get you into the territory |
06:52:12 | PMunch | Why do you need that many? |
06:52:21 | PMunch | @Rika, pretty well |
06:52:21 | FromDiscord | <Rika> Isn’t the limit 65k or something or what |
06:52:25 | pro | simulating many clients |
06:52:42 | PMunch | I've been playing with a-dither and different magic numbers |
06:52:46 | PMunch | Promising stuff |
06:52:47 | pro | 65k is the hard limit because it's how many ports you have, but you need to deduct like 1k system ports, so the cap is somewhere around 63k ? |
06:53:06 | PMunch | And that's for your whole system |
06:53:12 | pro | correct |
06:53:17 | FromDiscord | <Rika> You can bind to system ports as non root given the capability |
06:53:47 | FromDiscord | <Bren> would not recommend on a PW1. On the newer ones its much better |
06:53:48 | FromDiscord | <Bren> Look up the mobileread forums if you want to know how |
06:53:48 | FromDiscord | <Bren> Would not recommend on a PW1. On the newer ones it's much better |
07:02:34 | FromDiscord | <Rika> In reply to @PMunch "I've been playing with": Nice what's the numbers you got so far? Anything better than the default ones |
07:04:41 | arfy | illwill experts. I'm using illwill successfully for most of the interface of a thing I'm writing, but want to have a section where a more Q and A like thing happens. the type of thing where you'd echo a prompt, then var answer = stdin.readLine() happens. this, surprisingly worked on windows, but on posix it bombed out. what's the propper way to do this mix-mode interface? |
07:05:30 | PMunch | @Rika, well better is a subjective term. Most of the number combinations seems to have some directionality to them, which causes what appears as lines |
07:05:42 | PMunch | I kinda like 137/119 though |
07:06:23 | PMunch | But I wouldn't say it's "better" than 237/119 |
07:07:36 | PMunch | I have a 1.1Gb montage of the same image dithered with all the different algorithms if you have 43Gb of RAM and want to have a look if you can find some nice ones :P |
07:07:46 | PMunch | different magic numbers* |
07:08:08 | FromDiscord | <Rika> I do not have that much ram lol |
07:08:39 | FromDiscord | <Elegantbeef> Pmunch might aswell be running the tower of babel there |
07:09:51 | FromDiscord | <Elegantbeef> I meant library but too late now |
07:10:29 | PMunch | Library of Babel? |
07:10:37 | arfy | lol |
07:10:39 | FromDiscord | <Rika> Tower of library |
07:10:39 | FromDiscord | <Elegantbeef> https://babelia.libraryofbabel.info/slideshow.html |
07:11:14 | FromDiscord | <Elegantbeef> Endless stream of random images to look through |
07:12:45 | PMunch | Oh wait, they're supposed to just be random noise? |
07:14:13 | FromDiscord | <Elegantbeef> Well it's random images |
07:15:19 | PMunch | Define image |
07:15:34 | FromDiscord | <impbox [ftsf]> they're autostereograms |
07:15:36 | PMunch | Mine looks like every pixel is just rand(255), rand(255), rand(255) |
07:15:57 | FromDiscord | <Elegantbeef> That's pretty much it pmunch |
07:16:05 | FromDiscord | <Elegantbeef> The whole monkey on a type writer thing to images |
07:16:10 | FromDiscord | <impbox [ftsf]> you don't see the sailboat? |
07:16:15 | PMunch | Haha :P |
07:16:37 | PMunch | I have an anti-tracking extension that tends to do that to all canvas elements :P |
07:16:41 | PMunch | So it's hard to tell |
07:16:53 | PMunch | For example I had to turn it off to play linerino |
07:17:08 | FromDiscord | <Elegantbeef> Not worth it |
07:17:16 | FromDiscord | <Elegantbeef> Linerino could have trackers |
07:17:53 | * | max22- joined #nim |
07:20:20 | * | pro quit (Quit: WeeChat 3.2.1) |
07:21:11 | FromDiscord | <impbox [ftsf]> PMunch, dither example? |
07:22:35 | PMunch | https://uploads.peterme.net/cube_dithered_m1-237_m2-119.png |
07:22:56 | FromDiscord | <impbox [ftsf]> nice! |
07:23:11 | FromDiscord | <impbox [ftsf]> i'm keen to add some nicer dithers to nico |
07:23:23 | PMunch | https://uploads.peterme.net/cube.png |
07:23:31 | PMunch | That's the images that's being dithered |
07:24:22 | PMunch | Floyd-Steinberg: https://uploads.peterme.net/cube_dithered_fs.png |
07:24:29 | PMunch | Atkinson: https://uploads.peterme.net/cube_dithered_at.png |
07:45:50 | FromDiscord | <Rika> Oh you're also using the cube lol |
07:47:43 | PMunch | Haha, yeah it was a nice test image :P |
07:53:28 | PMunch | Hmm, what is a good example C project to import for my automatic importing project? |
07:54:18 | FromDiscord | <Elegantbeef> `stb` stuffs? |
07:54:28 | FromDiscord | <impbox [ftsf]> good ... C ... |
07:55:10 | FromDiscord | <Yardanico> In reply to @PMunch "Hmm, what is a": llvm :DD |
07:55:16 | FromDiscord | <impbox [ftsf]> blender? |
07:55:25 | FromDiscord | <Elegantbeef> llvm is in C++ no? |
07:55:29 | FromDiscord | <Yardanico> they have a C API |
07:55:42 | FromDiscord | <Yardanico> that's how nlvm works |
07:55:49 | PMunch | Something simple where I can import it on one line and use some simple procedures |
07:56:08 | PMunch | I can't have a huge example in the README :P |
07:56:11 | FromDiscord | <Yardanico> yeah the beef's suggestion is pretty good |
07:56:21 | FromDiscord | <Elegantbeef> "the beef's" |
07:56:27 | FromDiscord | <Elegantbeef> Fuck i've been dehumanized |
07:56:34 | FromDiscord | <Yardanico> how beef can be human |
07:58:20 | FromDiscord | <Rika> PMunch have you tried the XOR a dither? |
07:58:37 | PMunch | Yeah I tried it, but wasn't too happy with the results. |
07:58:46 | PMunch | Maybe I should create another massive collage of all those.. |
07:59:56 | FromDiscord | <Rika> It doesn't have the line issue |
08:00:00 | FromDiscord | <Rika> Of course |
08:00:04 | PMunch | Oh really? |
08:00:06 | PMunch | Interesting |
08:00:41 | PMunch | Ugh, a dither is such an annoying name.. |
08:00:47 | FromDiscord | <Rika> Hahah |
08:00:50 | FromDiscord | <Rika> Yes |
08:01:34 | PMunch | Hmm, it seems to use different ranges for the magic numbers though.. |
08:04:29 | FromDiscord | <pietroppeter> In reply to @PMunch "Hmm, what is a": something from here? https://github.com/oz123/awesome-c |
08:04:31 | nrds | <R2D299> itHub: 7"A curated list of awesome C frameworks, libraries, resources and other shiny things. Inspired by all the other awesome-... projects out there." |
08:05:25 | FromDiscord | <Yardanico> In reply to @pietroppeter "something from here? https://github.com/oz123/aweso": it's nice that they mention licenses |
08:18:32 | PMunch | Hmm, @Rika, it has less of an issue with lines, but it is very noisy.. |
08:18:52 | FromDiscord | <Rika> Yeah that's the downside |
08:18:55 | FromDiscord | <Rika> Noisier |
08:19:24 | FromDiscord | <Rika> How many levels do you have for grays ale? |
08:19:34 | FromDiscord | <Rika> Greyscale |
08:20:15 | FromDiscord | <Rika> Add looks fine with 16 levels for example |
08:20:33 | FromDiscord | <Rika> 16 levels is also the usual amount of levels an e ink screen has |
08:21:30 | PMunch | Well I have 16 levels for the full mode |
08:21:38 | PMunch | But the fast mode is B/W |
08:21:42 | FromDiscord | <Rika> But you're doing B mode are you |
08:21:44 | FromDiscord | <Rika> I see |
08:21:51 | PMunch | And that's the one where I really need this |
08:22:11 | PMunch | The 16 colour mode is so slow to update I won't be doing any animations on it anyways |
08:22:12 | NimEventer | New thread by Kobi: How to enable incremental compilation?, see https://forum.nim-lang.org/t/8445 |
08:22:13 | FromDiscord | <Rika> ~~I recommend using dithering on both modes anyway~~ |
08:22:26 | PMunch | So I could just as well use something like Floyd Steinberg |
08:22:40 | PMunch | Oh for sure, I'll use it for both |
08:23:09 | PMunch | Man the xor version creates some really trippy results for some values :P |
08:27:59 | PMunch | https://pippin.gimp.org/a_dither/ <- In the first case statement, do ((x ^ y * 1) * 51& 511)/511.0. Then set pattern to 1 and levels to 1 |
08:29:13 | FromDiscord | <impbox [ftsf]> beautiful https://media.discordapp.net/attachments/371759389889003532/889790354042273792/unknown.png |
08:30:54 | PMunch | I generate a bunch of them and flick through with feh, makes it kinda animated |
08:34:15 | FromDiscord | <Rika> In reply to @impbox "beautiful": Looks like an effect for a game |
08:34:43 | PMunch | 100/32 is pretty nice |
08:36:47 | PMunch | Lot of "artistic" ones, like 99/96 |
09:04:07 | * | pro joined #nim |
09:16:43 | pro | there is no file descriptor limit in nim, right ? |
09:17:36 | FromDiscord | <dom96> your OS has one |
09:19:07 | pro | I removed the limit, but for example python is compiled with hard limit of 1024, so my python apps still can't have more than 1024 :( |
09:19:21 | FromDiscord | <cabboose> wot |
09:19:26 | FromDiscord | <cabboose> how do you remove a FD limit of your OS |
09:19:50 | pro | if you are on linux, open bash and type ulimit -a |
09:20:03 | pro | then raise the FD with ulimit -n 50000 |
09:20:10 | pro | then verify with ulimit -a again |
09:20:34 | pro | then only in that terminal you will have (temporarily) raised the limit |
09:20:53 | FromDiscord | <cabboose> oh yeah |
09:20:55 | FromDiscord | <cabboose> i mean |
09:20:58 | FromDiscord | <cabboose> still limited |
09:21:04 | FromDiscord | <cabboose> its never unlimited |
09:21:39 | pro | you are limited by the number of free ports, so max 65k |
09:25:45 | FromDiscord | <linux user> unlimited |
09:44:00 | FromDiscord | <Yardanico> In reply to @richard stallmen(crazy GNU guy) "unlimited": this is not #memes btw |
09:44:27 | FromDiscord | <linux user> but i no post meme |
09:49:49 | FromDiscord | <impbox [ftsf]> I thought you only meme? |
10:06:15 | FromDiscord | <Yardanico> he does |
10:16:19 | * | [R] quit (Ping timeout: 252 seconds) |
10:20:50 | * | [R] joined #nim |
10:33:52 | nrds | <Prestige99> Is there a way to use a case statement on a type of a field that's a sumtype? |
10:36:27 | nrds | <Prestige99> e.g. https://play.nim-lang.org/#ix=3zxi |
10:37:28 | FromDiscord | <Yardanico> no, you have to use when |
10:37:40 | FromDiscord | <Yardanico> so you have to write when/elif/else |
10:37:48 | nrds | <Prestige99> Hm dang |
10:38:08 | nrds | <Prestige99> Actually may be able to write a macro for this? |
10:46:15 | FromDiscord | <Rika> Maybe you can within a static block? |
10:46:36 | FromDiscord | <Yardanico> In reply to @Rika "Maybe you can within": no, when is different |
10:46:47 | FromDiscord | <Yardanico> if you do it in a static block then all code inside of it would be executed at compile time |
10:47:04 | FromDiscord | <Rika> Well I didn’t look at the code since my internet is bad |
10:47:10 | FromDiscord | <Yardanico> but you need the checks to be done at compile time and the code inside the branches at runtime |
10:47:12 | nrds | <Prestige99> I think all I'd need is a way to disect the types of a sumtype |
10:47:13 | FromDiscord | <Rika> I was merely guessing what it would be |
10:47:22 | FromDiscord | <Yardanico> In reply to @Rika "Well I didn’t look": just view through the ix.io directly with ix.io/3zxi |
10:47:24 | FromDiscord | <Yardanico> it's plaintext |
11:00:21 | FromDiscord | <cabboose> holy shit I had no idea thats where that stuff was coming from |
11:00:39 | nrds | <Prestige99> ? |
11:01:16 | FromDiscord | <cabboose> when people would link ix.io code |
11:01:40 | FromDiscord | <cabboose> I didn't know you can view playground code with that |
11:01:42 | FromDiscord | <cabboose> lit |
11:11:51 | * | pro quit (Quit: WeeChat 3.2.1) |
11:58:15 | * | kayabaNerve_ is now known as kayabanerve |
11:58:21 | * | kayabanerve is now known as kayabaNerve |
12:04:35 | * | pro joined #nim |
12:06:01 | * | supakeen quit (Quit: WeeChat 3.3) |
12:06:30 | * | supakeen joined #nim |
12:15:49 | * | rockcavera joined #nim |
12:15:49 | * | rockcavera quit (Changing host) |
12:15:49 | * | rockcavera joined #nim |
13:14:52 | * | arkurious joined #nim |
13:27:25 | PMunch | How do I compile in a header only library in Nim? |
13:27:50 | PMunch | Without attaching a header pragma to a proc or an object |
13:40:19 | PMunch | Hmm, a `{.emit: staticRead("header_file.h").}` seems to have worked |
13:40:23 | FromDiscord | <haxscramper> Include it somewhere and it would compile all the functions in it. |
13:40:35 | PMunch | But now I ran into const char vs char.. |
14:06:57 | * | Gustavo6046 quit (Quit: ZNC 1.8.2 - https://znc.in) |
14:07:09 | * | Gustavo6046 joined #nim |
14:10:52 | * | Onionhammer0 joined #nim |
14:11:43 | * | koltrast quit (Ping timeout: 252 seconds) |
14:12:49 | * | Onionhammer quit (Ping timeout: 252 seconds) |
14:12:49 | * | Onionhammer0 is now known as Onionhammer |
14:13:29 | * | koltrast joined #nim |
14:15:49 | * | PMunch quit (Quit: Leaving) |
14:27:16 | * | pro quit (Quit: WeeChat 3.2.1) |
14:36:36 | FromDiscord | <iffy (Matt Haggard)> I'm going to give an Intro to Nim presentation at work and want to highlight some of the cool things people are doing with Nim. I'm planning to highlight nico and pixie (because they demo well). Any other favorites? Doesn't have to be graphics-related. |
14:37:40 | FromDiscord | <cabboose> status-desktop |
14:37:55 | FromDiscord | <cabboose> i mean they have actually deployed things |
14:38:07 | FromDiscord | <cabboose> if you're trying to sell nim to them |
14:47:37 | * | xet7 quit (Remote host closed the connection) |
14:48:40 | * | xet7 joined #nim |
14:49:10 | FromDiscord | <Papel> Does nim have an official or native GUI package? Something to make windowed applications |
15:02:46 | FromDiscord | <Gumber> In reply to @iffy (Matt Haggard) "I'm going to give": are you trying to get people to adopt Nim? |
15:02:56 | FromDiscord | <Gumber> like what is your goal for this demo? |
15:03:19 | FromDiscord | <Gumber> In reply to @Papel "Does nim have an": official? no... a lot of it depends on your use case / requirements as to which lib might be best suited for you |
15:03:39 | FromDiscord | <Gumber> does C have "an official" one? |
15:04:06 | FromDiscord | <Gumber> if you meant does the stdlib include some GUI rendering lib |
15:04:07 | FromDiscord | <Gumber> no |
15:04:15 | FromDiscord | <Gumber> (edit) "lib" => "module" |
15:04:33 | FromDiscord | <Papel> Got it, gonna take a look at the available ones |
15:04:39 | FromDiscord | <enthus1ast> @Smarc\: i have played with the library a little https://gist.github.com/enthus1ast/303ce18d918eeb31789cf075d16c1b94 |
15:04:58 | FromDiscord | <enthus1ast> for your purpose it should be enough wrapping i guess |
15:04:58 | FromDiscord | <Gumber> In reply to @Papel "Got it, gonna take": if you tell me what you're trying to do, I can maybe recommend one |
15:05:12 | FromDiscord | <Gumber> but often times requirements for GUI libraries differ vastly based on use case |
15:05:38 | FromDiscord | <Gumber> like what are you building and what platforms are you targetting? |
15:05:46 | FromDiscord | <Papel> Crossplat simple text editor, akin to notepad |
15:05:53 | FromDiscord | <Gumber> okay thanks - that helps |
15:06:03 | FromDiscord | <Gumber> so @haxscramper is working on generating Qt bindings for Nim |
15:06:06 | FromDiscord | <Papel> Win/Linux/mac and maybe mobile |
15:06:08 | FromDiscord | <Gumber> but I don't know how far away that is |
15:06:18 | FromDiscord | <Gumber> and obviously it brings in a hard requirement on Qt which you may / may not like |
15:06:39 | FromDiscord | <Gumber> but I mean - you'd have Qt which is the crem de la crem of UI / app development frameworks in the native world |
15:06:44 | FromDiscord | <Papel> It's license, ok for open source, all weird for other things |
15:06:55 | FromDiscord | <Gumber> there's been a lot of work around enabling support for GTK with Nim |
15:07:03 | FromDiscord | <Gumber> so that's always an option too if you can deal with non native looking UIs |
15:07:34 | FromDiscord | <Gumber> there are quite a few options out there that leverage like GLFW or SDL2 if you don't care about your UI library being a bit overbearing and doing more than just UI stuff |
15:07:49 | FromDiscord | <Gumber> tmk most of them handle drawing the UI for you as well as eventing |
15:08:05 | FromDiscord | <Gumber> this is a deal breaker for me - and means really none of the xplat GUI libraries are options for me |
15:08:10 | FromDiscord | <Gumber> but for most applications this isn't a big deal |
15:08:12 | FromDiscord | <Papel> Going with SDL2 might be interesting, since it's gonna be useful for games and multimedia stuff |
15:08:32 | FromDiscord | <Gumber> there are some built on top of SDL2 and some on top of GLFW |
15:08:43 | FromDiscord | <Gumber> but yeah - if you need to be able to draw the GUI yourself or handl events yourself |
15:08:55 | FromDiscord | <iffy (Matt Haggard)> Gumber\: yes, I'm trying to get people to try nim out and maybe adopt it for some things |
15:08:57 | FromDiscord | <Gumber> and you just want the GUI library to track these things and reporrt them to you |
15:09:10 | FromDiscord | <Gumber> then none of these libraries will be good choices |
15:09:32 | FromDiscord | <Gumber> your only real options are like DearIMGUI or Nuklear or one of the other simliar libraies out ther elike microgui or something |
15:09:37 | FromDiscord | <Gumber> (edit) "ther elike" => "there like" |
15:09:58 | FromDiscord | <Gumber> pretty much all the retained mode GUI libraries for Nim are quite opinionated / have hard dependencies and do more than just UI and layout |
15:10:28 | FromDiscord | <Gumber> I think the most promising one out there is - https://github.com/trustable-code/NiGui |
15:10:29 | nrds | <R2D299> itHub: 7"Cross-platform desktop GUI toolkit written in Nim" |
15:10:30 | FromDiscord | <HuskyHacks> In reply to @Papel "Does nim have an": I played around with wnim a little, it was coo! slight learning curve though |
15:10:32 | FromDiscord | <dom96> iffy: what's the audience like? what areas are they interested in? |
15:10:38 | FromDiscord | <Gumber> but it's also the most ambitious and furthest from complete |
15:11:00 | FromDiscord | <HuskyHacks> (edit) "coo!" => "cool!" |
15:11:04 | FromDiscord | <Gumber> In reply to @iffy (Matt Haggard) "Gumber\: yes, I'm trying": okay then this strategy is not going to work TBH |
15:11:13 | FromDiscord | <Gumber> unless you really don't care if anyone actually checks it out or not |
15:11:37 | FromDiscord | <Gumber> and you just enjoy presenting about topics you're passionate about |
15:12:02 | FromDiscord | <Gumber> tech evangelism is hard, and almost always requires more than just showing a technology to someone |
15:12:23 | FromDiscord | <Gumber> it generally requires you to also convince them that whatever technology they're currently using is subpar or not as good as what you're presenting |
15:12:35 | FromDiscord | <Gumber> you have to give the audience a reason to want to go check it out |
15:12:38 | FromDiscord | <Gumber> beyond - hey it can do this cool thing |
15:12:55 | FromDiscord | <Gumber> because lots of technologies can do cool things - but people are only going to go look them up / research them if they have some motivation to |
15:13:08 | FromDiscord | <Gumber> beyond oh it's another technology I've never heard of before |
15:13:19 | FromDiscord | <Gumber> because for most people - there are lots of those floating in and out of their awareness on a daily basis |
15:13:31 | FromDiscord | <Gumber> Nim becomes just another name in a vast sea of buzz words |
15:14:09 | FromDiscord | <Gumber> if you show them that they're using Java for instance and they can write the same program in Nim and get it to execute N times faster with N less loc and cleaner abstractions or something |
15:14:20 | FromDiscord | <Gumber> now you might have some people interested |
15:14:55 | FromDiscord | <Gumber> but in my experience it's a very uphill battle - especially if you work in a enterprisey software shop that does agile / OOP / stuff like that where engineering decisions come second to business decisions |
15:15:05 | FromDiscord | <Gumber> and the tech is an afterthought compared to product |
15:15:28 | FromDiscord | <Gumber> they're concerned with making money and limiting tech sprawl and also having a huge pool of engineers at their disposal to hire from |
15:15:54 | FromDiscord | <Gumber> so you also need to think about that if you want to gain adoption at your workplace |
15:17:10 | FromDiscord | <Gumber> It's not an impossible task - like Nim's been approved at my company (although I haven't found a great use case yet - I'm sure one will arise eventually) |
15:17:47 | FromDiscord | <Gumber> but I work at an Elixir shop with a team of engineers and a CTO that are very tech savvy and don't mind taking risks on the engineering side to deliver the best tech possible |
15:18:42 | FromDiscord | <Gumber> not every company (and I'd posit most) don't have those same goals / aspirations and most of the time the tech is serving the business and CTOs / VPs / managers don't care that it can be made faster or better using some niche programming language it's going to be difficult to hire engineers for |
15:19:02 | FromDiscord | <Gumber> (edit) "not every company (and I'd posit most) don't have those same goals / aspirations and most of the time the tech is serving the business and CTOs / VPs / managers don't care that it can be made faster or better using some niche programming language ... it's" added "if" |
15:23:23 | FromDiscord | <dom96> Yeah, convincing people is tough |
15:23:42 | FromDiscord | <dom96> Honestly the best way is to probably try to get a CTO position at a company and just use Nim |
15:24:09 | FromDiscord | <dom96> (or a really senior position in a company with a CTO that is open to you doing things your way) |
15:28:37 | FromDiscord | <Gumber> Yeah I mean - how it happened for us is our former VP of engineering found Nim and wrote a torrent client lib in it |
15:28:48 | FromDiscord | <Gumber> Liked Nim so much they approved its use at work |
15:29:03 | FromDiscord | <Gumber> we didn't have our current CTO at the time, but I mean, same kind of thing @dom96 is talking about |
15:29:28 | FromDiscord | <Gumber> you also need a CTO that is tech savvy - a lot of CTOs are way more business minded / haven't really touched a programming language in decades |
15:30:15 | FromDiscord | <dom96> Huh, sounds like those CTOs wouldn't be great at their job |
15:30:26 | FromDiscord | <dom96> but what do I know, I guess business mind is good at those positions |
15:30:53 | FromDiscord | <IsaacPaul> I have free rein where I'm at :3 though I am the entire mobile department... |
15:31:57 | * | kayabaNerve quit (Remote host closed the connection) |
15:32:16 | * | kayabaNerve joined #nim |
15:32:49 | FromDiscord | <Gumber> That's the thing right |
15:32:54 | FromDiscord | <Gumber> when you become a CTO you're less involved in the technology |
15:32:54 | FromDiscord | <IsaacPaul> Though the only practical use from nim are scripts: https://gist.github.com/izackp/353e0f46964fef1fc75b5844b62594e5 |
15:33:04 | FromDiscord | <IsaacPaul> (edit) "scripts:" => "scripts (in my field):" |
15:33:25 | FromDiscord | <Gumber> you're not doing any hands on work, most of the time, your position mandates that you serve the business really |
15:33:57 | FromDiscord | <Gumber> and your responsibilities shift from ensuring quality software is delivered on time to making sure you can deal with the management problems that engineering orgs often encounter |
15:34:09 | FromDiscord | <Gumber> you leave the former to the SMEs |
15:34:31 | FromDiscord | <Gumber> now there's exceptions to every rule - when I was at Ten Square Games, we had THE best CTO I've ever worked with (from an engineering point of view) |
15:34:59 | FromDiscord | <Gumber> he was just a genius when it came to unix based systems, backend development, infrastructure, CI/CD, networking, etc.... |
15:35:20 | FromDiscord | <Gumber> like he literally wrote and scaled up the entire backend for TSG and it's not like it was substandard quality work - it was top notch - everything |
15:35:40 | FromDiscord | <Gumber> like best practices everywhere, software wasn't needlessly bloated and didn't try to pull in every dependency under the sun |
15:36:01 | FromDiscord | <Gumber> there were no huge frameworks like spring or anything like that - the best library was chosen for a particular job |
15:36:26 | FromDiscord | <Gumber> just stuff you tend not to see at big enterprisey software companies where frameworks and the lowest common denominator as far as engineering best practices go are the norm and good solid tech decisions are not |
15:37:19 | FromDiscord | <Gumber> our CTO at my current company is good too - he's not nearly as good on the tech side of things as the CTO of TSG was but he's still way more tech savvy / minded than any other CTO I've worked with in the past |
15:37:36 | FromDiscord | <Gumber> the majority of the CTO's I've worked with hadn't written a line of code in over a decade |
15:38:16 | FromDiscord | <Gumber> and I've been at a lot of companies throughout my 15 year programming career - my mom was also the CEO of a fortune five hundred software company, so I have some insight from that as well |
15:38:40 | FromDiscord | <Gumber> In reply to @IsaacPaul "I have free rein": being on an island is a blessing and a curse 😄 |
15:39:46 | FromDiscord | <Gumber> (edit) "company," => "company that was bought out by EMC," |
15:39:47 | FromDiscord | <IsaacPaul> I definitely agree. I feel I could be more productive and have cleaner code with pair programming / PR reviews. |
15:40:05 | FromDiscord | <Gumber> ooph you don't even have others reviewing your PRs? |
15:40:09 | FromDiscord | <Gumber> that's yikes territory |
15:40:18 | FromDiscord | <Gumber> not because I question your programming abilities |
15:40:24 | FromDiscord | <Gumber> but because I assume you're a human and not a robot |
15:40:33 | FromDiscord | <IsaacPaul> exactly lol |
15:42:07 | FromDiscord | <Gumber> I'm on an island but at least it's not deserted and there's one other engineer on there with me |
15:42:43 | FromDiscord | <Gumber> And we also bring in developers from other teams to code review work even if they don't work on the same product we do |
15:43:01 | FromDiscord | <Gumber> It's hard when it comes to mobile though because like I be terrible at reviewing Swift PRs because I haven't written a line of Swift in my life |
15:43:05 | FromDiscord | <iffy (Matt Haggard)> @dom96 security researchers, general-purpose programmers (managing servers), gamers. I'm not really trying to get people to start using it at work (though if they do, fine). I mostly just want them to check it out, maybe for their own stuff. |
15:43:13 | FromDiscord | <Gumber> And I imagine our mobile developers would be bad at reviewing elixir PRs so |
15:43:33 | FromDiscord | <Gumber> In reply to @iffy (Matt Haggard) "@dom96 security researchers, general-purpose": If that's your goal then I think your original presentation idea is fine |
15:44:01 | FromDiscord | <Gumber> Most of the time when people talk about showing Nim to people at work, they have this unspoken expectation that they'll be able to start using it at work |
15:44:37 | FromDiscord | <Gumber> And that just by seeing Nim in action everyone will be convinced that it is the greatest thing since sliced bread and will become the de facto programming language at work |
15:44:46 | FromDiscord | <Gumber> I mean I had that very naive expectation at one point in my career |
15:45:11 | FromDiscord | <Gumber> So I apologize for making assumptions about your situation but I elaborated for the greater benefit of the community and I wasn't trying to personalize it regarding your situation |
15:45:34 | FromDiscord | <cabboose> you're doing it wrong iffy |
15:45:35 | FromDiscord | <Gumber> This could actually be a good blog topic for anyone that blogs lol |
15:45:42 | FromDiscord | <cabboose> you show them `echo "hello world"` |
15:45:43 | FromDiscord | <cabboose> duh |
15:45:50 | FromDiscord | <Gumber> Like how to effectively evangelize a technology at your workplace |
15:45:58 | FromDiscord | <Gumber> Although I'm sure there's a myriad of blog articles out there already |
15:46:13 | FromDiscord | <IsaacPaul> hallo world↵😂 |
15:46:37 | FromDiscord | <cabboose> show them hello world before you show them goodbye world which wipes the servers clean |
15:46:46 | FromDiscord | <Gumber> Another big challenge I had was just dealing with the fact that in today's world not that many people right native code anymore it's the exception rather than the rule |
15:47:27 | FromDiscord | <Gumber> So while some people might understand the benefits of a language that compiles to C clearly expressing those benefits to someone who was only ever worked in Java or C sharp or some other language with a managed runtime is challenging |
15:47:40 | FromDiscord | <cabboose> probably the shit learning curves and pitfalls when people just want to script phub sites↵(@Gumber aka Zachary Carter) |
15:47:45 | FromDiscord | <Gumber> Even explaining the benefits of something like static typing to a modern web developer can be a difficult prospect |
15:47:55 | FromDiscord | <Gumber> And I'm talking about modern web developers that use typescript |
15:48:17 | FromDiscord | <Gumber> They just don't have the knowledge of computer science fundamentals to realize that the reason type script is so great is because of the type safety half of the time they don't even understand what type safety is they just use TypeScript because they see it being used by everyone else |
15:48:49 | FromDiscord | <haxscramper> I stiff fail to understand how can people thing without types |
15:48:59 | FromDiscord | <haxscramper> (edit) "thing" => "think" |
15:49:40 | FromDiscord | <cabboose> Because numbers are words are the same thing; if i write them down you know what I mean |
15:49:43 | FromDiscord | <cabboose> why cant a program do the same thing |
15:49:43 | FromDiscord | <Gumber> I think it depends on the paradigm |
15:49:44 | FromDiscord | <cabboose> duh |
15:49:50 | FromDiscord | <cabboose> if I say divide i obviously mean its a number |
15:49:57 | FromDiscord | <cabboose> unless I want you to split the string |
15:49:58 | FromDiscord | <Gumber> It's not so bad in lisp or scheme or Erlang etccc |
15:50:00 | FromDiscord | <cabboose> in which case do that |
15:50:04 | FromDiscord | <cabboose> also why didnt you do what I thought you would |
15:50:22 | FromDiscord | <Gumber> Python or JS though are nightmares |
15:51:20 | FromDiscord | <haxscramper> In reply to @Gumber "so <@!608382355454951435> is working": Also I don't think it is correct to describe what I'm doing like this, qt bindings are not the end goal, they are just intermediate step for testing |
15:51:27 | FromDiscord | <Gumber> Ah okay |
15:51:32 | FromDiscord | <Gumber> My mistake |
15:51:49 | FromDiscord | <haxscramper> I'm okay, but someone might get their hopes up and wait for me to deliver this |
15:51:58 | FromDiscord | <haxscramper> I like qt as well, so eventually I will come to this, |
15:52:03 | FromDiscord | <Gumber> 🙂 |
15:52:07 | FromDiscord | <haxscramper> But right now I'm too busty already |
15:52:12 | FromDiscord | <Gumber> yeah I feel you on that one |
15:52:25 | FromDiscord | <cabboose> Yeah that's me↵(@haxscramper) |
15:52:29 | FromDiscord | <cabboose> give me fucking qt |
15:52:29 | FromDiscord | <cabboose> bastard |
15:52:52 | FromDiscord | <cabboose> or just a less toothpick nimqml |
15:52:55 | FromDiscord | <haxscramper> Well, maybe I will |
15:53:04 | FromDiscord | <cabboose> 1 extra iota of meat on the body |
15:53:06 | FromDiscord | <haxscramper> I remembered your earlier offer with ninph |
15:53:10 | FromDiscord | <haxscramper> Nimph |
15:53:10 | FromDiscord | <cabboose> 1 atom |
15:53:19 | FromDiscord | <iffy (Matt Haggard)> cabboose\: that would be an awesome demo. See how fast Nim can delete this server? JavaScript would have taken much longer. Probably. |
15:53:22 | FromDiscord | <haxscramper> So maybe I could come up with 2 for 1 deal for you |
15:53:37 | FromDiscord | <cabboose> Precisely |
15:53:47 | FromDiscord | <cabboose> Aiya |
15:53:55 | FromDiscord | <cabboose> I can't sell you my soul |
15:54:01 | FromDiscord | <cabboose> I don't have one |
15:54:39 | FromDiscord | <cabboose> I am kidding though you do you baby |
15:54:53 | FromDiscord | <haxscramper> In reply to @cabboose "or just a less": Is nimqml that bad? |
15:54:55 | FromDiscord | <cabboose> I have so much uni to study in the next week and a half |
15:54:57 | FromDiscord | <cabboose> exams coming up |
15:54:59 | FromDiscord | <cabboose> yeah |
15:55:04 | FromDiscord | <cabboose> it has nothing |
15:55:23 | FromDiscord | <cabboose> status actually brought the thread safe signalling |
15:55:49 | FromDiscord | <cabboose> like status do more work on nimqml and dotherside than filcuc unfortunately |
15:55:56 | FromDiscord | <cabboose> which isn't anything wrong since filcuc is probably doing other things |
15:56:29 | FromDiscord | <haxscramper> Etf is filcuc |
15:56:47 | FromDiscord | <cabboose> he's the author of nimqml |
15:56:47 | FromDiscord | <cabboose> and dotherside |
15:56:58 | FromDiscord | <cabboose> which is just the qtqml bindings |
15:56:59 | FromDiscord | <cabboose> that are used by other languages |
15:57:07 | FromDiscord | <cabboose> \~it is a dll that exposes the magic\~ |
15:58:18 | FromDiscord | <haxscramper> Well, I'm certainly going to be throwing a lot of shit in the qt bindings for things I find convenient |
15:58:30 | FromDiscord | <haxscramper> Maybe even make it work for the C backend |
15:59:45 | FromDiscord | <cabboose> image.png https://media.discordapp.net/attachments/371759389889003532/889903739211763722/image.png |
16:00:26 | FromDiscord | <Goel> Where can i read more about multiple returns for a proc? (a link) |
16:01:11 | FromDiscord | <cabboose> Like in a tuple? |
16:02:06 | FromDiscord | <Goel> `proc loadImage(imageDir: string): seq[byte], array[3, int] =`↵its possible to do something like this? If so how do i select the `return=` of the second return and not the first return? |
16:02:35 | FromDiscord | <haxscramper> But before all of that happens I need to (1) write the damn thing, (2) find someone and make them used it while it is not finished, because up until now this has been a ping-pong game where I tried to figure out correct APIs and workflows |
16:02:38 | FromDiscord | <Rika> return a tuple |
16:02:54 | FromDiscord | <Rika> `proc loadImage(imageDir: string): (a: seq[byte], b: array[3, int])` |
16:03:13 | FromDiscord | <cabboose> what part of qt are you binding though |
16:03:16 | FromDiscord | <Rika> `return (theseq, thearray)` |
16:03:17 | FromDiscord | <haxscramper> Discussion with arkanoid when they were trying to make c2nim just not die was really useful for that |
16:03:25 | FromDiscord | <haxscramper> Qt widgets ofc |
16:03:37 | FromDiscord | <haxscramper> Well, it does not matter really |
16:03:58 | FromDiscord | <haxscramper> With proper binding generator handling thousands of files is just as simple as 1 |
16:04:23 | FromDiscord | <cabboose> you realise status would probably froth that |
16:04:29 | FromDiscord | <cabboose> hahaha |
16:05:33 | FromDiscord | <cabboose> Im already using nimqml so you've already got a user here |
16:05:41 | * | kayabaNerve quit (Ping timeout: 252 seconds) |
16:05:44 | FromDiscord | <cabboose> well I'm redoing everything |
16:06:26 | FromDiscord | <cabboose> Don't know how you can do such magic though |
16:15:54 | FromDiscord | <Gumber> @haxscramper not sure if you saw my messages from last night / this morning but that whole cpp vector of pointers to opaque types thing actually did turn out to be a cpp codegen bug |
16:17:18 | FromDiscord | <Gumber> the type unification pass doesn't respect the aliases as one might hope for, and you end up with only the first alias to the generic type being generated and which one gets generated depends on which one is referenced first in the code |
16:17:42 | FromDiscord | <Gumber> we tried out a change in `compiler/sighashes.nim` last night but it didn't fix it in devel or 1.4.8 |
16:17:53 | FromDiscord | <Gumber> (edit) "we tried out a ... change" added "singe loc" |
16:18:22 | FromDiscord | <Gumber> (edit) "we tried out a singe loc change in `compiler/sighashes.nim` ... last" added "on line 128 (I think) by adding `tyPointer` to the `case` discriminant" |
16:19:10 | FromDiscord | <Gumber> so I dunno - I was able to get around the compilation error by using `{.emit.}` to manually generate the aliases but this introduce a host of new problems - like now I have to wrap all of the `std::vector` interface I plan on using for each alias of it |
16:19:23 | FromDiscord | <Gumber> (edit) "so I dunno - I was able to get around the compilation error by using `{.emit.}` to manually generate the aliases but this introduce a host of new problems - like now I have to wrap all of the `std::vector` interface I plan on using for each alias of it ... " added "which is a PITA without the help of a macro" |
16:23:17 | FromDiscord | <Gumber> and then even when I do that I get conversion issues when I try to assign from the aliased opaque pointer type back to the opaque pointer type so like `ImageVector` which is an alias to `std::vector<VkImage>` needs: |
16:23:27 | FromDiscord | <Gumber> sent a code paste, see https://play.nim-lang.org/#ix=3zzj |
16:23:49 | FromDiscord | <Gumber> and `sw.images[i] = cast[Image](images[i])` for an asssignment to come even close to working |
16:24:54 | FromDiscord | <Gumber> so yeah - huge pain in the ass |
16:24:54 | FromDiscord | <Gumber> sent a code paste, see https://play.nim-lang.org/#ix=3zzk |
16:25:18 | FromDiscord | <Gumber> definitely going to have to cook up some macros for this because it's a pretty pervasive pattern in the Vulkan API |
16:25:29 | FromDiscord | <Gumber> and libraries that depend on it |
16:27:28 | FromDiscord | <haxscramper> Cpp codegen but of this type does really sound nasty, but to be honest I'm not surprised |
16:32:25 | FromDiscord | <Gumber> yeah me either |
16:32:30 | FromDiscord | <Gumber> it's probably a tricky problem to solve |
16:32:49 | FromDiscord | <Gumber> but I don't pretend to be a compiler dev or language designer |
16:33:15 | FromDiscord | <Gumber> my compiler dev skills are running `koch temp` and using `find in files` |
16:33:37 | FromDiscord | <Gumber> I can go about one level deep in the compiler call stack before I become completely useless |
16:33:42 | FromDiscord | <Gumber> backend I mean |
16:34:14 | FromDiscord | <Gumber> I at one point was spending some time trying to learn some of it along with the VM - but I decided it wasn't what I wanted to be doing, and my efforts were better spent working on R&D for my game |
16:36:46 | * | yewscion joined #nim |
16:39:40 | FromDiscord | <haxscramper> Cpp backed is least tested and has more demands as it faces c++ world |
16:39:49 | FromDiscord | <Gumber> yeah! it's good stuff |
16:40:06 | FromDiscord | <Gumber> has been the read headed stepchild of the Nim backends for a while - I feel like even the JS backend has gotten more love |
16:40:14 | FromDiscord | <Gumber> okay - maybe it's the objective-c backend but |
16:40:34 | FromDiscord | <Gumber> at least that's workable and you don't need much more than what it already has most of the time |
16:40:59 | FromDiscord | <Gumber> (edit) "read" => "red" |
16:48:58 | FromDiscord | <haxscramper> we had PHP backend |
16:53:08 | FromDiscord | <tandy> in nim?? |
16:53:33 | * | arfy can't sleep |
16:53:39 | FromDiscord | <tandy> oh sweet what game?↵(@Gumber aka Zachary Carter) |
16:53:50 | arfy | it's 00:54 here |
16:54:15 | FromDiscord | <cabboose> so how do you get to PNode |
16:54:47 | FromDiscord | <cabboose> I want to use these juicy isTyRef compiler procs etc |
16:55:07 | FromDiscord | <tandy> sent a code paste, see https://play.nim-lang.org/#ix=3zzr |
16:55:40 | FromDiscord | <tandy> are there any other datatypes for this? a seq maybe? |
16:56:16 | * | kayabaNerve joined #nim |
16:56:35 | FromDiscord | <cabboose> there was some gypsy way to get to the memory when that error would happen |
16:56:39 | FromDiscord | <cabboose> i think it was a closure? |
16:56:56 | FromDiscord | <haxscramper> yes |
16:57:11 | FromDiscord | <tandy> bruh |
16:57:55 | FromDiscord | <tandy> when did it get dropped? |
16:58:37 | FromDiscord | <haxscramper> https://github.com/nim-lang/Nim/commit/35b0cc67e89a929270e77c07ecbf06f7cced3668 |
17:00:45 | FromDiscord | <tandy> wow |
17:03:14 | FromDiscord | <tandy> https://github.com/nim-lang/Nim/issues/17187 |
17:05:29 | FromDiscord | <haxscramper> There are some weird 'cannot be captured' issues |
17:05:37 | FromDiscord | <haxscramper> Sometimes it errors out on `var ref T` |
17:05:56 | FromDiscord | <haxscramper> Also it can't correctly capture `var T` even if it is passed from enclosing arguments |
17:05:56 | FromDiscord | <tandy> https://github.com/nim-lang/Nim/issues/7831 |
17:06:00 | FromDiscord | <tandy> this is my issue |
17:06:02 | FromDiscord | <tandy> it says use seq instead ol |
17:15:44 | FromDiscord | <tandy> is there a seq like thing with keys and values in nim? |
17:15:48 | FromDiscord | <tandy> that isnt varargs lol |
17:19:01 | FromDiscord | <haxscramper> you can do `openarray[(KeyType, ValueType)]` and call it with `{<key>: <value>}` |
17:19:09 | FromDiscord | <haxscramper> Otherwise you can do `Tables` |
17:20:37 | * | Pyautogui joined #nim |
17:21:41 | * | kayabaNerve quit (Ping timeout: 246 seconds) |
17:24:11 | FromDiscord | <tandy> openarray has the same compiler error sadly |
17:26:38 | FromDiscord | <haxscramper> Then you can do `openarray[(KeyType, ValueType)]` and call it with `@{<key>: <value>}` |
17:26:51 | FromDiscord | <haxscramper> `@{}` is a seq constructor |
17:27:03 | FromDiscord | <Rika> You mean seq right |
17:27:06 | FromDiscord | <haxscramper> You might also write `@^` operator for `ref seq T` |
17:27:28 | FromDiscord | <haxscramper> I would assume `ref` anything won't trigger memory safety checking |
17:27:33 | FromDiscord | <haxscramper> because it is guaranteeed to outlive |
17:27:49 | FromDiscord | <haxscramper> IIRC closure capture increases lifetime |
17:27:50 | FromDiscord | <tandy> ohh nice |
17:27:56 | FromDiscord | <tandy> then i dont have to find and replace |
17:28:53 | FromDiscord | <haxscramper> what do you mean? |
17:29:31 | FromDiscord | <tandy> are u sure |
17:29:37 | FromDiscord | <tandy> i tried it it doesnt work |
17:31:03 | FromDiscord | <haxscramper> !eval echo typeof @{1\: 3} |
17:31:04 | NimBot | Compile failed: /usercode/in.nim(1, 16) Error: undeclared identifier: '\:' |
17:31:19 | FromDiscord | <haxscramper> https://wandbox.org/permlink/sOO8ZnGYnM9D2DVK |
17:35:40 | FromDiscord | <tandy> hm true it works |
17:35:42 | FromDiscord | <tandy> tyty |
17:57:26 | Pyautogui | Does anyone have any resources for building quick parsers in Nim? |
17:57:39 | Pyautogui | If so, could you please share them? |
18:00:03 | FromDiscord | <auxym> Depends on your needs. There's npeg, last I checked you can't use it to extract a full AST. |
18:01:30 | FromDiscord | <Archion> Hiiiiii |
18:01:32 | Pyautogui | As a learning experience, I am trying to build an interpreter for a simple language consisting of just variable assignment, some arithmetic and looping. |
18:01:38 | FromDiscord | <auxym> If you want to write a hand-roll a recursive descent parser, the book "crafting interpreters" is available online for free and is a good introduction. The example code is java (in part 1, part 2 is pratt parsing in C iirc), but pretty easy to transpose to nim |
18:01:43 | FromDiscord | <Archion> I have a question about php |
18:02:08 | FromDiscord | <auxym> In reply to @Pyautogui "As a learning experience,": Then I definitely recommend Crafting Interpreters |
18:02:10 | FromDiscord | <Archion> I need a php compiler app or website to use php? |
18:02:13 | Pyautogui | Thanks |
18:02:37 | FromDiscord | <haxscramper> https://gist.github.com/haxscramper/3562fa8fee4726d7a30a013a37977df6 |
18:02:58 | FromDiscord | <haxscramper> there are several languages written in nim, and three reimplmenetations of "crafting interpreters" |
18:02:59 | Pyautogui | Thanks |
18:03:02 | FromDiscord | <haxscramper> or two |
18:03:12 | Pyautogui | I will go check them out. |
18:04:18 | FromDiscord | <Gumber> In reply to @tandy "oh sweet what game?": I'm making a 3d networked real time strategy game in Nim |
18:04:38 | FromDiscord | <Gumber> for Windows |
18:04:52 | FromDiscord | <Gumber> I don't think I'm going to support any other platforms besides Windows - cross platform determinism is a bitch |
18:05:00 | FromDiscord | <Gumber> maybe I can look into what the guy for Northgard did |
18:05:16 | FromDiscord | <Gumber> I should just PM the devs on discord and ask |
18:12:21 | FromDiscord | <Gumber> done and done - well I didn't PM them I just pinged them since I don't know them |
18:13:29 | FromDiscord | <Ricky Spanish> if i compile a c library from nim, do i always need the nim runtime linked to execute the code library i compiled with nim? |
18:14:40 | FromDiscord | <Ricky Spanish> i.e if i use no-gc for example etc, can i remove the runtime part and have it behave as though it is a regular static library compiled from c |
18:18:31 | FromDiscord | <Gumber> if you don't use anything in the stdlib |
18:18:35 | FromDiscord | <Gumber> I imagine so |
18:18:40 | FromDiscord | <Gumber> but don't quote me on it |
18:18:52 | FromDiscord | <Gumber> better to ask in #internals |
18:19:43 | * | Pyautogui quit (Ping timeout: 265 seconds) |
18:26:27 | FromDiscord | <Ricky Spanish> ok thanks @Gumber aka Zachary Carter |
18:37:19 | * | neurocyte013 joined #nim |
18:37:19 | * | neurocyte013 quit (Changing host) |
18:37:19 | * | neurocyte013 joined #nim |
18:41:48 | * | neurocyte013 quit (Client Quit) |
18:43:09 | * | neurocyte013 joined #nim |
18:43:09 | * | neurocyte013 quit (Changing host) |
18:43:09 | * | neurocyte013 joined #nim |
18:50:09 | * | Pyautogui joined #nim |
18:52:53 | FromDiscord | <haxscramper> btw, speaking of Qt etc |
18:52:53 | FromDiscord | <haxscramper> https://doc.qt.io/qtcreator/creator-project-nimble.html |
18:53:16 | FromDiscord | <haxscramper> qt creator is shipped with nim/nimble support for the last several years if I recall correctly |
18:56:58 | FromDiscord | <Gumber> In reply to @Ricky Spanish "ok thanks <@!204328759715692544>": Np |
19:00:12 | * | Pyautogui quit (Quit: Connection closed) |
19:00:46 | FromDiscord | <Recruit_main707> In reply to @haxscramper "qt creator is shipped": yep, syntax highlight too, but thats it afaik |
19:00:48 | * | Pyautogui joined #nim |
19:05:11 | * | yewscion quit (Remote host closed the connection) |
19:09:52 | nrds | <Prestige99> Is there a way to get the type implementation of a generic with a pragma? e.g. `proc foo[T: SomeType](t: T) = ...` I want to get the type impl of SomeType |
19:12:23 | FromDiscord | <auxym> In reply to @haxscramper "qt creator is shipped": Wait what? We can use Qt from Nim? |
19:13:37 | FromDiscord | <Recruit_main707> Qt creator, the ide |
19:14:39 | FromDiscord | <auxym> so... no creating qt GUIs in nim. Not familiar with QT Creator. Does it have anything to do with the library / UI toolkit or not at all? |
19:21:34 | FromDiscord | <Yardanico> In reply to @Recruit_main707 "yep, syntax highlight too,": It supports nimsuggest too |
19:22:03 | FromDiscord | <Yardanico> In reply to @auxym "so... no creating qt": You can use nimqml to create GUI apps with Nim and QML, but no, Qt Creator doesn't allow you to use Qt directly |
19:22:26 | FromDiscord | <Yardanico> Not with Nim, for Nim it's just an IDE |
19:32:14 | FromDiscord | <tandy> coool↵(@Gumber aka Zachary Carter) |
20:00:32 | * | Pyautogui quit (Ping timeout: 252 seconds) |
20:02:41 | FromDiscord | <tandy> is it possible to print the output of an async proc? im trying to debug the results of a http request |
20:06:01 | FromDiscord | <tandy> nvm i figured it |
20:06:08 | FromDiscord | <tandy> somehow it just started working |
20:07:24 | FromDiscord | <Yardanico> echo waitFor asyncProcCall() |
20:07:58 | FromDiscord | <tandy> mm, i think using asyncCheck instead of await helped |
21:15:23 | FromDiscord | <QueenFuckingAdrielle> heyo |
21:16:08 | FromDiscord | <QueenFuckingAdrielle> do anyone know of a way to manage nim environments? |
21:16:54 | FromDiscord | <QueenFuckingAdrielle> I'm mostly using containers as it is, but i have container orchestration code in dev that i'd like to put in a virtual environment |
21:17:36 | FromDiscord | <QueenFuckingAdrielle> fwiw ive had a really positive experience using singularity containers with nim |
21:30:09 | * | Gustavo6046 quit (Remote host closed the connection) |
21:30:09 | * | Gustavo6046_ joined #nim |
21:32:42 | * | Gustavo6046_ is now known as Gustavo6046 |
21:46:26 | * | greyrat quit (Ping timeout: 260 seconds) |
21:47:22 | * | lucerne quit (Ping timeout: 260 seconds) |
22:00:51 | * | max22- quit (Quit: Leaving) |
23:26:33 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zB5 |
23:27:36 | FromDiscord | <Elegantbeef> Did you run with `--debug` like was suggested? |
23:27:43 | FromDiscord | <Bren> yes |
23:27:50 | FromDiscord | <Elegantbeef> What was the output? |
23:28:06 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zB6 |
23:28:35 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zB7 |
23:28:43 | FromDiscord | <Elegantbeef> Hmm that doesnt mention `executing` |
23:29:35 | FromDiscord | <Bren> It must be something to do with my system as I have tried 1.4.8 and 1.4.6 |
23:30:15 | FromDiscord | <Bren> sent a code paste, see https://play.nim-lang.org/#ix=3zB9 |
23:31:42 | FromDiscord | <Elegantbeef> Guess i'll give it a whirl on my phone |
23:32:12 | FromDiscord | <Bren> That is exactly where I am running it. An alpine chroot on termux |
23:37:28 | FromDiscord | <tandy> damn ive figured this out before but |
23:37:54 | FromDiscord | <Elegantbeef> Going to be fun to compile a release Nim on a phone, how long did it take on your tablet? 😀 |
23:38:19 | FromDiscord | <tandy> `artistName: `""""\`↵how do u get rid of the escapes when getting strings from json nodes? |
23:38:39 | FromDiscord | <Elegantbeef> `strVal`? |
23:38:42 | FromDiscord | <Elegantbeef> Sorry `getStr` |
23:39:26 | FromDiscord | <tandy> yeeee |
23:39:27 | FromDiscord | <tandy> tytyt |
23:39:51 | FromDiscord | <Elegantbeef> No problem |
23:55:30 | FromDiscord | <RattleyCooper> https://security.googleblog.com/2021/09/an-update-on-memory-safety-in-chrome.html |
23:56:09 | FromDiscord | <RattleyCooper> Google might be looking at alternative languages for use in Chrome. Unfortunately Rust is the leading contender |
23:56:48 | nrds | <Prestige99> D: |
23:57:17 | FromDiscord | <Elegantbeef> Well until notnil is fully implemented that's a safer language \:D |
23:57:23 | nrds | <Prestige99> "Ideally we’d choose option 1 - make C++ safer, at compile time. Unfortunately, the language just isn’t designed that way." |
23:58:08 | FromDiscord | <RattleyCooper> In reply to @Elegantbeef "Well until notnil is": Sad! |
23:59:05 | nrds | <Prestige99> @Elegantbeef https://play.nim-lang.org/#ix=3zBb what I was mentioning earlier. Would like to make this safer but so far it "works" |
23:59:11 | FromDiscord | <Elegantbeef> Plus views |
23:59:22 | nrds | <Prestige99> Mainly looking at the use of TrackFieldType with TrackKind |