軟體界經歷幾十年的發展,已經沉澱下數以億計的程式碼,然而這些程式碼盤根錯節,彼此之間互相緊密依賴。舉例來說,寫一個網站,必須跑在瀏覽器上,瀏覽器又跑在作業系統之上,主流作業系統又都是由 C/C++ 編譯器編譯出來,依賴可以追溯很多很多層。(甚至會成環,例如編譯器通常也需要作業系統作為執行環境。)
將現代軟體當做一個世界,從學會寫程式的第一天開始,絕大多數的人就永遠也脫離不了它。本作企圖指引人們如何離開原世界(下稱塵界),再造一個新世界,故名:離塵指引。
而離塵的第一步,是自舉一門自定義的程式語言。
貧道閒暇之時,好覽開源碼,於年前嘗見「大品天仙訣」,頗有感觸,亦期待作者再更,可惜,經旬累月,無消無息。 轉念一想,或許「大品天仙訣」早已是成品也說不定,著訣前...
「離塵指引」啟發自大品天仙訣,但並不嚴格遵循仙訣。「離塵指引」並不是企圖囊括計算機科學系統部分的教材,而是有著更大的野心,它要指引的,是一條重塑計算機系統之路。...
書接上回,塵界程式碼彼此依賴,如樹、如網。要想脫出這張樹網,自成一個世界,固然可以一切用組合語言(下稱真言)寫就,但常人負荷不了如此巨大的工作量,借鑑塵界軟體的...
編譯與直譯 只要學過計算機概論,大抵都對編譯與直譯有基本的概念。 常會有人把程式語言分類爲編譯式語言、直譯式語言兩類,其實這並不嚴謹,編譯與直譯並非形容「語言」...
以最宏觀的角度來看,編譯器是程序,輸入源碼,輸出目標碼。 而當輸出是高階語言時,通常稱為轉譯。當此一程序輸出的是機器碼,或是很低階、很類似機器碼的虛擬機碼(如...
為了有所憑依地說明編譯流程,貧道擬在本章定義一門法咒(咒、程式語言)——音界咒,在餘下章節,將實際操演如何將其轉換成真言。 此刻吾等修為尚淺,不宜一步登天,本章...
網路/市面上早已存在許多專為編程設計的半形字體了,最最基本的要求就是等寬。全形倒是沒有等寬的問題,全是方塊字。 但全形有另個廣泛存在的問題:全形標點的偏移。 下...
音界咒的編譯目標是精五門(RISC-V)真言,精五門真言本就十分精簡,在零.一版,更是僅需要 整數加減乘除 指定暫存器的值 等寥寥幾個指令而已。 但在介紹這...
是什麼構成一篇漢語文章的呢?從小到大列舉,最小單位是「字」(通常狀況不會再去拆部首),「字」組成「詞」,「詞」再組成「句」,「句」組成「段落」,「段落」組成「文...
上一節中變數的詞法定義並不清楚,例如,變數不可以是「元」,但能不能是「元氣」呢?變數能不能包含數字,像是「2號機」?若允許這樣的寬鬆定義,分詞會較為困難,當讀取...