• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Liutauras Vilda
  • Bear Bibeault
  • Tim Cooke
  • Junilu Lacar
  • Paul Clapham
  • Devaka Cooray
  • Knute Snortum
Saloon Keepers:
  • Ron McLeod
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Frits Walraven
  • Carey Brown
  • salvin francis
  • Claude Moore

Natural Language Processing in Action: ANTLR vs NLP  RSS feed

Ranch Hand
Posts: 33
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Dear Hobson, Hannes, and Cole,

I am new to Natural Language Processing (NLP). Before I read your book, can you please answer a question? I have used the ANTLR tool develop a software; do you know what's the difference between ANTLR and NLP? Thank you for your time!


Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Sean,

I haven't used ANTLR myself, but a lot of the tools it provides are included in projects such as spaCy and NLTK, both of which we discuss the Python implementation of in the book.  NLP itself isn't a package or tool, as much as a concept.  Hopefully the book provides a good overview of the underlying concepts that power all of these tools and give you a better intuition of how to tweak to the levers to get to your projects end-goal.

Saloon Keeper
Posts: 20657
Android Eclipse IDE Java Linux Redhat Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
ANTLR stands for ANother Language TRanslator. It was originally one of several programs that comprised the Purdue Compiler Construction Toolset (PCCTS). Later, ANTLR absorbed most of the functions of the other PCCTS programs, got re-written in Java (it was originally in C), and I believe it moved from Purdue University to California. Although from the beginning it was open-source, so contributors are potentially world-wide. In addition to the NLP apps Cole mentioned, it's bundled into the WebLogic application server last time I checked, and I've seen it pop up in some surprising places besides that.

The name ANTLR is simply a backronym that pays homage to the grand old YACC (Yet Another Compiler-Compiler) program that got its start in Unix. ANTLR, however, is a lot more civilized than YACC and much easier to debug - YACC constructs a Finite-State Machine with few places to set breakpoints and fewer hints at where trouble came from, and that's even allowing for kludges that the C compiler contained to allow for trying to tie stuff back to source file/line numbers.

ANTLR could be used for "Natural Language", I suppose, but it's not a fuzzy translator, so it couldn't handle general stuff without a lot of help, just application-specific commands and the like.
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!