1. Role of the Compiler ๐Ÿ‘ฉโ€๐Ÿ’ป

1. Low-level/High-level Language

์šฐ๋ฆฌ๋Š” ์˜์–ด๋ผ๋Š” ์–ธ์–ด๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ง€๋งŒ ์ปดํ“จํ„ฐ๋Š” 0๊ณผ 1๋ฐ–์— ์ธ์‹ํ•˜์ง€ ๋ชป ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์‚ฌ๋žŒ์ด ์ฝ๊ณ  ์“ฐ๊ธฐ ์‰ฝ๊ฒŒ ์ž‘์„ฑ๋œ ํ˜•ํƒœ์˜ ์–ธ์–ด๋ฅผ High-level Language๋ผ ๋ถ€๋ฅด๋ฉฐ, ์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ์ˆ˜์ค€์˜ ์–ธ์–ด๋ฅผ Low-level Language๋ผ ๋ถ€๋ฅธ๋‹ค.

  • High-level Language: C, C++, JavaScript, Swift, Python, Haskell ๊ณผ ๊ฐ™์€ ์ธ๊ฐ„ ์นœํ™”์  ์–ธ์–ด๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
  • Low-level Language: Machine Language, Assembly Language ์™€ ๊ฐ™์€ ์ปดํ“จํ„ฐ ์นœํ™”์ ์ธ ์–ธ์–ด๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

Low-level Language ๋Š” ์ฝ๊ธฐ ์–ด๋ ค์šธ ๋ฟ ์•„๋‹ˆ๋ผ ํ•˜๋“œ์›จ์–ด๋ฅผ ์ง์ ‘ ์กฐ์ž‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ•˜๋“œ์›จ์–ด์— ์ข…์†์ ์ด๋‹ค. ๋”ฐ๋ผ์„œ Low-level Language ๋กœ ์ง์ ‘ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ์€ ์ƒ์‚ฐ์„ฑ๋„ ๋‚ฎ์„ ๋ถ„ ์•„๋‹ˆ๋ผ ์œ ์ง€๋ณด์ˆ˜ํ•˜๊ธฐ๋„ ์–ด๋ ต๋‹ค. ๋”ฐ๋ผ์„œ High-level Language ๋กœ ๊ฐœ๋ฐœํ•˜๊ณ  ์ด๋ฅผ Low-level Language ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ž‘์—…์„ ๊ฑฐ์น˜๋Š”๋ฐ ์ด ์ž‘์—…์„ Compiler๊ฐ€ ํ•œ๋‹ค.

2. Machine Language

์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ๋‚ฎ์€ ๋ ˆ๋ฒจ์˜ ์–ธ์–ด๋‹ค. ๊ธฐ๊ณ„์–ด๋Š” 0๊ณผ 1๋กœ ์ด๋ฃจ์–ด์ง„ ์ด์ง„์ˆ˜๋กœ ํ‘œํ˜„๋˜๋ฉฐ, ์ด๋ฅผ CPU ์— ์ง์ ‘ ์ „๋‹ฌํ•œ๋‹ค. ๋”ฐ๋ผ์„œ CPU ์™€ ์ง์ ‘ ์ƒํ˜ธ์ž‘์šฉ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ€์žฅ ๋น ๋ฅธ ์†๋„๋ฅผ ๊ฐ–๋Š”๋‹ค.

3. Assembly Language

์–ด์…ˆ๋ธ”๋ฆฌ์–ด๋Š” ๊ธฐ๊ณ„์–ด๋ฅผ ์ฝ๊ธฐ ์‰ฝ๊ฒŒ ๋ณ€ํ™˜ํ•œ ์–ธ์–ด๋‹ค. CPU ์— ๋ช…๋ น์„ ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋ฉฐ, ๊ธฐ๊ณ„์–ด์™€ 1:1 ๋Œ€์‘๋œ๋‹ค. ๋‹จ, ์ฝ๊ธฐ ์‰ฝ๊ฒŒ ๋ณ€ํ™˜ํ–ˆ๋‹ค๋Š” ์˜๋ฏธ๋Š” ๊ทธ์ € 0101 ์ด๋Ÿฐ์‹์˜ ์ด์ง„์ˆ˜๋ฅผ ABCD ๋ฅผ ์ด์šฉํ•œ ์ฝ”๋“œ๋กœ ๋งคํ•‘ํ•ด๋†“์€ ๊ฒƒ์— ๋ถˆ๊ณผํ•  ๋ฟ์ด๋‹ค. ๋”ฐ๋ผ์„œ CPU ๊ฐ€ ๋ณ€๊ฒฝ๋จ์— ๋”ฐ๋ผ ์–ด์…ˆ๋ธ”๋ฆฌ์–ด๋„ ๋ณ€๊ฒฝ๋˜๋ฉฐ, ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฐœ๋ฐœํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” High-level Language ์™€๋Š” ํ™•์—ฐํžˆ ๋‹ค๋ฅธ ์–ธ์–ด์ด๋‹ค.

4. Bytecode

Java ๋‚˜ .NET ๊ณผ ๊ฐ™์€ Virtual Machine ์„ ์‚ฌ์šฉํ•˜๋Š” ์–ธ์–ด์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ค‘๊ฐ„ ์–ธ์–ด๋‹ค. ์™„์ „ํžˆ High-level Language ๋„ ์•„๋‹ˆ๊ณ , ๊ทธ๋ ‡๋‹ค๊ณ  ์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜์ค€์˜ Low-level Language ๋„ ์•„๋‹ˆ๋‹ค. ์™œ ์‚ฌ์šฉํ•˜๋Š”๊ฑธ๊นŒ?

๋ฐฐํฌํ•œ ์ฝ”๋“œ๊ฐ€ ํ”Œ๋žซํผ์— ์ข…์†๋˜์ง€ ์•Š๋Š” ๋ฐฉ๋ฒ•์€ ๋‘ ๊ฐ€์ง€๋‹ค. JIT Compile ์„ ํ•˜๊ฑฐ๋‚˜ Interpreter ๋ฅผ ์ด์šฉํ•ด ์ฝ”๋“œ๋ฅผ ์ฝ์–ด ๋‚ด๋ ค๊ฐ€๋ฉฐ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. Interpreter ๋Š” ๋Š๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ์ ๋‹นํžˆ ์†๋„๋ฅผ ํ™•๋ณดํ•˜๋ฉด์„œ๋„, ํ”Œ๋žซํผ์— ์ข…์†๋˜์ง€ ์•Š๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด Java ๋Š” JVM(Java Virtual Machine) ์—์„œ ์ž‘๋™์ด ๊ฐ€๋Šฅํ•œ Bytecode ๋กœ compile ํ•˜๊ณ , .NET ์€ CLR(Common Language Runtime) ์—ญ์‹œ Bytecode ์™€ ์œ ์‚ฌํ•œ ํ˜•ํƒœ์˜ CIL(Common Intermediate Language) ๋ผ๋Š” ์ค‘๊ฐ„ ์–ธ์–ด๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค.

์ดํ›„ ๋ฐฐํฌ๋œ ํ”Œ๋žซํผ์—์„œ Virtual Machine ์ด ํ•ด๋‹น ํ”Œ๋žซํผ์— ๋งž๊ฒŒ JIT Compile ์„ ํ•˜๋ฉฐ ์ž‘๋™ํ•œ๋‹ค.

๊ตณ์ด ๋‘ ๋ฒˆ์˜ compile ์„ ํ•˜๋Š” ์ด์œ ๋Š” High-level Language ๋ฅผ ๋ฐ”๋กœ JIT Compile ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค Machine Language ๋กœ ๋ฐ”๊พธ๊ธฐ ์ข‹๊ฒŒ ์ตœ์ ํ™” ์ž‘์—…์„ ๋ฏธ๋ฆฌ ํ•ด๋‘์–ด ํ•„์š”ํ•  ๋•Œ JIT Compile ์„ ๋” ๋น ๋ฅด๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•จ์ด๋‹ค. ํ•˜์ง€๋งŒ ์—ฌ์ „ํžˆ Machine Language ๋ณด๋‹ค๋Š” ๋Š๋ฆฌ๋ฉฐ, Virtual Machine ์ด ๋ฉ”๋ชจ๋ฆฌ ๋ฐ CPU ์ž์›์„ ์ƒ๋‹น ๋ถ€๋ถ„ ์ ์œ ํ•˜๋Š” ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์กด์žฌํ•˜๋Š” ๊ฒƒ์€ ๋‹จ์ ์ด๋‹ค.


2. Script Language

ํ˜„๋Œ€ ์–ธ์–ด ์ค‘ ๋งŽ์€ ์–ธ์–ด๊ฐ€ Script Language ์— ํ•ด๋‹นํ•œ๋‹ค. ์ด์œ ๋Š” ์„ค๊ณ„ํ•˜๊ณ  ์‹คํ–‰ํ•˜๊ธฐ ์‰ฝ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. JavaScript ๋Š” ๋ฌผ๋ก ์ด๊ณ  Python, SQL, PHP ์™€ ๊ฐ™์€ ๋งŽ์€ ์–ธ์–ด๊ฐ€ Script Language ์— ํ•ด๋‹นํ•œ๋‹ค. High-level Language ์ค‘์—์„œ๋„ Script Language ๋Š” ๊ธฐ์กด์˜ C, C++ ๊ณผ ๊ฐ™์€ ์–ธ์–ด๋“ค๊ณผ๋Š” ๋‹ค๋ฅธ ํŠน์„ฑ์„ ๊ฐ–๋Š”๋‹ค.

Script Language ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค. Interpreter ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ Compiler ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

1. Interpreter

์ฝ”๋“œ๋ฅผ ์ฝ์–ด ๋‚ด๋ ค๊ฐ€๋ฉฐ ์‹ค์‹œ๊ฐ„์œผ๋กœ Machine Language ๋กœ ๋ฒˆ์—ญํ•ด ์‹คํ–‰ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ Compiler ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์–ธ์–ด์™€ ๋‹ค๋ฅด๊ฒŒ ์†๋„๊ฐ€ ๋งค์šฐ ๋Š๋ฆฌ๋‹ค. ๋Œ€์‹  Interpreter ์–ธ์–ด๊ฐ€ ๊ฐ–๋Š” ์žฅ์ ์€ ์ˆ˜์ •์ด ์‰ฝ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. Compile Language ๋Š” ์กฐ๊ธˆ๋งŒ ์ˆ˜์ •ํ•ด๋„ ์ „์ฒด ํ”„๋กœ๊ทธ๋žจ์„ ๋‹ค์‹œ compile ํ•ด์•ผํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿฐ ๊ณผ์ •์ด ์—†๋Š” Interpreter Language ๋Š” ์‹คํ–‰ ์‹œ์ ์— ์ฝ์œผ๋ฉด์„œ ์‹คํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฆ‰์‹œ ๋ฐ˜์˜์ด ๋œ๋‹ค.

2. JIT Compile

Interpreter ๊ฐ€ ๋„ˆ๋ฌด ๋Š๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ๋‚˜์˜จ ๋Œ€์•ˆ์ด๋‹ค. Script Language ์˜ ์žฅ์ ์„ ์‚ด๋ฆฌ๋˜, ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์‹คํ–‰ ์‹œ์ ์— ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ๋น ๋ฅด๊ฒŒ compile ํ•œ๋‹ค. ์ด๊ฒƒ์€ JavaScript ์™€ ๊ฐ™์€ High-level Language ๋ฅผ ๋ฐ”๋กœ JIT Compile ํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์ง€๋งŒ, Java ์™€ ๊ฐ™์ด JIT Compile ์„ ๋” ๋น ๋ฅด๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด Intermediate Language ๋กœ ๋ณ€ํ™˜ ํ›„ JIT Compile ํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค. ๋˜ํ•œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” compiler ์ธ LLVM ์—ญ์‹œ JIT Compile ์„ ํ•˜๋„๋ก ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค(LLVM ์€ AOT Compile ์—ญ์‹œ ์ง€์›ํ•œ๋‹ค).

3. AOT Compile

JIT Compile ์—ญ์‹œ Intermediate Language ๋ฅผ ์‹คํ–‰ ์‹œ์ ์— compile ํ•˜๋Š” ๊ฒƒ์—๋Š” ๋ณ€ํ•จ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์กด์žฌํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์—ฌ๊ธฐ์„œ ๋ฐœ์ƒ๋˜๋Š” ์†๋„๋ฅผ ๊ฐœ์„ ํ•˜๊ณ ์ž ๋‚˜์˜จ ๋ฐฉ๋ฒ•์ด AOT Compile ์ด๋‹ค.

JavaScript ์ค‘์—์„œ๋Š” Angular ๋ฅผ ์ด์šฉํ•  ๊ฒฝ์šฐ AOT Compile ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋˜ํ•œ JIT Compile ์„ ์‚ฌ์šฉํ•˜๋Š” React Native ๋Œ€๋น„ AOT Compile ์„ ํ•˜๋Š” Flutter ๊ฐ€ ์„ฑ๋Šฅ์„ฑ ๋” ์œ ๋ฆฌํ•œ ์ ์„ ๊ฐ–๋Š”๋‹ค. ๋‹ค๋งŒ JavaScript ๋ผ๋Š” ์–ธ์–ด์— ํ•œ์ •ํ•ด๋ณด๋ฉด Angular ๊ฐ€ AOT Compile ์„ ์‚ฌ์šฉํ•จ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  JIT Compile ์„ ์‚ฌ์šฉํ•˜๋Š” React ๋‚˜ Vue.js ๋Œ€์‹œ ์„ฑ๋Šฅ์ƒ ์ด์ ์ด ์—†๋‹ค. ๋˜ํ•œ React Native ๊ฐ€ Flutter ๋Œ€๋น„ ๋Š๋ฆฐ ๊ฒƒ์€ Flutter ๊ฐ€ ๊ฐ–๋Š” Skia Ui Engine์ด Browser ์˜ DOM์„ ์กฐ์ž‘๋ณด๋‹ค ์›”๋“ฑํ•œ ์„ฑ๋Šฅ์„ ๋ณด์—ฌ์ฃผ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๋ฐ˜๋ฉด, AOT Compile ์€ LLVM ๋‚˜ JVM, CLR์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ JIT Compile ๋Œ€๋น„ ๋‚˜์€ ์„ฑ๋Šฅ์„ ๋ณด์žฅํ•œ๋‹ค. ๋Œ€์‹  Machine Language ๊นŒ์ง€ ๋ฏธ๋ฆฌ ๋ฒˆ์—ญ์„ ํ•ด๋†“๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์‹œ ํ”Œ๋žซํผ์— ์ข…์†์ ์ด๊ฒŒ ๋˜๊ณ , ์ด๋Š” ๋‹ค๋ฅธ ํ”Œ๋žซํผ์— ๋ฐฐํฌํ•  ๊ฒฝ์šฐ Compile ์„ ์ƒˆ๋กญ๊ฒŒ ํ•ด์•ผํ•œ๋‹ค๋Š” ๋‹จ์ ์„ ๊ฐ–๋Š”๋‹ค.

Transpile ๊ณผ Compile ์€ ๋ฐ˜๋“œ์‹œ ๊ตฌ๋ถ„ํ•ด์•ผํ•œ๋‹ค. TypeScript ๋˜๋Š” SCSS ๋Š” ์ด๊ฒƒ์„ JavaScript ๋˜๋Š” CSS ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ๊ฒƒ์€ Transpiler ์— ํ•ด๋‹นํ•œ๋‹ค. TypeScript ์˜ tsc๊ฐ€ TypeScript compiler ์˜ ์•ฝ์–ด์—ฌ์„œ compiler ๋กœ ์ดํ•ดํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์ข…์ข… ๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด๊ฒƒ์€ ์—„๋ฐ€ํžˆ ๋งํ•˜๋ฉด High-level Language ๋ฅผ ๋‹ค๋ฅธ High-level Language ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” transpiler ๋‹ค. Babel ์ด ESNext ์ฝ”๋“œ๋ฅผ ES5 ์ฝ”๋“œ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ๊ฒƒ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋‹ค.


3. LLVM

1. LLVM Compiler

Apple ์—์„œ ๊ฐœ๋ฐœํ•˜๊ณ  ํ˜„์žฌ๋Š” LLVM Group ์œผ๋กœ์จ Apache 2.0 License ๋กœ ์šด์˜์ค‘์ธ ๋ฌด๋ฃŒ Compiler ๋‹ค. LLVM(Low-Level Virtual Machine)์˜ ์•ฝ์ž๋กœ JVM ์ด๋‚˜ CLR ์ฒ˜๋Ÿผ Virtual Machine ์ผ ๊ฒƒ ๊ฐ™์ง€๋งŒ ์ •ํ™•ํžˆ๋Š” Virtual Machine ์€ ์•„๋‹ˆ์ง€๋งŒ ์ด์™€ ์œ ์‚ฌํ•˜๊ฒŒ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ์–ด Virtual Machine ์—†์ด๋„ ์—ฌ๋Ÿฌ ํ”Œ๋žซํผ์„ ์ง€์›ํ•œ๋‹ค.

LLVM Compiler ๋Š” Frontend, Middle-end, Backend๋ผ๋Š” 3๋‹จ๊ณ„์˜ compile ๋‹จ๊ณ„๋กœ ๊ตฌ์„ฑ๋œ๋‹ค. ์ด ์ค‘ LLVM Core๊ฐ€ Middle-end/Backend ๋ฅผ ๋‹ด๋‹นํ•˜๋ฉฐ, ๊ฐ ์–ธ์–ด๋ณ„๋กœ Frontend๋ฅผ ๊ฐ–๋Š”๋‹ค. ๋”ฐ๋ผ์„œ Virtual Machine ์—†์ด๋„ ์—ฌ๋Ÿฌ ์–ธ์–ด์™€ ์—ฌ๋Ÿฌ ํ”Œ๋žซํผ์„ ์ง€์›ํ•  ๋ฟ ์•„๋‹ˆ๋ผ JIT Compile, AOT Compile ๋ชจ๋‘๋ฅผ ์ง€์›ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ํŠน์ง•์ด๋‹ค.

LLVM ์˜ Frontend ๋Š” C, C++, Objective-C ๋ฅผ compile ํ•˜๋Š” Clang, Swift ๋ฅผ compile ํ•˜๋Š” Swift-Clang, Fortran ์„ compile ํ•˜๋Š” Flang, Kotlin ์„ JVM ์—†์ด ์ž‘๋™ํ•˜๊ธฐ ์œ„ํ•ด LLVM ์„ compiler ๋กœ ์‚ฌ์šฉํ•˜๋Š” Kotlin/Native ๋“ฑ์ด ์กด์žฌํ•œ๋‹ค.

์ด ์™ธ์—๋„ Python, Ruby, Scala, Haskell, Go, Rust, Mojo ์™€ ๊ฐ™์€ ์–ธ์–ด๋“ค ์—ญ์‹œ LLVM Middle-end/Backend ๋ฅผ compiler ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

2. LLDB Debugger

LLVM ์˜ Frontend ์— ๋Œ€์‘ํ•˜๋Š” Debugger ๋‹ค. Xcode ๋กœ ๋””๋ฒ„๊น… ํ•  ๋•Œ ์ฝ˜์†” ์ฐฝ์— ์ง์ ‘ ๋””๋ฒ„๊น… ํ•˜๋ฉฐ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ”๋กœ ๊ทธ ๋…€์„์ด๋‹ค.
GCC ์˜ GDB ์— ๋Œ€์‘ํ•˜๋Š” ๊ฒƒ์ด LLDB ์ด๋ฉฐ, ํ˜„์žฌ๋Š” ์œ ๋‹‰์Šค๊ณ„๋‚˜ ๋ฆฌ๋ˆ…์Šค ์‹œ์Šคํ…œ์—์„œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. ์œˆ๋„์šฐ์—์„œ๋Š” WSL ์„ ์‚ฌ์šฉํ•ด ๋ฆฌ๋ˆ…์Šค ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.




Reference

  1. โ€œ์ปดํŒŒ์ผ๋Ÿฌ.โ€ Wikipedia. Feb. 24, 2023, Wikipedia - ์ปดํŒŒ์ผ๋Ÿฌ.
  2. โ€œJIT ์ปดํŒŒ์ผ.โ€ Wikipedia. Mar. 14, 2023, Wikipedia - JIT ์ปดํŒŒ์ผ.
  3. โ€œAOT ์ปดํŒŒ์ผ.โ€ Wikipedia. Feb. 27, 2022, Wikipedia - AOT ์ปดํŒŒ์ผ.
  4. โ€œLLVM.โ€ Wikipedia. Dec. 13, 2022, Wikipedia - LLVM.
  5. โ€œLLVM.โ€ ๋‚˜๋ฌด์œ„ํ‚ค. May. 21, 2023, ๋‚˜๋ฌด์œ„ํ‚ค - LLVM.