프로젝트 소개
Promise는 AI 에이전트 효율성을 위해 설계되고 AI 에이전트에 의해 작성된 정적 타입 프로그래밍 언어입니다. Rust에서 영감받은 명시적 소유권, Go에서 영감받은 고레틴 방식 동시성, 대수적 오류 처리, 제네릭스, 누락 없는 패턴 매칭을 특징으로 하며, 숨겨진 효과 없습니다.
**주요 기능:**
- `&` (공유), `~` (가변), `*` (raw 포인터)를 사용한 소유권 및 차용
- `!`, `?^`, `?!` 및 패턴 매치 핸들러를 통한 대수적 오류 처리
- 타입 제약이 있는 제네릭스
- 데이터와 전체 패턴 매칭을 지원하는 열거형
- 문자열 보간법 및 고레틴 방식 동시성 (`go expr`은 `Task[T]` 반환)
- `yield` 및 `yield*`가 있는 제너레이터
- 선언형 메타데이터를 위한 메타 주석
- 매크로 또는 조건부 컴파일보다는 모든 코드 완전히 가시
**모노버전 카탈로그:** 생태계는 원자적 "에포크" 릴리스(예: `2026.0`)로 제공됩니다. 패키지별 버전이나 로크파일 없음. 모든 모듈이 유닛으로 함께 테스트됨.
**구현된 표준 라이브러리 모듈:** `io`, `json`, `os`, `net`, `tls`, `path`, `math`, `strings`, `time`, `http`, `gzip`, `crypto`, `encoding`. 계획됨: `ai`, `auth`, `cloud`, `markdown`, `mcp`, `msgpack`, `sandbox`, `schema`, `term`, `toml`, `yaml`.
**독립 도구체인:** 컴파일러는 단일 바이너리(~15MB)로 표준 라이브러리, 카탈로그 모듈, 런타임을 번들로 제공합니다. `~/.promise` 아래 자체 LLVM 22 도구체인을 설정합니다.
**Linux, macOS, Windows, WASM 대상의 네이티브 LLVM 컴파일.**
**사용법:**
```sh
promise build file.pr # 실행 파일로 컴파일
promise run file.pr # 컴파일 및 실행
promise exec 'code' # 인라인 실행
promise test file.pr # 테스트 실행
promise check file.pr # 타입체크만
```
**소스에서 빌드**하려면 Go 1.22+, Java(ANTLR4용), clang, LLVM 22+ 필요.
Promise는 Bounded-Autonomy Software Engineering(BASE)로 구축되었습니다. 이는 인간이 영속적 의도와 품질 게이트를 정의하고 AI 에이전트가 구현을 담당하는 방법론입니다. 2026년 8월 기준 프로젝트에는 컴파일러와 언어 전체 18,869개 테스트가 포함되어 있습니다.
**상태:** 활발히 개발 중이며 프로덕션 사용 불가. 컴파일러는 엔드투엔드 작동하지만 거친 가장자리와 충돌 예상.
**라이선스:** Apache-2.0 또는 MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.