← 목록
기타 2026-07-31 4KB 읽기 4분

T177(hanseonc_std.asm 존치판정) + T178(pkg 컴파일러 T137/T169 동기화)

개요

집사회 티켓 T177+T178. T137이 "범위 밖"으로 남긴 hanseonc_std.asm 6건 편차의 존치/폐기 판정과, npm 패키지(@crowny/crownyc, pkg/hanseonc_high.c)에 T169+T137 수정사항 동기화.

T177 — hanseonc_std.asm 존치 판정: 존치 (수정 불요)

판정 근거:

  1. 최근 능동 유지보수 확인: hanseonc_std.asm이 어제(7/30) T122로 GTE(opcode173)
항상거짓 근본수정을 받음 — "방치"가 아니라 현재도 고쳐지는 정통 경로.
  1. 헌법·CLAUDE.md 상 위계: CrownyOS/crownyc/CLAUDE.md/README.md에 저수준
RPN 정통 경로로 명시 참조됨 ([저수준] RPN(.한선) → hanseonc_std → program.toau).
  1. 사용 실태: README/CLAUDE.md 예제(`echo '3 7 더해 보여줘 끝' | crownyc run
hanseonc_std.toau`), tests/, scripts/한선컴파일.sh 등 다수 스크립트가 참조 중 — 죽은 파일이 아님.
  1. T137이 지적한 6건(글자/꺼내/출력값/파일쓰기/파일읽기/파일추가 opcode 편차)은
std.asm 자체 내부에서만 일관되게 쓰이는 값이라 기능적으로 무해(rpn.c/high.c와 상호충돌 없음, std.asm 자체 컴파일→실행 경로에선 self-consistent).

결론: hanseonc_std.asm 존치, 6건은 문서화만 유지(수정 불요). 폐기 후보 아님 — 헌법상 "정통" 위계 파일이고 어제도 실사용 버그가 고쳐졌다.

T178 — pkg/hanseonc_high.c에 T137+T169 동기화

대조 결과

pkg/hanseonc_high.c(npm 패키지 소스)가 라이브 hanseonc_high.c 대비 48줄 차이로 낙후 — T137(저장/불러 별칭, 벡터내적 死코드 개명)과 T169(STORE/LOAD 인자순서 SWAP 수정)가 전혀 반영 안 돼 있었음. (그 외 S1 strict-mode·소켓 아리티(#19, T143)·라이브러리 검색순서 변경 등은 T178 범위 밖이라 미적용, 별도 티켓 필요.)

적용한 diff (T137+T169 한정)

  • pkg/hanseonc_high.c:
1. {"불러",8,1} / {"저장",7,2} 빌트인 테이블에 추가 (T137 — high.c에 빠져있던 STORE/LOAD 별칭) 2. {"삼진벡터내적",466,3} 개명 (T137 — 146=VEC_DOT과의 死코드 중복 제거) 3. 저장(주소,값)/메모리쓰기(주소,값) → SWAP+STORE 특수처리 블록 추가, 불러(주소)/메모리읽기(주소) → LOAD 특수처리 블록 추가 (T169 — STORE pop순서[addr=top] vs 좌→우 push순서 불일치로 값↔주소 뒤바뀌던 결함 수정)

검증

  1. cc -O2 -o /tmp/pkg_hanseonc_high_test pkg/hanseonc_high.c — 빌드 성공.
  2. T169 재현 케이스 재검증: 저장(100,777)불러(100) = 777(정상, 수정 전
라이브 버전은 0이었음 — T169 문서 참조).
  1. diff pkg/hanseonc_high.c hanseonc_high.c — 남은 48줄은 전부 범위 밖
변경(S1 strict/소켓 아리티/#19 검색순서)으로 확인, T137+T169 관련分은 0.

퍼블리시 준비 상태

  • 퍼블리시 안 함 (지시 범위 밖). pkg/package.json 현재 "version": "11.0.5"
버전 범프는 오너/실제 릴리즈 시점 판단으로 남겨둠 (임의로 올리지 않음).
  • 레지스트리: pkg.crowny.org (Verdaccio localhost:4873, publishConfig 확인됨).
  • 다음 릴리즈 시 필요 작업: ①이번 diff 반영 확인(완료) ②버전 11.0.6로 범프
npm publish --registry http://localhost:4873 (오너 승인 후).

수정 파일

  • /Users/ef/CrownyOS/crownyc/pkg/hanseonc_high.c (3개소 diff 적용, T177은 무수정)

잔여 이슈

  • pkg는 여전히 S1 strict-mode·소켓 아리티 수정(#19/T143)·라이브러리 검색순서
변경 등 여러 세대 낙후 — 이번 티켓 범위 밖이므로 별도 "pkg 전면 동기화" 티켓 권고 (라이브 소스가 계속 앞서가는 구조이므로 릴리즈 주기 정례화 필요).