프로젝트 소개

BAML(Basically A Made-up Language)은 AI 에이전트 구축을 위해 특별히 설계된 프로그래밍 언어입니다. 구문은 TypeScript와 유사하지만, 모든 기능은 에이전트의 실수를 줄이고 신뢰성을 향상시키기 위해 최적화되었습니다. 주요 특징으로는 Go보다 빠른 컴파일 속도를 자랑하는 Rust 수준의 타입 시스템, `any` 타입이나 안전하지 않은 캐스팅 없이 런타임에서 타입을 유지하는 지속성, 정적 분석 기반의 타입화된 에러 처리, 그리고 파일시스템 기반 모듈/네임스페이스 시스템을 포함합니다. 또한 Go와 유사한 무색(concolorless) 동시성을 지원하는 그린 스레드를 제공합니다. BAML은 에이전트 워크플로우에 맞춰 설계되어 불필요한 출력을 방지하는 표준 라이브러리, 내장 테스트 및 평가 프레임워크를 탑재하고 있습니다. 단독 실행이 가능할 뿐만 아니라 TypeScript, Python, Go, C#, Java 등에서 BAML 함수를 호출하여 기존 코드베이스를 재작성하지 않고도 점진적으로 도입할 수 있습니다. 설치는 Homebrew를 통해 가능하며, 에이전트 설치, 프로젝트 초기화, IDE 통합 명령어를 지원합니다. 이 프로젝트는 워싱턴주 시애틀에 본사를 둔 Boundary에서 관리하고 있습니다.