먼저 일반 실행을 사용하세요
리스펙스는 내장 기준 인터프리터로 시작합니다.
lispex rule.lspx이 명령은 소스를 그대로 읽어 내려가는 내장 기준 인터프리터를 사용합니다. 이 경로가 기본 실행기이자 의미 기준입니다. 정확한 토파즈 가상 머신이나 미리 컴파일해 두는 승인 토파즈 컴파일러를 선택할 때 컴패니언을 설치합니다.
공식 컴패니언 가져오기
네이티브에는 바꿀 수 없는 정확한 경로 카탈로그가 들어 있습니다. 지금 카탈로그에는 macOS ARM64 항목이 둘 있습니다. 토파즈 5.11 가상 머신과, 리스펙스가 미리 컴파일할 때 쓰는 정확한 토파즈 5.11 컴파일러입니다. 아직 존재하지 않는 새 절대경로를 고르세요.
lispex routes fetch \
--route topaz-vm \
--target aarch64-apple-darwin \
--out /absolute/tools/lispex-topaz-vm이 명령은 네이티브 경로 카탈로그에 고정된 URL과 채널과 버전과 레지스트리와 카탈로그를 사용합니다. 응답 길이와 SHA-256과 허용된 stored-ZIP 형식과 모든 설치 파일과 닫힌 토파즈 제품 식별자를 확인한 뒤 목적지를 공개합니다. 대상 플랫폼의 승인 여부는 내려받기 전에 판정합니다.
가져오기는 설치 제품을 게시합니다. 경로 선택은
제품을 명시적으로 사용하기에서
/absolute/tools/lispex-topaz-vm/product를 넘길 때 이뤄집니다.
미리 컴파일해 둔 제품을 만들 때는 컴파일러 컴패니언을 별도로 가져옵니다.
lispex routes fetch \
--route aot-compiler \
--target aarch64-apple-darwin \
--out /absolute/tools/lispex-aot-compiler닫힌 제품에는 정확한 컴파일러와 릴리스 매니페스트가 들어 있습니다. aot build는 설치한 컴파일러 실행 파일과 사용자가 고른 Rust 도구 절대경로를
결합합니다.
lispex aot build \
--source rule.lspx \
--topaz-compiler /absolute/tools/lispex-aot-compiler/product/bin/topaz-bin \
--rust-tool-bin /absolute/rust/bin \
--out /absolute/products/rule-aot인수인계 아카이브를 오프라인으로 설치하기
같은 제공자 인수인계로 바뀌지 않는 로컬 파일 두 개를 받습니다.
- 허용되는 형식으로 적은
lispex.route-catalog/v1파일과 정확한 SHA-256 - 정확한 경로와 대상 플랫폼 항목이 가리키는 stored-ZIP 아카이브
카탈로그는 닫힌 허용 목록입니다. 제공자 제품과 언어 모드와 매니페스트 해시와 아카이브 해시와 길이와 설치 파일 전체를 기록합니다. 설치기는 사용자가 제공한 카탈로그와 아카이브 경로를 정확히 읽습니다.
정확한 항목 하나 설치하기
아직 존재하지 않는 새 절대경로를 고르세요.
lispex routes install \
--route topaz-vm \
--target aarch64-apple-darwin \
--catalog /absolute/handoff/routes.json \
--catalog-sha256 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef \
--archive /absolute/handoff/topaz-vm-aarch64-apple-darwin.zip \
--out /absolute/tools/lispex-topaz-vm예시 해시는 정확한 카탈로그와 함께 전달받은 값으로 바꾸세요. 이 명령은 로컬 파일만 읽습니다. 성공하면 표준 출력과 다음 파일에 같은 영수증을 씁니다.
/absolute/tools/lispex-topaz-vm/
├── installation.json
└── product/installation.json은 허용되는 형식으로 적은 lispex.route-installation/v1
영수증입니다. 안에 절대경로도 시간도 없습니다. 그래서 바이트를 그대로 둔 채
디렉터리를 옮겨도 식별자가 유지됩니다. product/는 기존 정확 제품 검증기가
검사하는 닫힌 루트입니다.
승인된, 미리 컴파일해 두는 컴파일러 아카이브는 --route를 바꿉니다.
lispex routes install \
--route aot-compiler \
--target aarch64-apple-darwin \
--catalog /absolute/handoff/routes.json \
--catalog-sha256 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef \
--archive /absolute/handoff/lispex-topaz-aot-compiler-aarch64-apple-darwin.zip \
--out /absolute/tools/lispex-aot-compiler승인된 미리 컴파일 컴파일러 제품의 대상 플랫폼은 macOS ARM64입니다. 호출자는 그 대상 플랫폼에 맞는 Rust와 링커와 플랫폼 개발 키트와 시스템 라이브러리를 제공합니다.
제품을 명시적으로 사용하기
설치는 제품을 게시하고 기준 인터프리터는 기본값을 유지합니다. 닫힌 제품 루트를 넘겨 경로를 선택하세요.
lispex routes inventory \
--topaz-vm /absolute/tools/lispex-topaz-vm/product그다음 lock을 만들고 진단할 수 있습니다. lock은 선택한 설치 제품의 식별자를 파일 시스템 경로와 독립적으로 기록합니다.
lispex routes lock \
--route topaz-vm \
--topaz-vm /absolute/tools/lispex-topaz-vm/product \
--out topaz-route.json
lispex routes doctor \
--selection topaz-route.json \
--topaz-vm /absolute/tools/lispex-topaz-vm/product설치를 옮겼다면 새 절대 product/ 경로를 넘기세요. lock과 설치 영수증은
파일 시스템 경로를 기억하지 않습니다.
설치부터 이동 후 실행까지
미리 컴파일해 둔 제품을 만든 뒤 두 선택형 엔진을 함께 확인하고 각각 잠급니다.
lispex routes inventory \
--topaz-vm /absolute/tools/lispex-topaz-vm/product \
--aot-product /absolute/products/rule-aot
lispex routes lock --route aot \
--aot-product /absolute/products/rule-aot \
--out aot-route.json네 가지 실행 방식을 정해진 한도 아래에서 한 번만 비교하려면
routes measure --samples 1을 쓰세요. 실행할 때는 고른 lock 하나만 지정합니다.
lispex routes run \
--selection aot-route.json \
--aot-product /absolute/products/rule-aot \
--input input.datum \
rule.lspx가상 머신 설치본이나 완성된 컴파일 제품을 옮겨도 됩니다. 새 절대 루트를
routes doctor와 routes run에 다시 전달하고 lock은 그대로 유지합니다.
Doctor는 새 위치의 바이트를 다시 검사하고 lock은 이동 전후에 같은 선택
식별자를 보존합니다. 유지되는
이식 경로 전체 예제는
가져오기, 빌드, 목록, 잠금, 진단, 정해진 한도 아래의 측정, 잠금 실행, 이동을
한 흐름으로 보여 줍니다.
허용하는 아카이브
리스펙스는 압축하지 않고 바이트 단위까지 정해진 stored-ZIP 한 가지 형태만 받습니다. 압축, Zip64, 디스크립터, 암호화, 시간값, 여분 필드, 주석, 디렉터리, 중복되거나 정렬되지 않은 이름, 경로 탈출, 절대경로, 역슬래시, 심볼릭 링크, 특수 파일, 제한 초과, 해시 불일치를 모두 거부합니다. 비공개 형제 준비 영역에 쓴 뒤 목적지가 여전히 존재하지 않을 때만 공개합니다.
종료 2는 명령 사용 오류, 1은 식별자나 바이트 형식 계약 거부, 3은 로컬 입출력이나 자원값이나 덮어쓰기 방지 실패입니다. 실패 결과는 선택한 항목과 대상 플랫폼과 버전과 경로와 엔진을 그대로 기록합니다.
아티팩트 역할
유효한 카탈로그와 설치 영수증은 설치 바이트의 정확한 무결성을 확인합니다.
서명된 배포 정책이 provider를 식별하고 비교 영수증이 Rust와의 일치를
기록하며 호스트 애플리케이션이 외부 행동을 소유합니다. 바우치는 인증한 정확한
소스와 소비자가 고정한 요청에서 근거를 유도합니다. 경로 영수증의
automatic_fallback:false는 선택한 엔진을 그대로 보존합니다.
다음으로
일반적인 기본 실행 방식은 제품 선택 안내에서 확인하세요. 고급 고정 실행 전
점검은 routes doctor로 합니다.