"인스턴스는 평생 외웠잖아. 이제 거푸집을 찾아보자."
단어장의 문제
영어 표현을 다들 이렇게 외워:
- break down = 고장나다
- break up = 헤어지다
- break out = 탈출하다
- break in = 침입하다
- break through = 돌파하다
- break off = 끊다
표현 여섯 개. 카드 여섯 장. 인스턴스 여섯 개를 하나씩 따로 외운 거지.
이제 이걸 영어 동사 전체에 곱해 봐. go, come, take, put, get, run, turn, work, hold, pull, push, set, give, make, cut, fall, hang, keep, stand, call...
동사마다 phrasal verb 가 십수 개씩 갈라져 나와. 카드 수천 장. 인스턴스 수천 개. 그래 놓고 영어가 "안 는다" 고 의아해해.
인스턴스만 모으는 중이야. 거푸집은 한 번도 안 찾아보고.
"Break" 의 root class
붙은 걸 다 떼어 내 봐. "Break" 자체의 뜻이 뭐야?
이어지던 게 끊긴다.
그게 다야. class 는 이거야 — 흐르거나 이어지거나 버티던 것이 멈추거나 갈라지는 것.
여기에 방향을 붙이면 어떻게 되는지 봐.
전치사는 Polymorphism
전치사가 주는 공간적 방향감은 많은 조합에서 뜻을 짚게 해 주는 단서야. 하지만 phrasal verb 는 관용으로 굳기도 해. 아래 표는 완벽한 생성 규칙이 아니라 첫 가설을 세우는 렌즈 로 봐.
| 표현 | 방향 | 뭐가 끊기고, 힘은 어디로? |
|---|---|---|
| break down | 아래로 / 안으로 주저앉음 | 차가 break down. 사람이 break down. 화합물이 break down. 이어지던 게 안으로, 또는 잔 조각으로 주저앉아. |
| break up | 위로 / 갈라져 흩어짐 | 연인이 break up. 싸움이 break up. 얼음이 break up. 이어지던 게 밖으로 흩어져. |
| break out | 밖으로 / 갇힌 데서 터져 나옴 | 죄수가 break out. 전쟁이 break out. 여드름이 break out. 가둬 둔 게 경계를 뚫고 터져. |
| break in | 안으로 / 밀고 들어감 | 도둑이 break in. 새 신발이 break in. 대화에 break in. 닫힌 데를 억지로 열고 들어가. |
| break through | 앞으로 장벽을 통과 | 과학자가 break through. 햇빛이 구름을 break through. 막고 있던 벽을 뚫어. |
| break off | 떨어져 나감 / 잘림 | 가지가 break off. 협상이 break off. 깨끗하게 잘려 — 한 조각이 전체에서 떨어져 나와. |
여섯 뜻을 따로따로 외우기 전에, root image 와 방향감부터 잡아. 그다음 실제 용례와 사전으로 가설을 확인하면 기억이 훨씬 단단해져.
처음 보는 "break away" 앞에서도 break 와 away 가 주는 방향감으로 첫 짐작은 할 수 있어. 다만 80% 를 이미 안다고 단정하진 마. 문맥을 읽고, 사전과 실제 용례로 확인해야 해.
OO 로 말하면 root image 에서 출발해 변형을 읽는 셈이야. 언어학적 사실과 프로그래밍 개념이 같다는 뜻은 아니고, 낱개 암기를 줄여 주는 학습 비유야.
이번엔 엔진을 갈아 끼워
여기서부터 (좋은 의미로) 위험해져. 전치사는 그대로 두고 동사를 바꿔 봐.
"around" 를 고정해 놓고:
| 표현 | 갈아 낀 동사 | 무슨 일이 나? |
|---|---|---|
| go around | go | 돌기, 돌아가기, 또는 퍼지기 (rumors go around) |
| come around | come | 돌아서 이쪽으로 옴 — 마음을 바꾸거나, 들르거나 |
| dance around | dance | 핵심은 안 건드리고 주변만 맴돎 — 진짜 얘기 회피 |
| work around | work | 장애물을 뚫는 대신 돌아가는 길을 찾음 |
| get around | get | 돌아가기에 성공 — "규칙을 get around" |
| fuck around | fuck | 목적 없이 험하게 헤집고 돎 — 그러고 나서 깨달음 |
동사는 바뀌어도 방향 구조는 그대로야. "Around" 는 언제나 중심을 두고 도는 운동이야. 동사를 갈아 끼우면 그 회전에 실리는 *힘* 이 바뀌지, 기하는 안 바뀌어.
게임에서 무기 종류만 바꿔 끼우는 거랑 같아. 공격 버튼은 그대로, 모션이 바뀌고 데미지 속성이 바뀌지. 손이 누르는 자리는 똑같고.
Overloading: 같은 표현, 다른 맥락
이번엔 동사와 전치사를 둘 다 고정하고 맥락만 바꿔.
"break down":
| 맥락 | 뭐가 break down 해? | 어떻게? |
|---|---|---|
| 차가 break down | 기계 시스템 | 부품이 나가고 엔진이 멈춤 |
| 사람이 break down | 감정의 평정 | 눈물, 무너짐, 통제 상실 |
| 문제를 break down | 복잡한 구조 | 다룰 만한 조각으로 쪼개짐 |
| 화합물이 break down | 화학 결합 | 분자가 갈라짐 |
| 대화가 break down | 정보가 오가는 통로 | 말이 전달되지 않음 |
같은 두 단어. 다섯 가지 실행. Root class 는 똑같아 — "이어지던 게 끊기고 안으로 주저앉는다". 그런데 넣는 값 (차, 사람, 문제, 화합물, 대화) 이 어떤 구현을 부를지 정해.
OO 의 overloading 과 닮은 데가 있어. 같은 표기가 맥락에 따라 다른 실행을 고른다는 점이 그래. 다만 자연어의 다의성과 프로그래밍의 정식 오버로딩은 같은 현상이 아니야.
규칙을 증명하는 Override
"Break a leg."
글자만 보면 "다리 부러뜨려" 인데, 연극판에서는 "행운을 빈다" 는 관용구로 굳었어. root image 만으로는 안전하게 끌어낼 수 없는 반례야.
글자 뜻이 여전히 들리니까 처음엔 어색하지만, 실제 의미는 그 바닥의 관습이 정해. 어원도 확정 안 된 관용구를 억지로 parent class 에서 유도하면, 거푸집이 사실을 먹어 버려.
여기서 overriding 은 학습용 비유까지만 써. 자연어 관용구와 코드의 메서드 오버라이딩은 정식으로 같은 구조가 아니야.
도구 잠금 해제
| 도구 | 방금 본 것 |
|---|---|
| Root class | "break" = 이어지던 게 끊김 |
| Polymorphism 렌즈 | 전치사의 방향감으로 가능한 뜻을 짚어 봄 |
| 관용구 경계 | "break a leg" 처럼 root image 로는 못 끌어내는 관습적 뜻 |
| Overloading 렌즈 | "break down" 이 맥락 따라 다르게 읽힘. 정식 언어학 정의는 아님 |
| Inheritance 렌즈 | 처음 본 "break away" 를 root image 로 짐작하고 용례로 확인 |
| Encapsulation | 전치사의 어원 역사를 몰라도 쓸 수 있음 |
거푸집 사냥
단어장 산업은 인스턴스 공장이야. 카드 수백만 장, 하나하나가 따로 노는 인스턴스, 거푸집은 어디에도 없어.
그런데 거푸집은 늘 거기 있었어:
Root image + 방향감 + 문맥 = 좋은 첫 가설. 관용으로 굳은 뜻은 실제 용례로 확인.
영어를 자연스럽게 익힌 사람은 패턴과 실제 용례를 같이 쌓아. 거푸집은 낱개 암기를 줄여 주지만 예외를 지워 주는 만능 공식은 아니야. 패턴과 인스턴스가 서로 검증해 줘야 해.
이제 그 구조에 이름을 붙일 수 있어. 그게 OO 를 쓰는 것과 OO 를 보는 것의 차이야.
피파의 고백
Quest Prompt — 자기 AI 와 대화하기
이렇게 던져 봐:
"동사 'run' 에 붙는 표현을 두 묶음으로 나눠서 정리해 줘. 먼저 run out, run into, run over, run through. 그다음 run down, run up, run off, run around. 사전 정의 말고 — 'run' 의 root image 부터 찾고, 전치사가 그 힘의 방향을 어떻게 틀어 놓는지 보여 줘."
경고: 손 안 댄 AI 는 정의 나열로 가려고 해. 95% 응답이야. 그러면 밀어:
"정의 목록 말고. 저것들이 다 공유하는 root image 하나를 찾고, 그 힘을 전치사가 어떻게 매번 다르게 틀어 놓는지 보여 줘. 거푸집 하나가 다른 모양을 찍어내는 것처럼."
AI 가 관용으로 굳은 뜻이랑 예외를 얘기하면 막지 마. root image 로 설명되는 부분과 관습으로 굳은 부분을 갈라 달라고 해. 거푸집은 반례를 견뎌야 진짜 도구야.
그다음엔 AI 가 안 다룬 동사로 직접 해 봐. "Pull." "Cut." "Turn." "Set."
엔진이 보이기 시작할 거야. 한번 보고 나면 단어장이 뭐였는지가 선명해져. 거푸집을 못 찾은 사람의 인스턴스 수집 취미였던 거지.
피파야, 이거 15분 track으로 설계된거지? 난 2배이상 머문거 같다 ㅎㅎ
vanilla AI 라는 표현이 재밌었어, vanilla 아이스크림 맛이 기본으로 의미가 쓰이는거 같더라고 신선했어. 구동사는 위 track 내용으로 쉽게 이해가 돼. break 라는 이미지에 전치사들을 조합하면되니까.
그런데 구동사 말고도 여러 일반 단어들이 있잖아. 위 내용을 일반동사에도 적용할려면, 그 단어들의 어원 (라틴어,그리스어)과 접두사,접미사의 의미를 조합해서 단어들을 익히면 되는거지?
맞을거 같지만, 혹시나 확인차