적확한 용어를 사용하는 것은 중요하다. 하지만 특히 외국의 언어를 들여오는 경우, 적확한 번역어를 찾지 못하면 오히려 원래의 외국말을 쓸 때보다 뜻이 잘 전달되지 않는 경우가 잦다. 가령, odd function와 even function의 경우 흔히 "기함수"와 "우함수"로 번역한다. 하지만 오히려 요새의 대학 교재의 경우 "홀함수"나 "짝함수" 등의 언어를 사용하는데, "기수"나 "우수"라는 말을 거의 쓰지 않는다는 것을 생각해보면 적절한 번역으로 생각된다.
전산학의 경우, 최근에는 컴퓨터과학이나 컴퓨터공학 정도의 언어를 이용하지만 각 학교의 커리큘럼에 따라 조금 다르지 싶다. 평소에는 전산학이라는 말이 좀 더 본질적인 어휘가 아닌가 싶었으나 학교의 커리큘럼을 생각해 볼 때 컴퓨터 자체에 대한 방점이 찍혀있는 것이 아닌가 싶다. 가령, 하드웨어 시스템 설계, 논리설계, 전기전자회로 등 아주 낮은 수준의 (흔히 low-level이라 부르는 추상화 체계의 아랫 단계에 위치하는) 과목들을 의도적으로 강조하는 의도가 있는 것처럼 느껴진다. 또 이것 관련해서는 컴퓨터 "과학"이냐 "공학"이냐 라는 주제가 논쟁적이겠지만, 이것에 대해서는 나중에 생각을 정리해 글을 쓰는 것이 좋을 것 같다.
아무튼 관련한 논쟁을 제쳐두면, 역시 프로그래밍 분야의 여러 용어들을 번역하기는 여간 껄끄러운 일이 아니다. 가령, 머신 러닝은 기계학습으로 대응하지만 딥러닝에 대한 번역어는 마땅히 찾기 힘들다. 심층학습 정도로 번역을 하는 경우가 잦지만, 원래 단어와 같은 뉘앙스를 갖는 것 같지는 않다.
이런 최근에 나타난 개념이 아니라 전산학에서 아주 오랫동안 중요한 위치를 차지한 단어들도 제대로 우리말로 바꾸어서 표현하지 못하고 있어 안타깝다. 가령, 전산학의 가장 근간이 되는 abstraction의 경우 흔히 "추상화"로 번역한다. 이 위에도 "추상화"라는 단어를 사용했듯. 하지만 단순히 추상화"라는 말이 abstraction을 적절한 대체어인가? 라는 질문에는 고개를 갸우뚱거릴 수밖에 없다. 이광근 교수는 이것에 대해 "요약하기"나 "속내용 가리기"를 꼽은 적이 있다. (http://ropas.snu.ac.kr/lib/term/)
또한 Array와 List, Vector는 매우 자주 쓰이는 단어고 그 미묘한 의미의 차이가 드러나지만, 이것을 우리말로 옮기면 그 미묘한 차이가 뭉개지는 것처럼 보인다. 또한 어느 수학책에서 그래디언트 벡터 필드를 "물매장"으로 번역하고, 또 다른 수학책에서는 "컴퓨터"와 "pivoting"을 "셈틀"과 "중쇠 돌리기"로 번역한 것을 본 적이 있다. 두 책 모두 그냥 도서관에서 원서를 빌려 원서로 공부했던 기억이 있다. 이처럼 섵부른 번역은 오히려 혼란만 낳는 경우가 빈번하다.
하지만 물론 그렇다고 해서 번역을 포기하면 영어가 모국어가 아닌 사람으로서 이해하기 어려운 말들도 있고, 다른 분야에 종사하는 이들이 쉽게 알아듣기 힘들다는 단점도 있다. 이 사이에서의 균형을 어떻게 잡아야 할 것인가? 또, 그것을 누가 결정할 수 있을까?