핵심 요약
- 개발자가 텍스트 자동 생성을 위해 'a'와 'an'을 구분하는 함수를 구현하며 예외 규칙 빈도를 조사했습니다.
- 영어 발음 사전(cmudict) 기준 32,455개 단어 중 철자 모음 규칙을 벗어나는 예외 단어는 단 129개에 불과했습니다.
- 'unicorn'이나 'hour'처럼 철자와 발음이 다른 경우가 전체 어휘 대비 의외로 극소수라는 점이 흥미를 모았습니다.
요약 게임 개발 및 텍스트 절차적 생성(Procedural Generation) 작업을 하던 한 개발자가 영어 부정관사 'a'와 'an'을 자동으로 구분해 주는 함수 `a_or_an()`을 만들려다 흥미로운 사실을 발견했습니다.
단순히 첫 글자가 모음(a, e, i, o, u)인지 체크하면 될 것 같지만, 실제 영어 규칙은 '표기된 철자'가 아닌 '발음되는 소리' 기준입니다. 예를 들어 'unicorn'은 모음 u로 시작하지만 자음 사운드(Y)로 발음되어 'a unicorn'이 맞고, 반대로 'hour'는 자음 h로 시작하지만 모음 소리(OW)가 나기 때문에 'an hour'가 되어야 합니다.
작성자는 과연 이런 발음상 예외 단어가 전체 영어 단어 중 얼마나 자주 발생하는지 궁금해져 직접 발음 사전(cmudict) 데이터를 분석하고 시각화 작업을 진행했습니다. 그 결과 분석 대상이었던 총 32,455개의 영단어 목록 중 모음 규칙에서 벗어나 별도 예외 처리가 필요한 단어는 단 129개(약 0.4%)에 불과했다는 의외의 결론을 내놓았습니다.
개발자는 하루 만에 단발성으로 작성한 코드라 LLM을 활용해 빠르게 작성했으면 D3.js나 파싱 작업 시간을 아끼고 알고리즘에 더 집중할 수 있었을 것이라는 소소한 후기도 덧붙였습니다. 방대한 영어 어휘에 비해 관사 규칙의 예외 케이스가 놀라울 정도로 적다는 점이 개발자들과 언어 덕후들의 눈길을 끌었습니다.
Sponsored · 광고