• 0 Posts
  • 142 Comments
Joined 1 year ago
cake
Cake day: July 31st, 2023

help-circle






  • So, Drag thinks countries that act as though their neighbors are part of a greater whole ruled by them as the motherland, and have political structures where the governing body consists of a small cohort (and not the proletariat) are communist?

    That’s imperialism, buddy.

    Let me know when: 1) China stops trying to exert absolute control over Tibet, Taiwan, and Hong Kong; 2) North Korea accepts that their ownership ends where their globally-recognized territory ends; 3) Russia stops invading neighboring countries; and 4) All three of them abolish the ruling class and give the power to the people.


  • The constant cheerleading of brutally-repressive regimes that don’t have any values in common with actual socialists or communists just because they oppose the US and its allies.

    This is my main issue with tankies. Yeah, late-stage capitalism sucks and exploits the layman to enrich the rich further—I take no issue with that. It’s the knob-slobbering of Putin, Xi Jinping, and Kim Jong Un that makes no sense. Modern-day Russia, China, and North Korea have about as much in common with communism as oat milk has with milk: nothing but the name.










  • Recursion makes it cheaper to run in the dev’s mind, but more expensive to run on the computer.

    Maybe for a Haskell programmer, divide-and-conquer algorithms, or walking trees. But for everything else, I’m skeptical of it being easier to understand than a stack data structure and a loop.


  • pivot_root@lemmy.worldtoProgrammer Humor@lemmy.mlStop
    link
    fedilink
    arrow-up
    4
    ·
    edit-2
    3 months ago

    In a single one-off program or something that’s already fast enough to not take more than a few seconds—yeah, the time is spent better elsewhere.

    I did mention for a compiler, specifically, though. They’re CPU bottlenecked with a huge number of people or CI build agents waiting for it to run, which makes it a good candidate for squeezing extra performance out in places where it doesn’t impact maintainability. 0.02% here, 0.15% there, etc etc, and even a 1% total improvement is still a couple extra seconds of not sitting around and waiting per Jenkins build.

    Also keep in mind that adding features or making large changes to a compiler is likely bottlenecked by bureaucracy and committee, so there’s not much else to do.


  • Not necessarily. It depends on what you’re optimizing, the impact of the optimizations, the code complexity tradeoffs, and what your goal is.

    Optimizing many tiny pieces of a compiler by 0.02% each? It adds up.

    Optimizing a function called in an O(n2) algorithm by 0.02%? That will be a lot more beneficial than optimizing a function called only once.

    Optimizing some high-level function by dropping into hand-written assembly? No. Just no.