Why aren’t new terminals that use another language? It seems so antiquated getting errors for not writing the functions in the correct order among other things.

  • Aarkon@feddit.de
    link
    fedilink
    arrow-up
    3
    ·
    3 years ago

    I‘d say one of the primary reasons is compatibility. There is a lot of software for the Unix world that expects some kind of environment that behaves similarly to bash - imagine for instance of the bazillion of startup scripts that exist around certain tools. You’d have to be 100% backwards compatible with the bash language if you were to invent something to replace it, otherwise all those things wouldn’t work in your shell.

      • vi21@lemmy.ml
        link
        fedilink
        arrow-up
        0
        ·
        3 years ago

        Because people code in Bash. For example, a Makefile that I downloaded from GitHub didn’t work on my computer, since my computer’s default shell was Dash.

        The Makefile didn’t have the shebang to tell which shell is required, but it looks like a Bash script and it works on Bash.

        • Amicese@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          3 years ago

          The Makefile didn’t have the shebang to tell which shell is required, but it looks like a Bash script and it works on Bash.

          I think the fault is in the makefike, not that bash is commonly used.

          I use bash for interactive sessions and POSIX shell for scripts (including the shebang).