Skip to content

Commit ad97308

Browse files
committed
add note of TAPL
1 parent ff94937 commit ad97308

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

_posts/2025-10-27-types_and_ptogramming_languages.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -310,3 +310,29 @@ Church encoding的问题是因为`call by value strategy`,代数运算的求值
310310
Church数表示了原始数吗?Church数和真实的数没有可以被观测到的差异。
311311

312312
### Formalities
313+
314+
只关注lambda-calculus。
315+
316+
#### Syntax
317+
318+
term的三种组成,本身是变量,是函数声明,是函数应用。
319+
320+
#### Substitution
321+
322+
替换的两种定义。一种更为直观一种对特定的ML实现更为方便。
323+
324+
区分自由变量和绑定变量。
325+
326+
静态作用域。需要进行`capture-avoiding substitution`。对于重名的情况,应该进行`alpha-conversion`,对绑定变量进行重命名。
327+
328+
绑定变量重命名的语句是一致的。
329+
330+
#### Operational Semantics
331+
332+
计算顺序。
333+
334+
### Notes
335+
336+
ref: [Böhm, Corrado and Alessandro Berarducci. Automatic synthesis of typed Λ-programs on term algebras. Theoretical Computer Science, 39(2–3):135–154, August 1985.](https://www.sciencedirect.com/science/article/pii/0304397585901355)
337+
338+
## Nameless Representation of Terms

0 commit comments

Comments
 (0)