• @nyan@lemmy.cafe
      link
      fedilink
      English
      255 days ago

      Some people think that only compiled languages are true programming languages. (Needless to say, they’re wrong.)

      • Malgas
        link
        fedilink
        English
        85 days ago

        Needless to say, they’re wrong.

        Not least because there’s no such thing as a “compiled” or “interpreted” language.

        Which is to say that it’s a property of the tooling rather than the language itself. There’s nothing stopping anyone from writing a C interpreter or a Python compiler.

        • @balsoft@lemmy.ml
          link
          fedilink
          1
          edit-2
          4 days ago

          Not least because there’s no such thing as a “compiled” or “interpreted” language.

          I’d say there is (but the line is a bit blurry). IMHO the main distinction is the presence (and prevalence) of eval semantics in the language; if it is present, then any “compiler” would have to embed itself into the generated code, thus de-facto turning it into a bundled interpreter.

          That said, the argument that interpreted languages are somehow not programming languages is stupid.

      • @frezik@midwest.social
        link
        fedilink
        45 days ago

        Yeah, once you know all the details, the distinction disappears. The term doesn’t clarify understanding.

        If I had to make a distinction, it’d be that scripting languages are meant to be a simple way to serve a specific niche. Things like SQL or Excel formulas. It doesn’t apply to Python.

    • @mriswith@lemmy.world
      link
      fedilink
      English
      5
      edit-2
      5 days ago

      Do you know what community you’re in? Do you want to start a war?


      There is no clear definition because there is a lot of overlap, especially when you get into the details, but:

      • Scripting languages are often considered to be very high level and can commonly run without compilation. Making them great to automate tasks or create a simplified interaction/abstraction layer to a more complex program.

      • Programming languages usually have much lower level access, and by extension they tend to be more complicated. In exchange for that, you get much more control. Although the access varies from Assembly to languages a C programmer would consider “scripting”.

      Although for every example, there is basically a counter example. Because programmers being who they are, see it as a challenge to do something with a language that others consider impossible or wrong.

      For example, there are things like NodeOS, a “Lightweight operating system using Node.js as userspace.”

      • @Pardal@lemmy.world
        link
        fedilink
        65 days ago

        For example, there are things like NodeOS, a “Lightweight operating system using Node.js as userspace.”

        No way this exists.

        Wtf, it exists. Why would anyone do that to the world?

      • @frezik@midwest.social
        link
        fedilink
        55 days ago

        Scripting languages are often considered to be very high level and can commonly run without compilation. Making them great to automate tasks or create a simplified interaction/abstraction layer to a more complex program.

        Then Python is not a scripting language.

        Programming languages usually have much lower level access, and by extension they tend to be more complicated. In exchange for that, you get much more control.

        Would you consider C to be more or less complicated than Perl?

        • @mriswith@lemmy.world
          link
          fedilink
          English
          3
          edit-2
          5 days ago

          The first comment worked as bait, but that last question is way too obvious.


          Although just for fun:

          Then Python is not a scripting language.

          That is true. It is often used as one, but it was developed from the start as a general-purpose language.

          Would you consider C to be more or less complicated than Perl?

          You know about Python, Perl and C. You know the answer and you’re just trying to incense people.

          • @frezik@midwest.social
            link
            fedilink
            55 days ago

            No, I’m trying to get people to think. If I laid out my full opinions on this subject (compilers and interpreters aren’t that different anymore, even machine code often runs more like bytecode in many ways, “scripting” is a term that hides what’s actually going on, etc.), then people get into endless debates. My questions are designed to pick apart assumptions.

            Admittedly, people didn’t appreciate when Socrates did this shit, either.

    • @0x0@lemmy.zip
      link
      fedilink
      15 days ago

      One is:

      • a scripting/interpreted language needs an interpreter to be installed on the target system in order to run
      • a programming/compiled language needs a compiler on the host machine and will run as-is standalone in the target machine

      /me ducks for cover

      • Valen
        cake
        link
        fedilink
        English
        44 days ago

        Still a language to make the computer do something. Thus, programming language. Scripts are programs.