--- id: P-REINFORCE-AUTO-C7A07F category: "10_Wiki/๐Ÿ’ก Topics/Programming & Language" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - Effect TS" --- # [[Effect TS|Effect TS]] ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > Effect TS๋Š” ํƒ€์ž…์ด ํ’๋ถ€ํ•œ(type-rich) TypeScript ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•ด ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์ธ๊ธฐ ์žˆ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค [1]. ์ด ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์ฃผ๋กœ ๊ตฌ์กฐ์ ์œผ๋กœ ๋™์ผํ•ด ๋ณด์ด๋Š” ํƒ€์ž…๋“ค์„ ๋ช…ํ™•ํžˆ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•œ ๋ธŒ๋žœ๋””๋“œ ํƒ€์ž…(Branded Types) ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค [1, 2]. ๋˜ํ•œ, ์˜ˆ์ƒ๋˜๋Š” ์—๋Ÿฌ์™€ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์—๋Ÿฌ๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ฑฐ๋‚˜ `_tag` ์†์„ฑ์„ ํ†ตํ•ด ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋“ฑ ํƒ€์ž… ์‹œ์Šคํ…œ์„ ํ™œ์šฉํ•œ ๋‹ค์–‘ํ•œ ํŒจํ„ด์˜ ๊ธฐ๋ฐ˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค [3, 4]. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) * **๋ธŒ๋žœ๋””๋“œ ํƒ€์ž…(Branded Types) ๋„๊ตฌ ์ œ๊ณต**: Effect TS๋Š” TypeScript ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ๋„๋ฆฌ ์“ฐ์ด๋Š” ๋Œ€ํ‘œ์ ์ธ ๋ธŒ๋žœ๋””๋“œ ํƒ€์ž… ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค [2]. ํƒ€์ž… ๋‚ด์—์„œ ๋ธŒ๋žœ๋“œ ์—ญํ• ์„ ํ•˜๋Š” ์ œ๋„ค๋ฆญ ํƒ€์ž…์ธ `Brand.Brand`์™€ ํƒ€์ž… ๋ธŒ๋žœ๋“œ ์‹๋ณ„ ํ•จ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์ œ๋„ค๋ฆญ ํ•จ์ˆ˜ `Brand.nominal`์„ ์ œ๊ณตํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋ธŒ๋žœ๋””๋“œ ํƒ€์ž…์„ ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค [1]. * **์ •๊ตํ•œ ํƒ€์ž… ๋ธŒ๋žœ๋“œ ๋‹จ์–ธ ํ•จ์ˆ˜(`Brand.refined`)**: Effect TS๋Š” ์ œ์•ฝ ์กฐ๊ฑด์„ ๊ฒ€์ฆํ•˜๊ธฐ ์œ„ํ•ด `Brand.refined`๋ผ๋Š” ํ•จ์ˆ˜๋ฅผ ๋ณ„๋„๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค [1, 5]. ์ด ํ•จ์ˆ˜๋Š” ๊ฐ’์ด ์ œ์•ฝ ์กฐ๊ฑด์„ ์ถฉ์กฑํ•˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ํ•จ์ˆ˜์™€, ์ œ์•ฝ ์กฐ๊ฑด๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์—๋Ÿฌ๋ฅผ ๋˜์ง€๋Š” ํ•จ์ˆ˜๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์•ˆ์ „ํ•œ ํƒ€์ž… ๋‹จ์–ธ(assertion)์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค [5]. * **์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ปจ๋ฒค์…˜ ๋ชจ๋ธ๋ง**: Effect TS๋Š” ์‹œ์Šคํ…œ์˜ '์˜ˆ์ƒ๋˜๋Š” ์—๋Ÿฌ(Expected Errors)'์™€ '์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์—๋Ÿฌ(Defects)'๋ฅผ ๋ช…ํ™•ํžˆ ๊ตฌ๋ถ„ํ•˜๋Š” ์•„ํ‚คํ…์ฒ˜์  ์ ‘๊ทผ๋ฒ•์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค [3]. ์ด์™€ ๋”๋ถˆ์–ด ๋‚ด๋ถ€ ๋กœ์ง์ด๋‚˜ ๋””๋ฒ„๊น…, ๊ด€์ธก ๋„๊ตฌ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฅธ ์‘๋‹ต ๊ฐ์ฒด์™€ ์‹œ๊ฐ์ ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด `_tag`์™€ ๊ฐ™์€ ์†์„ฑ(๋ฉ”ํƒ€๋ฐ์ดํ„ฐ)์„ ์‚ฌ์šฉํ•˜๋Š” ํ›Œ๋ฅญํ•œ ์ปจ๋ฒค์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค [4, 6]. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** Programming & Language ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - **Related Topics:** [[Branded Types|Branded Types]], [[TypeScript แ„…แ…กแ„‹แ…ตแ„‡แ…ณแ„…แ…ฅแ„…แ…ต แ„แ…กแ„‹แ…ตแ†ธ แ„’แ…ชแ†จแ„Œแ…กแ†ผ|TypeScript]] - **Projects/Contexts:** Type-rich TypeScript Applications - **Contradictions/Notes:** ์†Œ์Šค์— ๊ด€๋ จ ์ •๋ณด๊ฐ€ ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค. --- *Last updated: 2026-04-18* - Raw Source: 00_Raw/2026-04-20/Effect TS.md ---