• 0 Posts
  • 234 Comments
Joined 2 years ago
cake
Cake day: June 25th, 2023

help-circle

  • I did not flip any signs, merely reversed the order in which the operations are written out. If you read the right side from right to left, it has the same meaning as the left side from left to right.

    Hell, the convention that the sign is on the left is also just a convention, as is the idea that the smallest digit is on the right (which should be a familiar issue to programmers, if you look up big endian vs little endian)




  • I don’t think OOP’s nature makes them necessary, so much so as it enables them and popular programming principles encourage them. I think they’re a good thing, especially if there’s a way around them in case you can’t get the public interface changed and it doesn’t work for you, especially for performance reasons, but that should be done with care.

    Funny story, when modding Unity games using external modloaders you’re writing C# code that references the game’s assemblies. And with modding you often need to access something that the developers made private/protected/internal. Now, you can use reflection for that, but a different trick you can use is to publicize the game’s assemblies for referencing in your code, and add an attribute to your assembly that tells the runtime to just… Let you ignore the access checks. And then you can just access everything as public.


  • If it was a single question, that does sound lame, my other thought was that those “online polling tools” might not be viable because you can’t put internal company communications into them… But if it’s stuff like food choices or something, then that might also not be a problem.

    That said, my point still stands - what you describe does sound like what I’m saying. If you make a sheet with a dedicated field to put the answer into, it should be possible to reliably automate pulling out answers from all the files with excel-level knowledge, and without any additional sites or servers, just spreadsheet editing software and email.






  • Both java and go seem excessively complex at runtime for fundamental system utilities, featuring garbage collection. Rust, on the other hand, keeps the complexity in the compiler and source, keeping the runtime code simpler. And of course it’s doing that while trying to make it easier to manage memory and harder to make mistakes, without forcing extra runtime logic on you.


  • I think most of the work is in the fact that there often isn’t an “equivalent call”, and it can be quite a lot of code to make it work. One funny thing is the whole esync-fsync-ntsync issue, where synchronization is done differently on Linux and on windows, and translating it was a big performance hit, and difficult to do accurately. If I understood correctly, esync, fsync and ntsync were a series of kernel patches implementing additional synchronization code in the kernel, with ntsync actually replicating the windows style.






  • Yeah, in history we’ve really been ignoring the experiences of the sunwalkers, but thankfully society is leaving those prejudices in the past now.

    It’s all arbitrary one way or another, but the meter was (seemingly) chosen for a specific purpose, creating a unit based on a good and verifiable frame of reference (though probably not as absolute as people thought back then), while also having 1 meter be a convenient and useful measure on a human scale.