Jeff Wu

Computer Scientist, Programmer, Dog Lover, BMW Enthusiast

Programming Language Theory: Part 1

This is the first of an ongoing blog series about programming language theory. In today‚Äôs blog, we will be exploring a few key constructs for defining programming languages: syntax and semantics, regular expressions, and finite-state automata. 

By understanding these concepts, we can begin to build a foundational understanding of the formal methods for defining the syntax of a programming language.

Prolog: Part 1 - Clauses and Unification

Want to know what Prolog is and how it works? Prolog is a logic programming language. Prolog is composed of depth first search, unification, recursion, and backtracking. 

In this multi-part Prolog blog series, I'll explain what all of that means by breaking it down and explaining things starting with fundamental concepts. We will be writing code. You will see and feel the power of predicate logic in action. 

We will conclude this blog series with code for definite clause grammars (DCGs) and computational linguistics which are interesting and fun.