Link times are the worst part but solveable with mold[1]/sold. Incremental compilations are usually an order of magnitude (or even two) faster than clean compiles but tbh that can still feel slow. Helped by using something like sccache[2] or even cranelift[3] when debugging. Still not as fast as having a hot-reloadable language but it gets you to a relatively pleasant speed still IME
I've never been successful in getting sccache to really speed up projects, but then again only release builds have _really_ been impossible for me, and that's only when I was working on Deno which was absolutely massive.
People want sum types because sum types solve a large set of design problems, while being a concept old enough to appear back in SML in 1980s. One of the best phrased complaints I've seen against Go's design is a claim that Go language team ignored 30+ years of programming language design, because the language really seems to introduce design issues and footguns that were solved decades before work on it even started
I want to point out that, technically, using Deref for this is an anti-pattern, as Deref is intended exclusively for smart pointers. Nothing really wrong with doing this outside of some loss in opacity (and unexpected behaviour if you're writing a library), but it's worth pointing out
I don't really see the issue in providing Deref for a wrapper type like this. Could you elaborate? I'm not trying to gain full encapsulation, just trying to make sure I'm passing the right kind of wrapper, then using it transparently.
osu! does have a very active github + active official forums, but I assume Joehu suggested Discord because messengers allow for quicker turnaround in cases where publicly documenting the issue and the resolution of it isn't necessary (which is the case here as the issue is on the Microsoft side of things)
> You get the list of filenames in your editor – edit them as you like, save, exit, and it renames the files. It uses whatever editor is set in your $EDITOR env var, so it doesn’t have to be vi/vim.
I'm not sure how "powerful" vidir is, but I recently found this functionality in yazi [1] and it became one of those "you think you don't need it until you try it" features
> Only Ruby lists Ruby on Rails as its killer app, but that's basically it.
Concrete examples: Dart with Flutter, Elixir with Phoenix,
Arguable ones: JavaScript and browsers, Go and Kubernetes
I kind of disagree with the "killer app" concept because most languages can work in a lot of domains, but there are more examples if you're willing to think about it
technically uutils/coreutils should suffice for this goal still as it can build into a single-binary tool a la busybox (iirc that's the default actually)
Because "avatar" isn't specific enough - some creators use fully dynamic rigged models with motion controls (those got a name of VTubers, because they started as Virtual YouTubers, see: Kizuna Ai), some use static images (so your traditional avatars, often being commissioned artwork of their OCs) to just fill the video feed while discussing topics with no relevant footage to show (often seen with content creators covering animation). PNG-tubers, being dynamically controlled static images, are in the middle of the two, and the term appeared somewhat naturally as a result. It has a very clear definition in the area it's being used in so I wouldn't call it non-descriptive honestly
[1] https://github.com/rui314/mold [2] https://github.com/mozilla/sccache [3] https://github.com/rust-lang/rustc_codegen_cranelift