Abou Zuhayrblog.zuhayr.dev·Oct 9, 2024Writing an Interpreter from ScratchInterpreters are the backbone of many programming languages, converting code into actions line by line. In this article, we'll build a simple interpreter from scratch using Python. If you are new to this series, you can find the previous articles her...Discuss·4 likesWhat, How and Why?Interpreters
Abou Zuhayrblog.zuhayr.dev·Oct 8, 2024Building a Parser: A Beginner-Friendly Guide to Constructing an AST-Based ParserIn our previous article, we built a lexer that converts code into tokens, breaking down the input into meaningful pieces. Now, the next exciting step is to write a parser, which takes these tokens and organizes them into a meaningful structure called...DiscussWhat, How and Why?parser
Abou Zuhayrblog.zuhayr.dev·Oct 3, 2024Understanding How Parsers Work : Writing My Own Programming LanguageSo, you’ve built a lexer that can break down source code into meaningful tokens—things like keywords, operators, and symbols. But what's next? While lexing breaks the input into smaller parts, it doesn’t tell us how these parts fit together. That’s w...DiscussWhat, How and Why?parser
Sawez Faisalsawezfaisal.hashnode.dev·Oct 3, 2024Chapter 5: Grammar of the languageUnderstanding Grammars in Programming Languages What is a Grammar? In the world of programming languages, a grammar is a set of rules that defines the structure of valid statements within the language. It's the backbone of how we write and interpret ...DiscussThe Sodum Project: Unraveling Programming Language Design and Implementationprogramming languages
Sawez Faisalsawezfaisal.hashnode.dev·Sep 30, 2024Chapter 4: Tokens??Tokens are the smallest meaningful part of the source code ( the high level language). So if your language contains if keyword it should have a token “IF” that would allow the compiler to identify the stream of characters in a source code and then se...DiscussThe Sodum Project: Unraveling Programming Language Design and ImplementationProgramming Blogs
Jyotiprakash Mishrablog.jyotiprakash.org·Sep 23, 2024Having Fun with ParsersImagine you're speaking a language only your computer can understand, and it's hanging on to every word you say, trying to figure out exactly what you mean. This is essentially what a parser does—it reads your code (or any structured input) and tries...Discuss·10 likescontext-free grammar
Sawez Faisalsawezfaisal.hashnode.dev·Sep 23, 2024Chapter 2:: Setting up the project structureIntroduction Have a look at the topics mentioned here on your own as it cannot be discussed in detail due to the size constraints. In this chapter, we'll dive into organizing our Sodum language project. A well-structured project is crucial for mainta...DiscussThe Sodum Project: Unraveling Programming Language Design and Implementationprogramming languages
Sawez Faisalsawezfaisal.hashnode.dev·Sep 21, 2024Chapter 1: Project Architecture and WorkflowCreating a programming language involves several key stages: High-level code authoring Compilation to intermediate representation (IR) Assembly into machine code File loading Linking of external dependencies Final object file generation Our ...DiscussThe Sodum Project: Unraveling Programming Language Design and ImplementationProgramming Blogs
Abou Zuhayrblog.zuhayr.dev·Sep 20, 2024Building My Own Programming Language: Day 02The code for this tutorial can be found here In our previous blog post, we tried to understand the basic fundamentals behind building our own programming language, and discussed the type of language that we intend to design. If you are new to this s...DiscussWhat, How and Why?lexer
Abou Zuhayrblog.zuhayr.dev·Sep 12, 2024Building My Own Programming Language: Day 01I've always wondered how computers understand language. How do words and symbols turn into 0s and 1s, and then back into something we can read? The typical explanations about compilers and interpreters give us the basics, but I often ask myself: Do I...DiscussWhat, How and Why?compilers