Series: Make Your Own Language

1. Make Your Own Language 1: The Lexer

Jul 18th 202016:01

This is the first episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang.

Watch “Make Your Own Language 1: The Lexer”

2. Make Your Own Language 2: The Parser

Jul 18th 202021:06

This is the second episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang. In this episode, we begin building the parser for the programming language, starting with variable assignment syntax.

Watch “Make Your Own Language 2: The Parser”

3. Make Your Own Language 3: Parsing Function Calls

Jul 19th 202016:25

This is the third episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang. In this episode, we write implement the ability parser function calls in the parser and modify the parser to be able to handle multiple lines of code.

Watch “Make Your Own Language 3: Parsing Function Calls”

4. Make Your Own Language 4: The Generator

Jul 20th 202017:35

This is the fourth episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang. In this episode, we write a code generator that produces JavaScript, in JavaScript.

Watch “Make Your Own Language 4: The Generator”

5. Make Your Own Language 5: Runtime Functions

Jul 20th 202011:40

This is the fifth episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang. In this episode, we write some runtime functions to allow users of the language to have a baseline of capability.

Watch “Make Your Own Language 5: Runtime Functions”

6. Make Your Own Language 6: Parsing Lambda Functions

Jul 20th 202018:38

This is the sixth episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang. In this episode, we write code to parse lambda functions: the most powerful feature of this language.

Watch “Make Your Own Language 6: Parsing Lambda Functions”

7. Make Your Own Language 7: White Space and Ambiguous Grammar

Jul 25th 202017:40

This is the seventh episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang. In this episode, we add more proper whitespace handling to the language and run into some trouble, but nothing we can't debug our way out of.

Watch “Make Your Own Language 7: White Space and Ambiguous Grammar”

8. Make Your Own Language 8: Code Generator for Lambda

Jul 25th 202010:57

This is the eighth episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang. In this episode, we make the code generator for lambda functions and actually get the fibonacci series program to work!

Watch “Make Your Own Language 8: Code Generator for Lambda”

9. Make Your Own Language 9: Comments and More Ambiguous grammar

Jul 27th 202010:10

This is the ninth episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang. In this episode, add comments and start on working a code challenge by get side-tracked on debugging some more ambiguous grammar.

Watch “Make Your Own Language 9: Comments and More Ambiguous grammar”

10. Make Your Own Language 10: Coding Challenge

Aug 10th 202029:10

This is the tenth episode of a series where you build your first programming language, using these videos as a guide. We’ve setup the syntax for a small programming language. You can clone this project and start getting to work. The project repository is https://github.com/airportyh/smallang. In this episode, we struggle through the roman numerals coding challenge, and see if this programming language is worth anything.

Watch “Make Your Own Language 10: Coding Challenge”