연구진은 Rust와 같이 정적 의미 체계가 풍부한 언어의 강점을 활용하면서도 생성의 어려움을 해결하기 위해 생성 컴파일 방식을 제안했어요. 핵심 기술은 표준 컴파일러로 진단 가능한 완전한 프로그램으로 부분 프로그램을 변환하는 가벼운 변환기인 '시알러'예요.
시알러는 가능한 완전 프로그램은 절대 거부하고, 오류를 조기에 감지할 수 있는 충분한 코드 컨텍스트를 유지하는 방식으로 설계돼요. 연구진은 Rust와 유사한 계산에 대한 시알러를 구축하고, Lean으로 이 속성을 기계화했어요.
실제 Rust에 대한 부분 프로그램 검사기를 확장하여 평가한 결과, 생성 컴파일은 컴파일되지 않는 출력을 줄이고 기능적 정확성을 향상시켰어요. 이는 오류의 근원지를 가깝게 감지하고 생성 초기에 오류를 감지하여 오류 연쇄를 줄이고 집중적인 진단을 가능하게 해주기 때문이에요.
생성 컴파일은 컴파일러를 AI 지원 프로그래밍의 핵심 요소로 만들어, 생성 과정에서 적극적으로 활용하는 데 한 걸음 더 다가가는 방식입니다.