어린이 · CHAPTER 02

트릿과 큐브 — 세 갈래의 셈

컴퓨터가 가장 잘하는 일은 뭘까? 네, 셈이야. 그런데 컴퓨터는 지금까지 두 갈래로만 세 왔어 — "예" 또는 "아니오", 0 또는 1처럼.

잠깐, 생각해 보자. 엄마가 물었어. "아이스크림 먹고 싶니?" 넌 대답할 수 있지:

  • "네, 먹고 싶어요." (예)
  • "아니, 안 먹을래요." (아니오)

그런데 한 가지 더 있잖아:

  • "글쎄... 아직 모르겠어요." (아직 몰라)

두 갈래가 아닌 세 갈래야. 컴퓨터가 이 세 번째 갈래를 몰랐어. 한선씨는 여기서 시작해.

양팔저울처럼 — 트릿

비트(bit)는 0과 1 두 개의 동전이라고 생각해 봐. 그럼 트릿(trit)은? 양팔저울 위에 추를 놓는 거야.

  • 오른쪽에 추를 두면: +1 (양수, "네", 티라고 부르기도 해)
  • 저울이 수평이면: 0 (중립, "명령", 옴이라고 해)
  • 왼쪽에 추를 두면: -1 (음수, "아니오", 타라고 해)

한 개의 트릿이 음수, 0, 양수를 모두 품고 있어. 신기하지? 부호를 따로 그릴 필요가 없어.

이 세 가지는 눈에 보이는 세계에 각각 속해 있어. 티와 타는 "저울의 한쪽이 내려간 상태" — 눈에 띄지? 그런데 옴은 다르다. 저울이 딱 수평인 "명령하는 상태", 마치 우주의 중심처럼 어디로도 기울지 않은 상태야. 이걸 가시선(눈에 보이는 선)이라고 생각해 봐.

그런데 사실 눈에 보이는 세계 바깥에 또 다른 영역이 있어. 그걸 음(U, -0)이라고 하는데, 블랙홀처럼 "어디로 갈지, 얼마나 될지 아무도 모르는" 상태야. 티나 타처럼 명확하지 않은 영역. 비가시선(눈에 안 띄는 선) 너머의 세계지. 한선씨 코드에서는 종종 음을 띄어쓰기(구분자)로 쓰는데, 그건 컴퓨터 칩에 맞게 디자인한 도구일 뿐이야. 음의 진짜 의미는 "알 수 없는, 미지의 영역"이야.

27개의 블록 — 큐브

레고 블록을 3×3×3으로 쌓으면 큐브가 되지? 27개 조각이 필요해. 한선씨에서도 마찬가지야.

트릿 27개가 모이면 큐브가 된다. 27 = 3 × 3 × 3. 이 큐브 하나가 한선씨의 기본 단위야. 한 개의 큐브는 한 개의 낱말처럼 일 한다. 큐브가 모여 문장이 되고, 문장이 모여 프로그램이 된다.

3개의 대답 — 진짜로 작동해

한선씨는 종이 위의 꿈이 아니야. crownyc(크라우니씨)라는 엔진이 있어. 이 엔진은 867개의 명령어를 가지고 있고, 27트릿 큐브를 진짜로 읽고 실행한다.

지금 크라우니가 운영하는 서비스들 중에, 71개가 이 한선씨 엔진으로 돌아가고 있어. 학교, 금융, 게임, 설계... 모두.

모르면 모른다고

두 갈래 생각에선 "모른다"가 없어. 0 아니면 1. 참 아니면 거짓.

한선씨는 다르다. 모름을 정직하게 다뤄. "네"(티), "아니오"(타), 그리고 "아직 몰라"(옴) 셋을 모두 셈에 넣는다. 코드에 이런 단어가 있어:

모르면 → 몰라? 그럼 이 길로 가.

신호등 같아. 빨강(타, 아니오), 파랑(티, 네), 노랑(옴, 명령·기다려). 세 개 다 필요하다.

정직한 여정

한선씨도 한계가 있었어. 처음엔 약간 약한 곳들이 있었거든. 예를 들어:

  • 소수점 계산이 안 됐어 (정수로만)
  • 매우 큰 수(약 1410억)를 넘으면 계산이 꼬였어

그런데 한 가지 알아 둬. 한계는 멈춤이 아니라 시작점이야.

테슬라의 자동차 엔지니어들이 부동소수점 없이 정수로만 계산하는 방법을 썼거든. 돈을 1000배로 키워서 셈한 다음(1.5는 1500으로), 나눗셈·제곱근·사인·코사인까지 정수로만 펼쳐서 계산하는 거야. 우리도 그 길을 따라 '고정소수점.한선'이라는 라이브러리를 만들었어. 지금 소수 3자리까지 정확하게(오차 0.001 이하) 계산할 수 있어.

한계는 정말 한계였던 게 아니라, 우리가 아직 모르던 길일 뿐이었어. 이제 넘어가고 있어.

결국, 네 갈래

컴퓨터는 0과 1로 충분하다고 생각했어. 그런데 세상은 그렇게 단순하지 않아. "예" 또는 "아니오"가 아닌 경우가 있다. 답을 모를 수도 있고, 생각할 시간이 필요할 때도 있지.

한선씨는 이 세 번째 갈래를 언어의 바닥부터 깔았어. 아니, 사실 네 갈래야:

  • 티(+1) — 데이터가 들어오는 쪽
  • 옴(0) — 명령이 일어나는 우주의 중심, 눈에 띄는 경계
  • 타(-1) — 데이터가 나가는 쪽, 연결의 길
  • 음(-0) — 그 모든 것을 품는 미지의 영역, 블랙홀처럼 알 수 없는 비가시선

트릿이 모여 큐브가 되고, 큐브가 867개 명령어를 실행하고, 그 안에 "모름"도 살고 있다. 부동소수점도 이제 품을 수 있게 되었고.

이게 네 갈래의 셈이야.

내 맘 –

독자 게시판 — 함께 읽고 남기는 곳

불러오는 중…

크라우니 책방에 가입하고 무료로 읽기

첫 번째 책은 선물이에요. 가입하면 100맘을 드리니까, 두 번째 책부터 자유롭게 읽을 수 있어요. 친구를 추천하면 50맘도 생겨요.