์„ ์–ธ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ์–ป๊ธฐ ์œ„ํ•œ ๋‹จ๊ณ„๋ณ„ ์ ˆ์ฐจ๊ฐ€ ์•„๋‹ˆ๋ผ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ ๋˜๋Š” ๊ฒฐ๊ณผ์˜ ํ‘œํ˜„์„ ๊ฐ•์กฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์ž…๋‹ˆ๋‹ค. ์ด๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ช…์‹œ์ ์œผ๋กœ ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ธฐ๋ณด๋‹ค๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ๋‹ฌ์„ฑํ•ด์•ผ ํ•˜๋Š” ๋‚ด์šฉ์„ ์„ค๋ช…ํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค. ์„ ์–ธ์  ์–ธ์–ด๋Š” ์ ˆ์ฐจ์  ์–ธ์–ด๋ณด๋‹ค ๋” ์ถ”์ƒ์ ์ด๊ณ  ๋†’์€ ์ˆ˜์ค€์œผ๋กœ ๊ฐ„์ฃผ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์œผ๋ฏ€๋กœ ๊ฐœ๋ฐœ์ž๋Š” ๋” ์ ์€ ์ฝ”๋“œ๋กœ ๋ณต์žกํ•œ ์•„์ด๋””์–ด์™€ ๋…ผ๋ฆฌ๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ์ด ํŠน์ • ์ง€์นจ์„ ํ†ตํ•ด ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฝ”๋“œ๊ฐ€ ์ง€์‹œํ•˜๋Š” ๋ช…๋ นํ˜• ๋˜๋Š” ์ ˆ์ฐจ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ ๋‹ฌ๋ฆฌ, ์„ ์–ธ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๊ธฐ๋ณธ ์‹œ์Šคํ…œ์ด๋‚˜ ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜์—ฌ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ ์ ˆํ•œ ๋‹จ๊ณ„๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ถ”์ƒํ™”๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๊ธฐ๋ณธ ์†Œํ”„ํŠธ์›จ์–ด ๋˜๋Š” ํ•˜๋“œ์›จ์–ด ์ธํ”„๋ผ์—์„œ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ตฌํ˜„ ์„ธ๋ถ€ ์‚ฌํ•ญ ๋ฐ ์ตœ์ ํ™”๋ณด๋‹ค๋Š” ์ƒ์œ„ ์ˆ˜์ค€ ๊ฐœ๋… ๋ฐ ๋น„์ฆˆ๋‹ˆ์Šค ๋…ผ๋ฆฌ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ ์–ธ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ๋ฐฉ๋ฒ•๋ก ์€ ์ˆ˜๋…„์— ๊ฑธ์ณ ๊ด‘๋ฒ”์œ„ํ•˜๊ฒŒ ์—ฐ๊ตฌ ๋ฐ ๊ฐœ๋ฐœ๋˜์–ด ์™”์œผ๋ฉฐ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์˜ ์—ฌ๋Ÿฌ ์˜์—ญ์—์„œ ๋„๋ฆฌ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋Œ€ํ‘œ์ ์ธ ์„ ์–ธ์  ํŒจ๋Ÿฌ๋‹ค์ž„์—๋Š” ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ๋…ผ๋ฆฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ๋ฐ์ดํ„ฐ ํ๋ฆ„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐ ์ œ์•ฝ ์กฐ๊ฑด ๊ธฐ๋ฐ˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๋ถ€์ž‘์šฉ์ด๋‚˜ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ ์—†์ด ์ˆœ์ „ํžˆ ์ˆ˜ํ•™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ์„ฑํ•˜๋Š” ํŒจ๋Ÿฌ๋‹ค์ž„์ž…๋‹ˆ๋‹ค. Haskell ๋ฐ Lisp์™€ ๊ฐ™์€ ์–ธ์–ด๋Š” ์ž˜ ์•Œ๋ ค์ง„ ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ๊ฐœ๋ฐœ์ž๋Š” ํ”„๋กœ๊ทธ๋žจ์˜ ๋…ผ๋ฆฌ๋ฅผ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜๊ณ  ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘๊ณ  ์–ธ์–ด ๋Ÿฐํƒ€์ž„์ด ํ•ด๋‹น ํ•จ์ˆ˜์˜ ์‹คํ–‰์„ ์ตœ์ ํ™”ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

๋ฐ˜๋ฉด์— ๋…ผ๋ฆฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ํ˜•์‹์  ๋…ผ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋ฉฐ ๋ฌธ์ œ ์˜์—ญ์— ๋Œ€ํ•œ ๊ด€๊ณ„์™€ ๊ทœ์น™์„ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€ํ‘œ์ ์ธ ๋…ผ๋ฆฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ๋Š” ๊ธฐํ˜ธ ์ถ”๋ก , ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ, ์ธ๊ณต ์ง€๋Šฅ ๋“ฑ์˜ ๋ถ„์•ผ์—์„œ ํ”ํžˆ ์‚ฌ์šฉ๋˜๋Š” ํ”„๋กค๋กœ๊ทธ(Prolog)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋…ผ๋ฆฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐœ๋ฐœ์ž๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์ผ๋ จ์˜ ๊ณต๋ฆฌ, ์‚ฌ์‹ค ๋ฐ ๊ทœ์น™์„ ์ง€์ •ํ•˜๋ฉฐ, ์–ธ์–ด์˜ ์ถ”๋ก  ์—”์ง„์€ ์ด๋Ÿฌํ•œ ์ •์˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฟผ๋ฆฌ์— ๋Œ€ํ•œ ๊ฒฐ๋ก ๊ณผ ๋‹ต๋ณ€์„ ๋„์ถœํ•ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ํ๋ฆ„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ํ”„๋กœ์„ธ์Šค๋‚˜ ๊ธฐ๋Šฅ์˜ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๊ฐ•์กฐํ•˜๋Š” ํŒจ๋Ÿฌ๋‹ค์ž„์ž…๋‹ˆ๋‹ค. ์ด ํŒจ๋Ÿฌ๋‹ค์ž„์œผ๋กœ ์ž‘์„ฑ๋œ ํ”„๋กœ๊ทธ๋žจ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ฑ„๋„์ด๋‚˜ ์—ฐ๊ฒฐ์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ๊ฐ„์— ํ๋ฅด๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€ํ™˜, ๋ผ์šฐํŒ… ๋˜๋Š” ํ•„ํ„ฐ๋งํ•˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. LabVIEW ๋ฐ Pure Data์™€ ๊ฐ™์€ ๋ฐ์ดํ„ฐ ํ๋ฆ„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋Š” ์‹ ํ˜ธ ์ฒ˜๋ฆฌ, ์‹œ๋ฎฌ๋ ˆ์ด์…˜, ์‹œ๊ฐ์  ๊ธฐ๋ฐ˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ ๊ฐ™์€ ์˜์—ญ์—์„œ ์ž์ฃผ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ œ์•ฝ ์กฐ๊ฑด ๊ธฐ๋ฐ˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ณ€์ˆ˜, ์ƒ์ˆ˜, ์ด๋Ÿฌํ•œ ์š”์†Œ ๊ฐ„์˜ ๊ด€๊ณ„ ๋ฐ ์ œ์•ฝ ์กฐ๊ฑด์„ ์ •์˜ํ•˜๋Š” ๋˜ ๋‹ค๋ฅธ ์„ ์–ธ์  ์ ‘๊ทผ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์ด ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์€ ํฌ๊ณ  ๊ฐœ๋ณ„์ ์ธ ์กฐํ•ฉ ๊ณต๊ฐ„์—์„œ ์†”๋ฃจ์…˜์„ ๊ฒ€์ƒ‰ํ•˜๋Š” ๋ฌธ์ œ์— ํŠนํžˆ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ œ์•ฝ ๋…ผ๋ฆฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(CLP)์€ ECLiPSe ๋ฐ Mozart/Oz์™€ ๊ฐ™์€ ์–ธ์–ด์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ๋…ผ๋ฆฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ ์ œ์•ฝ ๊ธฐ๋ฐ˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ๊ฒฐํ•ฉํ•œ ํ•˜์œ„ ๋ฒ”์ฃผ์ž…๋‹ˆ๋‹ค.

AppMasterno-code ํ”Œ๋žซํผ์˜ ๋งฅ๋ฝ์—์„œ ์„ ์–ธ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๊ณ ๊ฐ์ด ํ•˜์œ„ ์ˆ˜์ค€ ๊ตฌํ˜„ ์„ธ๋ถ€ ์‚ฌํ•ญ์— ์–ฝ๋งค์ด์ง€ ์•Š๊ณ  ๋น„์ฆˆ๋‹ˆ์Šค ๋ชฉํ‘œ ๋ฐ ์š”๊ตฌ ์‚ฌํ•ญ์— ์ดˆ์ ์„ ๋งž์ถ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. AppMaster ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์‹œ๊ฐ์  ๋„๊ตฌ์™€ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž๋Š” ์ง๊ด€์ ์ธ ๊ทธ๋ž˜ํ”ฝ ํ‘œํ˜„๊ณผ ๋” ๋†’์€ ์ˆ˜์ค€์˜ ์ถ”์ƒํ™”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ ์–ธ์  ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ, ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค ๋ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋…ผ๋ฆฌ๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AppMaster ์‚ฌ์šฉ์ž๊ฐ€ ์„ค๊ณ„ํ•œ ์„ ์–ธ์  ์ฒญ์‚ฌ์ง„์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์†Œ์Šค ์ฝ”๋“œ์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•˜๋ฏ€๋กœ ์ด๋Ÿฌํ•œ ์ƒ์œ„ ์ˆ˜์ค€ ์ •์˜๋ฅผ ์ตœ์ ํ™”๋˜๊ณ  ํšจ์œจ์ ์ด๋ฉฐ ์œ ์ง€ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์—ญํ• ์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด AppMaster Go, Vue3, Kotlin ๋ฐ SwiftUI ์™€ ๊ฐ™์€ ๊ธฐ๋ณธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ๋ฐ ํ”„๋ ˆ์ž„์›Œํฌ์˜ ๋ชจ๋ฒ” ์‚ฌ๋ก€์™€ ํ˜์‹ ์„ ํ™œ์šฉํ•˜๋Š” ๋™์‹œ์— ํ•ด๋‹น ๊ธฐ์ˆ ์˜ ๋ณต์žก์„ฑ์œผ๋กœ๋ถ€ํ„ฐ ์‚ฌ์šฉ์ž๋ฅผ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AppMaster ํ”Œ๋žซํผ์„ ํ†ตํ•ด ๊ตฌํ˜„๋œ ์„ ์–ธ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์€ ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ„์†Œํ™”ํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋” ์‰ฝ๊ฒŒ ์„ค๊ณ„ํ•˜๊ณ  ์ดํ•ดํ•˜๊ณ  ์œ ์ง€ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ค๋‹ˆ๋‹ค. ์„ ์–ธ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž์‹ ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋Š”์ง€๊ฐ€ ์•„๋‹ˆ๋ผ ๋ฌด์—‡์„ ํ•ด์•ผ ํ•˜๋Š”์ง€ ์ง€์ •ํ•˜๋Š” ๋ฐ ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•จ์œผ๋กœ์จ ํ˜์‹ ์„ ์ด‰์ง„ํ•˜๊ณ  ์ƒ์‚ฐ์„ฑ์„ ๋†’์ด๋ฉฐ ๊ธฐ์กด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ์ ‘๊ทผ ๋ฐฉ์‹๊ณผ ๊ด€๋ จ๋œ ๊ธฐ์ˆ ์  ๋ถ€์ฑ„๋ฅผ ์ค„์ž…๋‹ˆ๋‹ค.