์ฝ๋๋ชฝํค๋ฅผ ๋ฒ์ด๋๊ธฐ ์ํดย SCIP๋ฅผ ์ ๋ ์ค.ย
์ ๋ฒ ํธ์์๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ์ดํดํ ๋๋ ์ด ์ธ์ด๊ฐ ์ด๋ป๊ฒ ๊ฐ๋จํ ์์ด๋์ด๋ฅผ ๋ณต์กํ ์์ด๋์ด๋ก ๋ง๋ค ์ ์๋์งย
๊ทธ๊ฒ์ ์ดํดํ๋๊ฒ์ด ์ค์ํ๋ค๋ผ๋ ๊ฒ์ ๊ณต๋ถํ์.ย
๊ทธ๋ฆฌ๊ณ ๊ฐ์ฅ ๊ฐ๋จํ ๊ฐ๋ ๋ค์ ์ตํ๊ณ , ์ถ์ํ์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ด ๋๋ ๋ค์ด๋ฐ์ ์ตํ๋ค.ย
๋์ถฉ ๋์ด๊ฐ ๊ฐ๋จํ ๊ฐ๋ ๋ค์ ๋ค์ ๋ณต์ตํด ๋ณด์๋ฉด
Lisp ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ย
>> 1ย
์ด๋ ๊ฒย ์ ๋ ฅํ๋ฉด 1 ์ด๋ผ๊ณ interpreter ์์ ๋์จ๋ค.ย
์ฌ๊ธฐ์ 1์ด expression์.ย
๊ทธ๋ฆฌ๊ณ ย
>> (+ 1 4)ย
์ด๊ฑด 1 ๋ํ๊ธฐ 4์ ๊ฐ๋ค.ย
์ฌ๊ธฐ์ +, 1, 4 ๋ฅผ subexpressionย
๊ดํธ๋ก ๋ฌถ์ฌ ์๋๊ฒ์ combination์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. combination๋ expression ์.ย
๊ทธ๋ฆฌ๊ณ +๋ operator, 1 4 ๋ operand๋ผ๊ณ ๋ถ๋ฅธ๋ค.ย
๊ทธ๋ฆฌ๊ณ Lisp์์ ๋ค์ด๋ฐ์ย
>> (define x 4)ย
์ด๋ ๊ฒ ํจ. ํ์ด์ฌ์ผ๋ก ์น์๋ฉด x = 4๋ ๊ฐ๋ค.ย
๊ทธ๋ฆฌ๊ณ ๋ค์ด๋ฐ์ ํ๊ธฐ ์ํด ๊ผญ ํ์ํ๊ฒ์ด value๋ฅผ ์ฌ๋ณผ์ ์ด์ฌ์ธ ํ๊ณ , ๋์ค์ ์ฌ๋ณผ์ ํตํด์ value๋ฅผ ์ฝ์ด ์ฌ ์ ์๋ย
name -object pair ๋ฅผ ํธ๋ํน ํ๋ ๋ฉ๋ชจ๋ฆฌ์ด๋ค.ย
์ด ๋ฉ๋ชจ๋ฆฌ๋ฅผ environment (global environment)๋ผ๊ณ ํ๋ค.ย
์ฌ๊ธฐ๊น์ง๊ฐ ๋ณต์ต.ย
๋ค์ ๊ณต๋ถํ ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ๋ณธ ๊ฐ๋ ์ combination ์ ์ฒ๋ฆฌ๋ฐฉ๋ฒ์ด๋ค.ย
combination ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด ์ธํฐํ๋ฆฌํฐ๋ ๋ค์๊ณผ ๊ฐ์ ๋ฃฐ์ ๋ฐ๋ฅธ๋ค.ย
1. combination ์ subexpression ์ ์ฒ๋ฆฌํ๋ค.ย
2. ๊ฐ์ฅ ์ผ์ชฝ์ subexpression (operator)์ ์ฒ๋ฆฌ๋ฅผ ๊ทธ ์์ subexpression (operand)์๊ฒ ์ ์ฉ์ํจ๋ค.ย
1๋ฒ ๋ฃฐ์ ๋ณด๋ฉด combination ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด์๋ ๊ทธ ์์ subexpression ์ ๋จผ์ ์ฒ๋ฆฌํด์ผ ํ๋๊ฑธ ์ ์ ์๋ค.ย
์ฆ, 1๋ฒ๋ฃฐ์ subexpression ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด ๋ค์ 1๋ฒ๋ฃฐ์ ๋ถ๋ฅด๋, ์์ฐ์ ์ผ๋ก recursive (์ฌ๊ท, ๋ฐ๋ณต)์ ์ธ ์ฌ๊ณ ๋ฐฉ์์ธ ๊ฒ์ด๋ค.ย
์๋ฅผ ๋ค์ด์ ์๋์ ๊ฐ์ combination ์ ์๊ฐํด ๋ณด๋ฉดย
(* (+ 2 (* 4 6) (+ 3 5 7))
์ด๋ ๊ฒ ํธ๋ฆฌ ๋ชจ์์ผ๋ก ๋ํ๋ด์ด ์ง ์ ์์.ย ์ฌ๊ท์ ์ผ๋ก ๋ฃฐ์ด ์ ์ฉ๋์ด ์ง๋๊ฑธ ํ์ธ ๊ฐ๋ฅํ๋ค.ย
๊ทธ๋ฆฌ๊ณ ๋ํ, 1๋ฒ ๋ฃฐ์ ๊ณ์ ์ ์ฉํ๋๊ฒ์ผ๋ก ์ธํด ๊ฒฐ๊ตญ์๋ ํ๋ฆฌ๋ฏธํฐ๋ธ ์ต์คํ๋ ์ ์ ์จ์ผ ํ๋ค๋๊ฒ์ ์ ์ ์๋ค.ย
๊ฒฐ๊ตญ ๋ชจ๋ ํ๋ก์์ ธ๋ combination ์ด ์๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ expression ์ผ๋ก ๊ท๊ฒฐ๋๋ค๋๊ฒ์ด๋ค.ย
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ผ๋๊ฒ์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ด ๋๋ ํ๋ฆฌ๋ฏธํฐ๋ธ expression ์ด๋ ํ๋ฆฌ๋ฏธํฐ๋ธ ํ๋ฆฌ์์ , ๊ทธ๋ฆฌ๊ณ ๋ช๋ช special forms (์ผ๋ฐ combination ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ๋ฐ๋ฅด์ง ์๋ ํน๋ณํ ํํ๋ค)๋ก ์ด๋ฃจ์ด์ ธ ์๋ค๋๊ฑฐ.ย
์. ๊ทธ๋ ๊ตฐ.ย
๊ฒฐ๊ตญ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ผ๋๊ฑด ๊ฐ๋จํ ์์ด๋์ด๋ฅผ ์ด๋ป๊ฒ ๋ณต์กํ๊ฒ ์กฐํฉํด ๋๊ฐ๋๋~ ์ด๊ฑธ ์ดํดํ๋๊ฒ ์ค์ํ๋ฐย
๊ทธ ๊ฐ๋จํ ์์ด๋์ด๋ฅผ ํํํ๋ ๋๊ตฌ๋ก์ ํ๋ฆฌ๋ฏธํฐ๋ธํ ์ต์คํ๋ ์ ์ด๋ ํ๋ฆฌ์์ , ์คํ์ ํผ์ด ์ด์ฉ๋๊ณ ์๋ค ~
๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ๋ค์ ์กฐํฉํ๋ ๊ฐ๋จํ ๋ฃฐ์ด ์กด์ฌํ๋ค ๋ผ๋๊ฒ์ธ๊ฐ.ย
์ฌํ๊น์ง ๋ฐฐ์ด๊ฑด ๋ญ... ์ฒด์ค ๋ง์ด ํฐ์ด ์๊ณ ๋์ดํธ๊ฐ ์๊ณ , ์ฒด์ค ํ์ ๋๊ธ์ด ๋ช๊ฐ๊ณ ํฐ์ ์์ผ๋ก ํ์นธ์ฉ ์์ง์ผ ์ ์๊ณ ~ ์ด๋ฐ๊ฒ์ ๋ฐฐ์ด๊ฒ์ด๊ตฐ.ย
์์ผ๋ก๋ ์ฒด์ค์ ์ ๋ต์ด ๋์ค๋๊ฑด๊ฐ ์คํธ...ย
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ๊ณต๋ถํ๋๊ฑฐ ์๊ฐ๋์ ์ด์ง์ด์งํ์ด์ค...
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
์์ฝ๋ณธ์ธ๊ฑฐ๋ ๋ด๊ฐ ๊ทธ์ง๊ฐ์ด ์จ์ ๊ทธ๋ฐ๋ฏ. pdf ๋ค์ด๋ก๋ ๊ฐ๋ฅํ๋ ์ง์ ์ฝ์ด๋ณด๋ฉด ๋ค๋ฅผ๊ฑฐ์
ํํ์์ด๋๊ฑด ๊ฑฐ์ฐฝํ๊ฒ ์๋๊ณ Lambda Calculus ์์ Lambda expression ์ ๋ปํ๋๊ฑฐ ๋ฟ์ ๋๋ค๊ณ์ฐ๋ฒ์ ๊ณต๋ถํ๋๊ฒ ํจ์ฌ ๋์๋ ๋ฏ