네이티브와 npm CLI

작업에 맞는 리스펙스 명령을 찾고 입력과 결과와 종료 상태를 확인합니다.

작업에 맞는 리스펙스 명령을 고르고 입력과 결과와 종료 상태를 확인합니다. 네이티브와 npm 모두 소스 파일을 실행하며, 아래 컴파일과 엔진 명령은 네이티브가 제공합니다.

첫 프로그램이나 다운로드에서 리스펙스를 설치하세요. 플랫폼별 제공 여부는 제품 카탈로그에 있습니다.

파일 실행하기

다음 전체 프로그램을 answer.lspx로 저장합니다.

LISPEX
(+ 20 22)

네이티브 또는 npm으로 실행합니다.

SH
lispex answer.lspx

출력

출력
42

종료 상태는 0이고 파일을 만들지 않습니다. lispex --help는 설치한 버전의 명령 목록과 옵션을 출력합니다. lispex vouch --help처럼 명령군의 도움말을 열면 해당 옵션을 볼 수 있습니다.

명령 표 읽기

표에는 명령 문법과 예상 결과가 있습니다. 연결한 가이드에는 전체 작업 과정이 있습니다. SOURCE, IR, ROOT 같은 대문자는 사용자가 넣을 경로입니다. 대괄호는 선택 인자, |는 택할 항목, ...는 추가 필수 또는 선택 옵션을 뜻합니다. 입력 데이터 값은 파일에서 읽는 리스펙스 값 하나입니다.

소스와 작성 도구

명령입력결과제품
lispex [FILE|-]리스펙스 소스값과 표준 출력과 경고와 진단네이티브, npm
lispex sicp run <file.scm|->최대 1MiB의 SICP 소스 하나SICP 표준 출력과 최종 값네이티브, npm
lispex fmt [--check|--write] [FILE|-]UTF-8 소스포매팅한 소스 또는 검사 상태 또는 원본 파일 교체네이티브
lispex mcp serve로컬 표준 입출력의 프레임 단위 요청언어와 프로시저 참조, 평가, 진단, 정해진 엔진 비교네이티브

MCP 서비스는 선언한 바이트와 시간 한도 안에서 신뢰하는 소스를 평가합니다. 호출 애플리케이션은 작업 공간 경로와 네트워크 접근과 외부 행동을 제어합니다. 요청 프로토콜은 MCP에서 설명합니다. 포매팅은 파일을 원자적으로 바꾸므로 완성된 교체 결과가 한 번에 나타납니다.

Meaning Graph와 Core IR 명령

이 절의 명령은 네이티브에서 사용합니다. Core IR은 이름의 참조를 정한 중간 표현입니다. Meaning Graph는 프로그램의 연산을 Meaning 평가기가 실행할 노드로 나타냅니다. 정규 형식은 바이트 표현을 하나로 정한 형식입니다.

명령입력결과
lispex lower --graph-version v1 SOURCE검증된 Core IR을 거쳐 변환한 정확한 소스이름의 참조를 정한 정규 Meaning Graph v1
lispex eval-graph [--steps N] [--trace] GRAPHMeaning Graph v0 또는 v1과 선택 입력그래프 버전 태그에 따라 선택한 보고서. 종료 상태와 선택한 실행 추적 포함
lispex meaning-diff [--input I] SOURCE소스와 선택 입력 데이터 값현재 리스펙스 인터프리터와 Meaning 결과를 담은 csk.meaning-differential-report/v1
lispex core-ir build --source S --out O정확한 소스정규 lispex.core-ir/v1 파일과 요약
lispex core-ir inspect --ir IRCore IR변수 셀과 캡처한 변수와 요구사항과 소스 위치와 식별자
lispex core-ir validate --ir IRCore IR정해진 형식으로 다시 인코딩하는 절차를 포함한 엄격한 검사

Core IR build와 inspect와 validate는 execution: "not-run"과 authority: "integrity-only"를 보고합니다. 이 명령은 표현을 만들거나 검사합니다. 프로그램 실행에는 런타임과 Meaning과 바이트코드와 바우치의 실행 명령을 선택합니다. Core IR에 소스에서 파일을 만드는 전체 예제가 있습니다.

바이트코드와 엔진 비교 명령

이 절의 명령은 네이티브에서 사용합니다. 가상 머신인 VM은 바이트코드라는 미리 준비한 명령을 실행합니다.

명령입력결과
lispex bytecode build --ir IR --out O검증된 Core IR검증한 정규 .lpxbc 파일과 요약
lispex bytecode inspect --bytecode BC검증된 바이트코드식별자와 개수와 요구사항과 명령과 진입점과 소스 맵 범위
lispex bytecode validate --bytecode BC바이트코드엄격한 디코딩과 검증과 정규 재인코딩 결과
lispex bytecode run --bytecode BC [--input I]검증된 바이트코드와 선택 입력 데이터 값리스펙스 VM 결과와 출력과 진단
lispex run --backend rust --engine tree|vm FILE리스펙스 소스선택한 리스펙스 인터프리터 또는 VM의 결과
lispex compare-engines --receipt R FILE리스펙스 소스리스펙스 인터프리터와 VM 구현의 비교 보고서

실행 방식별 오류와 자원 상태는 각각 유지합니다. 보고서는 프로그램 동작과 자원 사용량과 소스 및 제작 출처를 따로 기록합니다. 비교 보고서는 새 경로에 원자적으로 기록합니다. 검증된 바이트코드 실행에 전체 명령과 출력이 있습니다.

자원 제어 평가 명령

이 절의 명령은 네이티브에서 사용합니다. 결정 평가기와 전체 평가기는 별도 제품입니다. 준비 단계는 소스와 한도를 읽어 준비 파일을 만듭니다. 평가 단계는 준비 파일과 바이너리 입력 값과 평가 한도를 읽어 결과 파일을 만듭니다.

명령군결과와 후속 작업
lispex embed prepare, evaluate, inspect, verify결정 프로파일의 준비·평가 파일, JSON 조회, 무결성 검사
lispex embed full prepare, evaluate, inspect, verify, replay전체 프로파일 파일, JSON 조회, 무결성 검사, 새 인스턴스 재실행
lispex rule run, inspect, verify, replay파일 다섯 개로 구성된 결정 디렉터리와 해당 디렉터리 작업

결정 프로파일 평가를 다시 하려면 같은 입력으로 embed evaluate를 호출하거나 결정 디렉터리에 rule replay를 사용합니다. 실행 한도를 정해 규칙 실행하기에 필요한 모든 입력 파일과 명령과 결과가 있습니다.

이미지 명령

이 절의 명령은 네이티브와 npm에서 사용합니다.

명령결과
lispex image encode --source SOURCE --out IMAGE정규 .lspx.png 또는 .lspx-images.zip
lispex image inspect --image IMAGE형식과 프로파일과 페이지와 소스 식별자와 무결성 연결 정보 요약
lispex image decode --image IMAGE --out SOURCE정확히 복원한 소스
lispex run --image IMAGE복원한 소스의 기준 인터프리터 결과와 출력과 진단

리스펙스 이미지에서 인코딩과 복원을 다룹니다. 소스를 받는 바우치 명령에는 --source RULE과 --source-image IMAGE 중 하나만 전달합니다. 재실행과 로컬 승인에는 그 소스와 별도로 전달한 --input INPUT을 사용합니다.

비교 기록과 리스펙스 바우치

차분 영수증은 비교 결과를 기록합니다. 리스펙스 바우치는 서명된 기록의 인증을 더합니다. 네이티브는 전체 바우치 흐름을 제공합니다. npm은 기록 조회와 오프라인 인증과 수신자 정책 도구와 기록된 사례 비교를 제공합니다.

명령결과제품
lispex diff-receipt --input I RULEcsk.differential-receipt/v0 형식의 비교 기록네이티브
lispex verify RECEIPT [--source RULE]오프라인 구조 정합성 판정네이티브, npm
lispex replay CORPUS --against BASELINE기록된 결정을 버전 또는 기록 디렉터리와 비교한 보고서네이티브, npm
lispex vouch policy create|check ...정규 수신자 신뢰 정책 또는 검사 보고서네이티브, npm
lispex vouch issue ...서명된 데이터와 DSSE 형식의 서명된 기록 묶음과 발급 보고서네이티브
lispex vouch verify ...정확한 서명 대상의 인증 보고서네이티브, npm
lispex vouch verify --reexecute ...인증과 현재 리스펙스 인터프리터와 Meaning의 일치네이티브
lispex vouch gate --require-decision ...현재 로컬 승인 또는 거부와 게이트 보고서네이티브
lispex vouch compiled build ... --out A소스와 연결된 lispex.vouch-compiled-artifact/v1과 요약네이티브
lispex vouch compiled inspect --artifact A기록 묶음과 내장 바이트코드의 무결성 요약네이티브
lispex vouch compiled validate ...정확한 소스에서 기록된 Core IR과 바이트코드가 생성되는지 검사네이티브
lispex vouch verify --reexecute --compiled-artifact A현재 tree와 Meaning과 검증된 리스펙스 VM의 일치네이티브
lispex verify-bridge REPORT브릿지 보고서 구조와 수신자가 선택한 바이트 연결 관계 판정네이티브, npm

호환 명령 receipt, issue-native, verify-native와 최상위 verify는 공개된 파일 형식과 동작을 유지합니다. vouch 명령군은 인증 작업 흐름을 제공합니다. 전체 과정은 리스펙스 바우치를 참고하세요.

종료 상태와 저장 파일

명령의 결과와 종료 상태를 함께 읽습니다.

명령 또는 결과종료 상태
요청한 작업 성공0
검증과 실행과 비교 또는 인증 거부대체로 1. 진단 확인
fmt --check가 포매팅 변경을 발견1. 포매팅한 소스는 출력하지 않음
잘못된 사용법, 선택한 엔진을 사용할 수 없음, 일반 소스 실행의 자원 한도 도달2
입출력 또는 이름 붙은 보고서 저장 실패이 코드를 사용하는 명령에서 3
인증된 바우치 요청을 로컬 게이트 또는 진단 승격 단계에서 보류10

진단 승격은 인증된 기록을 다음 승인 단계에 사용할 수 있는지 판단하는 절차입니다. 해당 바우치 명령이 10을 반환했다면 인증은 성공한 상태입니다.

임베딩 평가는 저장된 결과 안에 성공과 프로그램 오류와 자원 소진을 구분해 기록합니다. 결과 저장에 성공하면 이 세 경우의 종료 상태는 0입니다. inspect로 결과를 구분하세요. 요청 거부는 3, 평가기나 기록 생성 실패는 4를 반환할 수 있습니다. 평가기별 분류 이름은 평가기 참조에 있습니다.

새 기록이나 보고서를 저장하는 명령은 새 경로에 원자적으로 기록하고 기존 파일 덮어쓰기를 거절합니다. JSON을 표준 출력으로 내보낼 때는 진단을 별도로 내보내 JSON 바이트와 섞이지 않게 합니다. 호출 애플리케이션은 로컬 게이트 결과를 읽은 뒤 외부 행동을 결정하고 수행합니다.