• open_world@lemmy.ml
    link
    fedilink
    English
    arrow-up
    9
    ·
    1 year ago

    You know, I’ve always read that COBOL projects still get maintained to this day because the costs of rewriting these projects just are too high. I wonder if there’s a cutoff point where maintaining them starts costing more than the rewrite. I just don’t see how organizations can justify maintaining these projects without these kind of changes forever.

    • TAG@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      Mission critical code. There are decades of bug fixes. The biggest cost of rewriting it is a risk of errors in the logic.

      • darkfiremp3@beehaw.org
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I can understand that, the fear of moving and the logic being ruined. I wonder how much modern frameworks could cut down the codebase though

        • TAG@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          1 year ago

          Modern frameworks don’t help with business logic corner cases. You would want to carefully analyze the algorithms of the legacy code and rewrite same logic in a new language. Even then, the same logic operators don’t work the same in every language (automatic type conversions, truthiness of non-boolean types).

          • shadowolf@lemmy.ca
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            Outside of looking a Cobol once or twice I have almost zero working knowledge of the language. But still this feels like something a transpiler could handle. Or maybe a next gen LLM if direct translation of the source isn’t desirable but just the core logic

  • JustBrian7872@feddit.de
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Inheritance: The good, the bad and the ugly - aka extends, “here is the code, my child” and prototype