피드로 돌아가기
Dual-Mode Build: Interpret vs Native C | Dual-mode: interpretar vs C nativo
Dev.toDev.to
Infrastructure

Interpret/Native C 듀얼 백엔드 구조를 통한 개발 속도와 배포 성능 동시 확보

Dual-Mode Build: Interpret vs Native C | Dual-mode: interpretar vs C nativo

CrabPascal2026년 6월 4일6advanced

Context

단일 실행 경로의 한계로 인한 느린 반복 주기와 배포 효율성 저하 문제 발생. 개발 단계의 빠른 피드백 루프와 상용 환경의 Native 성능 요구사항을 동시에 충족해야 하는 제약 사항 존재.

Technical Solution

  • Lexer, Parser, Semantic Analyzer를 공유하는 단일 Frontend 기반의 Dual-Mode 아키텍처 설계
  • AST를 직접 순회하며 Scope와 Heap, VMT를 관리하는 Interpreter 경로를 통한 Zero C Toolchain 환경 구현
  • C Calling Stubs와 RTL Helpers를 생성하여 gcc/clang으로 컴파일하는 Native Codegen 경로 구축
  • crabpascal.toml 설정을 통한 백엔드 힌트 및 Search Path의 통합 관리 체계 적용
  • cargo test 기반의 stdout 및 Exit Code 비교를 통한 두 실행 경로 간의 Parity 검증 자동화
  • CI 파이프라인 내 check -> run -> build-exe 순차 검증을 통한 빌드 정직성(Honesty) 확보

- 개발 주기 단축을 위한 Interpreter와 배포용 Native Compiler의 분리 전략 검토 - 두 실행 경로 간의 동작 일치성을 보장하기 위한 정밀한 Parity Test Suite 구축 - CI 환경에서 외부 툴체인(gcc 등) 의존성에 따른 이미지 최적화 및 Job 분리 적용

원문 읽기