第11天 優(yōu)化變量讀寫性能 以變量值的讀寫為例疟呐,向讀者介紹基于這種理念的語言處理器性能優(yōu)化方式暂雹。 11.1 通過簡(jiǎn)單數(shù)組來實(shí)現(xiàn)環(huán)境 假如函數(shù)包含局部變量x與y毯盈,程序可以事先將...
![240](https://cdn2.jianshu.io/assets/default_avatar/10-e691107df16746d4a9f3fe9496fd1848.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
第11天 優(yōu)化變量讀寫性能 以變量值的讀寫為例疟呐,向讀者介紹基于這種理念的語言處理器性能優(yōu)化方式暂雹。 11.1 通過簡(jiǎn)單數(shù)組來實(shí)現(xiàn)環(huán)境 假如函數(shù)包含局部變量x與y毯盈,程序可以事先將...
第10天 無法割舍的數(shù)組 目標(biāo):為Stone語言添加簡(jiǎn)單的數(shù)組功能璧函,下標(biāo)(index)只能使用整數(shù)值。 10.1擴(kuò)展語法分析器 代碼清單10.1 與數(shù)組相關(guān)的語法規(guī)則 代碼清...
第9天 設(shè)計(jì)面向?qū)ο笳Z言 目標(biāo):為Stone語言添加類和對(duì)象的支持哈恰。僅支持單一繼承 9.1 設(shè)計(jì)用于操作類與對(duì)象的語法 添加的類與對(duì)象的處理功能后圾另,下面的Stone語言就能被...
第8天 關(guān)聯(lián)Java語言 本章要達(dá)到的目的:擴(kuò)展Stone語言,使它能在程序中調(diào)用Java語言中的static方法 8.1 原生函數(shù) Java語言提供了名為原生方法的功能诸衔,用...
第7天 添加函數(shù)功能 基本的函數(shù)定義與調(diào)用執(zhí)行盯漂、引入閉包使Stone語言可以將變量賦值為函數(shù),或?qū)⒑瘮?shù)作為參數(shù)傳遞給其他函數(shù)有些函數(shù)將有返回值的歸為函數(shù)笨农,沒有返回值的歸為子程...
第6天 通過解釋器執(zhí)行程序 解釋器從抽象語法樹的根節(jié)點(diǎn)開始遍歷該樹直至葉節(jié)點(diǎn)就缆,并計(jì)算各節(jié)點(diǎn)的內(nèi)容 6.1 eval方法與環(huán)境對(duì)象 eval方法:eval是evaluate(求...
第4天 用于表示程序的對(duì)象 程序分割為單詞后,接下來是構(gòu)造抽象語法樹谒亦。 4.1 抽象語法樹的定義 詞法分析 (分割單詞)-> 語法分析(構(gòu)造抽象語法樹) BinaryExpr...
19.10.16 多參數(shù)查詢 mybatis 實(shí)現(xiàn)參數(shù)查詢關(guān)鍵點(diǎn)在于參數(shù)和sql語句 注意like竭宰、limit的用法 在這里參數(shù)用一個(gè)Map傳到mybatis Mapper文...
遞歸算法三:漢諾塔問題描述 移動(dòng)規(guī)則:每次只能移動(dòng)一個(gè)圓盤;圓盤可以插在A份招、 B和C中的任何一個(gè)塔座上切揭;任何時(shí)刻都不能將一個(gè)較大的圓盤壓在較小的圓盤之上。 分析邊界條件只有一...
并查集學(xué)習(xí)筆記 并查集(union-find set)是一抽象數(shù)據(jù)類型锁摔。它所處理的是“集合”之間的關(guān)系廓旬,即動(dòng)態(tài)地維護(hù)和處理集合元素之間復(fù)雜的關(guān)系,當(dāng)給出兩個(gè)元素的一個(gè)無序?qū)?...