The Expanse series is great, but I reckon people already mentioned it elsewhere in the thread.
James Islington's Licanius trilogy is one of my favourite fantasy book series probably. He recently started a new series called Hierarchy, which I also recommend. They're very "grounded" fantasy, and the magic systems is very woven into society and its structure. The human relationships in his books are pretty nuanced, which is why I like his works so much.
I keep hearing good things about Cradle, I’ll have to give that a read.
It's also both cumbersome to setup and use.
Before learning Zig, I used to think Zig needed an http server in the standard library. After using it for a few months, and watching this implementation get added, I think it's a mistake - there just isn't enough bandwidth to support a _quality_ kitchen-sink included stdlib.
Why so many uses of try? Because Zig is all about readability, and anytime you see try you _know_ that the called function can possibly fail.
The reason for prioritizing word boundaries is so that you can type "sln" to match "SomeLongName". So while you are improving one use case you are probably breaking another one. I'm not sure how VSCode ranks GNUmakefile first, maybe they prioritize exact substring matches. It's still a heuristic that can fail. The ugly part is that it's not part of the "best match" algorithm that finds a global optimum.
> It first attempts a match on the filename. If there is no match, it retries on the full candidate string
Kakoune does the same, see https://github.com/mawww/kakoune/blob/019fbc5439ad884f172c32...
> Strict path matching means that the path segments of the query token cannot overlap between path segments in the candidate.
nice
Great! I’m glad I’m not the only one to have thought of this simple idea :)
If they had left quoted the word makefile, GNUmakefile would have been the first result.
What is exactly what you want from a language?
Zig is a very consistent language in syntax and semantics, so there are a small number of features I need to be concerned with. My understanding is that once Zig reaches a stable 1.0 the language will not change. Although there is a lot of churn right now, I appreciate the idea of a language that is simple, and stays simple.
The code is also very readable. I haven't found another language (yet) that I can just open up the standard library source code and understand just about everything. With no hidden control flow I can easily read a function and not have to question what a line of code does. Everything it does is right in front of me.
I also love that Zig is trying to fix many of C's problems. Rather than a global libc allocator, each function that can allocate (by convention) accepts an allocator as an argument. In my projects this has been really great for understanding what code paths allocate, which has made it easy to package my fuzzy finder as an allocation-free Zig module and C library.
Now, if I were working on a project with more critical safety requirements, I might consider a different language. But for most of my personal projects Zig is exactly what I need.
No doubt Zig has changed alot and is better than it was only a year or two ago.
Is anyone here willing to say if they have experienced success and satisfaction using Zig? I'm wanting to do some C library interfacing.
Zig is exactly what I want out of a language though, so take my opinion with a grain of salt :)
[0]: https://github.com/natecraddock/zf