F 빨리 · 전권 통독

한선씨 만들기 · 빨리읽기판

핵심만 빠르게 · 전체 7장을 한 번에
빨리 · CHAPTER 01

왜 한국어로 컴퓨터를 짓는가

번역 단계를 건너뛴다

모국어로 사고하고 그 사고를 그대로 코드로 굳힌다. 영어 키워드를 거치지 않는다는 뜻이다. 만약, 반복, 가져오기 — 이 한글 키워드들이 곧 사고 단위이자 실행 가능한 기계어로 내려간다. 한선씨는 이를 구현하는 프로그래밍 언어다. 번역 단계가 없으면 생각과 실행 사이의 거리가 줄어든다. 그 짧아진 거리 안에서 우리 고유의 언어체계와 사고방식이 그대로 전해진다.

3진 논리 — "모름"을 1급 값으로

2진은 참/거짓 두 값만 다룬다. 한선씨의 3진 논리는 세 번째 값 "모름"을 포함한다. 인간의 사고는 예/아니오만이 아니라 아직 결정하지 못한 상태를 포함한다. 모르면 키워드가 언어 차원에서 이를 표현한다. 값으로는 참(T=+1) · 거짓(A=-1) · 모름(O=0).

4상균형3진 — T/O/A/U 네 위상

기본 단위는 27트릿(큐브, 3³). 그 네 위상은:

데이터, 명령, 연결, 경계와 미정성이 한 균형 체계 안에서 공존한다는 철학이 ISA729 명령어 구조에 녹아 있다.

3레이어 — 한글에서 기계어까지 끊김 없이

한글 → 의미코드(O층, @기호) → TOAU 기계어(A층). 한 줄의 한글 코드가 이 세 층을 직선으로 내려가며 자동 변환된다. "모국어로 짓는다"가 추상이 아니라 실제 컴파일 경로인 증거다.

정말 돌아간다

VM(crownyc.c v10.3)은 867개 유니크 opcode로 사실상 완성되었다. 고수준 컴파일러(hanseonc_high)는 4380줄, 225개 내장함수, 24개 표준라이브러리를 갖춘 프로덕션 수준이다. 철학에 그치지 않고 작동하는 시스템이다.

얼마나 쓰이는가

한선씨로 작성한 소스는 8836개, 컴파일된 TOAU 바이너리는 449개. 등록된 210개 서비스 중 라이브 크라우니VM이 71개(Node는 102개). 웹서버v2, DNS서버, 블록체인, 거래소, 은행, 메신저, 인증 등 10종 이상의 서버를 한선씨로 구현했다. 셀코어.한선은 1414줄 15모듈의 규칙기반 에이전트 프레임워크다.

남은 벽들 — 알고 넘기 시작하다

네 가지 물리적 한계가 있었다. ① 부동소수점, ② TLS의 외부의존, ③ 외부 LLM 호출, ④ 대용량 텍스트 스트리밍. 정수는 약 1410억대까지 다루고, 나눗셈은 자연반올림(|r|≤|b|/2)으로 처리한다.

그런데 변화가 시작됐다. ① 부동소수점은 더 이상 불가능한 것이 아니라 이미 넘고 있는 경계다. 테슬라의 스케일드 정수 접근을 참고해 고정소수점.한선(스케일 1000 = 소수 3자리)을 실제로 구현했다. 나눗셈, 루트, 사인, 코사인, 문자열 변환까지 최대오차 0.001로 동작한다. 이제 "부동소수점이 없다"는 한계가 아니라 "다른 방식으로 푼 설계"가 되었다. 이 정직함이 신뢰를 만든다.

그럼에도 자립에 가까워지고 있다

이미 순수 TOAU 코드 비율이 32%, 즉시 대치 가능을 합치면 72~75%다. 주서버를 한선씨로, HTTPS 브리지를 JS로 하는 사이드카 방식을 표준화하면 약 90%에 도달할 수 있다. 크라우니코드 생성엔진의 자립도는 70%(LLM 의존 30%) — 수학 98%, 문자열 98%, 네트워크 97%, 알고리즘 91%에서 강하고, 파일IO 74%, 자료구조 66%에서 보완이 나아가고 있다.

다음 한 걸음

고정소수점으로 ① 부동소수점 벽의 대부분을 돌파한다. RPN 정통 컴파일러(hanseonc_rpn.c는 실제 작동하나 문서가 미완성)를 수리한다. 사이드카 방식을 표준화하여 ~90% 자립을 달성한다. "완성됐다"가 아니라 "여기까지 왔고 다음은 이것"이라는 지속하는 비전으로.

결론

한국어로 컴퓨터를 짓는다는 것은 외산 언어의 번역자로 남지 않고, 모국어로 사고하며 그 사고가 곧 실행 가능한 기계어가 되는 자립된 컴퓨팅 체계를 세우는 일이다. 2진의 예/아니오를 넘어 모름을 품는 3진 균형으로, T/O/A/U의 4상균형 위상으로, 알고 있는 한계를 정직하게 넘기 시작함으로써. 이것이 한선씨가 짓는 길이다.


빨리 · CHAPTER 02

트릿과 큐브 — 세 갈래의 셈

후크: 세 번째 갈래

컴퓨터는 0과 1, 두 갈래로만 센다. 그런데 셈의 본질엔 세 번째 자리가 있다 — "예", "아니오", 그리고 "아직 모른다". 한선씨는 이 세 번째 갈래를 바닥부터 쌓아 만든 언어다.

트릿: 3진의 기본 알갱이

비트가 0/1 두 값이듯, 트릿(trit)은 세 값을 가진다. 한선씨는 균형3진을 쓴다:

비유: 양팔저울. 추를 양쪽에 놓으니 음수가 자연히 표현된다(별도 부호비트 불필요).

음(U)은 단순한 띄어쓰기가 아니다. 코드에선 FPGA 2진 매핑의 도구로 띄어쓰기가 되지만, 본질은 "갈 곳을 모르는 에너지의 경계" — 블랙홀처럼. 옴(0, 화이트홀)이 가시선 위 세계라면, 음(−0)은 그 바깥 비가시선을 다루는 영역. 코드는 이 우주론적 의미를 도구로 구현한 것이다.

균형3진의 자연스러움

양팔저울처럼 한 자리가 티·옴·타를 모두 담으니, 부호가 숫자 안에 내장된다. 가장 깊은 이점은 나눗셈에서 드러난다:

한선씨 나눗셈은 가장 가까운 정수로 떨어진다(|나머지|≤|제수|/2).

균형3진의 대칭성에서 자연히 나오는 규칙. 100÷2=50 같은 보통 셈은 정확하지만, 이진탐색 (lo+hi)/2는 올림으로 튀어 무한루프에 빠질 수 있다 — 정직한 한 줄 경고.

27트릿 큐브: 언어의 기본 단위

한선씨의 기본 단위는 큐브 = 27트릿(3×3×3).

트릿이 글자라면 큐브는 낱말. 이 큐브 위에서 ISA729 명령어 체계(489개 구현 opcode)가 돈다. crownyc.c v10.3 VM이 27트릿 큐브를 네이티브로 실행한다.

큐브는 4상(티/옴/타/음)이 공존하는 최소 구조다. 각 면이 한 상(狀)을 지배하면서도, 중심의 음(−0)이 무한능력 경계로 작동한다.

셈이 실제로 돈다

3진 산술은 종이 위 이론이 아니다. VM에 내장된 함수:

이들이 실제로 작동한다(v10.3 기준).

Kleene 3값 논리: 모름이 일급 시민

2진 논리는 참/거짓 둘뿐. 한선씨는 Kleene 3값 논리:

데이터가 없을 때 거짓으로 억지 떨어뜨리지 않고 '모름'을 그대로 들고 셈한다. 한글 키워드 모르면이 언어에 들어가 있다.

이것이 왜 중요한가? 현실의 셈은 불완전하다. 세 번째 갈래를 정직하게 비워 두면, 그 빈 자리가 스스로를 채워간다.

정직한 경계, 그리고 극복 시작

3진의 아름다움에도 물리적 벽이 있었다(과거형):

  1. 부동소수점 전무 — 이미 극복 중. 고정소수점 라이브러리를 실제 구현했다(스케일 1000=소수 3자리, 최대오차 0.001). 테슬라가 사용한 스케일드정수 기법으로 루트·사인·코사인·나눗셈을 정수 연산으로만 푼다. 다음은 가속화와 표준화.
  2. 정수 오버플로 — 약 1410억대에서 래핑. 대부분의 응용은 범위 내. 필요한 곳에만 빅인트 라이브러리로 확장.
  3. TLS 외부의존 — stunnel로 해결됨.
  4. 텍스트 스트리밍 캡 — 단일 읽기 16KB, 문자열 64KB 상한. 유연한 설계로 대응.

부동소수점 벽은 "못하는 것"이 아니라 "다른 방법으로 이미 넘기 시작한 경계"다.

결: 흑백의 틈

세 갈래의 셈은 흑백을 버리는 게 아니라, 흑과 백 사이에 '모름'의 자리를 정직하게 비워 두는 일이다.

트릿이 큐브가 되고, 큐브가 489 opcode VM 위에서 돌며, 4상(티/옴/타/음)이 함께 작동하는 언어가 실제로 물리 벽을 넘으면서 진화한다. 다음은 이 큐브 위에 어떻게 명령어와 언어가 쌓이는가.


빨리 · CHAPTER 03

컴파일러의 두 길

한선씨 한 벌의 소스는 두 갈래 길로 컴파일된다. 고수준 hanseonc_high(4,380줄)와 RPN 정통 hanseonc_std. 둘 다 같은 목적지에 도착한다: TOAU 기계어. crownyc VM이 그걸 실행한다.

큰길: 고수준 hanseonc_high

지금 프로덕션 표준이자 실서비스가 다니는 길이다.

정도(正道): RPN 정통 hanseonc_std

한선씨 헌법이 가리키는 길이다. RPN(역폴란드 표기)은 ISA729 opcode와 1:1 대응한다. "한선씨 = 한국어 RPN = ISA729 1:1" — 이것이 설계의 정본.

현실은 진화 중이다. 정통 어셈블리(hanseonc_std.asm, 1765줄)는 루트·거듭제곱·설정·꺼내·크거나같다·가져오기 6개가 미구현 상태다. 그런데 정통의 C판 구현(hanseonc_rpn.c)은 이미 작동한다. 생태계 빌드가 지금 이 버전으로 돌아간다.

극복의 궤적: ".asm은 정지, .c는 진행" — 정통이 부분 무장 상태다. 전멸이 아니다. hanseonc_rpn.c 안에 정도(正道)가 살아 있고, 그 6개 함수들을 정통 어셈블리에 역이식하는 작업이 이미 진행 중이다.

같은 기계어라는 사실

두 길이 모두 동일한 TOAU를 생산한다는 점이 핵심이다. 고수준으로 짠 코드도 정통과 같은 4상균형3진(T/O/A/U) 기계어가 된다. 문법은 둘, 기계어는 하나.

음(U, -0)의 역할: 단순한 '띄어쓰기'가 아니라, 화이트홀(옴)과 블랙홀(음)을 나누는 경계다. 옴(O, 0)은 "지금 여기 가시선의 상태", 음(U, -0)은 "다음이 어딘지 아직 모르는 비가시선 영역" — 코드에서는 연산자 사이의 구분으로 나타나지만, 우주론적으로는 그 경계 자체가 정보의 진입로다.

공통 토대:

부동소수점 없음 = 이미 넘은 경계

초판 집필 중, 한선씨는 "정수만 쓴다"는 한계가 있다고 생각했다. 그런데 테슬라의 접근(스케일된 정수, 고정소수점)을 참고해 '고정소수점.한선' 라이브러리를 실제로 만들고 검증했다. 스케일 1,000(소수 3자리), 나눗셈/루트/사인/코사인/문자열 변환까지, 최대오차 0.001.

정수 연산이 부동소수점보다 정확하고 빠르다는 걸 이미 알고 넘어가고 있다. 한계가 아니라 깨달음이다.

실무 지침

지금 서비스를 만든다 → 고수준 hanseonc_high. 프로덕션 표준이고 큰길이다.

새 코드의 정본·정통 정렬 → RPN 정통으로 학습, 빌드는 hanseonc_rpn.c가 받친다.

정통화 다리: clike_to_rpn(고수준 → RPN 변환기)이 두 길을 이어준다.

다음 단계

정도(正道)의 완전 복원은 hanseonc_std.asm의 6개 함수 구현으로 온다. 그때 "정통과 고수준의 완전한 병존" 체계가 완성된다. 지금은 진정하게 "두 길, 부분 개통 중, 다음 파도 대기" 상태다.

컴파일 시 주의: stderr를 분리하지 않으면 기계어에 에러메시지가 섞인다. > out.toau (절대 2>&1 금지).


빨리 · CHAPTER 04

표준 도서관 — 225 내장함수와 24 라이브러리

손에 쥔 연장부터 — 225 내장함수

한선씨 코드를 짤 때 가져오기 없이 바로 쓸 수 있는 함수 225개가 이미 손 안에 있다.

문자열(UTF-8): 글자수 글자 부분 포함 문자열변환 — 문자를 만지는 기초. 배열: 길이 추가 설정 정렬 — 리스트 조작은 라이브러리 설치 없이 끝. 파일 I/O: 읽기 쓰기 덧쓰기 파일존재 — 파일을 꺼내고 도로 넣는 것. TCP/소켓: TCP대기 TCP수락 TCP읽기 TCP쓰기 소켓생성 소켓보내기 — 네트워크는 키워드. 3진 연산: 삼진인코딩 삼진디코딩 삼진덧셈 — 4상균형3진을 손가락으로. 수학: 거듭제곱 루트 사인 로그 무작위 팩토리얼 절댓값 반올림 내림 올림. 보안: SHA256. 기타: GUI, 통계, 수론, 비트연산, 압축 — 각각 십수 개씩.

합쳐 225개. 대부분의 언어는 "라이브러리를 설치한다"로 시작하는 일을 한선씨는 키워드 하나로 끝낸다.

---

책장에서 꺼내는 것 — 24 표준라이브러리

더 깊은 기능이 필요하면 가져오기 "라이브러리이름.한선"으로 표준라이브러리를 불러온다.

웹 묶음: 라우터, 미들웨어, 인증, 템플릿, 뷰, 스타일 — 웹 서버를 한 줄로 시작. 데이터 묶음: JSON, YAML, 셀저장소, 셀DB, 바이트버퍼, 큐 — 데이터를 담고 꺼내는 상자들. 시스템 묶음: 설정, 환경, 프로세스, 날짜, 타이머, 로깅, 검증, 네이티브, 하드웨어 — 기계 시간과 기계 손아귀. 통신 묶음: 네트워크, TLS.

24개 전체 나열: 문자열, JSON, YAML, 네트워크, 라우터, 미들웨어, 인증, 로깅, 검증, 템플릿, 설정, 환경, 날짜, 타이머, 프로세스, 바이트버퍼, TLS, 큐, 셀저장소, 뷰, 스타일, 셀DB, 네이티브, 하드웨어.

각 라이브러리는 내장함수와 같은 TOAU 기계어로 컴파일되어 crownyc VM이 실행한다.

---

에이전트 서가 — 셀코어, 규칙기반 프레임워크

가져오기 "셀코어"로 불러오는 1414줄 15모듈. 규칙기반 에이전트의 뼈대다.

핵심 개념: 룰생성 → 룰조건추가 → 룰변경추가. 함수와 조건문 대신 규칙으로 코드를 쓴다. 상태기계, 의사결정, 팔란티어 멀티에이전트가 라이브러리 한 줄로 시작된다.

---

무엇을 이미 만들었나 — 10종+ 서버

표준 도서관의 조합만으로 도는 서버들:

웹서버v2, DNS서버, 블록체인, 거래소, 은행, 메신저, 인증, SSR, 에이전트, CRNS.

라이브러리 조합이 풀스택을 세운다. 증거는 추측이 아니라 이미 도는 서버 목록이다.

---

얼마나 쓰이나 — 정직한 규모

서비스 210개 등록. 라이브 크라우니VM 71개 vs Node 102개 — 한선씨가 아직 더 작은 규모임을 숨기지 않는다. 한선씨 소스 8836개, TOAU 449개.

도서관은 전시품이 아니라 매일 쓰인다. 동시에 Node가 여전히 더 많다는 사실도 정직하다.

---

아직 비어 있는 책장 — 4대 물리적 벽

도서관이 채워야 할 부분:

  1. 부동소수점 전무: 고정소수점만 있다. 루트2 = 1, 사인은 정수 라디안만. 과학계산은 아직.
  2. TLS는 외부의존: stunnel로 우회. 순수 한선씨 TLS는 미완.
  3. 외부 LLM은 Node 사이드카 필요: 크라우니AI 호출은 JavaScript 브릿지.
  4. 대용량 텍스트 스트리밍 캡: 단일 읽기 16KB, 문자열 64KB 한계. 기가바이트 파일은 다른 경로.

보조 함정: 정수 오버플로 ~1410억대, 나눗셈 자연반올림이 이진탐색을 무한루프로 만들 수 있다.

아는 만큼만 쓴다: 이 벽들을 알면 안전하게 도서관을 쓴다.

---

생성엔진의 힘 — 어느 책장이 튼튼한가

크라우니코드 자동생성엔진 자립도 70% (LLM의존 30%).

강한 책장: 수학 98%, 문자열 98%, 네트워크 97%, 알고리즘 91% — 손이 거의 안 간다. 약한 책장: 파일I/O 74%, 자료구조 66% — 아직 사람 손이 더 든다.

강한 책장에서 작업하면 도서관이 거의 다 해준다.

---

다음 대치 — 세상을 얼마나 덮나

이미 순수 TOAU 32% — 한선씨만으로 도는 서비스 3할 이상. 즉시 대치가능 합쳐 72~75% — 작은 수정으로 JavaScript를 걷어낼 수 있는 부분. 사이드카 표준화 시 ~90% — 순수한선 주서버 + JS HTTPS 브릿지 패턴 하나를 정하면 거의 다.

표준 도서관만으로 세상의 4분의 3을 다시 쓸 수 있다.

---

도서관은 자라는 서가다

부동소수점 없는 정수연산(테슬라식 스케일드정수)으로 4대벽 첫 번째를 돌파하고, RPN 정통 컴파일러를 손질하고, 사이드카를 표준화하는 다음 책장이 이미 그려져 있다.

도서관은 완성품이 아니다. 무엇이 꽂혀 있고, 무엇이 비었고, 다음에 무엇이 꽂힐지를 정직하게 안다는 것이 우리의 방식이다.


빨리 · CHAPTER 05

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

1. 한국어가 인프라다

한선씨는 장난감이 아니다. 지금 이 순간 71개의 라이브 서비스가 한선씨 VM 위에서 돌아가고 있다. 더해·반환·만약·동안—이 한글 키워드들이 은행의 거래를 처리하고, 블록체인의 해시를 계산하고, 메신저의 메시지를 전달한다.

한선씨 = 4상균형3진 기반 한국어 프로그래밍 언어. 큐브는 27트릿, ISA729 기반.

질문: 한국어로 짠 코드가 정말 은행을, 블록체인을 돌릴 수 있는가? 답: 벌써 돌리고 있다.

---

2. 토대: 3단 완성

세 가지가 갖춰졌기에 가능했다:

  1. VM (crownyc.c v10.3): 867개 유니크 opcode, 사실상 완성
  2. 컴파일러 (hanseonc_high): 4380줄, 225 내장함수 · 24 표준라이브러리, 프로덕션급
  3. 표준라이브러리: 문자열·배열·파일I/O·TCP/UDP·3진·SHA256·압축·GUI·통계·네이비게이션·셀DB

고수준(.한선)과 RPN 두 경로 모두 같은 TOAU 기계어를 생산한다. crownyc가 그것을 실행한다.

---

3. 능력: 닿는 영역

한 언어로 네트워크·암호·저장·의사결정 전부를 닿는다.

---

4. 증거: 실제 돌아가는 것들

210개 등록 서비스 중:

서버 구현 10종 이상:

증거 4개 사례(각 절):

① 블록체인: 해시체인 + SHA256 네이티브. 머클증명까지 한글로.

② 은행: 정산·이체·정덕천 대표 자산이전 시스템. 고정소수점 정수연산으로 금액 무버림.

③ 메신저: TCP 소켓, 미들웨어 라우팅, 셀 기반 사용자상태.

④ 책서버: 텍스트 스트림+규칙 렌더링, Markdown 파싱부터 출판까지 한 언어.

---

5. 정직한 지도: 아직 닿지 못한 것

4대 물리적 벽:

  1. 부동소수점 전무 — 고정소수점만. 루트2=1, 사인은 정수라디안만.
  2. TLS는 외부의존 — stunnel 사이드카 필요.
  3. 외부 LLM은 Node 필요 — 한선씨에서 Gemini 직접 호출 불가.
  4. 텍스트 스트리밍 한계 — 단일읽기 16KB, 문자열 64KB 캡.

또한:

벽을 숨기지 않는다. 정직한 지도가 신뢰를 만든다.

---

6. 현주소: 자립도

- 강: 수학 98% · 문자열 98% · 네트워크 97% · 알고리즘 91% - 약: 파일IO 74% · 자료구조 66%

72~75%는 이미 도달. 90%는 설계된 경로다.

---

7. 다음 한 걸음

세 방향:

  1. 부동소수점 돌파 — 테슬라식 스케일드정수로 4대벽 ① 해결
  2. RPN 정통 수리 — hanseonc_rpn.c는 실제 작동하지만, hanseonc_std.asm에 루트·거듭제곱·설정·꺼내·크거나같다·가져오기 미구현. 문서와 코드 일치.
  3. 사이드카 표준화 — 주서버 순수한선 + JS HTTPS 브리지 패턴 통일

남은 길은 막연한 소망이 아니라 이름 붙은 과제 목록이다.

---

8. 의미

영어 키워드를 빌리지 않고, 한국어(더해·반환·만약·동안)로 은행과 블록체인을 돌린다.

이것은 기술이 아니라 문명적 사건이다.

210개는 끝이 아니라 시작점. "언어로 세계를 짓다"의 다음 장은 독자가, 다음 세대 개발자가 쓴다.


빨리 · CHAPTER 06

정직한 지도 — 네 개의 벽

한선씨는 4상균형3진(T=+1데이터/O=0명령/A=-1체이닝/U=-0비가시선) 위에 선 한국어 프로그래밍 언어다. VM은 867개 유니크 opcode로 완성됐고, 고수준 컴파일러(4380줄, 225 내장함수·24 표준라이브러리)는 프로덕션 표준이다.

지도에는 네 개의 칠하지 못한 칸이 있다. 과장하지 않고 정직하게 그으면, 다음으로 갈 길이 보인다.

첫째 벽: 부동소수점 — 고정소수점으로 넘기 시작

한선씨에는 IEEE754 부동소수점이 없다. 설계선택이다. 4상균형3진은 정수의 우주를 택했다.

벽을 만난 순간: NURBS 곡면 보간, 물리시뮬레이션, 신경망 학습을 한선씨로 짤 때 소수를 피할 수 없다.

돌파방법: 테슬라(차량제어)·ARM(고정소수점 CPU)이 증명한 접근—스케일드정수. 예를 들어 스케일 1000을 정하면 π는 3141로 저장, 나눗셈 후 1000으로 재조정한다. 루트·사인·코사인·로그 같은 함수를 정수 계산으로 정의한다. 지금 한선씨 표준라이브러리에 고정소수점.한선이 실제 구현되어 있다(스케일 1000, 최대오차 0.001, 테스트 통과).

현재 상태: 이 벽은 이미 넘기 시작했다. 정수의 우주를 포기한 게 아니라 정수 안에서 소수를 표현하는 방법을 찾은 것이다.

둘째 벽: TLS — 우회 표준으로 진화 중

한선씨는 TLS 핸드셰이크를 stunnel에 의존한다. 표준라이브러리에 TLS 항목은 있지만 인증서 검증과 핸드셰이크 순서는 stunnel이 처리한다. HTTPS를 끝까지 순수 한선씨로 닫지 못하는 경계다.

현황: 모든 게이트웨이(crowny.org 210+ 도메인)가 이 패턴으로 라이브한다. stunnel은 성숙한 도구이고, 우회표준으로 자리 잡았다.

다음 목표: stunnel 없이도 TLS 스택 전체를 한선씨로 구현하는 것. 지금은 필요한 목표가 아니라 정직한 경계다.

셋째 벽: 외부 LLM 호출 — 사이드카 표준화로 해법 명확

외부 거대언어모델(Claude, Gemini 등)을 호출하려면 Node 사이드카가 필요하다. aimed 패턴이 표준이다: 순수 한선씨 주서버 + Node HTTPS 브리지.

희망: 이 사이드카를 정식 표준(crowny-sidecar.js)으로 만들면 대치율이 ~90%까지 오른다. 현재 순수toau는 32%, 사이드카 포함하면 72~75%가 곧바로 한선씨로 돌릴 수 있는 상태다.

사실: 온전한 한선씨로만 쓸 수 있는 영역이 있고, LLM 브리지가 필요한 영역이 있다는 뜻이다. 후자를 잘 보면 경계가 명확해진다.

넷째 벽: 대용량 텍스트 스트리밍 — 아레나 한계와 다음 설계

단일읽기 16KB, 문자열 64KB 캡이 있다. 48M 고정 아레나, GC 없는 메모리 모델이 만난 용량 벽이다. 큰 텍스트를 한 번에 흡수하는 스트리밍이 제한된다.

현재: 대부분 서비스는 이 범위 안에서 작동한다. 필요할 때만 청크 스트리밍으로 우회한다.

다음 목표: 동적 아레나 성장(필요시 2배씩 할당, 절대상한 1GB)을 넣어 무한 스트리밍에 가까워지는 것. 이건 설계 문제지 언어의 한계가 아니다.

벽 안의 두 함정

정수 오버플로: 정수 워드는 약 1410억 대에서 래핑된다. 큰 곱셈은 단계축소(예: /1000 먼저)가 필수다.

나눗셈의 자연반올림: 한선씨 나눗셈은 |r|≤|b|/2 반올림을 쓴다. 그래서 (lo+hi)/2 식 이진탐색이 무한루프에 빠진다(NURBS FindSpan 실증). 회피는 선형스캔이나, 이것도 "알면 우회 가능"이지 못하는 게 아니다.

왜 이것이 약점이 아니라 정직인가

크라우니코드 생성엔진 자립도는 70%(LLM의존 30%). 강점은 명백하다: 수학 98%·문자열 98%·네트워크 97%·알고리즘 91%. 약한 곳도 명백: 파일 IO 74%·자료구조 66%. 강함과 약함을 같은 표에 나란히 적는 것이 정직한 지도의 본질이다.

음(U,-0)은 블랙홀—어디로 갈지 알 수 없는 비가시선의 영역이다. 이 네 벽들이 음이다. 지도에 음을 명확히 그으면, 다음 여행자들은 어느 방향을 향해야 하는지 안다.

다음 한 걸음

부동소수점은 고정소수점.한선으로 이미 돌파했다. RPN 정통은 hanseonc_rpn.c로 문서를 정정하며 깨진 부분을 수리하고 있다. TLS와 LLM은 사이드카 표준으로 우회를 제도화한다. 대용량은 아레나 성장으로 다음 아키텍처를 그린다.

정직한 지도는 완성된 영토보다 강하다. 한선씨는 못 하는 것을 적어둔 언어이고, 적어두었기에 메워나갈 수 있다.


빨리 · CHAPTER 07

다음 — 부동소수점 없는 미래

출발점: 이미 살아 움직인다

한선씨는 갈 길을 왔다. crownyc.c v10.3는 867개 유니크 opcode로 사실상 완성. hanseonc_high 컴파일러는 4380줄, 225 내장함수·24 표준라이브러리로 프로덕션 수준.

한선씨 소스 8836개, TOAU 바이너리 449개, 라이브 서비스 210개 등록됐다. 크라우니VM 71개, node 102개가 함께 돈다. 언어는 죽지 않았다 — 움직인다.

그러나 벽이 있다. 정직하게 말해야 한다.

4대 벽: 과장 없이

①부동소수점 전무. 고정소수점만 존재. 루트2=1, 사인은 정수라디안만. 이것은 약점일까? 아니다. 선택이다.

②TLS는 외부의존. stunnel 없이 독립 HTTPS를 못 한다.

③외부 LLM은 Node 사이드카. 크라우니만으로는 Claude/Gemini를 호출할 수 없다.

④텍스트 스트리밍 캡. 단일읽기 16KB, 문자열 64KB 최대. 대용량 스트림은 분할 필수.

그리고 함정: 정수 오버플로 약 1410억대, 나눗셈의 자연반올림(|r|≤|b|/2)이 이진탐색을 무한루프로 만든다.

핵심: 부동소수점이 아니라 본성

4상균형3진은 정수의 세계다. 큐브=27트릿이 기본단위.

여기서 중요한 것은 음(U, -0)의 의미다. 음은 단순한 "띄어쓰기·구분자"가 아니다. 음은 어디로 갈지, 얼마나인지 모르는 비가시선 영역 — 가시선(옴·0이 있는 영역) 너머를 품는 검은 구멍 같은 것이다. 그것이 정수의 경계에서 벽()되는 구간들을 명확히 표시한다.

부동소수점을 흉내 내는 대신, 정수의 정밀성을 음의 경계 개념과 함께 무기로 삼는다는 방향이 정답이다.

돌파: 이미 시작됐다

1) 스케일드 정수로 벽①넘기 — 구현됨

테슬라가 부동소수점 대신 고정 스케일(예: ×1000)로 안전·결정성을 확보한 방식. 루트·사인·로그를 정수 영역에서 재구현한다. 한선씨는 이미 고정소수점.한선 라이브러리로 이 돌파를 실현했다(스케일 1000=소수 3자리, 나눗셈/루트/사인/코사인/문자열 변환, 최대오차 0.001).

결정성(매 실행 동일 결과)은 블록체인·회계·검증에 직결된다. 부동소수점 없음은 한계가 아니라 이미 넘은 경계다.

2) RPN 정통 수리

현재 RPN 정통(hanseonc_std.asm)은 루트·거듭제곱·설정·꺼내·크거나같다·가져오기가 깨져 있다. 그러나 RPN C판(hanseonc_rpn.c)은 작동하고, 생태계 빌드가 이미 이것을 쓴다.

문서를 hanseonc_rpn.c 기준으로 정정하면 — 한선씨 RPN = ISA729 1:1이라는 정통 위계가 복원된다.

3) 사이드카 표준화

외부 의존을 부정하지 말고 표준화하자. aimed식 — 순수 한선씨 주서버 + JS HTTPS 브리지 — 를 정식 패턴으로.

현재 순수 toau 32%, 즉시 대치 가능 합산 72~75%. 사이드카 표준화하면 대치 ~90%.

자립도: 70%에서 90%로

크라우니코드 생성엔진 자립도 70%(LLM 의존 30%).

강한 축: 수학 98%·문자열 98%·네트워크 97%·알고리즘 91%. 약한 축: 파일IO 74%·자료구조 66%.

약한 두 축을 끌어올리는 것이 다음 단계다.

정직한 함정 목록

성장하는 언어는 함정을 숨기지 않는다.

다음 방향: 정수의 언어로 끝까지

부동소수점을 갖는 것이 아니라 정수의 본성으로 끝까지 간다. 고정소수점 라이브러리로 스케일드 연산을 다지고, RPN 정통을 수리하고, 사이드카를 표준화한다.

흉내가 아니라 본성으로. 이미 첫 구현이 빛났다. 다음 장에서 코드로 그 길을 더 깊이 간다.

← 한선씨 만들기 · 빨리읽기판 목차로