This Wikipedia article does not capitalize "assembly language," for understandable reasons. It uses it as an indefinite article, i.e. "an assembly language." But how should it be written when using it as a definite article?

He wrote it in Assembly.


He wrote it in assembly.


I believe assembly language is a common noun; it is not a brand name and it is really a generic term for a set of languages that varies based on the hardware they support. Wikipedia uses it exclusively as a common noun as far as I can tell.

Other languages have names that are, in a sense, "given" names: Basic, Python, Haskell, Java, Javascript, Lisp, Ada — these all the equivalent of brand names, while assembly was simply a descriptive term for a second-generation computer language.

I feel your discomfort at writing

He wrote it in assembly.

because as a common noun it can cause confusion between assembly language and some other kind of assembly, notably the kind one attends in school. If it bothers you, you can include the "language" specifier to make clear the distinction: "He wrote it in assembly language." But it will probably be clear from the context anyway.

It took John two months to get his program working. He wrote it in assembly.

Most people who know anything about programming will understand perfectly well what kind of assembly is under discussion. If you intend the statement for a more general audience, which wouldn't know the difference, you can specify "assembly language" but probably that will still be insufficient to give those listeners an "a-ha" moment.

  • 1
    Just goes to show, you should always state which assembly language. x86 is not the whole world! ;-) – Orbling Feb 13 '11 at 1:45
  • @Orbling: This is beyond the scope of the original asker's question, but I strongly disagree that you should always state which assembly language. If your audience consists of nonprogrammers, then it won't make any difference anyway (other than adding verbosity). If your audience consists of programmers, then it still depends mainly on whether the topic of discourse is assembly language. If you ask whether some algorithm is easier to implement in Python versus assembly, there is almost no chance it will matter which assembly. – John Y Feb 13 '11 at 5:19
  • @John Y: I would disagree overall, assembly languages vary considerably, as a programmer I would always want to know what assembly language someone was referring to. As the OP is specifically asking about its usage in the context where the actual name of language is being given as Assembly. Robusto states above that assembly is the generic term given to all 2GL languages, but it is being used in the place of a proper name - that is the mistake. It should be the actual name, not the generic term, unless it is obvious or irrelevant some how. – Orbling Feb 13 '11 at 8:40

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.