Tutorials and issues on all aspects of creating software to analyse code

A Guide to Natural Language Processing

A Guide to Natural Language Processing

What can you use Natural Language Processing for? Natural Language Processing (NLP) comprises a set of techniques that can be used to achieve many different objectives. Take a look at the following table to figure out which technique can solve your particular problem. What You Need Where To Look Grouping similar words for search Stemming, […]

A Guide to Parsing: Algorithms and Terminology

We have already introduced a few parsing terms, while listing the major tools and libraries used for parsing in Java, C#, Python and JavaScript. In this article we make a more in-depth presentation of the concepts and algorithms used in parsing, so that you can get a better understanding of this fascinating world. We have […]

Parsing HTML: A Guide To Select The Right Library

Parsing HTML: A Guide to Select the Right Library

HTML is a markup language with a simple structure. It would be quite easy to build a parser for HTML with a parser generator. Actually, you may not need even to do that, if you choose a popular parser generator, like ANTLR. That is because there are already available grammars ready to be used. HTML […]

EBNF: How to describe the grammar of a language

The EBNF is the most commonly used formalism to describe the structure of languages. In this article we are going to see: What the EBNF Examples of grammars defined with EBNF How we can define a grammar using EBNF A few things to consider when using EBNF How to use EBNF in practice today A summary […]

Parsing in Python: Tools and Libraries

Parsing In Python: Tools And Libraries

This is an article similar to a previous one we wrote: Parsing in Java, so the introduction is the same. Skip to chapter 3 if you have already read it. If you need to parse a language, or document, from Python there are fundamentally three ways to solve the problem: use an existing library supporting […]

Parsing in JavaScript: Tools and Libraries

Parsing in JavaScript: Tools and Libraries

This is an article similar to a previous one we wrote: Parsing in Java, so the introduction is the same. Skip to chapter 3 if you have already read it. If you need to parse a language, or document, from JavaScript there are fundamentally three ways to solve the problem: use an existing library supporting […]

Parsing in C#: Tools and Libraries

Parsing In C#: Tools And Libraries

This is an article similar to a previous one we wrote: Parsing in Java, so the introduction is the same. Skip to chapter 3 if you have already read it. If you need to parse a language, or document, from C# there are fundamentally three ways to solve the problem: use an existing library supporting […]

Parsing in Java: Tools and Libraries

Parsing in Java: Tools and Libraries

If you need to parse a language, or document, from Java there are fundamentally three ways to solve the problem: use an existing library supporting that specific language: for example a library to parse XML building your own custom parser by hand a tool or library to generate a parser: for example ANTLR, that you can […]

Create a simple parser in C# with Sprache

Create a simple parser in C# with Sprache

Everybody loves ANTLR, but sometimes it may be overkill. On the other hand, a regular expression just doesn’t cut it or it may be too complicated to maintain. What a developer can do in such cases ? He uses Sprache. As its creators say: Sprache is a simple, lightweight library for constructing parsers directly in […]

Building and testing a parser with ANTLR and Kotlin

Building and testing a parser with ANTLR and Kotlin

This post is the part of a series. The goal of the series is to describe how to create a useful language and all the supporting tools. Building a lexer Building a parser Creating an editor with syntax highlighting Build an editor with autocompletion Mapping the parse tree to the abstract syntax tree Model to model […]