์ญ์ฌ์ ์ต์ํ์ ํ๊ฒฝ์ผ๋ก REPL์ ๊ฐ๋ ๊ฒ์ด ์ข์ ๊ฒ์ ๋๋ค. "repl" ๋ชจ๋๊ณผ ๊ฐ์ node.js์ ์ผ๋ถ URL์ ์ฌ์ฌ์ฉํ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค.
const Repl = require('repl');
const repl = Repl.start({
prompt: 'assemblyscript> ',
useColors: true,
ignoreUndefined: true
});
repl.on('line', line => {
line = line.trim();
// try compile assemblyscript for this line here
});
์ฌ๊ธฐ์ ์ฐ๋ฆฌ๋ ์ถ๊ฐ ๋ผ์ธ ad-hoc๋ฅผ ํ๊ฐํ ์ ์๋ ์ ์ ์ปดํ์ผ๋ฌ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ด ์ํ๋ ์ ์๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ์ ๋ ฅ์ ์ ์ฒด ๊ธฐ๋ก์ ์ ์งํ๊ณ (์๋ชป๋ ์ ๋ ฅ์ ๋ฒ๋ฆฌ๊ณ ) ๋ชจ๋ ๊ฒ์ ์ ๋ผ์ธ์ผ๋ก ๋ค์ ์ปดํ์ผํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ณ์ ํ ๋น, ํจ์ ํธ์ถ ๋ฑ์ ํฌํจํ์ฌ ์ถ๊ฐ๋์์ต๋๋ค. ์ด๊ฒ์ ์ด๋ป๊ฒ๋ ์๋ํ ์ ์์ง๋ง ์ปดํ์ผ ์๊ฐ ์ง์ฐ์ผ๋ก ์ธํด ์ข์ ์ผ์น ์ฌ๋ถ๊ฐ ๊ถ๊ธํฉ๋๋ค.
๋๋ ๊ทธ๊ฒ์ด ๊ฐ๋ฅํ๋ค๊ณ ์๊ฐํ๋ค. ์๋ฅผ ๋ค์ด Rust์๋ ์ด๋ฅผ ์ํ ๋น๊ณต์ ์์๊ฐ ์์ต๋๋ค. evcxr_repl ๋ฐ runner ์ฒ๋ผ. RFC ์ ์ ๋ ์ฐธ์กฐํ์ญ์์ค.
์ด ๋ฌธ์ ๋ ์ต๊ทผ ํ๋์ด ์์๊ธฐ ๋๋ฌธ์ ์๋์ผ๋ก ์ค๋๋ ๊ฒ์ผ๋ก ํ์๋์์ต๋๋ค. ๋ ์ด์ ํ๋์ด ์์ผ๋ฉด ํ์๋ฉ๋๋ค. ๊ทํ์ ๊ธฐ์ฌ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.