← 목록

발견 한계 3건 고도화 — 중첩 인덱싱 + 필드 할당 + 해시 엔트로피

개요

이전 세션에서 발견된 VM/컴파일러 한계 3건을 근본적으로 해결. 한선씨의 표현력과 의미벡터 품질이 크게 향상.

1. 중첩 인덱싱 arr[i][j] (컴파일러+VM)

문제

  • 확장[j][1] 작성 불가 → 중간변수 필수 (변수 항 = 확장[j]; 변수 도착 = 항[1])
  • 근본 원인 2건:
  • (파서) OP_INDEX 후 즉시 return[j] 이후 [k] 파싱 불가
  • (메모리) 중첩 배열 리터럴 [[1,2,3],[4,5,6]]에서 내부/외부 배열이 같은 임시 메모리 영역(11999700) 사용 → 덮어쓰기
  • 수정

    결과

    행렬[0][0] = 1      ← 이전: 배열 범위 초과
    행렬[1][2] = 6      ✓
    큐브[1][0][1] = 60   ← 3중 중첩도 정상
    이름[0][2] = 다      ✓
    

    2. 필드 할당 p.필드 = 값 (컴파일러)

    문제

    수정

    결과

    p.나이 = 20           ← 외부 필드 할당 ✓
    자기.나이 = 자기.나이 + 1  ← 메서드 내부 ✓
    자기.이름 = 새이름     ← 매개변수 대입 ✓
    

    3. 해시 엔트로피 (의미벡터.한선)

    문제

    수정

    결과

    이전: OTAOTAOTAOTAOTAOTAOTAOTAOTA (밀도 [9,9,9] 순환)
    현재: OOTOOAOOTOOAOOTOOAOOTOOTOOA (밀도 [5,18,4] 비규칙)
    
    O 편향 있으나 (XOR 특성) 순환 패턴 해소됨. 다른 코드 간 유사도 분산도 개선.

    관련 파일

  • /Users/ef/CrownyOS/crownyc/hanseonc_high.c — 3곳 수정:
  • 배열 인덱싱 while 루프화 + array_temp_base
  • 필드 할당 패턴 감지 + HASH_SET 코드생성
  • /Users/ef/CrownyOS/crownyc/libs/의미벡터.한선 — _위치해시 XOR 리팩터
  • /Users/ef/CrownyOS/crownyc/libs/의미추론.한선 — 중간변수 제거 (직접 중첩 인덱싱)
  • 파급 효과

    잔여