前言:感覺之前的內(nèi)容寫的不好,很散很亂。因?yàn)橹皬?qiáng)行把文章拆成兩個(gè)部分:原理和代碼實(shí)現(xiàn),不應(yīng)該這樣,應(yīng)該邊寫代碼,寫敘述原理。 0X00 if ...
投稿
前言:感覺之前的內(nèi)容寫的不好,很散很亂。因?yàn)橹皬?qiáng)行把文章拆成兩個(gè)部分:原理和代碼實(shí)現(xiàn),不應(yīng)該這樣,應(yīng)該邊寫代碼,寫敘述原理。 0X00 if ...
前言:函數(shù)的實(shí)現(xiàn)又是一個(gè)難點(diǎn),我們一點(diǎn)一點(diǎn)攻破! 0X00 函數(shù)調(diào)用 按照慣例我們寫出函數(shù)調(diào)用的「文法」: 這樣的文法可以匹配這樣的函數(shù)調(diào)用: ...
前言:我們要到編譯原理比較難的地方了,我們開始在我們的語言 Lox 中,實(shí)現(xiàn)「變量」! 0X00 基本原理 這是我們實(shí)現(xiàn)的第三個(gè)語句,所以我們要...
前言:更一更「編譯原理」,這篇文章的主要目的是執(zhí)行 print "I Love You!" 0X00 基本原理 在之前我們實(shí)現(xiàn)了一個(gè)「計(jì)算器」,...
前言:在上一篇博客中,我們已經(jīng)實(shí)現(xiàn)了一個(gè)計(jì)算式的抽象語法樹。這一篇博客主要完成計(jì)算式的抽象語法樹的執(zhí)行,達(dá)到實(shí)現(xiàn)一個(gè)計(jì)算器的目的 0X00 原理...
前言:之前我們不是太艱難地將字符流轉(zhuǎn)換成了 token 流,今天我們將嘗試將 token 流轉(zhuǎn)換成「抽象語法樹」,本系列博客大部分內(nèi)容來自 ht...
前言:好吧,開始對編譯器下手了。。。本系列博客大部分內(nèi)容來自 http://www.craftinginterpreters.com/,以下只是...
前言:我把學(xué)習(xí)「編譯原理」的整個(gè)重心放在了前端上,前八周的課我已經(jīng)看完了?,F(xiàn)在是補(bǔ)博客的時(shí)間,語法分析的算法很多,慢慢梳理吧,今天復(fù)習(xí)「LR(1...
前言:語法分析算法挺多的,LR(0) 算法是一個(gè)經(jīng)典的「自底向上」的語法分析算法 0X00 自底向上分析的基本思想 首先我們來看一下「自底向上分...
前言:學(xué)習(xí)編譯原理就是被各種算法虐 0X00 FOLLOW 集合介紹 首先感性地認(rèn)識一下什么是 FOLLOW 集合 假如有這么一些生成式規(guī)則: ...