Topaz v5는 작은 문법으로 의도를 분명히 표현하고, 검사한 코드를 여러 실행 방식으로 옮기더라도 같은 결과를 내게 하려는 설계에서 출발했습니다. 이 페이지는 내부 개발 기록이 아니라, 사용자에게 의미 있는 문법과 도구의 변화만 정리합니다.
한눈에 보는 변화
| 버전 | 언어의 변화 | 도구의 변화 |
|---|---|---|
| v5.0 | 표현식 중심 문법, Result 중심 오류 처리, 유니코드 식별자를 기본으로 삼았습니다. | 언어의 큰 방향과 표준 예제를 고정했습니다. |
| v5.1 | while, break, continue를 추가하고 레이아웃, 연산자, 패턴, 동시성, 문자열 템플릿의 동작을 명확히 했습니다. | 해석기를 의미 기준으로 삼고 문법과 실행 결과를 함께 검사하는 기반을 다졌습니다. |
| v5.2 | 단일 파일을 넘어 import/export 모듈 문법과 이름 공개 규칙을 확정했습니다. | 언어·컴파일러·런타임·배포 버전을 하나의 v5.2 버전선으로 맞추고 첫 공개 바이너리를 선보였습니다. |
| v5.3 | v5.2의 모듈 기반을 유지하면서 실제 프로그램에 필요한 라이브러리 범위를 넓혔습니다. | 바이너리, 플레이그라운드, 문서, npm 패키지가 빠른 개발 주기에 맞춰 순차적으로 갱신됐습니다. 각 채널의 공개 시점이 잠시 달랐지만 언어 의미가 갈라진 것은 아닙니다. |
| v5.4 | 기존 v5 문법을 유지하면서 실전 사용에 필요한 도구 경계를 다듬었습니다. | 주요 플랫폼용 실행 파일과 설치 경로를 정리했고, v5.4.1에서 Python 코드 생성을 실험적으로 추가했습니다. |
| v5.5 | 기존 프로그램을 깨지 않고 표준 라이브러리와 실행 동작을 계속 넓혔습니다. | Python을 정식 백엔드로 올리고, 해석기·Rust·Python의 결과를 비교하는 범위를 단계적으로 확대했습니다. |
| v5.6 | 제네릭 함수, 명목 데이터, 레코드 복사, 패턴, 파이프라인, 표준 라이브러리와 런타임 규칙을 현재 문법으로 통합했습니다. | 해석기·Rust·Python, WASM 플레이그라운드, 패키지 도구를 하나의 v5.6 버전으로 공개했습니다. |
현재 기준
현재 매뉴얼은 정식 배포된 Topaz v5.6의 문법과 도구를 설명합니다. 설치·호환성·실행 대상은 도구 모음 상태에서 확인할 수 있습니다. 예전 문법을 옮기려면 v5 이전 문법에서 이전을 보세요.