Polystate: Zig에서 합성 가능한 유한 상태 머신
2025-06-23
Polystate는 형식 합성을 통해 합성 가능한 유한 상태 머신을 구축하기 위한 Zig 라이브러리입니다. 프로그래밍 관례를 적용하여 형식 수준에서 상태 머신의 상태를 기록하고 형식 합성을 통해 합성 가능성을 달성합니다. 이를 통해 명령형 프로그램 구조의 정확성이 향상되고 형식 및 합성의 관점에서 프로그램 상태를 재설계하도록 유도하여 코드의 합성 가능성이 향상됩니다. Polystate는 상태 다이어그램을 자동으로 생성하므로 사용자는 프로그램 동작을 직관적으로 이해할 수 있습니다. 예를 들어 ATM에서 PIN 입력 시도 횟수 제한이나 raylib 게임에서 선택 메커니즘 재사용 등 형식 합성을 통해 간단한 상태 머신과 복잡한 상태 머신을 구축하는 방법을 보여줍니다.
개발
합성 가능성