Callat
Callat

Reputation: 3044

how do you define a language that is not compiled

I ask this question because I see alot of "personal preference" when it comes to the terms "Scripting Language" and "Programming Language".

My question is:

Is there a proper technical term for a language that does not compile, or runs directly in the browser? Every article I've read and question I've searched here doesn't explicitly say what defines that characteristic of a language.

Upvotes: 4

Views: 471

Answers (4)

Paebbels
Paebbels

Reputation: 16221

Every programming language except the assembly languages are compiled. Even language interpretation like in batch languages needs a compilation step to transform single batch instructions into a sequence of CPU instructions.

A compiler is a computer program (or a set of programs) that transforms source code written in a programming language (the source language) into another computer language (the target language), [...]

Source: Wikipedia

Assembly language get translated not compiled, because one assembly line is translated to extractly one CPU instruction.

An assembly language (or assembler language) is a low-level programming language for a computer, or other programmable device, in which there is a very strong (generally one-to-one) correspondence between the language and the architecture's machine code instructions. Each assembly language is specific to a particular computer architecture, in contrast to most high-level programming languages, which are generally portable across multiple architectures, but require interpreting or compiling.

Source: Wikipedia

New assemblers have macro support to replace or unrole instructions, but it's no compilation step, just macro processing.

Upvotes: 0

Viraj Shah
Viraj Shah

Reputation: 790

Scripting Language

Meaning: A language which is interpreted instead of being compiled

So a language which is not compiled is a scripting language

Markdown/Markup Language

Meaning: A language which can be written in a way which formats plain text into "better looking", or nicely formatted text.

(which is what stack overflow uses to make this ugly text, look nice)

Programming Language

Meaning: Any language designed to communicate with a computer, or machine

So anything, even a scripting language is considered a Programming Language. Any piece of code, including markdown and markup, can be considered programming languages, although they are debatable!

Web Languages

A web language is more of a category, rather than an actual type of programming. Web Languages are a combination of several languages which can be used to create a webpage. A basic webpage consists of HTML (markup), JavaScript (scripting language), and CSS which is also a scripting language.

Upvotes: 1

Kris
Kris

Reputation: 41837

Perhaps this is not a complete answer to your question, but since you mention scripting language and programming language in your question.

In my mind (which in this case is not in line with popular opinion):

  • A scripting language is a language that mostly allows you to "speak" with objects, script existing applications to perform specific workflows.

  • A programming language is a language that mostly lets you define the objects that you're interacting with to perform specific workflows.

On the surface, there might not be too much difference and in the real world there often isn't; If i'm using javascript inside a browser extension to remove ads from webpages I'm scripting, but when i'm using javascript with node to build a crm system I'm programming. That makes javascript both a scripting and a programming language to me.

From this point of view the language and if it is compiled or interpreted and dynamic or statically typed doesn't really matter.

I usually see a few dozen lines of code to automate something as a script, but several hundreds or more as a program.

There are many ways to blur the lines between these concepts and this is just how I perceive these things as a developer.

Upvotes: 0

niwox
niwox

Reputation: 401

Maybe you mean this
https://en.wikipedia.org/wiki/Interpreted_language

An interpreted language is a programming language for which most of its implementations execute instructions directly, without previously compiling a program into machine-language instructions. The interpreter executes the program directly, translating each statement into a sequence of one or more subroutines already compiled into machine code.

Upvotes: 9

Related Questions