Parsing is the analysis of an input to organize the data according to the rule of a grammar.
There are a few ways to define parsing. However the gist remain the same: parsing means to find the underlying structure of the data we are given.
A tutorial on how to write a compiler using LLVM
In this article we will explore the implementation of a simple compiler able to translate the IBM RPG programming language into executable machine code for modern hardware. It is not a full featured RPG compiler: it implements a few basic constructs of the language but it is good enough to understand how the LLVM infrastructure can […]
A Guide to Parsing: Algorithms and Terminology
A long-form explanation of the principles of parsing: the terms, the grammar formats, the algorithms.
We also create shorter articles to explain other important concepts related to parsing, such as the the difference between a compiler and an interpreter.
Domain specific languages
Domain specific languages are languages meant for one thing, but they do it perfectly: think HTML, which is designed to write web pages. This is in contrast with general programming languages, that can do anything, but require more effort.
They can massively increase your productivity and allow non-programmers to write code in a language that they understand.
The complete guide to (external) Domain Specific Languages
This guide will show you:
• the what: after a definition we will look into 19 examples of DSLs
• the why: what are the concrete benefits you can achieve using DSLs
• the how: we will discuss the different ways to build a DSLs and what are the success factors
Recognizing hand-written shapes programmatically: find the key points of a rectangle
What if you wanted to define programs by sketching on a whiteboard? You could use your sketches to define programs in a high level domain specific language, and the first step would be to recognize hand-written shapes.
Tools And Libraries
The right tool can make your life easier and improve your productivity, we share the ones we know and explain our readers how to use them.
Parsing In Python: Tools And Libraries
Many programmers think about creating their own programming language. You can read these articles to know how to get started. If you want a practical guide on the subject we have also wrote a book: How to create pragmatic, lightweight languages.
68 Resources To Help You To Create Programming Languages
To create the best work for our clients we have to keep updated on how to design and create software. In this article we share the resources we have found to create programming languages: from the design to the presentation.
Natural language processing
Natural language processing is the equivalent of parsing for the languages we use in our everyday life. It is the field that want to understand and analyze the words we wrote and speak.
Analyze and Understand Text: Guide to Natural Language Processing
A long-form overview of the field of Natural Language Processing: from explaining the simplest algorithms to presenting the most advanced libraries used to understand and analyze natural languages.
Creating a Reverse Dictionary
In this article we are going to see how to use Word2Vec to create a reverse dictionary. We are going to use Word2Vec but the same results can be achieved using any word embeddings model. Do not worry if you do not know what any of this means, we are going to explain it. A […]