4

Languages such as Java or C# are called programming languages. SQL is a query language and HTML is considered a markup language. I'm looking for an English word that describes all these different kinds of language in the context of software development. Is there such a word?

I guess one possibility would be to call them languages, but then it's a problem that you can't differentiate between these languages and natural languages such as English or Dutch.

Sample sentence:

Alice and Bob put the website together from scratch, employing a variety of (artificial languages) for the front-end, back-end and database-access portions.

  • 5
    Like Computer Languages? – Davo Feb 20 '17 at 21:31
  • Please show what research you performed, as my simple google search provided me with the same link @Davo posted. – Hank Feb 20 '17 at 21:33
  • They are technically "computer languages", but that term is likely confusing to non-techies (and even some techies). I don't offhand know of a better term, however. – Hot Licks Feb 20 '17 at 21:36
  • 2
    It's true that HTML and CSS are not Turing-complete, but I'd still say they're programming languages. Which collectively are often contrasted with "natural" (human) languages - but we don't normally call the computer-based ones "unnatural", and "designed language" puts me in mind of things like Esperanto rather than Java and C++. – FumbleFingers Feb 20 '17 at 22:01
  • 3
    There is surely a domain specific terminology for this. Migrate to programmers.stackexchange.com? – Mitch Feb 20 '17 at 23:03
2

The common word is Code.

Programming languages are broken into their types, which are various. Procedural/Object Oriented/Functional Markup/Query etc.

But in your context, you should use the word "Technology Stack" A technology stack or a solution stack is the set of technologies you use to make a software work. They are not necessarily programming languages, they can be server software or tools.

Alice and Bob put the website together from scratch, employing a rich technology stack for the front-end, back-end and database-access portions.

1

I would say there is no portmanteau word, and the discussion here and any other that I have read on the subject would seem to bear that out.

If your question is practical rather than theoretical — i.e. you need to set something down in writing — then the term you use depends on your intended audience. A very technical audience might understand the term “Technology Stack” (assuming it is correct) proposed by @SuyashThite, but I, for one, wouldn’t, and I build websites using these technologies.

If I am explaining the work I do to biologists (I build bioinformatics web applications) I tend to use terms like ‘web technologies’ or ‘computing technologies’ to generalize.

  • I think the problem is that any existing term used to describe these three language types will either be technically incorrect (ex. programming language for a non turing-complete grammar) or be too broad and contain many other language types (ex. computer language). I think this is the right answer: no such word exists yet. – Chill Feb 22 '17 at 23:58
0

While Programming Languages and Computer Languages seem to fit the bill, I understand the OP's hesitation in painting with too broad a brush.

This Wikipedia article on Comparison of programming languages lists all three of the desired categories in one breath:

Most programming languages are not standardized, by an international (or national) standard, even widely used ones, such as Perl (but an unrelated PEARL, has a German standard), nor is Standard ML (despite the name). Notable standardized programming languages include ALGOL, C, C++, JavaScript (under the name ECMAScript), Prolog, Common Lisp, Scheme (IEEE standard), Ada, Fortran and COBOL (SQL, HTML, XQuery and XML are also standardized).

The parentheses seems to nudge SQL and HTML out of the category of Programming Languages. Further, neither SQL nor HTML are listed in the central language comparison table (which comprises the bulk of the article). And with good reason: although these are standardized by committee, they are not procedural languages.

In particular, SQL is a non-procedural language. Different software houses have augmented SQL with a procedural side language that bear a different name (such as PL/SQL, in which the PL stands for "Procedural Language" citation).

To heighten the ambiguities, this Wiki article, List of Programming Languages by Type lists Java, C#, and SQL. While it does not explicitly name HTML, it does name other XML-based languages.

So it seems like Programming Languages are a hypernym for programming languages (like C#), query languages (like SQL), and markup languages (like HTML). But HTML and other markup languages seem on the periphery. (I could imagine a C# programmer asking a someone she'd just met what programming language he used. The answer, "HTML," would be met with a scoff. "That's not a real programming language," she might say.)

Consider their usage:

  • Programming Languages implement algorithms to solve problems.
  • Query languages implement set notation to retrieve data.
  • Markup languages implement instructions telling a web page or printed page how to display its text. (HTML would be categorized as a specific type of XML, an eXtensible Markup Language citation). They are considered a metalanguage, that is, a language to describe other languages.

To answer the OP's question, it's completely understandable to say:

Alice and Bob put the website together from scratch, employing a variety of computer languages for the front-end, back-end and database-access portions.

However, it may be more clear to say

Alice and Bob put the website together from scratch, with Alice employing a variety of computer languages for the back-end and database-access portions, while Bob used HTML and CSS style sheets for the front end.

  • Just a nitpick: HTML is not "a specific type of XML", and markup languages do much more than "telling a web page or printed page how to display its text." – michael.hor257k Feb 21 '17 at 18:13
  • 1
    Agreed, and I am being very general when I say C++ implements an algorithm or SQL implements set notation. About HTML not being a specific type of XML: I agree that HTML does not have to be well-formed, while XHTML does (en.wikipedia.org/wiki/XHTML). But to explain within the answer the notion of well-formed languages may be better suited to a programming forum than EL&U. – rajah9 Feb 21 '17 at 18:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.