목록jargon (23)
살아가는 이야기
어떤 연산자가 idempotent라는 것은 '그 연산자를 한 번 적용한 결과나 두 번 반복하여 적용한 결과가 같다'는 뜻이다. 이 연산자를 f라고 하면 당연히 f의 정의역과 공변역은 같은 집합이어야 한다. 즉 f: A -> A 여야 한다. 연산자 f가 idempotent라는 것을 식으로 나타내면, 임의의 x에 대해 f(x) = f(f(x)) 가 만족된다는 것을 의미한다. 함수 합성을 곱으로 간주하였을 때 위 수식의 우변은 f의 거듭제곱을 x에 적용한 것으로 생각할 수 있는데, 그래서 idempotent라는 말이 생겨난 것 같다. potent라는 것은 거듭제곱(power)을 의미하고 idem은 같다(equal)는 것을 의미하기 때문이다. 우리 말로 번역하자면 "제곱동등"이라고나 할까?
NIH는 Not Invented Here의 약자로서 소프트웨어 개발 팀의 극 보수주의적 성향을 나타낸다. 내가 만든 것(아니면 우리 팀 또는 우리 회사가 만든 것) 외에는 어떤 것도 믿을 수 없다는 식의 태도를 뜻한다. 소프트웨어는 대개 여러 요소로 구성되기 마련인데, 예컨대 hello world와 같은 C 프로그램도 표준 입출력 라이브러리를 쓰게 마련이다. NIH를 신봉하는 사람들은 hello world 응용 프로그램을 작성할 때에도 자신들이 직접 만든 라이브러리만 사용하려고 할 수 있다.
재지정(overriding)은 객체지향 언어에서 사용되는 용어다. 수퍼클래스 A에 구현된 메소드 f를 서브클래스 B에서 더 구체적으로 정의할 때, f를 재지정한다(overriding)고 한다. 재지정되는 메소드의 시그너처(signature)는 같아야 한다. 중복지정(overloading)은 객체지향 언어와는 상관 없이 사용될 수 있는 용어다. 같은 이름 f를 이용하여 둘 이상의 다른 함수를 정의할 때, f는 중복지정된다(overloaded)고 한다. 예컨대 정수 두 개를 더하는 함수 int add(int, int);를 정의하고 같은 이름 add를 이용하여 실수 두 개를 더하는 함수 double add(double, double);을 정의한다면 add가 중복지정된 것이다. 재지정(overriding)과 달..
'페이소스'라는 말을 듣고 '샐러드 소스'나 '스테이크 소스'를 떠올린 사람이 한둘은 있을 것이다. 이 말은 주로 '평론'이라는 제목을 꿰찬 글에 많이 나타난다. 내가 이 단어를 처음 접한 것은 대학 때였던 것 같다. 어떤 영화에 대한 평론이었던 것 같은데, 매우 도움이 되는 내용이었지만 바로 이 단어 때문에 기분을 망쳐 버렸다. 무슨 뜻인지 모르고 한 동안 지내다가 사전을 찾아 보았다. 'pathos'. 이런 망할. 원어라도 밝혀 놓든지... 당시에는 '로고스와 파토스(logos and pathos)'라는 찻집도 유행할 때였다. 어쨌거나 여기서는 단어의 뜻을 설명하는 곳이니까 그 뜻을 적어야 겠지. PATHOS: 애수, 슬픔, 비애, 열정, ... "짙은 페이소스가 느껴진다."라는 말 대신 "짙은 슬픔..
stub은 'stub code'란 형태로 사용했었다. 사전에서 찾아보니 그루터기, 담배꽁초 등 어딘가 잘리고 남은 것이라고 나와 았다. 아래 성크(thunk)에 관한 글을 쓸 때, 스텁(stub)과 혼동했었다. 처음 스텁 코드라는 용어를 접했을 때, '껍데기만 있는 함수'라는 의미로 사용했었다. 뭔가 구현하려고 할 때, 필요한 함수들을 그냥 마구잡이로 쓰고 일단 컴파일을 통과시키려고 할 때(음. TDD랑 관련되는군), 사용하는 함수, 예컨대 C에서 { return 어떤 것; }처럼 구현한 함수를 스텁 코드라고 부른다. 요즘 위키피디아에서도 비슷한 의미로 스텁이란 용어를 쓰고 있다. 구체적인 내용이 완성되지 않았을 때, 표제어와 간단한 설명을 넣은 항목을 스텁이라고 부른다. 복잡한 세상, 스텁을 많이 활용..
퍽, 툭, 쿵 으악. 인터넷 사전을 찾아보니 thunk의 의미가 이런 것이란다. 둔탁한 충돌 소리. 추리 소설에나 나올 법한 이런 소리를 지칭하는 용어가 왜 전문용어가 되었을까? 그 이유는 잘 모르겠다. 위키피디아에서 thunk를 찾아보니 이건 내가 알고 있는 것보다 더 복잡했다. 이건 블로그니까 내 맘대로 쓰기로 했다. 성크(thunk)를 처음 접한 것은 함수형 언어를 공부하면서 였다. 함수형 언어에서 thunk는 지연 계산(lazy evaluation)될 수식(expression)을 지칭한다. 지연 계산 관련하여 언젠가 뉴스그룹에서 성크의 어원을 묻는 사람이 있었다. 그 답변 중에, '계산하려고 할 때 인수가 부족하면 스택 프레임에 부딪칠 수 밖에 없는데, 이 때 받는 충격을 의성어로 성크로 나타내는..
자곤(jargon)---요즘 인수위에서 지껄이는 대로 기록하자면 '좌근'이라고 써야 되겠지만, 이렇게 써서는 '좌근'이란 말이 자곤이 되어 버리기 때문에 그냥 자곤이라고 쓰는 것이 훨씬 바람하다고 생각한다. 어쨌거나 자곤---이란 말은 대학원 때쯤 들었던 것 같다. 머리털을 다 뽑아도 도통 알 수 없는 말을 자곤이라고 한다. 특정 그룹에서만 사용하는 말이기 때문에 그럴 것이다. 여기서는 이런 말들을 기록하는 공간으로 하려고 한다. 사실 인터넷에는 자곤을 찾을 수 있는 공간이 많이 있는 것으로 알고 있다. 이런 곳에 대한 정보를 여기에 링크를 기록해 두는 것도 좋을 것 같다. (혹시 다른 좋은 링크를 아는 분은 알려 주시기 바랍니다.) FOLDOC: 컴퓨터 관련 자곤을 찾을 수 있음위키피디아: 더 이상 설..