분산 시스템을 형식적으로 모델링하고 정확성을 체계적으로 검증하기 위한 상태 머신 기반 프로그래밍 언어입니다.
aidenybai/tla-ts
브라우저, Node, Bun에서 실행되는 TLA+ 인터프리터 및 모델 체커의 TypeScript 구현으로, Java 기반 TLC를 바로 대체할 수 있습니다.
대체할 수 있는 제품:TLC
- 스타
- 232
- 포크
- 9
- 열린 이슈
- 9
- 마지막 커밋
- 그저께
어떤 프로젝트인가요?
tla-ts는 TypeScript로 작성된 TLA+ 인터프리터이자 모델 체커입니다. Java로 작성되어 JVM이 필요한 TLA+ 명세용 기준 모델 체커 TLC를 바로 대체하도록 만들어졌습니다. 브라우저, Node, Bun 등 JavaScript가 실행되는 환경이라면 어디서든 tla-ts를 사용할 수 있으므로, Java를 설치하지 않고도 형식 모델을 검사할 수 있습니다.
이 프로젝트는 TLAPS 증명도 검사하므로 tlapm을 설치하지 않아도 증명의 의무 사항을 검증할 수 있습니다. `check`, `prove`, `parseModule`, `parseConfig`를 제공하는 JavaScript API와 TLC 옵션 및 tlapm 스타일 인터페이스를 지원하는 명령줄 도구를 제공합니다. 구문, 구성, 평가 및 미지원 구문 관련 오류는 타입이 지정된 클래스로 보고합니다.
저장소에는 TLC와 비교한 벤치마크가 있으며, 명세와 워커 수에 따라 약 1.1~2.4배의 속도 향상을 보입니다. 브라우저 플레이그라운드와 TLC의 기록된 결과를 기준으로 비교하는 적합성 테스트 모음도 포함되어 있습니다.
핵심 기능
- 01JVM 없이 브라우저, Node, Bun에서 TLA+ 모델 검사를 실행합니다.
- 02tlapm을 설치하지 않고 TLAPS 증명의 의무 사항을 검사합니다.
- 03JavaScript API에서 `check`, `prove` 및 파서 함수를 제공합니다.
- 04TLC 옵션과 tlapm 스타일 명령을 지원하는 명령줄 도구를 제공합니다.
- 05병렬 상태 탐색을 위해 여러 워커 스레드를 지원합니다.
활용 사례
- Node 또는 브라우저 환경에서 분산 프로토콜 명세를 모델 검사합니다.
- Java를 설정하지 않고 JavaScript 기반 CI 파이프라인에서 TLA+ 검사를 실행합니다.
- 교육이나 데모를 위해 브라우저에서 인터랙티브 TLA+ 플레이그라운드를 공유합니다.
- 이미 Node 도구 체인을 사용하는 프로젝트에서 TLAPS 증명을 검사합니다.
빠른 시작
- 1
npm에서 패키지를 설치하세요
npm install tla-ts - 2
명령줄에서 TLA+ spec을 확인하세요
npx tla-ts Spec.tla
사용 전 알아둘 점
- 초기 단계의 프로젝트이며 커뮤니티 규모가 비교적 작습니다(별 191개).
토픽
자주 묻는 질문
- tla-ts은(는) 무엇인가요?
- 브라우저, Node, Bun에서 실행되는 TLA+ 인터프리터 및 모델 체커의 TypeScript 구현으로, Java 기반 TLC를 바로 대체할 수 있습니다. tla-ts는 TypeScript로 작성된 TLA+ 인터프리터이자 모델 체커입니다. Java로 작성되어 JVM이 필요한 TLA+ 명세용 기준 모델 체커 TLC를 바로 대체하도록 만들어졌습니다. 브라우저, Node, Bun 등 JavaScript가 실행되는 환경이라면 어디서든 tla-ts를 사용할 수 있으므로, Java를 설치하지 않고도 형식 모델을 검사할 수 있습니다.
- tla-ts은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- tla-ts은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- tla-ts은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. tla-ts의 마지막 커밋은 2026년 11월 5일입니다.
- tla-ts은(는) 어디에 사용할 수 있나요?
- Node 또는 브라우저 환경에서 분산 프로토콜 명세를 모델 검사합니다. Java를 설정하지 않고 JavaScript 기반 CI 파이프라인에서 TLA+ 검사를 실행합니다. 교육이나 데모를 위해 브라우저에서 인터랙티브 TLA+ 플레이그라운드를 공유합니다. 이미 Node 도구 체인을 사용하는 프로젝트에서 TLAPS 증명을 검사합니다.
- tla-ts는 어떻게 설치하나요?
- npm에서 패키지를 설치하세요: npm install tla-ts 명령줄에서 TLA+ spec을 확인하세요: npx tla-ts Spec.tla
- tla-ts은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/aidenybai/tla-ts
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
법칙과 증명을 활용해 AI가 작성한 코드를 검증하고, CPU와 GPU에서 빠르게 병렬 실행되는 코드로 컴파일하는 프로그래밍 언어입니다.
Lean 정리 증명기의 LLM 기반 증명 자동화 도구로, tactic 제안과 증명 검색, 전제 선택 기능을 제공합니다.
형상 검사를 지원하는 텐서와 PyTorch 스타일 학습을 제공해 신경망을 명세하고 실행하며 형식 검증하는 Lean 4 프레임워크입니다.
C#, F# 등 .NET 언어로 컴파일된 .NET CIL을 대상으로 정확성과 메모리 안전성을 기계 검증하는 Lean 4 프레임워크입니다.
Mathlib을 기반으로 기계 검증 증명을 제공하는, 오픈소스 대수기하학 참고 자료 Stacks Project의 Lean 4 형식화 프로젝트입니다.