Take the 2-minute tour ×
Linguistics Stack Exchange is a question and answer site for professional linguists and others with an interest in linguistic research and theory. It's 100% free, no registration required.

I have a vague knowledge regarding those two fields, but I admit there are some fundamental concepts that I lack.

So, if we had to write down the actual differences between these two fields, what would they be?

I'll suggest some points that I think the answers should cover for successfully describing each field in a complete and comprehensive way:

  • What it does and what it is about (also what it's not);
  • Common misconceptions of the field (with consequent debunking);
  • Aims/objective of the field;
  • Tools/instruments and methods adopted by the field;
  • Subfields of each field (if any);
  • Any other points I might have forgotten.
share|improve this question
Note: I'm aware that some of these points are available in the Wikipedia articles, but I thought we could elaborate something better. If we deem it necessary we can make a CW answer out of the ones that will come out. Post a comment here if you want to voice your opinion. –  Alenanno Apr 16 '12 at 11:24
I am addressing this question more concretely in meta as: What is the difference between Computational Linguistics and Natural Language Processing? –  babou Dec 2 at 21:17

4 Answers 4

up vote 14 down vote accepted

I have a PhD in computational linguistics. I can tell you that NLP and CL are not two separate fields. Rather, CL is the superset that encompasses NLP.

In everyday CL practice, NLP focuses on the building of NL parsers and as such it is central to the CL field. CL as a field includes a lot more than NLP. For instance, you can study machine translation, knowledge representation, ontology engineering, text mining, information extraction, etc. all within the CL field. CL is a pretty broad thing and (unlike CS) is not primarily focused on theory. It is highly hands-on. Most theories in CL come from theoretical CS. When it comes to the nitty-gritty CL is the practical application of various algorithms for purposes of natural language processing.

You may occasionally encounter a reference to NLP (sans CL) within the field of CS. This is due to the fact that -originally- the generation of parsers served purposes beyond the confines of natural language (the way we mean "natural language" within CL). So, one could argue that NLP within CS is a slightly different animal than NLP within CL. In essence, it's the same kind of object seen under slightly different light.

share|improve this answer
Congratulations for your PhD. –  babou Dec 2 at 21:14

The difference is that Computational Linguistics tends more towards Linguistics, and answers linguistic questions using computational tools. Natural Language Processing involves applications that process language and tends more towards Computer Science.

However, the distinction between the two terms is fading and they are being used more and more interchangeably.

share|improve this answer
While I agree some with @anogal, as a PhD student in Computational Linguistics I would agree most with this answer. My advisor would say they are interchangable, but i call myself CL because it somehow sounds sexier than NLP. Seriously though, why I really call myself CL is because I came to the field because of my love for linguistics and not for my love of Computer Science. I would strongly advocate for this distinction though not all would agree. –  demongolem Dec 20 '12 at 16:09

The above answers are all good. I'd like to offer another perspective that I learned while teaching digital libraries that draws on the analogy used in biology:

Computational biology = the study of biology using computational techniques. The goal is to learn new biology, knowledge about living sytems. It is about science.

Bioinformatics = the creation of tools (algorithms, databases) that solve problems. The goal is to build useful tools that work on biological data. It is about engineering.

To make the analogy for any field X, we thus have "Computational X" and "X-omatics". In NLP/CL, NLP is the equivalent of "Linguamatics".

I don't really subscribe to the notion that CL encompasses NLP or vice versa. They both have a purpose. CL studies human language to computationally understand how we as humans have the capacity to produce and understand language. NLP takes a more pragmatic perspective and says that we wish to build systems that facilitate some language interface.

share|improve this answer

The terms are often used interchangeably. More often than not*, NLP is used when there is actual processing involved, rather than abstract theoretical topics. Comprehensive websites such as ACL wiki page write both separately, or combine them into CL/NLP or NLP/CL.

* - just my impression

Perhaps Computational Psycholinguistics is part of Computational Linguistics, but not a part of Natural Language Processing.

share|improve this answer
Corpus linguistics is also sometimes counted as part of comp. ling., but I've never heard it included under NLP. Basically, if the goal is to build a better X (where X could be "tagger," "parser," "machine translator," "OCR system," etc.) then it's NLP. If the goal is just to gather data that's relevant to some question in theoretical linguistics, and you're not doing anything to improve the existing computational tools, then it's not NLP, but it might still be comp. ling. if you're using a computer as an essential part of the project. –  Dan Velleman Apr 17 '12 at 2:06

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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