01:39:45 | FromDiscord | <Tuatarian> any recommendations for good profilers? |
01:40:11 | FromDiscord | <Elegantbeef> Vtune, Hottie, callgrind, Amd's profiler, ... |
01:40:11 | FromDiscord | <Elegantbeef> Perf |
01:40:31 | FromDiscord | <Tuatarian> I remembered hottie, but typing hottie nim into google gives... unwanted results |
01:40:38 | FromDiscord | <Tuatarian> (edit) "hottie nim" => ""hottie nim"" |
01:40:41 | FromDiscord | <Elegantbeef> treeform/hottie |
01:40:59 | FromDiscord | <Tuatarian> thanks |
01:42:23 | FromDiscord | <Elegantbeef> If you're benchmarking there is timeit and benchy |
02:21:32 | FromDiscord | <Nimyth> :nimpride: |
03:17:05 | * | arkurious quit (Quit: Leaving) |
03:18:53 | * | wallabra_ joined #nim |
03:20:55 | * | wallabra quit (Ping timeout: 252 seconds) |
03:20:55 | * | wallabra_ is now known as wallabra |
03:21:38 | NimEventer | New question by Hortinstein: How do I compile a binary with a const string in debug and change it in release?, see https://stackoverflow.com/questions/73382508/how-do-i-compile-a-binary-with-a-const-string-in-debug-and-change-it-in-release |
03:33:58 | FromDiscord | <voidwalker> sent a code paste, see https://play.nim-lang.org/#ix=47P2 |
03:35:24 | FromDiscord | <Elegantbeef> No there are not |
03:36:59 | FromDiscord | <voidwalker> Oh, it might be looking for a file named 'data/Montserrat.ttf` |
03:37:05 | FromDiscord | <voidwalker> (edit) "'data/Montserrat.ttf`" => "`data/Montserrat.ttf`" |
03:37:19 | FromDiscord | <Elegantbeef> Not if it uses any Nim openFile apis |
03:41:46 | FromDiscord | <!Patitotective> maybe in AmongOS `/` is allowed in filenames |
03:43:31 | FromDiscord | <voidwalker> It is allowed, I renamed the file as such, but still didn't work |
03:43:55 | FromDiscord | <Elegantbeef> Your CWD probably isnt set right |
03:44:13 | FromDiscord | <!Patitotective> doesnt vscode runs thing from home dir? |
03:44:33 | FromDiscord | <Elegantbeef> No if you open a folder it runs from that folder |
03:44:46 | FromDiscord | <voidwalker> i tried from vscode and from terminal |
03:45:08 | FromDiscord | <Elegantbeef> The CWD should be at the root where the `data` folder resides |
03:47:38 | FromDiscord | <voidwalker> in code you mean ? |
03:47:59 | FromDiscord | <Elegantbeef> No in your termiinal |
03:48:51 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "No in your termiinal": ~~is that canadian english?~~ |
03:48:59 | FromDiscord | <Elegantbeef> lol |
03:49:09 | FromDiscord | <Elegantbeef> It's either a shitty keyboard or typist |
03:49:11 | FromDiscord | <voidwalker> sent a code paste, see https://play.nim-lang.org/#ix=47P7 |
03:49:33 | FromDiscord | <voidwalker> (edit) |
03:49:34 | FromDiscord | <Elegantbeef> You got a different error this time |
03:49:38 | FromDiscord | <!Patitotective> sent a code paste, see https://play.nim-lang.org/#ix=47P8 |
03:50:44 | FromDiscord | <voidwalker> sent a code paste, see https://play.nim-lang.org/#ix=47P9 |
03:51:58 | FromDiscord | <Elegantbeef> You're hitting f6 to run the file arent you? |
03:52:05 | FromDiscord | <Elegantbeef> If so that runs the program in the directory that it's in |
03:53:56 | FromDiscord | <voidwalker> Yes, F6. Oh is that so.. |
03:54:22 | FromDiscord | <Elegantbeef> I think so |
03:54:30 | FromDiscord | <Elegantbeef> I never really used that, i always compile through cli |
03:56:03 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "I never really used": why 💀 ↵pain |
03:56:25 | FromDiscord | <Elegantbeef> Ccause it's like 3 lines and fish remembers all |
03:57:07 | FromDiscord | <Elegantbeef> I type in `nim c -r` and fish generally is like "Dude you want this" |
03:57:09 | FromDiscord | <voidwalker> Welp, I was doing a rundown of all the GUI libs I can find for nim, to try and maybe find one that I can actually use, with ease, for my purposes. Encountering this kind of error in fidgety, in the examples.. is not so encouraging |
03:57:26 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "I type in `nim": isnt ctrl+b easier? |
03:57:43 | FromDiscord | <Elegantbeef> is typing really that hard? |
03:58:01 | FromDiscord | <Rainbow Asteroids> why do you think tab completion exists? |
03:58:20 | FromDiscord | <Rainbow Asteroids> or bash aliases |
03:58:26 | FromDiscord | <Elegantbeef> Cause it's hard to remember things |
03:58:43 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "is typing really that": i woudl sya it is |
03:58:52 | FromDiscord | <Rainbow Asteroids> what's your wpm |
03:58:54 | FromDiscord | <!Patitotective> In reply to @voidwalker "Welp, I was doing": what are your _purposes_? |
03:59:20 | FromDiscord | <!Patitotective> In reply to @Rainbow Asteroids "what's your wpm": depending if i'm coding or no |
03:59:28 | FromDiscord | <!Patitotective> (edit) "no" => "not" |
03:59:46 | FromDiscord | <voidwalker> A netflix-like GUI, that can display data as a visual grid, or like a database (text grid) |
04:00:30 | FromDiscord | <huantian> In reply to @Elegantbeef "I never really used": you can configure where vscode runs stuff |
04:00:31 | FromDiscord | <huantian> I think? |
04:00:37 | FromDiscord | <huantian> vscode run tasks are wacko |
04:00:42 | FromDiscord | <Elegantbeef> 70-100 depending on whether punctuation matters↵(@Rainbow Asteroids) |
04:00:44 | FromDiscord | <!Patitotective> In reply to @voidwalker "A netflix-like GUI, that": ive got nothing else to say rather than imgui↵but it seems too simple for any gui to not have it 🤷♂️ |
04:00:57 | FromDiscord | <!Patitotective> (edit) "seems" => "looks" |
04:01:34 | FromDiscord | <voidwalker> I've spent some time googling imgui, but it looks so complex, I haven't found where to begin yet. |
04:01:46 | FromDiscord | <huantian> glad we have patoto to stan imgui 😛 |
04:01:51 | FromDiscord | <Rainbow Asteroids> lol |
04:02:03 | FromDiscord | <Elegantbeef> Literally the worst GUI to make anything with↵(@huantian) |
04:02:25 | FromDiscord | <!Patitotective> In reply to @voidwalker "I've spent some time": https://github.com/Patitotective/ImTemplate |
04:02:30 | FromDiscord | <Rainbow Asteroids> https://github.com/treeform/fidget |
04:02:42 | FromDiscord | <Rainbow Asteroids> my browser legit just crashed trying to copy that linkl |
04:02:48 | FromDiscord | <Rainbow Asteroids> (edit) "linkl" => "link" |
04:02:50 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "Literally the worst GUI": not so baaad |
04:02:59 | FromDiscord | <huantian> I need to actually try and make something in fidget at some point |
04:03:10 | FromDiscord | <Elegantbeef> I'd rather make a GUI from scratch than rely on dear imgui for a proper program 😄 |
04:03:11 | FromDiscord | <Rika> In reply to @Elegantbeef "I type in `nim": Me just pressing the up arrow: |
04:03:23 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "I'd rather make a": let me know when you make tha tgui |
04:03:25 | FromDiscord | <!Patitotective> (edit) "tha tgui" => "that gui" |
04:03:34 | FromDiscord | <huantian> I like autosuggestions its quite noice |
04:03:36 | FromDiscord | <!Patitotective> (edit) "In reply to @Elegantbeef "I'd rather make a": let me know when you make that gui ... " added ":p" |
04:03:39 | FromDiscord | <Elegantbeef> Yea rika i press up when it's something i'm working on, but for many projects i just type a bit |
04:03:43 | FromDiscord | <Rainbow Asteroids> nimgame > imgui |
04:03:57 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "Yea rika i press": with ctrl+b you just run the opened file |
04:04:01 | FromDiscord | <!Patitotective> In reply to @Rainbow Asteroids "nimgame > imgui": whats that |
04:04:03 | FromDiscord | <Elegantbeef> Ok what's your point |
04:04:08 | FromDiscord | <Rainbow Asteroids> nimgame is an SDL wrapper |
04:04:17 | FromDiscord | <Elegantbeef> When you a config.nims setup you just run the file you want |
04:04:30 | FromDiscord | <Elegantbeef> When you're running a program you're going to the terminal anyway |
04:04:33 | FromDiscord | <huantian> just do `nix run` ez claps |
04:04:36 | FromDiscord | <Elegantbeef> So i dont really get how it's that much trouble |
04:06:14 | FromDiscord | <voidwalker> This ? https://vladar4.github.io/nimgame2/ |
04:06:31 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "70-100 depending on whether": :] https://media.discordapp.net/attachments/371759389889003532/1009312243202129990/unknown.png |
04:06:49 | FromDiscord | <huantian> amateurs |
04:07:17 | FromDiscord | <!Patitotective> i just woke up everybody as well with my "ergonomic" keyboard that just makes more noise |
04:07:31 | FromDiscord | <huantian> ergonomic != silent |
04:07:34 | FromDiscord | <huantian> silent == silent |
04:07:34 | FromDiscord | <Rika> My WPM is like 4 |
04:07:43 | FromDiscord | <!Patitotective> wpm in japanese goes brrr |
04:08:04 | FromDiscord | <Rika> What? |
04:08:23 | FromDiscord | <huantian> I kinda threw https://media.discordapp.net/attachments/371759389889003532/1009312711328407602/unknown.png |
04:08:46 | FromDiscord | <huantian> I had 130+ for like a solid half of that test |
04:09:18 | FromDiscord | <!Patitotective> In reply to @Rika "What?": i dont know if its just me but my "japanese keyboard" (idk how it is called, the thing that converts romaji into kanjis) is kinda sloow and i have to tab too much soo its kinda hard :/ |
04:09:39 | FromDiscord | <Elegantbeef> Huan remember i only properly touch type with my left hand! |
04:09:45 | FromDiscord | <Elegantbeef> My right hand uses index + pinky 😄 |
04:09:52 | FromDiscord | <!Patitotective> whats pinky |
04:10:06 | FromDiscord | <Elegantbeef> image.png https://media.discordapp.net/attachments/371759389889003532/1009313147041087558/image.png |
04:10:10 | FromDiscord | <Elegantbeef> The smallest finger |
04:10:23 | FromDiscord | <huantian> that's pretty impressive then lol |
04:10:29 | FromDiscord | <huantian> this is my python speed btw https://media.discordapp.net/attachments/371759389889003532/1009313242146938940/unknown.png |
04:10:34 | FromDiscord | <!Patitotective> i was thinking of a pinky pig |
04:10:38 | FromDiscord | <!Patitotective> (edit) "i was thinking of a pinky ... pig" added "little" |
04:11:00 | FromDiscord | <Elegantbeef> I really should get myself to touch type with my right hand |
04:11:10 | FromDiscord | <huantian> hm I wonder what language this is 😛 https://media.discordapp.net/attachments/371759389889003532/1009313413052248074/unknown.png |
04:11:28 | FromDiscord | <!Patitotective> ascii |
04:12:17 | FromDiscord | <!Patitotective> 🌃 |
04:12:18 | FromDiscord | <Elegantbeef> Lol i'm 26 wpm when touch typing with my right hand 😄 |
04:12:32 | FromDiscord | <huantian> In reply to @Patitotective "ascii": nah it's vim |
04:12:36 | FromDiscord | <!Patitotective> 100 wpm when touch pad |
04:13:13 | FromDiscord | <huantian> I need to get myself an ergo keeb at some point |
04:13:17 | FromDiscord | <huantian> maybe go for a split ortho |
04:13:48 | FromDiscord | <Elegantbeef> yea i cannot properly touch type with the right hand yet, so many mispresses |
04:14:13 | FromDiscord | <Rainbow Asteroids> https://media.discordapp.net/attachments/371759389889003532/1009314183101300826/unknown.png |
04:14:23 | FromDiscord | <huantian> pretty good acc |
04:17:35 | FromDiscord | <Rainbow Asteroids> suprising considering my fat hands and small keys |
04:18:04 | FromDiscord | <Rainbow Asteroids> there's no nim code on monkey type. what a complete miss for the nim programming language 😭 |
04:18:37 | FromDiscord | <Elegantbeef> Literally unusable |
04:18:55 | FromDiscord | <Rainbow Asteroids> time to rewrite monkeytype in nim to rectify this issue |
04:18:56 | FromDiscord | <huantian> prs welcome |
04:18:58 | FromDiscord | <huantian> probably |
04:19:23 | FromDiscord | <Rainbow Asteroids> %0.1 lua? https://media.discordapp.net/attachments/371759389889003532/1009315478918938634/unknown.png |
04:19:45 | FromDiscord | <Rainbow Asteroids> looks like it's for redis database |
04:20:03 | FromDiscord | <Rainbow Asteroids> (edit) "%0.1" => "0.1%" |
04:23:47 | FromDiscord | <huantian> interesting |
04:26:58 | FromDiscord | <j-james> In reply to @huantian "this is my python": duah what monkeytype has code snippets? |
04:27:03 | FromDiscord | <huantian> yeah |
04:27:06 | FromDiscord | <j-james> fun |
04:27:19 | FromDiscord | <huantian> I mean it's mostly kinda gimmicky but it's cool |
04:28:04 | FromDiscord | <j-james> yea |
04:28:49 | FromDiscord | <j-james> beef if you're here btw i'll be working on porting nim-wlroots to 0.15.x in the next few days |
04:29:05 | FromDiscord | <j-james> i've got some downtime as i caught covid lol |
04:29:33 | FromDiscord | <Elegantbeef> Congrats! |
04:29:35 | FromDiscord | <Elegantbeef> I mean oh noes! |
04:29:43 | FromDiscord | <Elegantbeef> Uhhh.....yea |
04:29:52 | FromDiscord | <Rainbow Asteroids> wayland will gladly accept your sacrifice, mortal |
04:53:36 | FromDiscord | <Ras> In reply to @huantian "hm I wonder what": looks like vim normal mode commands |
04:53:49 | FromDiscord | <Ras> In reply to @huantian "nah it's vim": oh lol |
04:53:52 | FromDiscord | <huantian> heh yeah |
05:48:00 | FromDiscord | <Tuatarian> is it just me or is hottie not outputting anything useful? |
05:48:02 | FromDiscord | <Tuatarian> it says |
05:48:05 | FromDiscord | <Tuatarian> Program ended↵ samples time percent what↵ 3220 3280.970ms 100.000%↵Samples per second: 981.4 totalTime: 3.281ms\ |
05:48:14 | FromDiscord | <Tuatarian> sent a code paste, see https://play.nim-lang.org/#ix=47Pv |
05:48:20 | FromDiscord | <Elegantbeef> What OS are you on? |
05:48:39 | FromDiscord | <Tuatarian> https://media.discordapp.net/attachments/371759389889003532/1009337945632813056/unknown.png |
05:48:40 | FromDiscord | <Tuatarian> windows |
05:48:57 | FromDiscord | <Elegantbeef> did you compile with `--debugger:native`? |
05:49:12 | FromDiscord | <Tuatarian> no, thanks, that should fix |
05:49:14 | FromDiscord | <Tuatarian> forgot about that |
05:50:21 | FromDiscord | <Tuatarian> still seems to give that same output |
05:52:01 | FromDiscord | <Tuatarian> `nim c --debugger:native --gc:arc -d:danger nash.nim` |
05:52:09 | FromDiscord | <Tuatarian> then `hottie nash.exe` |
05:52:58 | FromDiscord | <Elegantbeef> No clue |
05:53:08 | FromDiscord | <Elegantbeef> Perhaps increase the sample rate |
05:53:14 | FromDiscord | <Tuatarian> how would I do that? |
05:53:18 | FromDiscord | <Elegantbeef> `-r =10000` |
05:54:22 | FromDiscord | <Elegantbeef> 3.2ms at 1000 ticks per second isnt much data which is why it doesnt print anything |
05:56:48 | FromDiscord | <Tuatarian> as a param to hottie or to nim c? |
05:56:50 | FromDiscord | <Tuatarian> hottie right |
05:56:54 | FromDiscord | <Elegantbeef> Yes |
05:56:59 | FromDiscord | <Elegantbeef> Nim doesnt know about your profiler |
05:57:08 | FromDiscord | <SaAnd> im having a similar issue w/ hottie, it only gives 1 sample |
05:57:24 | FromDiscord | <SaAnd> even with `-r=10000` |
05:57:39 | FromDiscord | <Elegantbeef> Is it a short lived program? |
05:57:45 | FromDiscord | <SaAnd> the program is \~9 secs |
05:58:21 | FromDiscord | <SaAnd> `-d:danger --debugger:native --gc:arc` |
05:59:29 | FromDiscord | <Tuatarian> effectively same problem yeah |
05:59:46 | FromDiscord | <SaAnd> i did notice on the readme for hottie it said that |
05:59:56 | FromDiscord | <SaAnd> "Currently only works on Windows with GCC (mingw).↵↵Supports Linux using GCC(--passL\:"-no-pie" is required) and Clang." |
06:00:23 | FromDiscord | <SaAnd> even the passL thing didnt work for me though \:( |
06:00:33 | FromDiscord | <Tuatarian> I'm on windwos |
06:00:46 | FromDiscord | <SaAnd> linux here |
06:01:15 | FromDiscord | <Elegantbeef> Yea i dont know how hottie's changed since i last used/ported it |
06:01:17 | FromDiscord | <SaAnd> i did notice that after the 9 secs the output of the program gets printed out wierdly |
06:01:26 | FromDiscord | <Elegantbeef> I generally just use callgrind |
06:01:35 | FromDiscord | <SaAnd> i did go there yea |
06:01:46 | FromDiscord | <Tuatarian> problem is |
06:01:50 | FromDiscord | <Tuatarian> time != calls |
06:02:08 | FromDiscord | <Elegantbeef> Vtune and the amd profile exists |
06:02:08 | FromDiscord | <Tuatarian> sent a code paste, see https://play.nim-lang.org/#ix=47Pz |
06:02:19 | FromDiscord | <Tuatarian> would have to look into those |
06:02:26 | FromDiscord | <Tuatarian> amd profile works even on intel cpu right? |
06:02:27 | FromDiscord | <Elegantbeef> No clue what the best windows profiler is |
06:02:33 | FromDiscord | <Elegantbeef> I think so |
06:02:40 | FromDiscord | <Elegantbeef> Vtune is the Intel one and afaik is a few gigs |
06:02:41 | FromDiscord | <Tuatarian> also, would they be able to tell me where in the nim code, not the genereated c, the slowdown is? |
06:02:53 | FromDiscord | <Tuatarian> wow that's enormous |
06:03:03 | FromDiscord | <Elegantbeef> Nim includes line information that points to the Nim code |
06:04:01 | FromDiscord | <Elegantbeef> image.png https://media.discordapp.net/attachments/371759389889003532/1009341810222571560/image.png |
06:04:02 | FromDiscord | <Elegantbeef> For a example |
06:04:23 | FromDiscord | <Elegantbeef> Tooling can read this and point you directly where in the source the code came from |
06:05:31 | FromDiscord | <Tuatarian> ok I can't but hopefully vtune can |
06:06:11 | FromDiscord | <Elegantbeef> You cant what? |
06:06:22 | FromDiscord | <Tuatarian> understand what the markings are saying |
06:06:40 | FromDiscord | <Tuatarian> no that's your profile results right? |
06:06:54 | FromDiscord | <Elegantbeef> That's the source code for a call |
06:33:48 | * | PMunch joined #nim |
06:42:10 | NimEventer | New thread by Whospal: Convert Python codes to Nim codes, see https://forum.nim-lang.org/t/9376 |
06:44:11 | NimEventer | New thread by Hugogranstrom: NimiSlides 🛷 Create beautiful slideshows in Nim 👑, see https://forum.nim-lang.org/t/9377 |
06:45:04 | FromDiscord | <Girvo> The line information even works in OpenOCD-based JTAG debugging of firmware, as an aside. Its quite neat |
07:17:06 | * | rockcavera quit (Remote host closed the connection) |
07:44:37 | PMunch | NimiSlides looks pretty neat, but I'm always (probably too much so) cautious about tools like that. What happens if it doesn't fit what I want to do, I assume there's no way I can manually change things |
07:47:18 | FromDiscord | <Ras> In reply to @PMunch "NimiSlides looks pretty neat,": you fork it and implement your desired features 🙂 |
07:47:46 | FromDiscord | <Elegantbeef> It'd be better if it just user defined hooks 😄 |
07:47:51 | FromDiscord | <Elegantbeef> No clue the design so no clue if it'd be possible |
07:48:02 | FromDiscord | <Ras> nimislides looks neat, but i wish the scroll wheel worked for changing slides |
07:48:14 | FromDiscord | <Elegantbeef> Make an issue 😄 |
07:48:25 | FromDiscord | <hugogranstrom> In reply to @PMunch "NimiSlides looks pretty neat,": It is built on nimib so you can always just implement what you want by creating a custom block. All nimiSlides is, is a bunch of custom blocks |
07:49:55 | FromDiscord | <hugogranstrom> In reply to @Ras "nimislides looks neat, but": https://github.com/hakimel/reveal.js/issues/2052 it seems like an easy change I can add 😄 |
07:51:20 | FromDiscord | <hugogranstrom> In reply to @PMunch "NimiSlides looks pretty neat,": In fact, you can even override the custom blocks in nimib if you would want that |
07:51:57 | PMunch | Hmm, interesting |
07:52:07 | PMunch | But how flexible is Reveal.js? |
07:52:28 | PMunch | Like if I'm not happy with the position of an image, how easy would it be to move it a bit to the left for example |
07:56:28 | FromDiscord | <hugogranstrom> In reply to @PMunch "But how flexible is": Ahh, Reveal.js should be rather straightforward to style using CSS but I'm not sure how easy it is to just "move it a bit to the left". |
07:57:11 | FromDiscord | <hugogranstrom> But yeah, layout isn't something that is super easy to do in nimib yet |
08:07:38 | PMunch | Might still give it a try though, making my presentations in LibreOffice isn't a fantastic workflow |
08:09:39 | FromDiscord | <hugogranstrom> In reply to @PMunch "Might still give it": Would be glad to hear of your experience with it if you do 🙂 I'd say the default style of Reveal.js is quite OK if one likes everything to be stacked on top of each other |
08:21:02 | FromDiscord | <hugogranstrom> In reply to @Ras "nimislides looks neat, but": Support for scroll-wheel is added in the latest commit now |
08:22:13 | FromDiscord | <hugogranstrom> Running `useScrollWheel()` is all you need to activate it in a presentation |
08:22:25 | FromDiscord | <Ras> neat |
08:41:59 | madprops | im thinking of learning some zig |
08:42:29 | madprops | see what's the big fuss |
08:44:50 | PMunch | Tried some Zig for my Nim on microcontrollers talk. Seems like a very well-designed language, but not very exiting |
08:45:18 | PMunch | exciting* |
08:46:00 | madprops | well designed sounds exciting |
08:46:03 | FromDiscord | <Elegantbeef> It's pretty much a more concise C 😄 |
08:46:20 | FromDiscord | <Elegantbeef> Being slightly better C isnt much of something that interests me at least |
09:01:38 | FromDiscord | <lantos> In reply to @PMunch "Tried some Zig for": is that necessarily a bad thing? ↵wouldn't you want your X if it doing something critical to be boring and non eventful |
09:03:01 | PMunch | Oh not at all, but Nim is a really exciting language so if you come from Nim it might seem a bit dull |
09:04:17 | PMunch | But Nim shows a bit that it's been designed iteratively. It might just be because it's young but Zig feels more cohesive. |
09:04:30 | PMunch | At least from my veeery limited experience with it |
09:06:09 | FromDiscord | <lantos> have you played with the comptime ? like to know what you think of that v macros |
09:06:30 | FromDiscord | <lantos> aslo I've heard the async on zig is done well |
09:06:39 | FromDiscord | <Elegantbeef> Comptime seems great, but ugh it's limited |
09:07:34 | FromDiscord | <Elegantbeef> Use a macro 😄 |
09:07:36 | FromDiscord | <enthus1ast> sent a long message, see https://paste.rs/P5v |
09:07:41 | FromDiscord | <enthus1ast> yes i do \:) |
09:07:54 | FromDiscord | <Elegantbeef> then just `varargs[untyped]` |
09:08:15 | FromDiscord | <lantos> could you just use a table? :0 |
09:09:03 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=47PY |
09:09:07 | FromDiscord | <Elegantbeef> That's' valid |
09:09:28 | FromDiscord | <gat0r> I need to convince by boss to welcome Nim. I'm an offensive security guy. A hacker. Any advice? |
09:09:45 | FromDiscord | <enthus1ast> Elegantbeef\: huh i must be drunk this time lol |
09:09:54 | FromDiscord | <Elegantbeef> Write malware that causes billions of dollars worth of damage in the company, that'll encourage them |
09:10:07 | FromDiscord | <Elegantbeef> Well given i dont drink, i sure as hell am not |
09:11:22 | FromDiscord | <Ras> In reply to @gat0r "I need to convince": "welcome nim" in what way? |
09:11:28 | FromDiscord | <enthus1ast> gat0r\: we now have some offensive modules out there |
09:11:40 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=47PZ |
09:12:10 | FromDiscord | <Elegantbeef> If you mean a `std/tables` table, then only if the args are homogenous |
09:12:24 | FromDiscord | <Ras> just write your tooling, droppers, cobalt strike bof, etc in nim |
09:13:18 | FromDiscord | <Elegantbeef> Write some tool in a language you're allowed then write that same tool in your free time using Nim and sell the better version |
09:13:50 | FromDiscord | <Elegantbeef> I'm clearly joking given my lack of experience |
09:14:12 | FromDiscord | <Elegantbeef> I couldnt sell food to a billionaire that hasnt eaten in a week |
09:16:55 | FromDiscord | <Ras> In reply to @Elegantbeef "Write some tool in": i mean, that's not a bad idea |
09:17:17 | FromDiscord | <Ras> or rewrite a tool that's already in use |
09:20:32 | FromDiscord | <enthus1ast> gat0r\: given that we already have a antivirus false positive problem at hand, i would recommend another language for your offensive tooling ;) |
09:20:33 | FromDiscord | <Elegantbeef> I'd hope it was for company offensive testing |
09:23:37 | PMunch | @lantos, I did not play with comptime no |
09:24:22 | PMunch | I just read up on it just enough to know that it couldn't be used in the same way as I used Nim macros. Just enough so that I could make claims about Nim that where true |
09:26:37 | PMunch | Prestige, have you thought about making the nimdow toolbar generally available? |
09:26:46 | PMunch | I'd really like to use it with my i3 setup :P |
09:27:36 | FromDiscord | <Prestige> Yeah I have an issue open for it, but haven't started any work on it yet |
09:27:49 | FromDiscord | <Prestige> But you could use it on your nimdow setup now :P |
09:39:04 | FromDiscord | <Ras> In reply to @enthus1ast "gat0r\: given that we": generally, anyone working at a legitimate company providing offsec services will make sure that their samples don't end up in virus definition databases 😉 |
09:39:10 | FromDiscord | <Ras> well, with exceptions |
09:41:50 | FromDiscord | <EyeCon> In reply to @ehmry "<@191304757195833344>: I may have": Nice! |
09:56:07 | FromDiscord | <enthus1ast> sent a code paste, see https://play.nim-lang.org/#ix=47Q6 |
09:57:54 | FromDiscord | <Rika> Eh I don’t know what’s there to be ashamed of |
09:58:08 | FromDiscord | <Rika> Wait hm what are you doing |
09:58:14 | FromDiscord | <Rika> Why do you need to do that |
09:58:26 | FromDiscord | <enthus1ast> because its illformed ast if i just add this |
09:58:52 | FromDiscord | <Rika> Check the differences between the AST you made and the AST made with that indirection |
09:58:54 | FromDiscord | <enthus1ast> sent a code paste, see https://play.nim-lang.org/#ix=47Q7 |
10:03:28 | FromDiscord | <enthus1ast> https://gist.github.com/enthus1ast/613eace4a87f3c106e9acb1eb58336aa |
10:04:16 | FromDiscord | <enthus1ast> mh yeah i could just build this ast |
10:04:42 | FromDiscord | <enthus1ast> but i guess i'll miss something when the empty's are not empty ... |
10:09:36 | FromDiscord | <enthus1ast> ok works |
10:09:48 | FromDiscord | <enthus1ast> thanks for kicking my ass @Rika |
10:10:12 | FromDiscord | <Rika> I’ll be sure to kick harder next time |
10:14:08 | PMunch | @Prestige, I don't have my Nimdow setup any longer :( |
10:14:36 | PMunch | I've switched jobs, and since I had it installed on my last work machine it got lost in the transfer |
10:14:58 | PMunch | And I could never really get used to the navigation :P |
10:15:32 | PMunch | Now I've also got one of those ultrawide monitors, so I'd like a bit more flexibility |
10:16:49 | PMunch | But I'm considering to rip out the ANSI colour stuff and segment clicking and put it into notifishower. And maybe reimplement the formatting language to make it a bit more robust |
10:17:28 | PMunch | I think that could make a really cool desktop, xlunch for application launching, and notifishower for all kinds of bars, notifications, and system menus |
10:18:49 | PMunch | I did also start to look at embedding windows, but I could never really get that to work. The idea being that you could tell notificatcher to gobble up a window from somewhere else in order to show tray icons, xlunch menus, etc. |
10:30:59 | FromDiscord | <enthus1ast> do you use nimdow in "production" ? |
10:31:07 | FromDiscord | <enthus1ast> interesting |
10:31:13 | FromDiscord | <enthus1ast> must check that out as well |
10:31:26 | PMunch | Yeah I used it for about a year on my work machine |
10:33:50 | FromDiscord | <enthus1ast> it should use nimscript for the config =) |
10:34:36 | FromDiscord | <enthus1ast> when i switched to nimscript for my monitoring tool, the config shrank from \~2000 lines to \~150 |
10:34:57 | FromDiscord | <Prestige> I wanted to make a scripting interface for layouts |
10:35:20 | FromDiscord | <Prestige> But have been working on other projects |
10:35:43 | PMunch | @enthus1ast, your monitoring tool? |
10:36:12 | FromDiscord | <Prestige> PMunch have you looked into "devour"? |
10:37:19 | PMunch | I've considered writing a "configurator" program which uses NimScript to create and manage configuration files for other programs. Being able to share global variables like colours and fonts would be great, and of course have callbacks written in Nim would be really cool |
10:37:27 | PMunch | @Prestige, yes it's really neat |
10:37:35 | PMunch | I used it a lot before I got xlunch set up on this machine |
10:37:47 | FromDiscord | <krisppurg> sent a code paste, see https://play.nim-lang.org/#ix=47Qf |
10:37:55 | PMunch | To run a program I would create a new terminal and run e.g. `devour firefox` |
10:38:24 | FromDiscord | <Prestige> In reply to @PMunch "I've considered writing a": I really like this idea |
10:39:30 | PMunch | It would be pretty neat :) |
10:40:00 | FromDiscord | <Prestige> Maybe I should spend time making nimbar a separate program |
10:40:07 | FromDiscord | <enthus1ast> what is the most "variable alias" thing we have in nim? I basically i just want to give a variable another name, without any side effects |
10:40:21 | PMunch | A template probably |
10:40:39 | PMunch | `template myalias(): untyped = myvariable` |
10:40:49 | FromDiscord | <enthus1ast> mhh |
10:41:40 | FromDiscord | <Prestige> PMunch: if you'd like me to, can you please comment any requirements you'd like on https://github.com/avahe-kellenberger/nimdow/issues/172 |
10:41:56 | PMunch | @enthus1ast, something like this: https://play.nim-lang.org/#ix=47Qg |
10:42:26 | PMunch | @Prestige, not really sure what requirements that would be |
10:42:43 | PMunch | And to be honest I have no idea how you'd handle workspace numbering and such.. |
10:43:31 | FromDiscord | <Prestige> I'm thinking of just letting the user control that, idk if I should bother with atoms etc |
10:43:45 | FromDiscord | <Prestige> Haven't thought much about it yet |
10:45:39 | FromDiscord | <Prestige> If it's going to support tags instead of just workspaces, like Nimdow, fine grained control is required |
10:46:39 | PMunch | I wonder how those other bar replacements do things like that |
10:47:02 | PMunch | I've just always used i3bar with a solid custom script for colourizing the bar contents |
10:47:09 | FromDiscord | <Prestige> I think most don't support tags, like polybar |
10:50:43 | PMunch | Right, that makes sense I guess |
10:51:03 | PMunch | Are there any other WMs that support tags? |
10:51:17 | PMunch | I wonder if I would get used to them or if it would just be super confusing |
10:51:23 | FromDiscord | <Prestige> dwm and awesome, which have their own bars |
10:51:41 | FromDiscord | <Prestige> It's similar to workspaces, but more flexible |
10:53:06 | FromDiscord | <Prestige> You can view multiple at the same time, and have one window on multiple tags. Comes in handy |
10:53:24 | PMunch | Hmm, instantWM looks interesting |
10:56:05 | FromDiscord | <Prestige> Yeah, hadn't seen that before. Dwm rewrite basically huh |
10:56:26 | FromDiscord | <Prestige> I've found so many dwm bugs, idk how people use it |
10:57:06 | * | gsalazar quit (Ping timeout: 256 seconds) |
10:58:57 | * | gsalazar joined #nim |
11:02:24 | PMunch | Hmm, so I got instantwm to launch, but it is apparently missing its program launcher so I can't do anything with it :P |
11:03:54 | * | gsalazar quit (Ping timeout: 256 seconds) |
11:04:42 | FromDiscord | <Prestige> The wm is supposed to ship with a program launcher? |
11:05:01 | FromDiscord | <Prestige> I would think instantOS would, but not the wm itself |
11:06:30 | PMunch | I think it's just the default configuration that specifies the one instantos comes with |
11:06:40 | PMunch | But they appear to have multiple launchers |
11:06:47 | PMunch | Let's see if any of the others work |
11:08:57 | FromDiscord | <Prestige> Perhaps I'll just have the bar work ootb with typical workspace support, for now |
11:09:16 | FromDiscord | <Prestige> I'll worry about tags down the road |
11:09:35 | PMunch | Is there a common way to support tags? |
11:09:48 | PMunch | Or is it just implemented differently in each WM which supports them |
11:10:06 | FromDiscord | <Prestige> Seems different between WMs |
11:10:33 | FromDiscord | <Prestige> But essentially it's integrated into the wm itself |
11:11:58 | FromDiscord | <Prestige> I could provide an atom than uses an int to indicate which tags are being viewed, by each bit. But you'd still need some glue code I suppose, to utilize it between WMs that support tags |
11:12:06 | FromDiscord | <Prestige> Wouldn't be too bad |
11:17:08 | PMunch | Hmm, I can't figure out how to change the default programs of instantwm.. |
11:19:36 | PMunch | Hmm, I should look into creating my own distro |
11:19:45 | FromDiscord | <Prestige> Distro or DE? |
11:19:45 | PMunch | I set up all my machines the same way, and it's a bit tedious |
11:20:03 | PMunch | Distro |
11:20:19 | FromDiscord | <Prestige> You could probably just make an iso or something that has everything pre-configured |
11:20:32 | PMunch | Yeah that's what I was thinking |
11:20:37 | PMunch | I wonder how you do that.. |
11:20:57 | FromDiscord | <Prestige> https://instantos.io/youtube/hotkeys |
11:21:08 | FromDiscord | <Prestige> I know for arch linux there's archiso, idk about others |
11:24:26 | FromDiscord | <Prestige> Actually, supporting tags on a WM-agnostic bar would be a bit tedious, unless the WM itself just told the bar what to display.. or with a glue program that would talk to the WM via ipc |
11:24:36 | FromDiscord | <Prestige> Unfortunate |
11:24:41 | PMunch | The problem with those keybindings is that they all point to some `instant_X` thing, none of which I have installed :P |
11:24:46 | PMunch | So none of them do anything |
11:24:52 | FromDiscord | <Prestige> Ah that sucks |
11:35:51 | NimEventer | New thread by Gavr: Explain current state of multi-threading, see https://forum.nim-lang.org/t/9378 |
11:36:13 | PMunch | Well it's mostly just a matter of replacing or symlinking them to something I do have installed |
11:51:20 | FromDiscord | <gavr> is language acceptance growing? That is, are there new companies using nim? |
11:51:44 | FromDiscord | <gavr> This list was last updated in 2021( ↵ https://github.com/nim-lang/Nim/wiki/Organizations-using-Nim |
11:51:47 | PMunch | It's a slow process, but hopefully |
11:52:23 | PMunch | I know that the company I used before use Nim, because I managed to sneak it into a project :P |
11:52:47 | FromDiscord | <gavr> )) |
11:53:11 | FromDiscord | <gavr> I did the same with Vala(didnt know nim yet) |
11:53:37 | PMunch | I think it might be on their long-term roadmap to replace it though. They seemed pretty confused by the source code when I left :P |
12:01:08 | FromDiscord | <gavr> Say its just static python |
12:01:56 | FromDiscord | <gavr> In reply to @NimEventer "New thread by Gavr:": also, thats my quastion, and Im really dont understand how to use multithreads with ARC GC now |
12:04:34 | FromDiscord | <flywind> In reply to @gavr "also, thats my quastion,": The threading primitives for ARC/ORC are implemented here: https://github.com/nim-lang/threading/tree/master/threading |
12:06:18 | FromDiscord | <creikey> goto definition on vscode is broken for me again with nimsaem's extension, anybody have any idea how to view the debug output of nimsuggest? |
12:06:26 | FromDiscord | <creikey> the lsp seems completely broken but I can view its debug output at least |
12:08:13 | FromDiscord | <creikey> oh hey the non nim version works |
12:09:23 | FromDiscord | <enthus1ast> you can open the develope tools in vscode |
12:09:29 | FromDiscord | <enthus1ast> since its chrome |
12:09:35 | FromDiscord | <enthus1ast> developer |
12:11:57 | FromDiscord | <enthus1ast> its under help-\>Toggle Developer Tools |
12:17:06 | FromDiscord | <creikey> Is there a better text editor to use with vim than vscode? Go to definition takes 5 seconds at least and often goes to the incorrect symbol |
12:17:11 | FromDiscord | <creikey> (edit) "vim" => "nim" |
12:17:42 | PMunch | The speed of that will typically be the same for every editor as they all use nimsuggest behind the scenes |
12:17:59 | FromDiscord | <dom96> there is nothing better |
12:18:06 | FromDiscord | <creikey> this is so annoying |
12:18:10 | PMunch | Unless of course there is something out there which caches things |
12:18:23 | FromDiscord | <creikey> why does nimsuggest not just run all the time? |
12:18:36 | FromDiscord | <creikey> I'd use the lsp setting in vscode but it's broken |
12:18:55 | PMunch | Why is it broken? |
12:19:08 | FromDiscord | <creikey> In reply to @PMunch "Why is it broken?": something about parseint and nimsuggest not recognizing v3 in the debug output |
12:19:27 | PMunch | Uhm, that sounds weird |
12:19:39 | PMunch | If it's a nimlsp bug then please create an issue ticket for it |
12:20:22 | FromDiscord | <dom96> In reply to @gavr "is language acceptance growing?": from what I've seen we haven't had a large new company adopt Nim since Status, depending on your definition of "large" I suppose |
12:20:38 | FromDiscord | <creikey> In reply to @PMunch "If it's a nimlsp": nimlsp is only in the nimsaem extension which also has nimsuggest broken |
12:20:50 | FromDiscord | <gavr> In reply to @dom96 "from what I've seen": And what about not large? |
12:21:58 | FromDiscord | <gavr> sent a long message, see http://ix.io/47Qz |
12:23:32 | FromDiscord | <gavr> What is the future of Nim? : Not sure, but there will be 2.0 soon, breaking changes as far as I understand are not planned, the most likely will be a new system of modules |
12:24:04 | PMunch | @creikey, aah right VSCode totally bungled their LSP implementation since you require a plugin for each language still :P |
12:24:10 | FromDiscord | <gavr> Is the language developing and in which direction?: Yes, main direction for now seems to make ARC/ORC the default GC |
12:24:19 | PMunch | Or wait, I thought that was only Visual Studio.. |
12:24:31 | FromDiscord | <creikey> In reply to @PMunch "<@180866243819995136>, aah right VSCode": https://media.discordapp.net/attachments/371759389889003532/1009437564639387748/unknown.png |
12:24:52 | FromDiscord | <creikey> sent a code paste, see https://play.nim-lang.org/#ix= |
12:24:58 | FromDiscord | <creikey> I think this is like |
12:25:08 | FromDiscord | <creikey> something about it wanting a nimsuggest that's newer? I can't tell |
12:25:34 | FromDiscord | <creikey> is there a new version of nim or something? choosenim has been improperly installing nim on windows for some months now |
12:25:46 | FromDiscord | <dom96> In reply to @creikey "is there a new": how so? |
12:26:10 | FromDiscord | <dom96> In reply to @gavr "And what about not": good question, I am not sure |
12:26:16 | PMunch | @creikey, that's not nimlsp though is it? |
12:26:17 | FromDiscord | <creikey> In reply to @dom96 "how so?": for awhile none of my tooling or builds with threads worked, silently failed, because choosenim didn't add the libthreads whatever to the path |
12:26:30 | FromDiscord | <creikey> In reply to @PMunch "<@180866243819995136>, that's not nimlsp": it's the nimlsp option in the nimsaem vscode extension |
12:26:40 | FromDiscord | <dom96> In reply to @dom96 "good question, I am": though most smaller companies don't advertise that they use Nim, probably because it's mainly just one person sneaking Nim into the company :P |
12:26:45 | FromDiscord | <gavr> "Who uses Nim in production and why?" Status, and there are great talk on youtube about it↵"Are these isolated cases or is the adoption growing somewhere?" As I understand not much↵"Why should our listener study Nim?" New programming style in structural paradigm, best macro system in compiled languages, 3 E |
12:27:51 | FromDiscord | <gavr> "Is there an opportunity to find a job on Nim?" Permanent, no, but there are small orders, here in jobs channel |
12:28:08 | FromDiscord | <dom96> In reply to @creikey "for awhile none of": Does it work if you install Nim manually? |
12:28:17 | FromDiscord | <creikey> In reply to @dom96 "Does it work if": I got it working by adding that directory to my path |
12:28:20 | FromDiscord | <dom96> because I'm pretty sure that's a Nim breakage |
12:28:20 | FromDiscord | <Rika> not definitely permanent, but in the long term you'll be hard pressed yes |
12:28:33 | FromDiscord | <enthus1ast> where to get a nimsuggest that supports --v3 ? |
12:28:42 | FromDiscord | <dom96> In reply to @creikey "I got it working": choosenim specifically puts everything in ~/.nimble/bin so that you only need to add that to your PATH |
12:29:02 | FromDiscord | <enthus1ast> 1.6.4 nor 1.6.6 seem to have it |
12:29:05 | FromDiscord | <dom96> Nim has a dlls.zip file which is supposed to contain all the needed DLLs, choosenim installs that |
12:29:15 | PMunch | @gavr, "Who uses Nim in production?". The current situation is that there aren't a whole lot of companies who officially endorse it. Unlike for example Ruby which had an explosive growth with Ruby on Rails and then about the same decline Nim seems to follow a path closer to that of Python. Slowly but steadily increasing in users. There is currently no "killer app/framework" written in Nim, so few companies are likely looking to switch to it for something |
12:29:15 | PMunch | specific. But by slowly building up community of developers who prefer to work in Nim it will slowly find its way into many companies. |
12:29:25 | FromDiscord | <creikey> In reply to @dom96 "choosenim specifically puts everything": it did not do that to some dll that was required for nimsuggest to run, and because the vscode extension doesn't tell me when nimsuggest doesn't work, I just had no idea goto definition was broken because of that |
12:29:33 | FromDiscord | <creikey> windows also doesn't tell you which dll is missing I had to use a scanner |
12:29:41 | FromDiscord | <creikey> very annoying hours potentially days just wasted |
12:30:00 | FromDiscord | <konsumlamm> In reply to @gavr "What is the future": 2.0 will have some breaking changes |
12:30:49 | PMunch | Is there an opportunity to find a job in Nim? This goes a bit back to the previous answer, but essentially there are very few job listings out there calling specifically for Nim developers. But if you're proficient in Nim you might be able to find somewhere that accepts you using it. |
12:31:52 | FromDiscord | <creikey> In reply to @enthus1ast "where to get a": I have no iea |
12:31:54 | FromDiscord | <creikey> (edit) "iea" => "idea" |
12:31:54 | FromDiscord | <dom96> In reply to @creikey "very annoying hours potentially": yeah, I agree it's annoying. But I don't think it's choosenim's job to be pulling DLLs out of gcc, especially when this is a result of a change in Nim https://github.com/nim-lang/Nim/issues/19713 |
12:32:04 | FromDiscord | <creikey> In reply to @dom96 "yeah, I agree it's": yeah I opened that issue |
12:32:27 | FromDiscord | <creikey> look at this I was reading the generated C trying to figure out what's going on https://media.discordapp.net/attachments/371759389889003532/1009439565733433404/unknown.png |
12:32:29 | FromDiscord | <creikey> this is what I mean by days |
12:32:30 | PMunch | What is the future of Nim? Is the language developing and in which direction? The future of Nim currently is in stability and a better multi-threading story. The language has been in development for a long while and is currently pushing towards the 2.0 release which will seek to make the language more polished. |
12:33:17 | FromDiscord | <jb> In reply to @dom96 "though most smaller companies": guilty |
12:34:45 | PMunch | Why should our listener study Nim? How to do it? Absolutely! Apart from the benefit of just learning something new, Nim offers a very interesting system for meta-programming that you don't really find anywhere else in compiled imperative languages. This means that you're able to program the language to look and feel the way you want, which has some interesting consequences for maintainability and flexibility. In order to learn Nim there is a vibrant online |
12:34:45 | PMunch | community, along with two books and a multitude of websites and video tutorials. Head over to nim-lang.org to find out more. |
12:35:38 | FromDiscord | <dom96> In reply to @creikey "look at this I": yeah, that sucks. But please don't blame choosenim for it, nim never depended on the DLLs in gcc before this change was made |
12:36:08 | PMunch | What about the community? How big, what kind of movement is there, where to come for help? The community is always growing and we've got live chats alongside a forum where you can ask for help or just discuss language features. Again you can find links to everything at nim-lang.org. |
12:36:33 | PMunch | @gavr ^ wrote out some responses to the various questions |
12:36:49 | FromDiscord | <creikey> In reply to @dom96 "yeah, that sucks. But": oh I don't mean to blame anything, I just mean that following the instructions on the official website has resulted in a broken environment for months |
12:37:03 | FromDiscord | <gavr> In reply to @PMunch "<@203265254245793802> ^ wrote out": Yea, thanks a lot! |
12:37:25 | FromDiscord | <creikey> anybody know what this means? like where is this logging happening https://media.discordapp.net/attachments/371759389889003532/1009440815799619675/unknown.png |
12:38:30 | PMunch | @creikey, did you try nimlsp or nim-langserver for your LSP attempt? |
12:38:51 | PMunch | If it was the latter you probably just have a too old version of nimsuggest which is causing the --v3 issue |
12:38:59 | FromDiscord | <creikey> In reply to @PMunch "<@180866243819995136>, did you try": this? https://media.discordapp.net/attachments/371759389889003532/1009441206985556069/unknown.png |
12:39:11 | FromDiscord | <creikey> In reply to @PMunch "If it was the": how do I update nimsuggest |
12:39:28 | PMunch | By updating Nim |
12:39:44 | PMunch | What does `nimsuggest --version` say? |
12:39:46 | FromDiscord | <creikey> In reply to @PMunch "By updating Nim": so this means choosenim is updated? https://media.discordapp.net/attachments/371759389889003532/1009441406068195379/unknown.png |
12:40:01 | FromDiscord | <creikey> In reply to @PMunch "What does `nimsuggest --version`": https://media.discordapp.net/attachments/371759389889003532/1009441468030660648/unknown.png |
12:40:19 | PMunch | But that plugin seems to use my nimlsp, then it wouldn't be an issue (but you should still update nimlsp when updating Nim) |
12:40:27 | FromDiscord | <creikey> `C:\Users\Cameron\.nimble\bin\nimsuggest.exe` this is where nimsuggest is, what I meant by the last line |
12:41:04 | PMunch | Hmm, this might be related to the Windows bugs that NimLSP has had.. |
12:41:09 | FromDiscord | <creikey> In reply to @PMunch "But that plugin seems": I'd like to see if the extension is using the right nimsuggest but I can't figure out how it is logging anything |
12:41:17 | FromDiscord | <creikey> or to where |
12:41:33 | PMunch | NimLSP doesn't use nimsuggest, it has nimsuggest compiled into it |
12:41:35 | FromDiscord | <enthus1ast> imho stuff like this must work with stable |
12:42:34 | FromDiscord | <creikey> In reply to @PMunch "NimLSP doesn't use nimsuggest,": where is nimlsp installed? |
12:42:58 | FromDiscord | <dom96> likely ~/.nimble/pkgs/nimlsp-ver |
12:43:21 | FromDiscord | <creikey> In reply to @dom96 "likely ~/.nimble/pkgs/nimlsp-ver": https://media.discordapp.net/attachments/371759389889003532/1009442306488815716/unknown.png |
12:43:24 | FromDiscord | <dom96> PMunch: do you use NimLSP regularly? |
12:43:29 | FromDiscord | <creikey> In reply to @enthus1ast "imho stuff like this": it probably does on linux |
12:43:37 | FromDiscord | <dom96> In reply to @creikey "": `dir`? |
12:43:56 | FromDiscord | <enthus1ast> no it cannot, since the stable nimsuggest does not contain -v3↵(@creikey) |
12:44:00 | FromDiscord | <enthus1ast> --v3 |
12:44:00 | FromDiscord | <creikey> In reply to @dom96 "`dir`?": bunch of dfolders for the pkgs |
12:44:01 | FromDiscord | <dom96> It's in a directory like `nimlsp-0.1.0` not literally `nimlsp-ver` |
12:44:10 | FromDiscord | <creikey> oh sorry lol |
12:44:11 | FromDiscord | <creikey> misunderstood |
12:44:17 | FromDiscord | <creikey> thought you meant like that's the name of the executable |
12:44:40 | FromDiscord | <creikey> I don't have nimlsp as a package installed, the vscode extension probably downloaded its own |
12:44:47 | PMunch | dom96, yes I use it whenever I'm editing Nim |
12:45:08 | FromDiscord | <creikey> In reply to @PMunch "<@132595483838251008>, yes I use": does it go to definition in under 5 seconds and go to the right definition? |
12:45:34 | PMunch | @creikey, depends on the project (the more complex the project the longer it takes) but it general it's pretty instantaneous |
12:45:41 | PMunch | And it mostly hits the right thing |
12:45:49 | FromDiscord | <creikey> In reply to @PMunch "<@180866243819995136>, depends on the": what text editor do you use it with |
12:45:55 | PMunch | Vim |
12:46:46 | FromDiscord | <enthus1ast> ok i just got it work with PMunch's nimlsp |
12:46:48 | FromDiscord | <enthus1ast> on windows |
12:46:49 | FromDiscord | <creikey> so I can't just point vscode to a language server binary and have it work? |
12:47:20 | FromDiscord | <enthus1ast> i've disabled all helpers in nimsaem and used the nimlsp extention, there i pasted the path to the executable in |
12:47:31 | FromDiscord | <enthus1ast> and vscode |
12:49:35 | FromDiscord | <creikey> In reply to @PMunch "<@180866243819995136>, depends on the": it looks like the vscode extension tries to use this https://media.discordapp.net/attachments/371759389889003532/1009443876626518137/unknown.png |
12:49:38 | FromDiscord | <creikey> nimlangserver |
12:52:05 | PMunch | Ah yes, that is the silly new one which depends on nimsuggest instead of compiling it in |
12:52:28 | FromDiscord | <creikey> it looks like nimsuggest just crashes? https://media.discordapp.net/attachments/371759389889003532/1009444604258558049/unknown.png |
12:53:07 | FromDiscord | <enthus1ast> image.png https://media.discordapp.net/attachments/371759389889003532/1009444766339039302/image.png |
12:53:08 | FromDiscord | <enthus1ast> with this one it works\: |
12:53:29 | FromDiscord | <enthus1ast> image.png https://media.discordapp.net/attachments/371759389889003532/1009444855019216916/image.png |
12:53:49 | FromDiscord | <dom96> why do you even need an extension for this? |
12:53:54 | FromDiscord | <dom96> Doesn't VS code support lsp natively? |
12:54:08 | FromDiscord | <enthus1ast> i have no clue |
12:54:11 | PMunch | I think LSP was created for VSCode wasn't it? |
12:54:29 | FromDiscord | <dom96> yeah, pretty sure it was |
12:54:31 | FromDiscord | <creikey> In reply to @dom96 "Doesn't VS code support": I tried googling this and can't tell |
12:54:51 | PMunch | But it requires configuration, so there are a lot of packages which provides a default configuration for language X |
12:55:12 | PMunch | In Vim for example you point it at the executable and tell it for which languages to run that executable. |
12:56:35 | FromDiscord | <gavr> In reply to @konsumlamm "2.0 will have some": where can I get list of planned braking changes? |
12:56:45 | FromDiscord | <creikey> what is even going on with this https://media.discordapp.net/attachments/371759389889003532/1009445677513854976/unknown.png |
12:56:50 | FromDiscord | <creikey> "Nimsuggest version: null" |
12:57:44 | FromDiscord | <creikey> I think this is an exception in nimsuggest https://media.discordapp.net/attachments/371759389889003532/1009445927720853594/unknown.png |
12:58:21 | FromDiscord | <dom96> yep, also these extensions should seriously report these errors instead of having you go into the dev console lol |
12:58:44 | FromDiscord | <creikey> In reply to @dom96 "yep, also these extensions": yeah I just get silently fail and no op on goto definition |
12:59:08 | FromDiscord | <creikey> is it finally time I switch from vscode back to vim |
12:59:10 | FromDiscord | <dom96> > Ah yes, that is the silly new one which depends on nimsuggest instead of compiling it in |
12:59:16 | FromDiscord | <dom96> Btw I do still think that is the way to go |
13:00:04 | PMunch | dom96, agree to disagree on that one. Another layer of indirection just opens for more possible errors (e.g. in this case where the installed nimsuggest doesn't have --v3) |
13:00:49 | FromDiscord | <creikey> this is with nimlsp https://media.discordapp.net/attachments/371759389889003532/1009446703201533983/unknown.png |
13:00:52 | FromDiscord | <creikey> just "couldn't start" |
13:00:57 | FromDiscord | <creikey> any arguments I'm supposed to pass? |
13:01:25 | PMunch | Have a look at the README and issues, you're likely missing some paths and stuff |
13:01:26 | FromDiscord | <dom96> I would rather have a rock solid binary that can deal with unknows (like an incompatible nimsuggest) than one that has an unknown Nimsuggest compiled in |
13:01:32 | FromDiscord | <konsumlamm> In reply to @gavr "where can I get": https://github.com/nim-lang/Nim/blob/devel/changelog.md |
13:01:45 | FromDiscord | <dom96> and which is then also less reliable because it reuses nimsuggest code which is insanely unreliable |
13:01:54 | FromDiscord | <Phil> In reply to @PMunch "<@132595483838251008>, agree to disagree": Wouldn't the counter to that be that if the plugin-creator screwed up you now can't fix it, while with a configurable nimlsp you can update the version yourself? |
13:02:21 | PMunch | dom96, that is just a good argument to improve nimsuggest :P |
13:02:39 | FromDiscord | <enthus1ast> please improve nimsuggest |
13:02:52 | FromDiscord | <enthus1ast> i'm tired of ↵taskkill /im nimsuggest.exe /f |
13:02:57 | PMunch | And it doesn't have an unknown nimsuggest compiled in, and you can't get silly errors from missing features on runtime because that would be compile-time errors |
13:02:57 | FromDiscord | <enthus1ast> ;) |
13:03:10 | FromDiscord | <dom96> In reply to @enthus1ast "i'm tired of ": this is what the LSP binary should handle for you! |
13:03:12 | PMunch | And there is no parsing back and forth between nimsuggest and nimlsp, because they are one and the same |
13:03:42 | FromDiscord | <dom96> Also it would be easy to implement other "completion providers" |
13:03:52 | FromDiscord | <enthus1ast> @dom96\: could be, this is the first time i use lsp, before that i just used "nimsuggest" as the provider |
13:03:53 | FromDiscord | <dom96> and have the LSP binary run them for you together with nimsuggest |
13:03:58 | FromDiscord | <enthus1ast> or disabled it completely |
13:04:00 | PMunch | @Phil, not really, NimLSP is set up to build against the nimsuggest sources you provide, so you could just tell it to use newer sources if you wanted to. |
13:04:56 | PMunch | dom96, which other completion providers? As discussed earlier nimsuggest is really the only one.. And besides, there is nothing in NimLSP that means it can't also use something else |
13:05:37 | FromDiscord | <dom96> they don't exist yet, but they should |
13:05:42 | FromDiscord | <dom96> something like ctags |
13:06:21 | FromDiscord | <dom96> I'm also of the belief that 95% of "go to def" and completions can be made using a ctags-like approach |
13:06:41 | FromDiscord | <dom96> and it will be super fast |
13:08:02 | FromDiscord | <creikey> yeah, I'm just trying to figure out what's up with https://github.com/treeform/boxy/issues/48 using ctrl + click to navigate, majority of the functions I'm going to have many overloaded implementations with different types |
13:09:04 | PMunch | Wouldn't something like ctags break completely when you bring templates and macros into the mix? |
13:09:16 | FromDiscord | <dom96> sure |
13:09:18 | FromDiscord | <dom96> that's the 5% |
13:10:16 | PMunch | More like 95% in my codebases :P |
13:11:29 | FromDiscord | <dom96> Then you're using too many templates/macros :P |
13:12:01 | FromDiscord | <Bung> @PMunch https://github.com/PMunch/nimlsp/pull/132 |
13:12:41 | FromDiscord | <dom96> oh, guess we need better multisync docs |
13:12:55 | FromDiscord | <dom96> cool that you're using it though |
13:13:26 | PMunch | dom96, that's the whole fun of using Nim though :) |
13:14:20 | FromDiscord | <Bung> I realize that after months |
13:14:23 | FromDiscord | <dom96> you won't be saying that in 5 years when you can't remember the template/macro magic you've implemented :D |
13:14:48 | FromDiscord | <Rika> only sounds like an issue if you dont document xd |
13:15:20 | FromDiscord | <dom96> You won't ever document enough |
13:15:24 | FromDiscord | <Generic> it would be worse to figure out my code if I used copy paste and slight modification instead of templates |
13:15:49 | FromDiscord | <dom96> There is a reason we have a saying around here: use the least powerful construct (i.e. only use template if proc doesn't work) |
13:15:50 | PMunch | dom96, eh I'm doing good so far |
13:16:05 | PMunch | The trick is to make your macros readable :) |
13:16:49 | PMunch | I tend to do very little magic and only stick to transformation to other constructs, seems to work well enough |
13:19:01 | FromDiscord | <dom96> in any case, I think ctags can still do a very good job and maybe once it works for normal Nim code we could then ask it to run against expanded macros output from the compiler |
13:19:20 | FromDiscord | <creikey> wait can renderdoc not run on nim built executables? |
13:19:20 | FromDiscord | <dom96> that would definitely get it closer to nimsuggest's problems |
13:22:09 | FromDiscord | <dom96> This is one of those things that I would build but I have by far reached my project limit |
13:22:28 | FromDiscord | <dom96> But if anyone wants to collab on implementing this let me know |
13:23:48 | FromDiscord | <Generic> In reply to @creikey "wait can renderdoc not": I've used it many times sucessfully with Nim |
13:24:01 | FromDiscord | <creikey> In reply to @Generic "I've used it many": just found out it's a problem with how windy gets the opengl context |
13:24:11 | FromDiscord | <creikey> https://github.com/treeform/windy/issues/94 opened an issue here |
13:24:38 | FromDiscord | <Generic> ah I'm always using SDL for that |
13:25:11 | FromDiscord | <creikey> In reply to @Generic "ah I'm always using": yeah, sdl doesn't have copy pasting of images which I neeed |
13:25:12 | FromDiscord | <creikey> (edit) "neeed" => "need" |
13:25:18 | FromDiscord | <enthus1ast> @dom96\: we should collect such "project suggestions" somewhere |
13:27:17 | * | jmdaemon quit (Ping timeout: 256 seconds) |
13:32:43 | FromDiscord | <dom96> good idea, maybe we need something similar to `needed-libraries` but for project suggestions? |
13:33:38 | FromDiscord | <enthus1ast> yeah and it must be advertised as something like\: "hacking suggestions\: " |
13:33:48 | FromDiscord | <enthus1ast> or contributions suggestions |
13:34:02 | FromDiscord | <flywind> needed-libraries probably needs to be pinned to get more attention. |
13:34:12 | FromDiscord | <enthus1ast> yes thats what i meant |
13:38:05 | * | arkurious joined #nim |
13:39:09 | * | Guest41 joined #nim |
13:44:50 | * | rockcavera joined #nim |
13:44:50 | * | rockcavera quit (Changing host) |
13:44:50 | * | rockcavera joined #nim |
13:54:53 | FromDiscord | <Freakwill (William Song)> get Error\: type mismatch\: got 'set[range 0..65535(int)]' for '{1}' but expected 'Line = set[uint8]'. Following is the code\: type↵ Line = set[uint8]↵var d\: Line={1} |
13:56:07 | FromDiscord | <Rika> `var d: Line = {1'u8}` |
14:03:16 | * | Guest41 quit (Quit: Client closed) |
14:20:16 | * | PMunch quit (Quit: Leaving) |
14:25:59 | FromDiscord | <proton> Is there any libp2p chat exmpale in Nim? |
14:56:45 | FromDiscord | <jmgomez> In reply to @dom96 "something like ctags": it may be possible to have a special pragma/hook that the me macro creator uses for when in dev that autogens the ctags indexes to the macro generated symbols? It will require extra work from the macro creator but it may help? |
14:56:52 | FromDiscord | <proton> Noise handshake, peer infos don't match! ok(12D3KooWP8eJUnthozNsJNyawukpdbpzFdj4qZjYiarrtKBfPg9J) != 12D3KooWAPiuTyD48rZ4TeDZphg1xPhLbmc5hbv51vTZtqFTJK9L |
14:57:31 | FromDiscord | <proton> nim-libp2p exmple directchat errors |
15:20:55 | FromDiscord | <dom96> In reply to @jmgomez "it may be possible": sure, that could work |
15:26:57 | * | gsalazar joined #nim |
15:43:20 | * | xet7 quit (Ping timeout: 268 seconds) |
15:47:14 | FromDiscord | <jmgomez> In reply to @dom96 "sure, that could work": Cool. I guess there isnt done for ctags. It's just an idea, right? ↵Let us know if there is a way to help. As a recent newcomer to the lang, I feel like tooling was one of the things that made me think investing time in Nim twice |
15:55:30 | FromDiscord | <4zv4l> is there a way to do a `findAll(str, regex)` on a multiline string ? |
15:56:12 | * | xet7 joined #nim |
16:01:31 | FromDiscord | <4zv4l> I can't modify the `reMultiLine` |
16:04:49 | * | gsalazar quit (Ping timeout: 256 seconds) |
16:08:07 | FromDiscord | <4zv4l> and is there a group matching ? |
16:10:52 | * | kenran joined #nim |
16:24:39 | * | xet7 quit (Remote host closed the connection) |
16:37:57 | FromDiscord | <enthus1ast> there are several regex libs |
16:44:10 | * | kenran quit (Quit: WeeChat info:version) |
18:06:45 | FromDiscord | <enthus1ast> to allow varargs[untyped] to be used withouth specifying all named optional parameter |
18:11:15 | FromDiscord | <enthus1ast> sent a long message, see http://ix.io/47Sl |
18:12:05 | FromDiscord | <enthus1ast> not only varargs[untyped] but any varargs |
18:14:28 | * | PMunch joined #nim |
18:40:17 | FromDiscord | <demotomohiro> sent a code paste, see https://play.nim-lang.org/#ix=47Sq |
18:50:35 | NimEventer | New question by Philipp Doerner: How to dynamically link your nim-application against musl?, see https://stackoverflow.com/questions/73393568/how-to-dynamically-link-your-nim-application-against-musl |
18:50:56 | FromDiscord | <Phil> Self answered question. If anyone wants to provide an example for dynamically linking against musl on windows feel free |
18:51:14 | FromDiscord | <Phil> (edit) "Self answered question." => "The above SO question is self-answered." |
18:51:28 | FromDiscord | <Phil> (edit) "free" => "free, I have no idea what it takes there" |
18:58:27 | FromDiscord | <Phil> By the time I'm done I hopefully never have to ask a simple question about the compiler ever again because I'll hopefully be able to just copy paste my SO answers |
19:02:47 | FromDiscord | <Phil> In reply to @dom96 "There is a reason": I like to believe that is a generally applicable rule to any language that allows any kind of metaprogramming |
19:27:43 | NimEventer | New thread by RedByte: Read/write access to global variable in multithreaded application, see https://forum.nim-lang.org/t/9379 |
19:29:09 | FromDiscord | <leorize> btw, since you're already using docker, you can use an alpine container to compile your nim application, it will use alpine's gcc which links with musl |
19:30:24 | * | jmdaemon joined #nim |
19:38:04 | FromDiscord | <enthus1ast> this works in this case but consider this\:foo("aa", bb= 1337, uu = baa, zz = baz )↵(@demotomohiro) |
19:38:35 | FromDiscord | <enthus1ast> "uu = baa, zzz = baz"↵are the varargs |
19:44:19 | FromDiscord | <enthus1ast> mh i should have done my nimja path with the table syntax |
19:44:33 | FromDiscord | <enthus1ast> this would have composed better |
19:45:12 | FromDiscord | <enthus1ast> sent a code paste, see https://play.nim-lang.org/#ix=47SM |
19:45:19 | FromDiscord | <enthus1ast> [Edit](https://discord.com/channels/371759389889003530/371759389889003532/1009548251785080943): mh i should have done my nimja patch with the table syntax |
19:46:53 | FromDiscord | <Phil> In reply to @leorize "btw, since you're already": My first attempt at figuring things out was "How to get it working on my system".↵When I got that figured out laziness kicked in and the desire to figure out how to get a nim compilation process to work on an alpine container disappeared 😅 |
19:51:50 | NimEventer | New thread by Bcharest: Jnim documentation ?, see https://forum.nim-lang.org/t/9380 |
19:53:55 | FromDiscord | <Phil> Btw does anyone know of a good image generator for like character portaits? Namely I'm pondering image generation for dnd character art |
20:01:22 | FromDiscord | <enthus1ast> maybe you could try these ai driven generators |
20:02:44 | FromDiscord | <Phil> I'm staring at a ton, but all of them are either not free or I can't just add them to a local project. There is one that gives you access to a dataset but their guide on using it is entirely reliant on google drive and using it to generate the images with some...tensorflow python script? I'm not sure |
20:03:11 | FromDiscord | <Phil> What's frustrating is that I know there's good shit out there, all of https://www.reddit.com/r/dndai/ is testament to that |
20:04:11 | FromDiscord | <enthus1ast> image.png https://media.discordapp.net/attachments/371759389889003532/1009553245720555671/image.png |
20:04:48 | FromDiscord | <enthus1ast> they all have the same disease haha \:) |
20:05:12 | FromDiscord | <Phil> True, the eyes of DALL E have been fucked 90% of the time |
20:05:13 | FromDiscord | <Phil> BUT |
20:05:34 | FromDiscord | <Phil> There is good stuff like this as well https://media.discordapp.net/attachments/371759389889003532/1009553594149769378/unknown.png |
20:06:16 | FromDiscord | <Phil> Apparently the ones on there are almost all Dall E though, appears to be the unbeaten champion |
20:10:01 | FromDiscord | <enthus1ast> problem solved\: "A dnd like character portrait with closed eyes" \:D |
20:10:21 | FromDiscord | <enthus1ast> image.png https://media.discordapp.net/attachments/371759389889003532/1009554799093620856/image.png |
20:10:27 | FromDiscord | <Phil> ~~Make DallE open source now~~ |
20:11:12 | FromDiscord | <enthus1ast> maybe there is open source code out there, where you can train the network yourself |
20:11:21 | FromDiscord | <enthus1ast> then you could train it on eg MtG cards |
20:11:52 | FromDiscord | <Phil> ~~I mean including the datasets or at least the model because getting the dataset together is the most painful part~~ |
20:12:23 | FromDiscord | <enthus1ast> or maybe not do such "realistic" characters |
20:47:47 | FromDiscord | <j-james> well there's stable diffusion |
20:48:14 | FromDiscord | <j-james> free to researchers + promises to be fully free and available in the next couple weeks |
20:49:21 | FromDiscord | <j-james> also trained on open datasets |
21:00:04 | * | genpaku quit (Remote host closed the connection) |
21:00:44 | * | genpaku joined #nim |
21:28:12 | * | jmd_ joined #nim |
21:28:57 | * | jmdaemon quit (Ping timeout: 256 seconds) |
21:32:08 | FromDiscord | <mratsim> In reply to @enthus1ast "maybe there is open": Technically Dall-E is outdated: https://imagen.research.google/ |
21:34:43 | * | jmdaemon joined #nim |
21:35:45 | * | jmd_ quit (Ping timeout: 256 seconds) |
21:56:49 | FromDiscord | <dom96> In reply to @Isofruit "I like to believe": true |
21:57:06 | * | PMunch quit (Quit: leaving) |
22:00:32 | FromDiscord | <dom96> wow, I just did "A dnd like character portrait on a dark background" on DALL-E and got: https://media.discordapp.net/attachments/371759389889003532/1009582528170037301/unknown.png |
22:00:40 | FromDiscord | <dom96> That's the best DALL-E faces I've seen ever |
22:02:03 | FromDiscord | <dom96> Let's just change forum avatars to these :D |
22:05:07 | FromDiscord | <dom96> that would be a fun april fools |
22:12:09 | NimEventer | New thread by Jasonfi: Can't isolate an object with a DateTime field, see https://forum.nim-lang.org/t/9381 |
22:25:33 | FromDiscord | <!Patitotective> In reply to @dom96 "wow, I just did": can you do "Nimlang logo" lol |
22:26:23 | FromDiscord | <!&luke> In reply to @Isofruit "~~Make DallE open source": Yes |
22:26:34 | FromDiscord | <dom96> https://media.discordapp.net/attachments/371759389889003532/1009589076069982219/unknown.png |
22:27:08 | * | jmdaemon quit (Quit: ZNC 1.8.2 - https://znc.in) |
22:27:34 | FromDiscord | <!Patitotective> last one is amazon |
22:27:41 | * | jmdaemon joined #nim |
22:28:28 | FromDiscord | <dom96> https://media.discordapp.net/attachments/371759389889003532/1009589554359050281/unknown.png |
22:28:31 | FromDiscord | <!Patitotective> it would be better to choose the nim animal first (if the logo is going to be an animal)↵something like "cute lion drawing" |
22:28:33 | FromDiscord | <dom96> not bad |
22:28:40 | FromDiscord | <!Patitotective> In reply to @dom96 "": exactly lol |
22:28:43 | FromDiscord | <!Patitotective> looks nice |
22:29:11 | FromDiscord | <dom96> A while ago we landed on honey badger as a mascot |
22:29:38 | FromDiscord | <dom96> though lion probably fits better since it's the king of the jungle |
22:30:37 | FromDiscord | <dom96> maybe too cute https://media.discordapp.net/attachments/371759389889003532/1009590077497806971/unknown.png |
22:31:11 | FromDiscord | <dom96> now it's too scary lol https://media.discordapp.net/attachments/371759389889003532/1009590239074979901/unknown.png |
22:32:21 | FromDiscord | <dom96> The first one is pretty good https://media.discordapp.net/attachments/371759389889003532/1009590535834583090/unknown.png |
22:33:56 | FromDiscord | <dom96> I'd love to hire an actual artist to make something like this for Nim |
22:37:39 | FromDiscord | <Elegantbeef> Clearly we need "Lion with crown in the style of looney tunes" |
22:41:16 | FromDiscord | <dom96> Unfortunately DALL-E just turns that into clip-art looking things |
22:41:21 | * | jmd_ joined #nim |
22:42:03 | * | jmdaemon quit (Ping timeout: 256 seconds) |
22:50:58 | NimEventer | New Nimble package! bu - B)asic|But-For U)tility Code/Programs (Usually Nim & With Unix/POSIX/Linux Context), see https://github.com/c-blake/bu |
23:33:50 | FromDiscord | <voidwalker> https://nimble.directory/pkg/yukiko - git returns 404 :\ what's up with this package? |
23:50:37 | * | wallabra quit (Ping timeout: 256 seconds) |
23:53:36 | FromDiscord | <Bubblie> How would you do a const pointer in nim |