
60
|
第 2 章
形式的指稱語意使用抽象的數學物件(通常是函數)來指稱像是運算式和陳述式的程式
語言結構,而且因為數學的習慣,規定了如何估算函數之類的事物,這在指稱的操作意
識提供了直接的思考方式。我們採用了比較不正式的指稱語意思維,作為從某種語言到
另一種語言的編譯器,而這也是實際上大多數程式語言最後獲得執行的原因:
javac
將
Java 程式編譯成 bytecode,Java 虛擬機器會及時的將 bytecode 編譯成 x86 指令,接著
為了要在核心執行,CPU 會將每個 x86 指令解譯成類似 RISC 的微指令 ... 它在哪裡結
束?編譯器、虛擬機器還是一路往下?
程式最終當然會執行,因為語意之塔最終會將實際的機器觸底:半導體裡的電子,順從
物理定律
18
。計算機是維護這種不穩定結構的裝置,諸多複雜的轉釋層在另一轉譯層的
頂端平衡,允許諸如多點觸控手勢和
while
迴圈之類的人類想法逐漸轉化成矽元素和電
子的物理宇宙。
備擇
本章所見的諸多語意風格有許多不同的名稱。小步驟語意就是所謂的
結構化操作語意
(
structural operational semantic
)和
轉換語意
(
transition semantic
);大步驟語意更常稱
為
自然語意
(
natural semantic
)或
關連語意
(
relational semantic
);而指稱語意也稱為
定點語意
(
fixed-point semantic
)或
數學語意
(
mathematical semantic
)。
此外也還有其他的形式語意的風格,其中一種就是 ...