Margaret Hamilton, NASA’s lead developer for Apollo program, stands next to all the code she wrote by hand that took humanity to the moon in 1969

  • Iron Lynx
    link
    fedilink
    English
    01 year ago

    Imagine having to look for the missing semicolon in there.

    • Troy
      link
      fedilink
      English
      01 year ago

      It’s probably written in Fortran66 or similar. No semicolons, but so many line numbers…

        • Troy
          link
          fedilink
          English
          0
          edit-2
          1 year ago

          Oh that’s so hardcore

          edit: looking at the git repo, it looks like it was a team of seven, and she was the lead. So it isn’t all her code. Still super impressive :)

          • @Revan343@lemmy.ca
            link
            fedilink
            English
            01 year ago

            The other big notable thing for assembly is that it isn’t portable. Assembly is very different for every processor architecture, unlike something like C where you may have to make some adjustments between an x86 vs ARM proc, in assembly you’re basically rewriting it from scratch

            • Karyoplasma
              link
              fedilink
              English
              11 year ago

              Also, this is an obscure assembly variant specifically for the computers in the Apollo mission. Not sure about the specifications on that, maybe there is a handbook, but I doubt it.

              Rewriting the code to x86 or anything seems improbable since you’d pretty much have to guess what the instructions are actually doing.

        • @Hypersapien@lemmy.world
          link
          fedilink
          English
          0
          edit-2
          1 year ago

          For people unfamiliar with assembly, it’s one step up from raw 1s and 0s. Just vaguely human readable abbreviations for given sets of 1s and 0s. There are no built in loops or if statements, you have to build all that shit yourself from scratch every time you want to use one. And there’s exactly one built in variable you can use called the register