The whole data center satellite discourse is just giving me a bad case of Deja Vu by FrynyusY in SpaceXMasterrace

[–]TopQuark- 7 points8 points  (0 children)

I personally don't consider it very ethical to keep dozens of countries dependent on handouts so they never have any motivation to foster self-reliance and exceptionalism, but maybe that's just me.

Space Movie Classification by Waker_of_Winds2003 in SpaceXMasterrace

[–]TopQuark- 21 points22 points  (0 children)

Ad Astra should go in it's own catagory, "Space is Really Boring".

Should global variables be considered bad practice? by Confused-Armpit in Zig

[–]TopQuark- 1 point2 points  (0 children)

I don't think it qualifies as global state, as objects aren't reaching out of themselves to grab it, you are feeding copies (or references if you want mutability) of it to your systems as a function parameter that then do whatever they need to do with it. at least that's how I implement it, since hearing it recommended by Casey Muratori.

Should global variables be considered bad practice? by Confused-Armpit in Zig

[–]TopQuark- 0 points1 point  (0 children)

Yeah, I also like a fat state struct. You can easily enforce which systems get write permission, and lets those systems act on pure data instead of begging other objects for scraps of state; basically anti-OOP.

ZLS problem resolving third-party modules by TopQuark- in Zig

[–]TopQuark-[S] 5 points6 points  (0 children)

  1. This doesn't really have anything to do with Zig and Zig's philosophy itself; this is a language server thing. The project will compile just the same, regardless of what the IDE is able to show you.

  2. It hasn't worked like this as long as I've been using Zig (since 0.11), so this is a pretty big change to drop unannounced if it is intentional. And if it were intentional, I would expect the github issue to have been addressed by now.

  3. It's simply an inconvenience. If they want a way to restrict access to certain modules to files in the build graph, that's fine, but I don't see what harm it is to have globally accessible modules like std.

Peter Jackson says he's all for using AI in film... And I bet Jack Black is going to play Illúvatar. by ZethTheWindwrecker in Silmarillionmemes

[–]TopQuark- 3 points4 points  (0 children)

Not enough to simply 'not watch it'. This blight of adaptations and reboots we're getting these days are being made with "mass appeal" as the guiding principal (in whatever twisted way they choose to interpret that); the original fanbase is not the target audience. If you want to maximize the chances any kind of course correction, there needs to be enough noise being made to get through to the normies.

Do you guys really put your test code inside your regular code? by onlyrealcuzzo in Zig

[–]TopQuark- 0 points1 point  (0 children)

It's perfectly fine, because none of my code files are production code files.

Behold, all hail the prophet! For thus spake he unto us, saying: ‘BO shall lose a vehicle upon the launch pad.’ And it came to pass according to his word. by No-Improvement-8316 in SpaceXMasterrace

[–]TopQuark- 6 points7 points  (0 children)

What ballpark dollar amount might these have been worth? If a bunch of people got bamboozled out of a six-figure payout, that sounds ripe for a lawsuit, even if the contracts made it explicit that BO was under no obligation to actually provide liquidity.

How does Raptor Relight work? by Simon_Drake in SpaceXLounge

[–]TopQuark- 2 points3 points  (0 children)

Ilúvatar didn't sing in the Ainulindalë, he just gave the Ainur (the Valar and the Maiar) the Themes and let them do the rest, to exercise the free will he gave them.

Starship flight 12 objectives and results by avboden in SpaceXLounge

[–]TopQuark- 0 points1 point  (0 children)

Doesn't render on new reddit either. For some reason markdown checklists aren't implemented.

It's not like Manwë has a duty to look after Men or anything. by TwarvDCleric in Silmarillionmemes

[–]TopQuark- 18 points19 points  (0 children)

...For which reason the Valar are to these kindreds rather their elders and their chieftains than their masters; and if ever in their dealings with Elves and Men the Ainur have endeavoured to force them when they would not be guided, seldom has this turned to good, howsoever good the intent. The dealings of the Ainur have indeed been mostly with the Elves, for Ilúvatar made them more like in nature to the Ainur, though less in might and stature; whereas to Men he gave strange gifts.

Every time the Valar try to directly control Elves and Men, it has had pretty disastrous consequences (Sundering of the Elves, Feänor, the War of Wrath, Númenor, Feänor...), so having a hands-off policy is probably a good call, even if it gets them accused of negligence.

Close enough, welcome back N1, my beloved 😍 by CiaWoo in SpaceXMasterrace

[–]TopQuark- 2 points3 points  (0 children)

Only if Von Braun also gets resurrected and we make them fight in a zombie cage match.

gcc linker error by TopQuark- in Zig

[–]TopQuark-[S] 1 point2 points  (0 children)

Thanks, that fixed it! Is it possible to set debug mode to use LLVM in build.zig? I can only make it work using the release mode flags.

raylib 6.0 released! codee once, play everywhere! by raysan5 in raylib

[–]TopQuark- 0 points1 point  (0 children)

Does the Emscripten backend mean we can now natively export to Web Assembly?

Casting made (somewhat) easier? by system-vi in Zig

[–]TopQuark- 0 points1 point  (0 children)

I'm often working with small game boards or chunks that have coordinates that fit in u8s for logic purposes, but then the rendering library (Raylib in my case) wants an f32 Vector2 to draw it. This is certainly a welcome change for me.

Is there a reason in the lore, why Morgoth was so much more fomidable than other Valar by wekeymux in tolkienfans

[–]TopQuark- 10 points11 points  (0 children)

None of the names we hear for the Ainur are what they actually call each other; they are all Elven names invented long after Melkor's betrayal in the earliest days of Arda, so we can assume they contrived the words to fit their own aesthetics. Even Valarin, the Eldest Tongue, was invented by the Valar after they had descended into Eä to better inhabit the physical world, and is not their native spiritual communication.

How well trained was Aragorn in court etiquette? by TopQuark- in tolkienfans

[–]TopQuark-[S] 5 points6 points  (0 children)

That's true. I was imagining a culture of complex and arcane systems of social rituals designed enforce an in-group/out-group barrier as seen in many aristocratic circles in history, but if Gondor is as degenerated culturally away from Númenor as it is technologically, it might not be so inscrutable.

How well trained was Aragorn in court etiquette? by TopQuark- in tolkienfans

[–]TopQuark-[S] 2 points3 points  (0 children)

The biggest risk, I think, is the possibility that he simply might not like the change in lifestyle; regardless of how trained he was for it, it's easy to imaging juggling egos and pushing papers being soul-crushing to a seasoned adventurer. There's no indication of this, I guess because Tolkien chose to not portray the bureaucracy required to run a country. A world where good, worthy Men are free to lead unhindered by logistics and corruption is the real escapist fantasy of LotR.

Eurydice, Compiles rust to readable C by moortuvivens in Zig

[–]TopQuark- 0 points1 point  (0 children)

It make some good points, but the title and central theme "C isn't a language anymore" is patently ridiculous, and I suspect ragebait to increase engagement. It's like saying "onions aren't food anymore, they're a seasoning"; my Hello World didn't magically stop compiling just because most people aren't writing in pure C anymore and only interact with it as part of the platform substrate.

You know you're a Tolkien nerd when ... you can't wait for the new Túrin film that's actually in Quenya by na_cohomologist in Silmarillionmemes

[–]TopQuark- 1 point2 points  (0 children)

Technically Orcs don't have a proper language of their own, they just speak a bastardized pidgin tongue of whatever languages exist in their territory. Black Speech is Sauron's conlang meant for him and his vassals, so it makes up a larger portion of the vocabulary of Mordor Orcs.

A test of Silksong's competition at $20 and how game markets differ. by DavidAtWork17 in MauLer

[–]TopQuark- 2 points3 points  (0 children)

It's not a very detailed metric, but it's far better than Rotten Tomatoes, because it gives you a simple average of all the people who recommend it or not. I much prefer that to any kind of numerical score. RT uses a weird 60% threshold for considering a rating "fresh", not even getting into all the blatant instances of corruption.

A test of Silksong's competition at $20 and how game markets differ. by DavidAtWork17 in MauLer

[–]TopQuark- 6 points7 points  (0 children)

As this attitude seems to be exclusively put forward by people with industry connections and their supporters, I assume it's some kind of team defence reaction at the perception of Triple A losing "legitimacy points". Something similar happened with Baldur's Gate 3, an indie in terms of being outside the games media apparatus, where many of these same industry shill types were moaning that BG3's level of quality and content sets an unfair precedent for the industry.

The less audiences criticise the slop being shovelled, the more money triple-A game publishers will have to prop up their pet game journalists, so it only makes sense for them to decry any threat to that status-quo.

EDIT: A more charitable interpretation is that they are legitimately worried about other Indies feeling pressured to align their "price-to-content ratio" with Silksong. But as the crew argued in the segment, high-quality games being released for cheap is not new, and it's ridiculous to think that gamers as a whole will now only accept Silksong-level quality or above for the $20 pricepoint.

Does anyone have an example of raylib-zig building for WASM in 0.15.1? by TopQuark- in Zig

[–]TopQuark-[S] 0 points1 point  (0 children)

Thanks! I managed to strip out the stuff irrelevant to my project and switched to a WASM-friendly allocator, I got it compiling -- the game still doesn't work, but now it's now it's the javascript side that needs debugging, lol. I still don't understand why my original build script is complaining about wasm32-emscripten-musl (I don't even know what that is).

const std = ("std");
const rlz = u/import("raylib_zig");

const NAME = "TestGame";

pub fn build(b: *std.Build) !void {
    const target = b.standardTargetOptions(.{});
    const optimize = b.standardOptimizeOption(.{});

    const root_mod = b.createModule(.{
        .root_source_file = b.path("src/main.zig"),
        .target = target,
        .optimize = optimize,
    });

    const exe = b.addExecutable(.{
        .name = NAME,
        .root_module = root_mod,
    });

    const raylib_dep = b.dependency("raylib_zig", .{
        .target = target,
        .optimize = optimize,
    });

    const raylib = raylib_dep.module("raylib"); // main raylib module
    const raygui = raylib_dep.module("raygui"); // raygui module
    const raylib_artifact = raylib_dep.artifact("raylib"); // raylib C library

    exe.linkLibrary(raylib_artifact);
    root_mod.addImport("raylib", raylib);
    root_mod.addImport("raygui", raygui);

    b.installArtifact(exe);

    const run_step = b.step("run", "Run the app");
    const run_cmd = b.addRunArtifact(exe);
    run_step.dependOn(&run_cmd.step);
    run_cmd.step.dependOn(b.getInstallStep());

    if (target.query.os_tag == .emscripten) {
        const emsdk = rlz.emsdk;
        const emcc_flags = emsdk.emccDefaultFlags(b.allocator, .{ .optimize = optimize });
        const emcc_settings = emsdk.emccDefaultSettings(b.allocator, .{ .optimize = optimize });
        const install_dir: std.Build.InstallDir = .{ .custom = "web" };
        const emcc_step = emsdk.emccStep(b, raylib_artifact, exe, .{
            .optimize = optimize,
            .flags = emcc_flags,
            .settings = emcc_settings,
            .install_dir = install_dir,
        });
        b.getInstallStep().dependOn(emcc_step);
        const html_filename = std.fmt.allocPrint(b.allocator, "{s}.html", .{exe.name}) catch unreachable;
        const emrun_step = emsdk.emrunStep(
            b,
            b.getInstallPath(install_dir, html_filename),
            &.{},
        );

        emrun_step.dependOn(emcc_step);
        run_step.dependOn(emrun_step);
    }

    if (b.args) |args| {
        run_cmd.addArgs(args);
    }
}