Man Boy Test ¶
~cpp begin real procedure A(k, x1, x2, x3, x4, x5); value k; integer k; begin real procedure B; begin k := k - 1; B := A := A(k, B, x1, x2, x3, x4) end; if k <= 0 then A := x4 + x5 else B end; end; outreal(A(10, 1, -1, -1, 1, 0));
Donald Knuth κ° Algol 60μ ꡬν μ λλ₯Ό νλ³νκΈ°μν΄μ λ§λ νλ‘κ·Έλ¨. ν
μ€νΈμ λͺ©μ μ μ¬λ°λ₯΄κ² ꡬνλ scoping rule, call-by-nameμ ꡬν μ λλ₯Ό νλ³ν΄μ boys(algol 60 ꡬνλ¬Ό)λ€μ€μμ men (μΈλ§ν λ)μ κ°λ €λ΄λ μ©λλ‘ κ³ μλμμ΅λλ€.
----
CompilerTheory
CompilerTheory