Making a Programming Language From Scratch

Introduction

edit

This book covers the art of language creation. Making a language is a sophisticated task; however, simple languages can be made by transpiling to other higher level languages and by using lexing and parsing packages such as Bison or Flex. This book does not cover this. It demonstrates the creation of languages from nothing at all, as most commercial languages are. Here, the basic algorithms for conversion, assembly language equivalents for some common statements, the advantages and disadvantages of each type of compilation method, basic lexing and parsing are demonstrated. Note that this book assumes that you have at least a moderate understanding of x86 assembly and can write programs in a language. Keep in mind that language creation is an exhaustive process, and thus will require many days of hard labor to create.

Chapters

edit

Preliminaries

edit

Data Declarations

edit

Expressions

edit

Conditions

edit

Functions

edit