์น ์ด์ ๋ธ๋ฆฌ๊ฐ ์ ์ ํ ๊ผฌ๋ฆฌ ํธ์ถ์ ์ง์ํฉ๋๊น? ํ์ฌ https://github.com/WebAssembly/design/blob/master/AstSemantics.md#control -flow-structures์ "์๋ช ์ ํ ์ ์ ํ ๊ผฌ๋ฆฌ ํธ์ถ ๊ธฐ๋ฅ"์ ์ธ๊ธํ๋ ๋งํฌ๊ฐ ์์ผ๋ฉฐ ์ด๋ฌํ ์ง์์ด ๊ณ ๋ ค๋์์์ ์์ฌํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋งํฌ๋ ํฌ์คํธ MVP ๊ธฐ๋ฅ ํ์ด์ง์์ ๋๋ฝ๋ ์ต์ปค๋ฅผ ๋ํ๋ ๋๋ค. https://github.com/WebAssembly/design/blob/master/PostMVP.md#signature -restricted-proper-tail-calls
๋๋ต์ด "์๋ง๋"๋ผ๋ฉด ๊ทธ๋ฌํ ์ง์์ ๋๊ธฐ ์ํด ๊ธฐ์ฌํ ์ ์๋ ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์ ๋ฌด์์ ๋๊น?
์, ์ ์ ํ ํ ์ผ ์ฝ์ด ์ง์๋์ง๋ง MVP์์๋ ์ง์๋์ง ์์ ์ ์์ต๋๋ค. ์ด๊ฒ์ ๋ณด์ฅ๋ ๊ผฌ๋ฆฌ ํธ์ถ ์ต์ ํ์ ์์กดํ๋ ๊ธฐ๋ฅ์ ์ธ์ด์ ํนํ ์ ์ฉํฉ๋๋ค. #33 ๋ฐ #44์ ํ ๋ก ์ ์ฐธ์กฐํ์ญ์์ค. ์คํ๊ณผ ์ฑ๋ฅ ์ธก์ ์ด ํ์ํ๊ธฐ ๋๋ฌธ์ ์ง์ ๋ฐฉ๋ฒ์ ์์ง ๋ฏธ์ ์ ๋๋ค.
#33๊ณผ #44๋ฅผ ๋ณด์๋๋ฐ #45๋ ๊ด๋ จ์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฌ๋ ๋๋ ์ ์ด ํ๋ฆ ๋ถ์(ํ์ ๋ถ๊ฐ๋ฅํ ํ๋ฆ ์ ์ด๊ฐ ์ง์๋๋์ง ์ฌ๋ถ)์ ๊ธฐ๋ฐํ ๋ชจ๋ ๋ฉ์ปค๋์ฆ์ ํตํด ์ ์ ํ ๊ผฌ๋ฆฌ ํธ์ถ์ด ๋ฌ์ฑ๋ ์ ์๋์ง ํ์์ ์ ๋๋ค.
๋น์ ์ด ๋งํ๋ฏ์ด, ๊ธฐ๋ฅ์ ์ธ์ด๋ ๋ณด์ฅ๋ ๊ผฌ๋ฆฌ ํธ์ถ ์ต์ ํ์ ์์กดํ์ง๋ง, ๊ทธ๋ฌํ ์ฉ์ด๋ ์ด๋ค ํธ์ถ์ด ์ ํฉํ์ง์ ๋ํด ๋ค์ํ ์ ํ์ด ๋ถ๊ณผ๋ ์ ์๋ C/C++/etc ์ปดํ์ผ๋ฌ์ ์ํด ์ํ๋๋ TCO์ ์ข ๋ฅ์ ํผ๋์ ์ผ๊ธฐํ๊ธฐ ๋๋ฌธ์ ๋์ด์ ์ฐํธ๋ฆฌ๊ฒ ํฉ๋๋ค. ๋ฐ๋ผ์ "์ ์ ํ ๊ผฌ๋ฆฌ ํธ์ถ"์ด๋ผ๋ ์ฉ์ด๊ฐ ๋์ ์ฌ์ฉ๋ฉ๋๋ค. ์ ์ ํ ๊ผฌ๋ฆฌ ํธ์ถ์ด ์๋ ์ธ์ด์์ ๊ผฌ๋ฆฌ ์์น์ ํธ์ถ์ ํธ์ถ ํ์ฑํ ํ๋ ์์ด ์ฐจ์งํ๋ ์ ์ฅ์๋ฅผ ํฌ๊ธฐํด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๊ฐ์ ํธ์ถ์ด ํฌํจ๋๋ฏ๋ก ๋ก์ปฌ ์ ์ด ํ๋ฆ ๋ถ์์ด ์ด๋ ต์ต๋๋ค. ๋ฐ๋ผ์ ํจ์ํ ์ธ์ด ์ปดํ์ผ๋ฌ/๋ฐํ์์๋ ์ผ๋ฐ์ ์ผ๋ก ๋ช ์์ ์ธ ๊ผฌ๋ฆฌ ํธ์ถ ์์ ๊ณผ ์ด๋ฅผ ์ง์ํ๋ ํธ์ถ ๊ท์น์ด ์์ต๋๋ค.
์ ์ ํ ํ ์ผ ์ฝ ์ง์์ ๋ํ ์์ด๋์ด์ ๋ํด ์ด๋ฆฐ ๋ง์์ด ์๋ค๋ ๊ฒ์ ์ข์ ์ผ์ด๋ฉฐ ์ด ๋ฌธ์ ๋ MVP์ ๋ฒ์๋ฅผ ๋ฒ์ด๋๋ค๋ ๊ฒ์ ์ดํดํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๋ฅ ๋ซ๋ ๊ฒ์ด ์๋๋ผ ์ด์ด๋๊ณ MVP ํ / post-whatever / icebox ๋ ์ด๋ธ์ ์ง์ ํ์ฌ ๋ฌธ์ ๊ฐ ์์ง ํด๊ฒฐ๋์ง ์์์์ ๋ถ๋ช ํ ํ ์ ์์ต๋๊น?
์ฃ์กํฉ๋๋ค. ๋ฌธ์๋ฅผ ์์ ํ๊ธฐ ์ ์ ๋ซ์ ์๊ฐ์ ์์์ต๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์ด ๋ฌธ์ ๋ฅผ ์ข ๋ฃํ๊ธฐ ์ํด #190์ ์ด์์ต๋๋ค. ์๋ก์ด ๋ ์๊ฐ ์ ์ถ๋ ๋ฌธ์ ์ ์ ์ฒด ์ํ๋ฅผ ์ฝ๋ ๊ฒ๊ณผ๋ ๋์กฐ์ ์ผ๋ก ์ฌ๋ฌผ์ ์ํ๋ฅผ ๋ ์ฝ๊ฒ ์ดํดํ ์ ์๋๋ก ๋ฌธ์ ๋ฅผ ๋์์ธ์ ํ ์คํธ๋ก ์ฎ๊ฒผ์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์, ์ ์ ํ ํ ์ผ ์ฝ์ด ์ง์๋์ง๋ง MVP์์๋ ์ง์๋์ง ์์ ์ ์์ต๋๋ค. ์ด๊ฒ์ ๋ณด์ฅ๋ ๊ผฌ๋ฆฌ ํธ์ถ ์ต์ ํ์ ์์กดํ๋ ๊ธฐ๋ฅ์ ์ธ์ด์ ํนํ ์ ์ฉํฉ๋๋ค. #33 ๋ฐ #44์ ํ ๋ก ์ ์ฐธ์กฐํ์ญ์์ค. ์คํ๊ณผ ์ฑ๋ฅ ์ธก์ ์ด ํ์ํ๊ธฐ ๋๋ฌธ์ ์ง์ ๋ฐฉ๋ฒ์ ์์ง ๋ฏธ์ ์ ๋๋ค.