03:46:35 | * | Artea quit (Read error: Connection reset by peer) |
04:58:36 | * | SchweinDeBurg quit (Quit: WeeChat 4.5.0-dev) |
04:59:01 | * | SchweinDeBurg joined #nim |
06:19:33 | FromDiscord | <Robyn [She/Her]> In reply to @bubbly_avocado_86424 "i've used computers for": Cargo, Golang? |
06:19:44 | FromDiscord | <Robyn [She/Her]> Rust, Golang |
06:31:33 | FromDiscord | <bubbly_avocado_86424> yeah, i stand at least partially corrected |
06:33:51 | FromDiscord | <Robyn [She/Her]> Zig doesn't even have a package manager |
06:34:20 | FromDiscord | <Robyn [She/Her]> In reply to @bubbly_avocado_86424 "yeah, i stand at": Though, what compiled languages that have package managers don't require compiling the package? |
06:34:36 | FromDiscord | <Robyn [She/Her]> VM languages don't really count, I'm talking about languages that target native code |
06:35:08 | FromDiscord | <Robyn [She/Her]> this isn't me taking the piss or anything, i genuinely can't think of any rn |
06:35:17 | FromDiscord | <random.visitor> plenty of people apt install blah-dev ; ./compile stuff |
06:35:27 | FromDiscord | <random.visitor> but ... apart from that, I can't think of any |
06:35:34 | FromDiscord | <random.visitor> and my example is a bit of a stretch |
06:36:07 | FromDiscord | <Robyn [She/Her]> yeahhh |
06:36:21 | FromDiscord | <random.visitor> maybe in the embedded world? single board chips and all that? |
06:36:30 | FromDiscord | <random.visitor> but no idea, not really my forte |
06:36:51 | FromDiscord | <random.visitor> cause otherwise imagine having to deal with glibc, uclibc, musl-libc, x86, x64, aarch, powerpc, etc |
06:37:11 | FromDiscord | <Robyn [She/Her]> aren't the sources available usually? |
06:37:47 | FromDiscord | <random.visitor> I was thinking back to a while ago I was playing with esp-32, and I vaguely recall ./something to pull a pre-compiled library and source code |
06:38:08 | FromDiscord | <Robyn [She/Her]> hm... |
06:38:10 | FromDiscord | <random.visitor> but I'd have to go back several years to look at notes - not really my thing anymore |
06:38:17 | FromDiscord | <Robyn [She/Her]> that'd make sense ig |
06:38:20 | FromDiscord | <Robyn [She/Her]> and fair |
06:40:46 | FromDiscord | <random.visitor> I can't remember if I'm thinking of nim or another language - but wasn't there a watch and rebuild webserver for nim someone did? |
06:41:07 | FromDiscord | <random.visitor> it'd try to compile it when it noticed the source changed? |
06:42:56 | FromDiscord | <bubbly_avocado_86424> After struggeling with httpYac in vscode I came to think i would be able to get the code working in Nim in just a few hours (since zero practical exposure to Nim)↵I'm getting close and it's been less than one hour, almost no programming experience beforehand |
06:43:04 | FromDiscord | <Robyn [She/Her]> In reply to @random.visitor "it'd try to compile": huh... no clue but seems fairly standard |
06:43:47 | FromDiscord | <Robyn [She/Her]> In reply to @bubbly_avocado_86424 "After struggeling with httpYac": have you followed the docs on the site to install Nim? |
06:44:11 | FromDiscord | <Robyn [She/Her]> the nim-lang.org Nim extension should install the lang server automatically once you have Nim set up |
06:45:27 | FromDiscord | <bubbly_avocado_86424> I'm using Zed now since VSCode on Linux has this sandbox since running in Flatpak |
06:45:53 | FromDiscord | <Robyn [She/Her]> In reply to @bubbly_avocado_86424 "I'm using Zed now": ah |
06:47:01 | * | coldfeet joined #nim |
06:47:49 | FromDiscord | <bubbly_avocado_86424> nph keeps blurting about "formatting failed" |
06:48:24 | FromDiscord | <bubbly_avocado_86424> i copied the config from the nph home page into settings.json but no real clue why it fails |
06:49:05 | FromDiscord | <Robyn [She/Her]> what are you trying to do, exactly? |
06:49:21 | FromDiscord | <bubbly_avocado_86424> have inline completion working |
06:49:25 | FromDiscord | <bubbly_avocado_86424> that actually works |
06:49:39 | FromDiscord | <Robyn [She/Her]> `nph` is a formatting tool |
06:49:57 | FromDiscord | <bubbly_avocado_86424> oh, sorry, yes |
06:49:59 | FromDiscord | <Robyn [She/Her]> No clue about Zed but nimlangserver should just work, and it does for me |
06:50:29 | FromDiscord | <Robyn [She/Her]> Sorry I can't really help, since I use VSC |
06:52:18 | FromDiscord | <bubbly_avocado_86424> progressing though |
06:53:16 | FromDiscord | <bubbly_avocado_86424> able to query the json from an http site↵can determine type of json key↵now looking how to iterate the json and print each key + key type |
07:02:16 | FromDiscord | <bubbly_avocado_86424> sent a long message, see https://pasty.ee/YOLigcRq |
07:48:12 | * | Artea joined #nim |
07:48:37 | FromDiscord | <xtrayambak> In reply to @bubbly_avocado_86424 "i've used computers for": Try downloading a binary package from Cargo ;) |
07:56:34 | * | ntat joined #nim |
10:59:29 | * | ntat quit (Quit: Leaving) |
11:16:54 | FromDiscord | <bubbly_avocado_86424> sent a long message, see https://pasty.ee/umKFeJEB |
11:17:29 | FromDiscord | <bubbly_avocado_86424> Nim is to me the easiest and most powerful language I ever learned↵a game changer for my projects and efforts |
11:17:49 | FromDiscord | <bubbly_avocado_86424> (edit) "learned↵a" => "started to learn↵a" |
11:36:39 | * | coldfeet quit (Quit: leaving) |
11:39:35 | * | coldfeet joined #nim |
11:50:06 | * | coldfeet quit (Quit: leaving) |
13:35:39 | FromDiscord | <odexine> The closest one has to a list of “audited” packages is the awesome list |
13:35:51 | FromDiscord | <odexine> https://github.com/ringabout/awesome-nim |
13:51:13 | FromDiscord | <rakgew> besides the std lib in each language -↵which language really does have this?↵(@bubbly_avocado_86424) |
14:35:30 | * | Artea quit (Remote host closed the connection) |
14:41:14 | * | ryuukk left #nim (https://quassel-irc.org - Chat comfortably. Anywhere.) |
14:41:48 | * | xet7 quit (Quit: Leaving) |
14:42:05 | * | xet7 joined #nim |
15:54:59 | FromDiscord | <bubbly_avocado_86424> In reply to @rakgew "besides the std lib": it is not sensible to compare with "what others have" or "what others do"↵it is a well meant comment and given the future where SBOM / reproducible builds will become important this would help Nim to grow |
15:56:01 | FromDiscord | <bubbly_avocado_86424> In reply to @odexine "https://github.com/ringabout/awesome-nim": thanks but that's not what "audited" means↵audited means paired with code review reports and such (SCA,DCA) etc. |
15:56:10 | FromDiscord | <odexine> i know it is not |
15:56:17 | FromDiscord | <odexine> there is none otherwise |
15:56:41 | FromDiscord | <odexine> closest thing to actually audited is stuff that Status uses, i guess |
15:56:50 | FromDiscord | <odexine> In reply to @odexine "i know it is": (i put audited in quotes for a reason) |
15:57:50 | FromDiscord | <bubbly_avocado_86424> In reply to @odexine "(i put audited in": i guessed so yet try to not go forth on guessing |
15:58:05 | FromDiscord | <odexine> well yeah, true |
15:58:21 | FromDiscord | <bubbly_avocado_86424> i know for Perl there was this move to ActiveState Perl at one point for a similar reason |
15:58:27 | FromDiscord | <odexine> better to err on the side of caution kinda thing |
15:58:56 | FromDiscord | <odexine> we're nowhere near big enough for a large collection of audited packages |
15:59:15 | FromDiscord | <bubbly_avocado_86424> either way, most concerns wrt supply chain i think can be addressed by vetting package sources for any project with such criticality / sensitivity |
16:00:02 | FromDiscord | <bubbly_avocado_86424> I'm also curious how this transpiling from Nim to other languages can support 'secure code by design' so to speak. Transpiling should offer a means to 'do the right thing' wrt memory safety and such |
16:00:39 | FromDiscord | <bubbly_avocado_86424> In reply to @odexine "we're nowhere near big": true yet is has to start somewhere and should a business have a casual look this may become a spearhead for Nim |
16:04:37 | FromDiscord | <odexine> the trouble is finding one willing to |
16:05:35 | * | ntat joined #nim |
16:13:29 | FromDiscord | <bubbly_avocado_86424> sent a long message, see https://pasty.ee/ghieJuRq |
16:39:14 | * | lucasta joined #nim |
17:00:12 | * | coldfeet joined #nim |
18:34:14 | FromDiscord | <bubbly_avocado_86424> when writing a simple program i'm using one proc to walk a json, i then call a second proc and would like to call the first proc from the second proc↵such does not seem possible with what I know today, what approach is recommended ? |
18:35:10 | FromDiscord | <logan.plug0> sent a long message, see https://pasty.ee/tdoMIRbo |
18:35:12 | FromDiscord | <logan.plug0> sent a long message, see https://pasty.ee/nTulKPXK |
18:38:14 | FromDiscord | <solitudesf> In reply to @bubbly_avocado_86424 "when writing a simple": forward declare second proc |
18:39:20 | FromDiscord | <solitudesf> In reply to @solitudesf "forward declare second proc": or first. your description is bit confusing. |
18:39:59 | FromDiscord | <bubbly_avocado_86424> In reply to @solitudesf "forward declare second proc": makes sense, how do i do that ? |
18:40:13 | FromDiscord | <solitudesf> just write a function signature without a body |
18:40:19 | FromDiscord | <bubbly_avocado_86424> eh ? |
18:40:58 | FromDiscord | <bubbly_avocado_86424> found this https://nim-lang.org/docs/manual.html#types-procedural-type |
18:41:34 | FromDiscord | <michaelb.eth> sent a code paste, see https://play.nim-lang.org/#pasty=ylbGDPlC |
18:44:35 | FromDiscord | <bubbly_avocado_86424> sent a long message, see https://pasty.ee/AuaazsVM |
18:45:20 | FromDiscord | <michaelb.eth> so you want to leave the = part off dive declaration, then define dive below walk |
18:46:26 | FromDiscord | <michaelb.eth> sent a code paste, see https://play.nim-lang.org/#pasty=RCRMHlKX |
18:46:37 | FromDiscord | <bubbly_avocado_86424> aaahhh |
18:48:09 | FromDiscord | <bubbly_avocado_86424> sure i'm going to spend a few more hours on getting that to work |
18:48:33 | FromDiscord | <bubbly_avocado_86424> much similar to bash i guess, forgot how i solved that 😄 |
18:54:07 | FromDiscord | <bubbly_avocado_86424> ok, almost works now, thanks |
18:54:35 | FromDiscord | <bubbly_avocado_86424> ok, almost works now, thanks |
18:58:21 | FromDiscord | <bubbly_avocado_86424> I guess this means i've to start over since this does not work with json + iteration? ↵`node.kind == JObject` : pairs() can not iterate a JsonNode of kind JArray [AssertionDefect] |
19:07:36 | * | ntat quit (Quit: Leaving) |
19:27:39 | * | coldfeet quit (Remote host closed the connection) |
19:30:07 | FromDiscord | <frusadev> Hi there! How to define a type before implementing it? |
19:30:50 | FromDiscord | <Elegantbeef> You don't |
19:30:57 | FromDiscord | <frusadev> Oh! |
19:32:23 | FromDiscord | <frusadev> sent a code paste, see https://play.nim-lang.org/#pasty=lXEAJzyr |
19:32:55 | FromDiscord | <frusadev> (edit) "https://play.nim-lang.org/#pasty=WTdQkwkG" => "https://play.nim-lang.org/#pasty=sNYXpgpy" |
19:33:21 | FromDiscord | <Elegantbeef> Declare them in the same type block and that also will not work |
19:33:54 | FromDiscord | <frusadev> Oh! So i declare both of them in the same `type` block |
19:33:57 | FromDiscord | <frusadev> ? |
19:34:08 | FromDiscord | <Elegantbeef> Yes |
19:34:16 | FromDiscord | <Elegantbeef> But `ValueType | Object` is not a valid type |
19:35:14 | FromDiscord | <frusadev> 🤔 Oh! |
19:38:01 | FromDiscord | <frusadev> But it actually compiles🤔↵I guess i have to manually check that... |
19:59:07 | FromDiscord | <bubbly_avocado_86424> @elegea |
20:00:34 | FromDiscord | <bubbly_avocado_86424> @ElegantBeef does it makes sense to consider a macro for iterating over json types which are reporting↵node.kind == JObject : pairs() can not iterate a JsonNode of kind JArray [AssertionDefect]↵↵this because the json is read, types identified, when an array or object is hit, it dives into that array / object looking for other array / object until it is exhausted doing so |
20:00:55 | FromDiscord | <bubbly_avocado_86424> (edit) "which are reporting↵node.kind" => "with this error↵node.kind" |
20:07:12 | FromDiscord | <Elegantbeef> No |
20:07:18 | FromDiscord | <Elegantbeef> Procedures exist, so use them |
20:43:28 | FromDiscord | <bubbly_avocado_86424> reading this type of doc is not proven 'easy'↵maybe i'm rushing |
20:44:03 | FromDiscord | <Elegantbeef> You just need a case statement to traverse a Json tree |
20:47:31 | FromDiscord | <bubbly_avocado_86424> yes, but this json i'm training on is nested, the one I aim to parse is larger and has rather complex structure |
20:49:58 | FromDiscord | <Elegantbeef> A macro is not for complex runtime values |
20:50:04 | FromDiscord | <bubbly_avocado_86424> i've used the case statement to match with each type, works fine↵in other languages i believe a json[0][0] would return the first value of the first key↵with Nim such does not work apparently |
20:50:30 | FromDiscord | <bubbly_avocado_86424> In reply to @Elegantbeef "A macro is not": yes, i read the warning to only use a macro in rare cases |
20:50:45 | FromDiscord | <Elegantbeef> `[0][0]` returns a `JsonObject` you need to extract your data |
20:50:58 | FromDiscord | <Elegantbeef> Sorry JsonNode |
20:52:05 | FromDiscord | <bubbly_avocado_86424> before i walked the json with ↵↵for k,v in pairs(myjson): |
20:52:21 | FromDiscord | <bubbly_avocado_86424> followed by the case of for each type |
20:52:48 | FromDiscord | <bubbly_avocado_86424> but use of pairs() fails when iterating |
20:53:36 | FromDiscord | <bubbly_avocado_86424> scratching my head on that one |
20:55:20 | FromDiscord | <bubbly_avocado_86424> oh, wait, this actually works without pairs() too |
20:56:32 | FromDiscord | <Elegantbeef> Causue `pairs` only works on JObject |
20:56:33 | FromDiscord | <Elegantbeef> so guard for non JObjects |
20:57:48 | FromDiscord | <bubbly_avocado_86424> thanks, i think it's enough for today↵i made progress and Nim feels natural↵when I read it was built on Pascal and Modula i felt happy↵it is reasonably easy to work with and the logic sinks in eventually |
21:33:02 | * | lucasta quit (Quit: Leaving) |
21:35:52 | * | coldfeet joined #nim |
22:03:21 | * | coldfeet quit (Remote host closed the connection) |
22:20:17 | * | Artea joined #nim |