피드로 돌아가기
Arc v0.0.1-alpha - A Lightweight C-Based Programming Language
Dev.toDev.to
Infrastructure

Memory Pooling 기반의 경량 C-Based Interpreter, Arc v0.0.1-alpha 공개

Arc v0.0.1-alpha - A Lightweight C-Based Programming Language

Void2026년 6월 4일2intermediate

Context

표준 C 라이브러리 의존성을 최소화한 교육용 및 고성능 경량 언어의 필요성 증대. 일반적인 malloc/free 반복 호출로 인한 메모리 단편화와 오버헤드 해결이 핵심 과제임.

Technical Solution

  • Lexer, Parser, AST, Interpreter의 모듈형 분리 구조를 통한 파이프라인 최적화
  • Memory Pooling 시스템 도입을 통한 런타임 메모리 할당 오버헤드 최소화 및 단편화 방지
  • AST(Abstract Syntax Tree) 기반 인터프리팅 방식을 통한 구문 분석과 실행 단계의 명확한 분리
  • Case-insensitive 키워드와 Case-sensitive 식별자 구분을 통한 문법적 유연성과 엄격함의 절충
  • 전용 CLI 옵션을 통한 AST 트리 시각화 및 Mempool 크기 튜닝 기능 제공

1. 잦은 동적 할당이 발생하는 인터프리터 설계 시 Memory Pool 도입을 통한 성능 최적화 검토

2. 컴파일러 파이프라인의 각 단계(Lexer->Parser->AST->Interpreter)를 모듈화하여 유지보수성 확보

3. 외부 의존성 제로(Zero External Dependencies) 설계를 통한 이식성 및 배포 단순화 전략 적용

원문 읽기