541 karma · joined June 21, 2021
Referencing Marvel movies in one's description of proposed military hardware is not only immediately discrediting but also a good sign that self-reflection is in order.
Was that MP a draft dodger? The issue isn't them picking draft dodgers, it's them picking up anybody that looks like they might be a draft dodger and the tactics they employ to do it.
All control flow in Zig is done via keyword
This is all fine and good until you actually try encoding such an image with libjxl. What an absolute garbage codebase. I'm sure it's gotten better since I've last used it, but it's impressive how unoptimized, memory hungry, and of course wildly unsafe/crashy it was. Many of the options just completely didn't work, either due to exponential performance, crashes, or weird special-casing that breaks the moment you encode anything that's dissimilar from the sample images used in the sham benchmark made by the libjxl creators. I don't even think a high resolution image had ever been successfully encoded on higher effort levels, since I doubt that anyone trying to do so had the terabytes of RAM required.
I was genuinely flabbergasted when there was mass support for reviving it a couple years ago. I don't think anyone advocating for it has actually used libjxl at all and were just internet hypemen. That seems to happen all too often nowadays.
This all being said, I'm mildly optimistic for a retry with jxl-rs. However, seeing much of the same contributors from libjxl on jxl-rs does make me quite cautious.
Does V still just output C and use TCC under the hood?
[citation needed]
I found every single time that it just wasn't worth it. There was always some critical failure that was either completely underlooked or a 20 year old bug/shortcoming that had every patch to fix it rejected. I genuinely don't understand how people tolerate the dogshit being forcefed to you on all of these controlled platforms. People say that everything is getting worse, and it's true, but it's also true that you're actively choosing to use the things that are getting worse.
I've eventually settled on NixOS and XFCE so I can tweak things to my particular needs while also benefiting from an army of unpaid labor continually improving nixpkgs and other flakes. This setup isn't perfect, but I've optimized for maximal comfort & utility while exerting minimal effort & time. Things really only break when they're self-updating under the hood, which thankfully is rather rare in nixpkgs.
If you subscribe to Kant perhaps, but most people's argument against violence (and morality in general) is probably not Kantian.
That may be true, but the program may actually be bad for you if it does something unexpected due to an unforeseen state.
On the other hand, "comptime" is actually executed within the compiler similar to C++'s `consteval`. There's no actual "emulation" going on. The "emulation" is just ensuring that any observable characteristic of the platform matches the target, but it's all smoke and mirrors. You can create pointers to memory locations, but these memory locations and pointers are not real. They're all implemented using the same internal mechanisms that power the rest of the compilation process. The compiler's logic to calculate the value of a global constant (`const a: i32 = 1 + 2;`) is the "comptime" that allows generic functions, ORMs, and all these other neat use cases.
Welp. If I have to choose between XPipe and LTSC, I'm afraid LTSC is gonna win. I have no interest running a version of Windows where Windows Update will randomly decide to brick my install or better yet, add even more Candy Crushes to my start menu.
In fact, I'd go so far as to say that a majority of players in the top ranks of most popular FPSs are cheaters or queue with cheaters. There's nothing quite like watching the enemy stare right at you through every wall across the map and then carelessly run in a straight line towards you. Even more concerning is how many streamers queue up with blatant cheaters and then use their connections with game moderators to manually ban other cheaters.
This doesn't have to be true! Zig's `zig fmt` doesn't wrap on column count but instead lets you insert breaks with a ",". While this does introduce a level of user discretion which can diminish the braindeadness of autoformatters, I find that it works a lot better because now I can choose where the reasonable place to break is. There may technically be more wiggle room for debate, but now you're spending less time debating variable names or whatever to get it to format not-awfully.
Perhaps this is the actual lesson? Instead of artificial opportunity cost in the form of exclusive choices, why not provide opportunity cost in the form of time/money/etc investment?
You're a Sword & Board fighter in need of stealing the MacGuffin. Instead of magically undoing the choices that got you here, you go out and practice Stealth until you're able to heist the famed MacGuffin.
Admittedly, this system does actually provide less immersion, meaningful choices, etc., but IMO this can be mitigated almost completely by making skilling up much harder. If you still want to promote class/archetype-based characters, then just make your character's class reduce the amount of XP needed to level up certain skills. While you're at it, make having high skills also reduce the XP cost of similar skills. Someone who's really good with two-handed weapons will probably pick up one-handed weapons much quicker than someone who's never even touched a weapon.
And if this isn't enough opportunity cost for truly meaningful choices, then limiting the availability of XP (in certain sections of the game?) is also an option.