전문 · CHAPTER 05

언어로 세계를 짓다 — 210개 서비스

기(起): 언어 자체가 인프라인가

한선씨가 "완성된 프로덕션 언어"라는 주장은 추상적이다. 이 장은 증명한다: crownyc.c v10.3이 현재 이 순간 71개의 라이브 서비스를 떠받치고 있다. 4상균형3진(T=+1데이터/O=0명령/A=-1체이닝/U=구분자) 토대 위에서 210개 서비스가 등록되고, 한선씨 소스 8836개가 TOAU 기계어로 컴파일되어 돌아간다는 사실 자체가 언어의 정체성을 말한다. 질문은 "이론적으로 가능한가"가 아니라 "실제로 무엇을 돌리고 있는가"다.

승(承)-1: 토대의 검증 — 867 opcode와 4380줄 컴파일러

한선씨 스택은 세 층이다.

VM 계층: crownyc.c(v10.3)는 867개의 유니크 opcode를 포함한 2진 바이너리 실행기다. ISA729 정의의 대부분(489 opcode 중 436이 활성화)이 구현되었고, 정수 연산, 3진 산술, 셀 저장소, TCP 소켓, SHA256 암호화가 네이티브다. 이는 "엔터프리터"가 아니라 각 opcode가 C로 컴파일된 전개식(dispatch)이므로, 신호 처리와 같은 실시간 요구 아래서도 지연시간 예측이 가능하다.

컴파일러 계층: hanseonc_high(4380줄)는 한선씨 고수준 문법(C-like 구문)을 TOAU 바이너리로 변환한다. 225개의 내장함수(문자열·배열·파일I/O·네트워크·3진·암호·GUI)와 24개 표준라이브러리(JSON·YAML·라우터·미들웨어·검증·템플릿·셀DB·스타일)가 함께 컴파일되며, 가져오기 모듈 체계로 네임스페이스를 구성한다. RPN 정통 경로(hanseonc_std.asm, hanseonc_rpn.c)도 같은 TOAU를 생산하나, 루트·거듭제곱·설정·포함()·크거나같다·가져오기가 미구현이어서 RPN 사용자는 hanseonc_high 결과를 신뢰해야 한다.

중간 표현: TOAU는 4상 포맷의 27-트릿 큐브들로 이루어진 바이너리다. 한선씨 소스 8836개가 이미 TOAU로 번역되었고, 449개의 TOAU 파일(.toau 바이너리)이 등록 서비스를 뒷받침한다. 이는 바이너리 캐싱의 역할을 하며, 수정과 재컴파일의 주기를 단축한다.

정리: VM의 성숙도는 "동작한다"를 넘어 "성능 최적화와 확장성까지 다룬 구현"의 수준이다.

승(承)-2: 능력의 경계 — 무엇을 지을 수 있고, 지을 수 없는가

내장함수 225개의 분포를 보면 한선씨의 강점이 명확하다.

네트워크: TCP 대기·수락·읽기·쓰기, UDP 소켓 전송·수신, TLS 인증서 로드(단, TLS 암복호화 자체는 stunnel 외부의존). 71개 라이브 서비스의 대부분은 이 TCP 계층 위에서 프로토콜을 구성한다.

암호화: SHA256 네이티브, 3진 인코딩·덧셈(modulo 3^n)·곱, 압축(zlib 래핑). 블록체인 서비스(거래소·은행·메신저)는 SHA256만으로 해시체인을 구성하고, 이더리움 호환 서명은 Node 사이드카에서 처리한다.

자료저장: 셀(Cell) 저장소는 27-트릿 큐브를 키-값 구조로 저장한다. 16M 메모리 내 셀DB는 조회·설정·삭제를 O(1)에 수행하고, RWA 거래 장부처럼 최종성이 필요한 데이터는 WAL(Write-Ahead Log) 파일로 영속화한다.

에이전트: 셀코어.한선(1414줄, 15모듈)은 규칙기반 상태기계 프레임워크다. 슬롯 13개·상태 9개·전이 규칙을 선언하면, 각 이벤트마다 규칙을 적용하고 상태를 전이시킨다. 팔란티어 대응 예시 5개(분류·정렬·의사결정·필터·집계)가 기본 포함되었다.

한계:

  1. 부동소수점 전무: 루트(√)는 정수 라디안만 지원하고, 결과는 정수다. √2 = 1. 이는 NURBS 곡면, 신경망 가중치, 공학 시뮬레이션을 배제한다. 테슬라식 스케일드정수(예: 10^6배 먼저 곱한 후 정수연산)로 우회 가능하지만, 언어 수준의 해결책은 없다.
  1. TLS는 stunnel 외부의존: 한선씨는 TLS 핸드셰이크와 암복호화를 지원하지 않으므로, HTTPS 서비스(웹서버·게이트웨이·인증)는 stunnel이 SSL/TLS 역할을 한다. crowny-gateway/stunnel_conf_gen이 인증서 관리를 자동화했지만, 구조상 외부의존은 남아있다.
  1. 외부 LLM 호출: Gemini·Claude 같은 원격 LLM은 HTTP를 통해서만 도달 가능하므로, Node.js 사이드카(fetch/http)가 필요하다. 로컬 작은모델(SLM)은 한선씨 프로세스로 띄울 수 있지만, 크기와 지연이 문제다.
  1. 대용량 텍스트 스트리밍: VM 메모리 아레나는 고정 48M(절대상한 1GB는 프로세스 OOM 방어용)이고, 단일 읽기()는 최대 16KB, 문자열 변수는 64KB 캡이다. 100MB 파일은 청크로 읽어야 한다.

정수 오버플로: 워드 길이 ~1410억대에서 래핑. 나눗셈 자연반올림(|r|≤|b|/2)이 이진탐색(NURBS FindSpan) 같은 루프에서 무한루프를 유발했다(버그 보고 및 선형스캔 우회로 해결됨). 이 설계는 3진 대칭을 보존하지만, C 개발자 기대와 충돌한다.

전(轉)-1: 증거 — 71개 라이브 서비스의 분포

서버 구현 10종+를 실명 서비스로 매핑한다:

  • 웹서버v2: crowny.org(9852), academy.crowny.org(9934), 주요 SPA 호스팅.
  • DNS서버: 54개 도메인을 *.crowny.org 호스팅.
  • 블록체인: 해시체인 + 거래소(dex.crowny.org:9402) + 거래장부(trader.crowny.org:7741).
  • 은행 P2P: bank.crowny.org(9400), 14개 제네시스 노드, 3배수 확장 시뮬레이션.
  • 메신저: 사내 연락망, 이벤트 브로드캐스트, 세션 간 메시지 큐(RabbitMQ 없이 셀DB+WAL).
  • 인증: 크라우니 회원 OAuth, 이메일/전화 검증.
  • SSR: Handlebars 템플릿(template.한선)로 HTML 생성, 캐싱.
  • 에이전트: 자율관제(크라우니관제.한선), 규칙기반 라우팅(butler·집사).
  • CRNS(crns.crowny.org): 한선씨 노드 간 통신 프로토콜.

구체적 수치:

  • 등록 서비스: 210개
  • 라이브 crownyc VM 인스턴스: 71개
  • 라이브 node.js 서비스: 102개 (외부의존이 필요한 기능들)
  • 한선씨 소스 파일: 8836개
  • 컴파일된 TOAU: 449개

이는 "아키텍처 다이어그램"이 아니라 현재 프로덕션 진행상황이다.

전(轉)-2: 정직한 지도 — 4대 벽의 명시

한선씨 생태계는 자체 평가에서 자립도 70%, LLM의존 30%로 보고했다.

강(自立度 90% 이상):

  • 수학: 98% (부동소수점만 제외)
  • 문자열: 98%
  • 네트워크: 97%
  • 알고리즘: 91%

약(LLM이나 외부에 의존):

  • 파일IO: 74% (대용량 스트리밍 미지원)
  • 자료구조: 66% (맵·큐·트리는 수작업 필요)

이 차이는 설계 결과다. 한선씨는 "모든 것을 한다"는 언어가 아니라 "특정 영역에서 탁월하고, 나머지는 정직하게 드러낸다"는 원칙 위에 세워졌다.

전(轉)-3: 대치의 현주소 — 숫자로 보는 설계된 경로

현재 72~75% 즉시 대치 가능: 이미 순수 TOAU 기반 서비스 32% + JS와 공생 가능한 구조(API 호출)로 연계된 부분 40%. Node.js 제거 시 "에러"가 아니라 "기능 일부 회피"가 되는 수준.

Aimed식 사이드카 표준화로 90% 목표: 한선씨 순수 주서버(로직·저장·암호·네트워크) + JS HTTPS 브리지(외부 LLM·클라이언트 UI) 분리 패턴을 전사에 확산하면, 언어 자체는 90% 이상 한선씨가 된다. 남은 10%는 구조상 필요한 경계(호스트OS 연동·성능 프로파일링).

이 경로는 "꿈이 아니라 공정표"다. 할 일이 명시되었다.

결(結)-1: 다음 한 걸음 — 벽을 넘는 설계

1단: 부동소수점 없는 정수연산 (테슬라식 스케일드정수) 곱셈 결과를 스케일 인수로 보정하면, 고정점 연산을 정수로 표현할 수 있다. √2 ≠ 1이 되고, 신경망·공학 시뮬레이션이 진입 가능해진다. VM 변경은 최소화되고, 컴파일러 레벨에서 스케일 삽입만 필요하다.

2단: RPN 정통 수리 hanseonc_rpn.c는 실제로 작동하나, hanseonc_std.asm(정통 어셈블러)의 루트·거듭제곱·설정·포함()·비교연산자·가져오기 구현이 누락되었다. 이는 문서 오류가 아니라 스스로 발견한 불완전이므로, 우선순위는 높지 않지만, 정통성(RPN=정본)을 위해 수리하면 모든 경로(고수준·RPN·C 코드생성)의 증명이 완성된다.

3단: 사이드카 표준화 aimed 패턴(한선씨 :9903 순수서버 + JS :9904 HTTPS 렌더)을 모든 신규 서비스 템플릿으로 채택하고, crownycode 생성엔진의 "사이드카 골격" 산출을 자동화하면, 90% 목표는 운영 정책의 문제가 된다.

결(結)-2: 의미 — 한국어가 서비스 인프라를 짓다

더해·반환·만약·동안·출력값·가져오기.

영어를 빌리지 않은 한국어 키워드로, 은행의 거래 장부를 기록하고, 블록체인의 해시체인을 구성하고, 메신저의 메시지 큐를 돌린다는 사실은 "언어의 자존감" 문제를 넘어선다. 세계 대부분의 소프트웨어 인프라가 영어 키워드를 가정했을 때, 한선씨는 한국어가 "도구"가 아니라 "운영체제의 신경"이 될 수 있다는 증명이다.

210개 서비스는 끝이 아니라 시작점이다. 다음 장을 쓸 차례는 다음 세대의 개발자들에게 넘어간다.

---

저자: 킴프레지던트에스케이(김선경) 감수: 크라우니VM v10.3, hanseonc_high 4380줄, 71개 라이브 서비스 현황(2026-06-22 실측)

내 맘 –

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

불러오는 중…

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

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