HyperAccel Tech Blog · 2025. 12. 13.
[Crafting Compilers - Part 02] 프로그래밍 언어 만들기
AI 엔지니어링 브리핑
이 글은 컴파일러를 만들기 전에 프로그래밍 언어의 실행 방식과 메모리 관리 원칙을 정하고, 함수형 스타일의 새 언어 ‘Hoya’를 설계하는 과정을 소개합니다.
문제 & 배경
문제 & 배경: 프로그래밍 언어는 사람이 하드웨어의 복잡한 세부 사항을 직접 다루지 않고 컴퓨터에 명령할 수 있게 해주는 인터페이스이지만, 실행 방식과 메모리 관리 방식에 따라 성능·안전성·편의성이 달라지므로 먼저 언어의 기본 설계를 정해야 합니다.
기술 & 해결책
기술 & 해결책: Hoya는 전체 코드를 먼저 기계어로 바꾸는 컴파일러 방식과 함수형 프로그래밍의 순수 함수·불변 값 개념을 일부 채택하고, 가비지 컬렉터 없이도 소유권 규칙으로 메모리 수명을 안전하게 관리하며, 작성한 코드는 AST라는 트리 구조로 바꿔 컴파일합니다.
교훈 & 주의점
교훈 & 주의점: 컴파일과 인터프리트, 자동·수동 메모리 관리, 함수형 프로그래밍은 각각 장단점이 있으므로 목적에 맞게 선택해야 하며, 함수형 방식은 안정성과 분석에 유리하지만 학습이 어렵고 모든 작업에 가장 효율적인 것은 아닙니다.
함께 읽을 글
내용이 비슷해요내용이 비슷한 글을 먼저 보여드려요. 같은 문제나 해결책을 다룬다는 뜻은 아니에요.