00:48:43 | FromDiscord | <Void> sent a code paste, see https://play.nim-lang.org/#ix=4oWc |
00:48:55 | FromDiscord | <Void> (edit) "https://play.nim-lang.org/#ix=4oWc" => "https://play.nim-lang.org/#ix=4oWd" |
00:57:35 | FromDiscord | <sOkam!> In reply to @Void "I was watching a": araq is beyond smart. really hard to grasp what he does and how he explain things, unless you are at his level or similar enough |
01:02:09 | FromDiscord | <sOkam!> sent a long message, see http://ix.io/4oWf |
01:03:17 | FromDiscord | <sOkam!> filtering is done with the foldl template, which seems to use another lambda with iterators↵its super complex code, so probably someone else knows how to explain it better. but thats the simplest overview |
01:04:07 | FromDiscord | <Void> This guy must be a legit genius. Such a cool guy. |
01:04:17 | FromDiscord | <sOkam!> he is legit genius, definitely |
01:04:34 | FromDiscord | <Void> I mean he did create a programming language after all |
01:05:13 | FromDiscord | <sOkam!> he created a -good- language. creating one is actually not too hard, surprisingly. but a good one, and as fully featured as nim... that's something else |
01:05:43 | FromDiscord | <sOkam!> (edit) "language. creating one" => "language↵creating a lang" | "surprisingly. but" => "surprisingly↵but" |
01:07:14 | FromDiscord | <Void> can we ping someone whos an expert? |
01:07:31 | FromDiscord | <Void> now im really curious |
01:12:46 | FromDiscord | <auxym> wait what? The code is pretty straightforward. foldl/filter/map are defined and documented in `std/sequtils` |
01:13:55 | FromDiscord | <auxym> oh but those use vargargs... still, same principle. They are fundamental building blocks in functional languages |
01:14:19 | FromDiscord | <Void> In reply to @auxym "oh but those use": okay but what does it do |
01:16:50 | FromDiscord | <Void> I new to nim so cut me some slack |
01:16:50 | FromDiscord | <auxym> take numbers 1, 2, 3, 4, 5 -> square them -> keep only the even numbers -> (I'm not sure what take is doing here, is that implementation correct?) |
01:17:32 | FromDiscord | <Void> In reply to @auxym "take numbers 1, 2,": I dont know araq wrote it. It was from a tutorial like video he was doing |
01:17:37 | FromDiscord | <auxym> `proc(x) = len(xs) - n < len(xs)` this looks like a bug, the `x` argument is never used, plus it would always return `true` |
01:17:55 | FromDiscord | <Void> In reply to @auxym "`proc(x) = len(xs) -": why would araq write a bug lol what |
01:18:01 | FromDiscord | <sOkam!> 🙈 |
01:18:17 | FromDiscord | <auxym> well can you link the video with timestamp? |
01:18:31 | FromDiscord | <auxym> maybe it's a transcriber error 🙂 |
01:20:16 | FromDiscord | <Void> how do I find live streams |
01:24:50 | FromDiscord | <mrgaturus> type inference is kinda annoying https://media.discordapp.net/attachments/371759389889003532/1078125245262725180/image.png |
01:26:02 | FromDiscord | <mrgaturus> if i put .cint to every tuple attribute the error is gone |
01:27:51 | FromDiscord | <Diogenes of Toronto> You could create a cint vararg function that allows you to process any tuple and then you could just call it on the return |
01:28:33 | FromDiscord | <Diogenes of Toronto> If you don't have type inference you are forced to declare all your types so I prefer type inference |
01:30:06 | FromDiscord | <Elegantbeef> I do not even know if i'd call this a type inference related issue 😄 |
01:30:12 | FromDiscord | <mrgaturus> well, i did a workaround https://media.discordapp.net/attachments/371759389889003532/1078126596365488178/image.png |
01:30:34 | FromDiscord | <Elegantbeef> Like yes it could be inferred to the result |
01:31:01 | FromDiscord | <Elegantbeef> But should a `(int, int, int, int)` implicitly convert to `(cint, cint, cint, cint)` |
01:31:15 | FromDiscord | <mrgaturus> type inference only benefits int |
01:33:06 | FromDiscord | <mrgaturus> the same thing goes to an array of constants, but at least you need explicit convert one item to infer other items |
01:33:18 | FromDiscord | <mrgaturus> (edit) "one" => "first" |
01:33:33 | FromDiscord | <Elegantbeef> I'd argue that using a cint tuple is a bit odd |
01:34:58 | FromDiscord | <mrgaturus> i'm using opengl |
01:36:01 | FromDiscord | <Elegantbeef> Yea but why is a tuple better than array or an object here |
01:36:08 | FromDiscord | <Elegantbeef> It's not like you're calling something that uses it |
01:40:02 | FromDiscord | <Elegantbeef> Just disregard me though I'm pointlessly talking here 😄 |
01:40:42 | FromDiscord | <Hourglass [She/Her]> Zippy has different compression levels but I have no clue why there's negatives here, couldn't they of just made it start from 0? https://media.discordapp.net/attachments/371759389889003532/1078129238139486288/Screenshot_2023-02-23-01-35-26-511_com.android.chrome.jpg |
01:42:14 | FromDiscord | <mrgaturus> In reply to @Elegantbeef "It's not like you're": that is used only here and other map proc, so i don't need it public https://media.discordapp.net/attachments/371759389889003532/1078129624694923376/image.png |
01:43:56 | FromDiscord | <Elegantbeef> Yea i more mean it's used internally and equally as fine to be an array or an object |
01:44:13 | FromDiscord | <Elegantbeef> I do not believe in using a tuple as anything but a return type so disregard me like i said |
01:46:53 | FromDiscord | <Elegantbeef> cint is just a int32 so you could do `10i32` instead afaik |
01:48:24 | FromDiscord | <mrgaturus> is not an error using object type https://media.discordapp.net/attachments/371759389889003532/1078131180043517972/image.png |
01:48:40 | FromDiscord | <Elegantbeef> Of course not cause it is locally inferred |
01:48:48 | FromDiscord | <Elegantbeef> Return type inference means it goes "this is a int tuple" |
01:49:49 | FromDiscord | <Elegantbeef> It sees `(int, int, int, int)` and then tries to convert it to `(cint, cint, cint, cint)` which is a static error |
01:51:42 | FromDiscord | <Elegantbeef> Object construction goes "Hey this has to fit a cint, so see if it's valid for that" |
01:52:07 | FromDiscord | <mrgaturus> even using (x: 0, y: 0, w: 256, h: 256) on that tuple is still a (int, int, int, int) and not (cint, cint, cint, cint) |
01:53:08 | FromDiscord | <Elegantbeef> What? |
01:53:17 | FromDiscord | <Elegantbeef> Of course it is cause it doesnt have the type information |
01:54:15 | FromDiscord | <Elegantbeef> This works fine |
01:54:17 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=4oWq |
02:05:51 | * | estiquelapice_ quit (Ping timeout: 248 seconds) |
02:06:34 | * | estiquelapice joined #nim |
02:11:13 | FromDiscord | <Dudugz> In reply to @Hourglass, When the Hour Strikes "Zippy has different compression": It's a zlib thing, default compression is -1 |
02:11:47 | FromDiscord | <Dudugz> Interestingly I also used zlib today using zippy to compress some data with header |
02:11:52 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "It's a zlib thing,": Fair, it just threw me off |
02:12:07 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "Interestingly I also used": I'm using it to handle compression in the Minecraft protocol aha |
02:12:38 | FromDiscord | <Dudugz> I'm using it to compress bytes of a captcha system that I use here |
02:13:42 | FromDiscord | <Dudugz> I would even use the standard zlib but I would end up having to install zip just to get the dll |
02:15:02 | FromDiscord | <Hourglass [She/Her]> Yeah that's fair |
02:18:00 | FromDiscord | <auxym> In reply to @Dudugz "Interestingly I also used": isn't zippy pure nim? ie not relying on zlib |
02:19:04 | FromDiscord | <Dudugz> Yes that's why I used zippy, it offers zlib compression, if I used std/zip for compression I would have to install zip on the pc to get the zip.dll file |
02:22:17 | FromDiscord | <auxym> oh |
02:22:51 | FromDiscord | <Hourglass [She/Her]> Ugh, the packets reuse IDs quite a bit, like 3 different formats share the same ID |
02:23:07 | FromDiscord | <Dudugz> It was pure luck, if I hadn't found zippy I would have converted the module I have to Lua, I have a LibDeflate made in pure Lua |
02:23:47 | FromDiscord | <Hourglass [She/Her]> I don't know how to store this in a way that makes serialisation and deserialisation easy |
02:23:50 | FromDiscord | <Dudugz> In reply to @Hourglass, When the Hour Strikes "Ugh, the packets reuse": Hm, is this bad in your case? Generally I like to create servers with simple and direct packets |
02:25:35 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "Hm, is this bad": https://wiki.vg/Protocol#:~:text=the%20first%20packet.-,Serverbound,This%20causes,-the%20server%20to↵ https://wiki.vg/Protocol#:~:text=follows%20this%20packet.-,Status,Status%20Response,-Packet%20ID↵↵https://wiki.vg/Protocol#:~:text=the%20handshake%2C%20before,no%20fields |
02:25:54 | FromDiscord | <Hourglass [She/Her]> Means I can't use an enum and have clearcut procs for handling each type of packet |
02:26:24 | FromDiscord | <Dudugz> Ugh |
02:26:49 | FromDiscord | <Dudugz> I hate Java, just remembering the days trying to create mods for mc... |
02:27:06 | FromDiscord | <Hourglass [She/Her]> Part of the reason I wanted to work on this xD |
02:27:08 | FromDiscord | <Dudugz> But yeah, I understand your pain regarding packets |
02:27:27 | FromDiscord | <Hourglass [She/Her]> Would pave the way to some fun ideas i could tinker with in a language I'm comfortable with |
02:27:41 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "But yeah, I understand": Yeahhh, not sure how I'm supposed to parse this cleanly really |
02:28:48 | FromDiscord | <Hourglass [She/Her]> I could have a proc for each ID specifically and then use the context to figure stuff out? |
02:29:58 | FromDiscord | <Hourglass [She/Her]> Still annoying but somewhat manageable |
02:30:58 | FromDiscord | <Dudugz> sent a code paste, see https://play.nim-lang.org/#ix=4oWt |
02:31:02 | FromDiscord | <Hourglass [She/Her]> Ngl, I'm not sure how I'm gonna handle multiple clients at once without causing stutters/lag, I am using the async module and it is an asynchronous environment but it'll be pain |
02:31:36 | FromDiscord | <Hourglass [She/Her]> Would be nice if MC was that clear cut |
02:31:45 | FromDiscord | <Dudugz> Yea |
02:32:09 | FromDiscord | <Dudugz> Here I get the category and the sub category so it's easy to work with related things |
02:33:11 | FromDiscord | <Hourglass [She/Her]> That's fair |
02:33:19 | FromDiscord | <Hourglass [She/Her]> Welp, time to suffer... Yay. |
02:33:30 | FromDiscord | <Dudugz> good luck lol |
02:34:20 | FromDiscord | <Hourglass [She/Her]> Maybe I should take a break from this, I've made a lot of progress and doing it on my phone isn't exactly fun :p |
02:34:34 | FromDiscord | <Hourglass [She/Her]> No access to my pc until the weekend, probably after thoug |
02:34:37 | FromDiscord | <Hourglass [She/Her]> Though |
02:36:22 | FromDiscord | <Dudugz> :/ That's sad, I also don't like it when I travel and I can't program and to make matters worse I discover the solution to something in the middle of the trip. I'm dying to go home. |
02:53:53 | FromDiscord | <Hourglass [She/Her]> Yepp, it sucks but it is what it is really |
03:38:10 | * | arkurious quit (Quit: Leaving) |
04:28:27 | * | sagax quit (Excess Flood) |
04:35:59 | FromDiscord | <ringabout> After const evaluation, the evaluated expression loses its type or its conversion relation. Is it reasonable to reconstruct the conversion relation, especially distinct relations? https://media.discordapp.net/attachments/371759389889003532/1078173349940830218/image.png |
04:36:17 | FromDiscord | <ringabout> https://media.discordapp.net/attachments/371759389889003532/1078173427585781770/image.png |
04:37:43 | FromDiscord | <Arathanis> are there docs for nimble tasks? |
04:37:56 | FromDiscord | <Elegantbeef> It also loses it's static-ness @ringabout |
04:39:02 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=4oWF |
04:44:44 | FromDiscord | <amadan> In reply to @Arathanis "are there docs for": Theres some here https://nim-lang.org/docs/nimscript.html#task.t%2Cuntyped%2Cstring%2Cuntyped |
04:45:39 | FromDiscord | <Arathanis> appreciate it |
04:46:15 | FromDiscord | <Arathanis> im hoping somewhere out there exists exhaustive docs about it |
04:49:19 | FromDiscord | <ringabout> In reply to @Elegantbeef "It also loses it's": I agree. |
04:49:42 | FromDiscord | <ajusa> Nimscripter is pretty neat and very useful |
04:50:40 | FromDiscord | <ajusa> Using it to basically hot reload templating languages in Nim |
04:57:29 | * | azimut quit (Ping timeout: 255 seconds) |
05:04:11 | * | xet7 quit (Ping timeout: 268 seconds) |
05:06:23 | FromDiscord | <mrgaturus> sent a code paste, see https://play.nim-lang.org/#ix=4oWJ |
05:06:43 | FromDiscord | <Elegantbeef> Like i said this is sem'd as a `(int, int)` |
05:06:57 | FromDiscord | <Elegantbeef> it then attempts to convert it to a `(cint, cint)` which is an error |
05:07:43 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=4oWL |
05:08:18 | FromDiscord | <huantian> Type inference when 😛 |
05:08:22 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=4oWM |
05:10:50 | FromDiscord | <Haze System (they/them)> is there no good way to debug nim code in VSCode? |
05:11:28 | FromDiscord | <Elegantbeef> https://github.com/saem/vscode-nim#debugging |
05:12:02 | FromDiscord | <huantian> Well that’s a passable way to debug code |
05:12:06 | FromDiscord | <huantian> Not a good way |
05:12:18 | FromDiscord | <Elegantbeef> the good way is echo 😛 |
05:12:28 | FromDiscord | <huantian> Or even better print |
05:13:29 | FromDiscord | <Haze System (they/them)> In reply to @huantian "Well that’s a passable": what are the problems with it? |
05:17:25 | * | xet7 joined #nim |
05:26:56 | FromDiscord | <Haze System (they/them)> sent a code paste, see https://play.nim-lang.org/#ix=4oWO |
05:32:40 | FromDiscord | <ajusa> sent a code paste, see https://play.nim-lang.org/#ix=4oWS |
05:32:54 | FromDiscord | <ajusa> ` Error: 'export' is only allowed at top level` |
05:33:10 | FromDiscord | <huantian> You’d have to call the template at the top level |
05:33:13 | FromDiscord | <huantian> Like it says |
05:33:20 | FromDiscord | <huantian> Since templates are basically copy pasting code |
05:33:45 | FromDiscord | <ajusa> 🤦♂️ |
05:34:02 | FromDiscord | <ajusa> I was running it in a unit test, which creates a new block by default. thanks! |
05:36:04 | * | Guest84 joined #nim |
05:39:40 | * | Guest84 quit (Client Quit) |
05:45:47 | * | cnx joined #nim |
05:51:57 | * | ltriant quit (Ping timeout: 255 seconds) |
05:55:23 | FromDiscord | <Arathanis> when using testament is there a way to name the tests? |
07:01:22 | * | kenran joined #nim |
07:01:27 | * | kenran quit (Remote host closed the connection) |
07:06:00 | * | advesperacit joined #nim |
07:09:13 | NimEventer | New thread by takekikuchi: How to destroy the global dispatcher(gDisp) in asyncdispatch on RTOS ?, see https://forum.nim-lang.org/t/9930 |
07:56:19 | FromDiscord | <ringabout> In reply to @Elegantbeef "It also loses it's": It seems that consts do what I thought of. https://media.discordapp.net/attachments/371759389889003532/1078223768775831573/image.png |
08:00:13 | * | PMunch joined #nim |
08:10:14 | * | Notxor joined #nim |
08:43:22 | FromDiscord | <Coachonko> In reply to @Hourglass, When the Hour Strikes "Examples?": `:` for types is fine, but control flow also uses it |
08:47:18 | FromDiscord | <Elegantbeef> Oh noes not control flow! |
08:49:32 | FromDiscord | <Coachonko> Bruh |
08:57:04 | FromDiscord | <Phil> In reply to @Elegantbeef "Oh noes not control": Control flow is overrated, we should all be coding without control flow |
08:57:11 | FromDiscord | <Phil> !1111 |
08:57:21 | FromDiscord | <Elegantbeef> Trye |
08:57:22 | FromDiscord | <Elegantbeef> True even |
09:01:18 | FromDiscord | <Phil> I wonder if there's a language that heavily focusses on functional with obvious control flow |
09:01:46 | FromDiscord | <Elegantbeef> Those are dichotomies |
09:02:11 | FromDiscord | <SpiderDave> is there an easy way to add a program icon when making an .exe in nim? |
09:04:19 | FromDiscord | <Elegantbeef> There isnt a "easy" way but you just do the same thing you do for C/C++ |
09:07:38 | FromDiscord | <Phil> In reply to @Elegantbeef "Those are dichotomies": I have no experience with languages that focus on functional, so I wouldn't know, but is functional detrimental to control flow? |
09:08:05 | FromDiscord | <Phil> I know OO can be due to control flow obfuscation that you get via inheritance |
09:08:30 | FromDiscord | <Elegantbeef> Functional is all about writing chaining logic that doesnt use explicit flow control |
09:09:05 | PMunch | Seems like you "just" need to set some fields in a structure: https://learn.microsoft.com/en-us/previous-versions/ms997538(v=msdn.10)?redirectedfrom=MSDN |
09:15:08 | FromDiscord | <Phil> In reply to @Elegantbeef "Functional is all about": Hmm I don't quite see how yet, I'll keep that in mind for when I one day play around with a functional language |
09:22:33 | FromDiscord | <Coachonko> sent a code paste, see https://play.nim-lang.org/#ix=4oXt |
09:22:43 | FromDiscord | <Coachonko> Guessing |
09:35:18 | FromDiscord | <Phil> That... 😖 |
09:48:35 | * | ltriant joined #nim |
09:49:47 | FromDiscord | <Coachonko> It results in cleaner and streamlined code but you must read every implementation |
09:58:43 | FromDiscord | <Phil> I feel like the intent is less clear |
09:59:58 | FromDiscord | <Phil> The intent of `doThis(isInStateX())` looks like doThis should always run, but needs the output from isInStateX to decide what to do next.↵It does not convey "This should only run if thing isInStateX" |
10:01:57 | FromDiscord | <I have 50GB of nothing on my PC> funny, my process executing a command over ssh dies to pkill unless I use poParentStreams |
10:02:38 | FromDiscord | <I have 50GB of nothing on my PC> In reply to @Isofruit "The intent of `doThis(isInStateX())`": check a == b, "foo" is convenient though |
10:08:47 | FromDiscord | <I have 50GB of nothing on my PC> is there an obvious way to get output into a string when using poParentStreams? |
10:10:18 | FromDiscord | <Coachonko> In reply to @Isofruit "I feel like the": I think once you get used to it, it is clear but not from the top level |
10:10:41 | FromDiscord | <Coachonko> As long as you understand every function being called it is very clear |
10:12:04 | FromDiscord | <Phil> That really does sound like you must've coded functionally before.↵Because that last line paraphrased is basically "If you understand your code, then your code is very clear!" 😛 |
10:12:11 | FromDiscord | <Phil> (edit) "before.↵Because" => "before to "get" it.↵Because" |
10:12:17 | FromDiscord | <Coachonko> Yup |
10:13:29 | FromDiscord | <Coachonko> It sounds like that but the ide shows the return type of every function call on hover, generally. So even if you don't fully understand the implementation, but the function called is properly named, the tooling gives you the return type |
10:13:52 | FromDiscord | <Coachonko> And good practice with comments |
10:14:19 | FromDiscord | <Coachonko> Lot of assumptions yes |
10:15:05 | FromDiscord | <Phil> I mean, ideally I always want guarantees.↵I want "wrong" usages of a function to result in compiler errors.↵I want names to promise me what it does so I don't have to read and understand it, that's why I'm capsuling logic in functions to begin with.↵But that's with my current mindset, so eh |
10:15:23 | FromDiscord | <Coachonko> I dropped out of university when professor of functional programming decided not to do lectures and just give us google links while complaining about covid shutting down labs |
10:15:41 | FromDiscord | <Coachonko> So I am not that confident in my understanding |
10:22:02 | FromDiscord | <I have 50GB of nothing on my PC> ahem, should I use selectors to read the main process's output? am I stupid? |
11:15:31 | FromDiscord | <I have 50GB of nothing on my PC> did anyone have problems with their std/osproc processes getting instakilled by os |
11:55:17 | FromDiscord | <enthus1ast> Check the path to the process↵(@I have 50GB of nothing on my PC) |
12:44:09 | * | jmdaemon quit (Ping timeout: 255 seconds) |
12:45:36 | * | azimut joined #nim |
13:15:04 | FromDiscord | <jtv> In reply to @Haze System "getting this error... ": You can do generic debugger installs and get gdb or lldb working. I have a friend using VSCode w/ a working debugger, I can figure out which plugin he's using if needed. |
13:26:04 | * | pbsds quit (Ping timeout: 246 seconds) |
13:34:42 | * | onetwo quit (Changing host) |
13:34:42 | * | onetwo joined #nim |
13:37:00 | * | Notxor quit (Remote host closed the connection) |
13:38:15 | FromDiscord | <Hourglass [She/Her]> Honestly not sure how I'm supposed to structure the handshake with the client |
13:38:26 | FromDiscord | <Hourglass [She/Her]> I've probably hit a roadblock tbh |
13:38:34 | FromDiscord | <Hourglass [She/Her]> Need a computer to actually do stuff now |
13:39:16 | FromDiscord | <enthus1ast> minecraft server? |
13:43:44 | FromDiscord | <Hourglass [She/Her]> In reply to @enthus1ast "minecraft server?": Yep, writing my own implementation |
13:45:48 | FromDiscord | <enthus1ast> whats the issue? |
13:47:08 | FromDiscord | <Hourglass [She/Her]> I'm just unsure how to structure the handshake with the client tbh |
13:48:03 | FromDiscord | <Hourglass [She/Her]> Because I need to obviously make it follow it all in sequence |
13:48:04 | FromDiscord | <enthus1ast> in such way the client can understand it \:) |
13:48:18 | FromDiscord | <enthus1ast> do you use async or sync network? |
13:48:37 | FromDiscord | <Hourglass [She/Her]> I'm using asyncnet aha |
13:49:12 | FromDiscord | <enthus1ast> then you send stuff the client expects, then read stuff the client sends,↵awaiting everything |
13:49:47 | FromDiscord | <Nerve> Using `var` for a proc parameter essentially means passing a mutable reference to a stack value, is that right? And are non-`ref` `object` types stack-allocated? |
13:49:47 | FromDiscord | <enthus1ast> on connect you spawn a clientHandler proc with async check |
13:49:57 | FromDiscord | <enthus1ast> asyncCheck |
13:50:06 | FromDiscord | <enthus1ast> in the handler proc you speak the protocol |
13:50:40 | FromDiscord | <Hourglass [She/Her]> Hm alright then |
13:51:06 | FromDiscord | <enthus1ast> i know nothing about the minecreaft client protocol so i cannot really help here |
13:51:15 | FromDiscord | <Hourglass [She/Her]> I'm hoping that `AsyncSocket`s are ref objects :p |
13:51:29 | FromDiscord | <Hourglass [She/Her]> Since I'm passing them between a shared library and the application |
13:51:40 | FromDiscord | <Hourglass [She/Her]> I think they are, probably should double check the docs |
13:51:42 | FromDiscord | <Nerve> (edit) "Using" => "Is it right that using" | "value, is that right?" => "value?" |
13:52:15 | FromDiscord | <Dudugz> I think they're, on my server i passed AsyncSocket to another handle object and it worked without issue |
13:52:37 | FromDiscord | <Hourglass [She/Her]> Sweet |
13:54:26 | FromDiscord | <enthus1ast> the reason i mentioned that you start with a proxy server, is that you can work on parsing the protocol, with a simple network server setup |
13:55:18 | FromDiscord | <enthus1ast> then on (sucessfull) connect, you store the clients in a table |
13:56:29 | FromDiscord | <enthus1ast> sometimes, i wrote a hash proc that could hash AsyncSocket, so the socket is was the key, sometimes i used an incrementing number, maybe the minecraft protocol does have a notion about a "client id" that you could use for the key |
13:56:52 | FromDiscord | <Rika> In reply to @Nerve "Is it right that": if the value you're passing is already a stack value, yeah↵non-`ref object` types are stack allocated if they are not contained within a ref(-style) type |
13:58:45 | FromDiscord | <Hourglass [She/Her]> In reply to @enthus1ast "sometimes, i wrote a": My idea was to just check the initial handshake packet and then pass it off to the plugins for each version, and I have a connection object to wrap the socket |
13:59:02 | FromDiscord | <enthus1ast> but you also need to store all the clients |
13:59:14 | FromDiscord | <Hourglass [She/Her]> Yep I already do that with a list |
13:59:15 | FromDiscord | <enthus1ast> since you must later fan out stuff to all clients |
13:59:53 | FromDiscord | <demotomohiro> @Nerve If I understand correctly, `var` proc parameter is a pointer that can points to stack, heap or static storage.↵About how non-ref object is allocated: https://internet-of-tomohiro.netlify.app/nim/faq.en.html#type-when-to-use-ref-object-vs-plain-object-qmark |
13:59:59 | FromDiscord | <enthus1ast> ok a list, how to you handle disconnects? |
14:00:12 | FromDiscord | <enthus1ast> so, do the clients have a unique id? |
14:00:34 | FromDiscord | <Hourglass [She/Her]> The clients will have UUIDs yeah, that's what I'm gonna use |
14:07:03 | FromDiscord | <Nerve> In reply to @demotomohiro "<@143177514385145856> If I understand": Thanks, I'll read this |
14:08:19 | FromDiscord | <Dudugz> In reply to @enthus1ast "ok a list, how": In my case I use socket.isClosed() to check and the response from recv() since recv returns empty string when socket is disconnected |
14:19:11 | FromDiscord | <Dudugz> sent a code paste, see https://play.nim-lang.org/#ix=4oYD |
14:32:07 | FromDiscord | <Gumbercules> In reply to @Dudugz "What is the packet": huh? isn't that a question best posed for the Minecraft discord / community / whatever? |
14:32:20 | FromDiscord | <Gumbercules> Not sure anyone here is going to know about Minecraft |
14:32:28 | FromDiscord | <Gumbercules> (edit) "Minecraft" => "Minecraft's protocol" |
14:32:38 | * | pbsds joined #nim |
14:32:48 | FromDiscord | <Dudugz> actually I was asking Hourglass since she's dealing with it |
14:32:54 | FromDiscord | <Gumbercules> ah gotcha |
14:34:18 | FromDiscord | <Gumbercules> would be need to see more Nim related Minecraft stuff - might draw more interest to the language |
14:34:54 | FromDiscord | <enthus1ast> either look at a protocol documentation somewhere, or read the server code |
14:35:02 | FromDiscord | <enthus1ast> server / client code |
14:35:09 | FromDiscord | <enthus1ast> java is good to decompile |
14:35:22 | FromDiscord | <enthus1ast> you get quite good code out of a decompiler |
14:42:22 | NimEventer | New thread by yalexr: How do I declare a proc as returning a (JavaScript) Promise with no return value?, see https://forum.nim-lang.org/t/9931 |
14:44:52 | * | PMunch quit (Quit: Leaving) |
14:49:00 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "What is the packet": For the uncompressed format, it's: `Length` + `Packet ID` + `Data`↵For the compressed format, it's: `Compressed Length` + `Uncompressed Length` + `Packet ID` + `Data` |
14:49:17 | FromDiscord | <Hourglass [She/Her]> I'm using a stream to read and write data |
14:49:37 | FromDiscord | <Hourglass [She/Her]> In reply to @Gumbercules "would be need to": Yeah I'm attempting to make a somewhat modular server aha |
14:49:49 | FromDiscord | <Hourglass [She/Her]> In reply to @enthus1ast "either look at a": Wiki.vg is my saviour for this lol |
14:50:00 | FromDiscord | <Dudugz> Hmm mine is way more simple, ``TokenC`` + ``TokenCC`` + ``Dynamic Data`` |
14:50:25 | FromDiscord | <Hourglass [She/Her]> It's just Minecraft being a hell hole lol |
14:50:30 | FromDiscord | <Dudugz> Yea lol |
14:53:26 | FromDiscord | <Rika> what does tokenc and cc mean? |
14:59:20 | FromDiscord | <Hourglass [She/Her]> How am I supposed to listen to websockets for incoming packets? |
14:59:49 | FromDiscord | <Hourglass [She/Her]> Socket not websocket |
14:59:56 | FromDiscord | <Hourglass [She/Her]> I keep mixing it up out of habit |
15:00:41 | FromDiscord | <Dudugz> sent a long message, see https://paste.rs/rpv |
15:01:01 | FromDiscord | <Dudugz> In reply to @Hourglass, When the Hour Strikes "I keep mixing it": Your socket must have the parameter ``buffered=false`` and you can use ``socket.recv(length)`` |
15:01:04 | FromDiscord | <Rika> In reply to @Hourglass, When the Hour Strikes "How am I supposed": it depends whether you're using tcp or udp |
15:01:27 | FromDiscord | <Rika> i dont know which minecraft server uses |
15:03:37 | FromDiscord | <Hourglass [She/Her]> In reply to @Rika "it depends whether you're": Using TCP for Java edition via the asyncnet module, I'm not sure how I'm supposed to actually constantly listen to them |
15:03:54 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "Your socket must have": Buffering is pretty important though? Otherwise I'd miss packets |
15:04:24 | FromDiscord | <Hourglass [She/Her]> I think I have a rough idea on what to do |
15:04:37 | FromDiscord | <Hourglass [She/Her]> But I can't put it into words |
15:04:54 | FromDiscord | <Hourglass [She/Her]> Pseudocode time |
15:06:56 | FromDiscord | <Dudugz> Hm, idk i don't have packet loss without buffering |
15:07:17 | FromDiscord | <Dudugz> Do you mean to have multiple clients? I made a simple helper for my server |
15:09:05 | FromDiscord | <Hourglass [She/Her]> sent a code paste, see https://play.nim-lang.org/#ix=4oZ6 |
15:09:29 | FromDiscord | <Dudugz> Yea then u can use asyncCheck to call clientHandler |
15:09:45 | FromDiscord | <Hourglass [She/Her]> Alright, sweet! Thanks! |
15:10:15 | FromDiscord | <Dudugz> don't mind the horror :p it's my first time with Nim https://media.discordapp.net/attachments/371759389889003532/1078332969602781184/image.png https://media.discordapp.net/attachments/371759389889003532/1078332970059972618/image.png |
15:11:54 | FromDiscord | <Hourglass [She/Her]> Semicolons are optional and i think they're typically discouraged fyi xD |
15:12:04 | FromDiscord | <Hourglass [She/Her]> But i still think that code is alright really |
15:12:16 | FromDiscord | <Dudugz> Yea but I'm used to them |
15:12:29 | FromDiscord | <Hourglass [She/Her]> Yeah that's fair |
15:12:59 | FromDiscord | <Dudugz> I programmed a lot of C and JavaScript so I kind of got used to it, and I think it's better to discern where an expression starts and ends |
15:13:24 | FromDiscord | <Hourglass [She/Her]> That's fair enough, it does give some clarity to it to be fair |
15:14:13 | FromDiscord | <Dudugz> the self.servers thing is because i have multiple ports bound |
15:25:27 | FromDiscord | <Hourglass [She/Her]> That's fair, I only need one lol |
15:30:18 | FromDiscord | <Coachonko> In reply to @Hourglass, When the Hour Strikes "Yep, writing my own": Dayum that's a challenge |
16:00:50 | FromDiscord | <Hourglass [She/Her]> In reply to @Coachonko "Dayum that's a challenge": Yeah xD |
16:01:29 | FromDiscord | <Hourglass [She/Her]> I've done this in the past but the only thing that actually worked was the server list ping, I just wasn't knowledgeable enough to deal with it |
16:12:25 | * | arkurious joined #nim |
16:14:58 | NimEventer | New thread by yalexr: Casting AudioWorkletNode to GainNode, or alternatives, see https://forum.nim-lang.org/t/9932 |
16:21:07 | FromDiscord | <Dudugz> In reply to @Hourglass, When the Hour Strikes "I've done this in": I would honestly give up at the first moment lol, I find the Minecraft server very complicated |
16:21:53 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "I would honestly give": It's complicated but imagine the possibilities :) |
16:22:01 | FromDiscord | <Hourglass [She/Her]> ...not that many honestly, but still xD |
16:23:30 | FromDiscord | <Hourglass [She/Her]> Would be fun to work on implementing multiple ways to make plugins |
16:27:04 | FromDiscord | <eyes> is it possible for a type to have a cleanup method that it runs whenever it falls out of scope |
16:27:18 | FromDiscord | <eyes> (edit) "is it possible for a type to have a cleanup method that it runs whenever ... it" added "instances of" |
16:27:57 | FromDiscord | <enthus1ast> `=destroy` |
16:27:58 | FromDiscord | <enthus1ast> https://nim-lang.org/docs/destructors.html |
16:28:04 | FromDiscord | <eyes> ah destructor |
16:28:10 | FromDiscord | <eyes> yeah sorry i fogor the word |
16:28:18 | FromDiscord | <eyes> thank you |
16:34:45 | FromDiscord | <Dudugz> In reply to @Hourglass, When the Hour Strikes "Would be fun to": Yea, or implementing support for fabric/forge mods |
16:35:32 | FromDiscord | <Dudugz> In reply to @enthus1ast "`=destroy`": I would eventually need this so thanks. Does this also work in case of outputs like CTRL+C? |
16:35:41 | FromDiscord | <Raynei486> sent a code paste, see https://play.nim-lang.org/#ix=4oZA |
16:35:44 | FromDiscord | <Dudugz> (edit) "outputs" => "process exit" |
16:36:40 | FromDiscord | <enthus1ast> this idk, but you'll see different timings with arc/orc or refc↵(@Dudugz) |
16:36:54 | FromDiscord | <Dudugz> Sure |
16:37:28 | FromDiscord | <enthus1ast> arc/orc call the destructur quite soon (imho as soon as it gets out of scope) but refc will call it when it collects |
16:39:04 | FromDiscord | <Raynei486> In reply to @Raynei486 "how do you "construct": nvm you must name the fields like `foo(x: 2, : 4)` |
16:39:13 | FromDiscord | <Raynei486> (edit) ":" => "y:" |
16:39:29 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "Yea, or implementing support": That's completely possible too! Though Forge would be much more annoying |
16:40:19 | FromDiscord | <Hourglass [She/Her]> Also Quilt > Fabric any day aha |
16:40:30 | FromDiscord | <Dudugz> It's because I don't want to overload the database so when a state updates the database will only be updated in cases of extreme need or when the connection closes. In case the process is closed then the states must be updated before the process ends. |
16:40:53 | FromDiscord | <Hourglass [She/Her]> (Quilt's community is just much more friendly, and since most mods don't touch Fabric loader internals, which you shouldn't be doing anyway, nearly all mods work) |
16:41:05 | FromDiscord | <Dudugz> Yea |
16:41:10 | FromDiscord | <Dudugz> I agree |
16:41:53 | FromDiscord | <Dudugz> Honestly they should make a universal mod loader, it would be much better, there are fabric mods that I want to test together with forge mods but it's impossible :/ |
16:41:59 | FromDiscord | <Hourglass [She/Her]> I really want to work on my Nim JVM compiler again but I have no energy for it rip |
16:42:48 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "Honestly they should make": PatchworkMC will be worked on for Forge mods on Quilt, previously they used Fabric but, Quilt is adding 'loader plugins' which would allow Forge mods to be loaded 'natively' |
16:43:05 | FromDiscord | <Dudugz> Hmm that's interesting |
16:43:11 | FromDiscord | <Hourglass [She/Her]> So development halted in favour of waiting for Quilt loader plugins to reach maturity |
16:43:45 | FromDiscord | <Hourglass [She/Her]> Not maturity, usability? |
16:43:48 | FromDiscord | <Hourglass [She/Her]> Not sure about the word |
16:43:56 | FromDiscord | <Dudugz> The only mc mod I find interesting at the moment is the Wizardry Mod (not electrobobs) |
16:44:14 | FromDiscord | <Dudugz> You mean until the plugin loader is stable? |
16:44:19 | FromDiscord | <Hourglass [She/Her]> Never used it before aha, Create is cool tho |
16:44:27 | FromDiscord | <Hourglass [She/Her]> In reply to @Dudugz "You mean until the": The loader plugin loader yeah |
16:44:55 | FromDiscord | <Hourglass [She/Her]> Mods can be loaded already and have been for a while now, they're still improving it too which is nice |
16:45:59 | * | Guest56 joined #nim |
16:51:15 | * | Guest71 joined #nim |
16:51:48 | * | Guest71 quit (Client Quit) |
16:52:07 | * | Guest56 quit (Quit: Client closed) |
17:08:42 | FromDiscord | <I have 50GB of nothing on my PC> me when i start thinking another niche language is better https://media.discordapp.net/attachments/371759389889003532/1078362778517131374/image.png |
17:43:05 | FromDiscord | <Haze System (they/them)> In reply to @jtv "You can do ": what do you mean "generic debugger installs"? ye if you could ask how he did it that would be helpful :) i can live without it but having a visual debugger is handy |
17:45:34 | FromDiscord | <enthus1ast> please, does someone has a clue how to use the devel nimble develop? |
17:45:57 | FromDiscord | <enthus1ast> that it just uses my local folder? |
17:46:02 | FromDiscord | <enthus1ast> this is annoying af |
17:47:33 | FromDiscord | <enthus1ast> sent a long message, see http://ix.io/4p07 |
17:47:39 | FromDiscord | <enthus1ast> but this is completely useless |
18:10:39 | FromDiscord | <eyes> wahooo |
18:10:46 | NimEventer | New thread by enthus1ast: How to use the new nimble develop?, see https://forum.nim-lang.org/t/9933 |
18:11:58 | FromDiscord | <eyes> In reply to @enthus1ast "`=destroy`": sorry, I know youre literally asking another question rn, but it seems that with ``orc`` (use by my nim version) destructors are already added, so I get an error: ``cannot bind another '=destroy'`` |
18:12:08 | FromDiscord | <eyes> i can switch to refc |
18:12:27 | FromDiscord | <eyes> but it seems dumb that i simply cannot assign destructors when using orc |
18:12:28 | FromDiscord | <enthus1ast> this means |
18:12:54 | FromDiscord | <enthus1ast> you must place the destructor before you use it in you code |
18:13:00 | FromDiscord | <eyes> ahh |
18:13:01 | FromDiscord | <enthus1ast> so on another line in your file |
18:27:27 | FromDiscord | <eyes> it works, thank you |
18:27:41 | FromDiscord | <eyes> sadly ``nimlsp`` still reads that error in as a diagnostic 😔 |
18:27:53 | FromDiscord | <eyes> all my files with destructors have nasty red x's on them |
18:28:02 | FromDiscord | <eyes> gonna have to look into lsp settings i guess |
18:30:16 | FromDiscord | <Dudugz> What are the recommended extensions to use Nim in VSCode? I installed 2 here but all I got was syntax highlighting and in a matter of errors sometimes the IDE alerts and sometimes I need to use nimble run for the IDE to alert |
18:31:04 | FromDiscord | <Dudugz> It also doesn't give information about procs imported from external packages. |
18:34:12 | FromDiscord | <Phil> nimsaem one↵The other one is not maintained |
18:34:26 | FromDiscord | <Dudugz> Sure i'll take a look |
18:55:47 | * | junaid_ joined #nim |
19:00:01 | FromDiscord | <Arathanis> nimsaem's works pretty well |
19:00:08 | FromDiscord | <Arathanis> it has quirks |
19:00:17 | FromDiscord | <Arathanis> autocomplete can be dicey at times |
19:00:27 | FromDiscord | <Arathanis> seems dicey more often than not tbh |
19:00:32 | FromDiscord | <Arathanis> but it works well enough |
19:01:27 | FromDiscord | <Phil> My understanding that regardless of what you're doing, nimsuggest is the end all be all behind it all |
19:01:31 | FromDiscord | <Phil> And nimsuggest is just slow |
19:01:37 | FromDiscord | <Phil> (edit) "And nimsuggest is just slow ... " added "(?)" |
19:01:56 | FromDiscord | <Arathanis> in my experience its not just slow, it straight up misses things often |
19:02:02 | FromDiscord | <Arathanis> especially stdlib imports |
19:02:04 | FromDiscord | <Phil> (edit) "My understanding ... that" added "is" |
19:02:18 | FromDiscord | <Arathanis> it hasn't suggested anything in the stdlib while importing for me in quite a while |
19:02:22 | FromDiscord | <Phil> Man, having auto-imports would be so sick |
19:02:48 | FromDiscord | <Arathanis> maybe that is the fault of nimsuggest, I do not know but it is annoying haha |
19:02:53 | FromDiscord | <Arathanis> In reply to @Isofruit "Man, having auto-imports would": agreed! |
19:22:08 | FromDiscord | <jtv> In reply to @Haze System "what do you mean": They said the "Native Debug" plugin by WebFreak. I'm sure you'll also need to compile nim with --debuger:native (e.g., switch("debugger", "native") in config.nims) |
19:29:57 | * | Notxor joined #nim |
19:44:18 | FromDiscord | <Haze System (they/them)> compile nim itself? eh sounds like too much work.. |
19:45:14 | FromDiscord | <Haze System (they/them)> (edit) "work.." => "work (with having no idea if itd even work since i tried native debug already and it didnt work)" |
19:54:10 | FromDiscord | <jtv> @Haze System (they/them) No, just any programs you build with it |
19:54:31 | FromDiscord | <Haze System (they/them)> ah okay |
19:55:02 | FromDiscord | <jtv> It's probably what you were not doing that was leading to it not working. Add that switch to your config.nims and test from the command line first 🙂 |
19:55:45 | * | azimut quit (Remote host closed the connection) |
19:56:34 | * | azimut joined #nim |
19:59:59 | FromDiscord | <Haze System (they/them)> sent a code paste, see https://play.nim-lang.org/#ix=4p0J |
20:00:37 | FromDiscord | <jtv> Yeah IDK, I'm on a mac and my friend is on a Linux machine. I did install VSCode to test it, and got it working w/ lldb. |
20:00:55 | FromDiscord | <Haze System (they/them)> bleh. fucking windows |
20:01:19 | FromDiscord | <jtv> Yeah, tho I'm sure someone here would be able to help on getting the native debugger working, that's just not me, sorry :/ |
20:01:43 | FromDiscord | <Haze System (they/them)> no worries, thanks for trying :) |
20:10:06 | FromDiscord | <Coachonko> Only reason I use windows lately is for adobe software and ableton live |
20:10:51 | FromDiscord | <Coachonko> But I realize my nim apps wouldn't run on windows |
20:13:17 | FromDiscord | <Haze System (they/them)> only reason i do is cuz i have a gaming laptop which is impossible to run Linux well on ;_; |
20:23:30 | * | jmdaemon joined #nim |
20:24:08 | FromDiscord | <4zv4l> is there a `freestanding` flag for the compiler ? |
20:40:09 | FromDiscord | <demotomohiro> What is `freestanding` flag? |
20:40:25 | FromDiscord | <4zv4l> `-os:standalone` was the one I was looking for |
20:41:34 | FromDiscord | <Elegantbeef> Think you want `--os:any` now |
20:41:44 | FromDiscord | <4zv4l> still trying to understand why those syscalls happen before the `write/exit` ones https://media.discordapp.net/attachments/371759389889003532/1078416389666246757/image.png |
20:43:16 | FromDiscord | <4zv4l> sent a code paste, see https://play.nim-lang.org/#ix=4p0T |
20:45:58 | FromDiscord | <Phil> And here I thought it meant compiling on a laptop, standing outside in the cold, leaning on nothing! |
20:46:06 | FromDiscord | <Phil> (edit) "it" => "freestanding" |
20:46:10 | FromDiscord | <4zv4l> nice one ! |
20:46:11 | FromDiscord | <4zv4l> xD |
20:59:36 | FromDiscord | <Elegantbeef> No freestanding is when you mount your PC using tensegrity |
21:01:09 | FromDiscord | <Phil> because you're feeling like you're in freefall doing so but in fact haven't moved at all? |
21:21:00 | FromDiscord | <auxym> `mount -t tensegrity` |
21:22:13 | FromDiscord | <m4ul3r> In reply to @Coachonko "Only reason I use": ableton the one reason i dual boot. i tried to use wine and it was too janky |
21:44:23 | * | junaid__ joined #nim |
21:45:21 | * | junaid___ joined #nim |
21:45:29 | * | junaid__ quit (Remote host closed the connection) |
21:45:29 | * | junaid___ quit (Remote host closed the connection) |
21:45:29 | * | junaid_ quit (Remote host closed the connection) |
21:47:17 | * | azimut quit (Ping timeout: 255 seconds) |
21:48:56 | * | azimut joined #nim |
21:59:26 | * | azimut quit (Ping timeout: 255 seconds) |
22:01:43 | * | azimut joined #nim |
22:07:20 | * | nyeaa49284230 quit (Quit: Ping timeout (120 seconds)) |
22:08:40 | * | nyeaa49284230 joined #nim |
22:15:58 | FromDiscord | <Hourglass [She/Her]> In reply to @Haze System "only reason i do": WSL should run well on it in that case? |
22:19:00 | * | azimut quit (Quit: ZNC - https://znc.in) |
22:19:11 | FromDiscord | <sOkam!> sent a code paste, see https://play.nim-lang.org/#ix=4p1e |
22:19:31 | * | azimut joined #nim |
22:19:35 | FromDiscord | <Hourglass [She/Her]> In reply to @m4ul3r "ableton the one reason": Honestly, I don't touch Windows unless absolutely necessary, and even then I'd use it in a VM, either way I use a Linux alternative or Wine, and as a last resort I'd use a VM |
22:19:43 | FromDiscord | <sOkam!> (edit) "https://play.nim-lang.org/#ix=4p1e" => "https://play.nim-lang.org/#ix=4p1f" |
22:20:14 | FromDiscord | <Hourglass [She/Her]> sent a code paste, see https://play.nim-lang.org/#ix=4p1g |
22:20:44 | FromDiscord | <Hourglass [She/Her]> Not sure about the exact reason why it works this way, but it should be mentioned in the docs |
22:21:34 | FromDiscord | <sOkam!> if i change to fmt it goes back to the EOF error |
22:22:49 | FromDiscord | <Haze System (they/them)> In reply to @Hourglass, When the Hour Strikes "WSL should run well": the problem is i wanna use gui stuff too, which i haven't been able to get working well. and windows is just a pain compiling things for in general |
22:22:56 | FromDiscord | <sOkam!> sent a code paste, see https://play.nim-lang.org/#ix=4p1h |
22:23:55 | FromDiscord | <Hourglass [She/Her]> In reply to @sOkam! "if i change to": Hm, might not be escapable |
22:24:19 | FromDiscord | <Hourglass [She/Her]> Could do`&"{'{'} {x: .4f}, "`? |
22:24:24 | FromDiscord | <Hourglass [She/Her]> Messier but should work |
22:24:43 | FromDiscord | <Elegantbeef> The hell are you doing |
22:24:52 | FromDiscord | <sOkam!> thats entering bash territory syntax 🤢 |
22:24:55 | FromDiscord | <Hourglass [She/Her]> In reply to @Haze System "the problem is i": Aah, what compiler are you using? |
22:25:01 | FromDiscord | <Hourglass [She/Her]> In reply to @sOkam! "thats entering bash territory": Lmao yep |
22:25:29 | FromDiscord | <Hourglass [She/Her]> sent a code paste, see https://play.nim-lang.org/#ix=4p1i |
22:25:46 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=4p1j |
22:25:56 | FromDiscord | <Elegantbeef> rtfming is literally free |
22:26:25 | FromDiscord | <Haze System (they/them)> In reply to @Hourglass, When the Hour Strikes "Aah, what compiler are": uh, mingw for things in general. but the problem i was having earlier with vscode seems more easily solvable with a Linux distro |
22:27:13 | FromDiscord | <Elegantbeef> https://nim-lang.org/docs/strformat.html#implementation-details |
22:28:36 | FromDiscord | <sOkam!> ty beef, that worked ✍️ |
22:29:23 | FromDiscord | <sOkam!> I was reading exactly that, but nothing I tried was working for only one instance of { |
22:35:53 | * | azimut quit (Ping timeout: 255 seconds) |
22:36:56 | * | azimut joined #nim |
22:43:47 | * | advesperacit quit () |
22:46:42 | FromDiscord | <sOkam!> @ElegantBeef I take back what I said about the new error formatting in devel. It looked promising in simple cases, but it gets ugly real fast 😔 |
22:46:56 | FromDiscord | <Elegantbeef> Yay! |
22:47:12 | FromDiscord | <sOkam!> for functions with not many parameters, its super good. but... big functions are really bad to follow |
23:43:58 | * | Notxor quit (Remote host closed the connection) |