소개

리스펙스로 입력 데이터에서 판단을 계산하는 규칙을 만듭니다. 예제 두 개를 읽고 첫 프로그램을 실행하세요.

리스펙스로 출판사의 하우스 스타일처럼 앱이 내리는 판단을 규칙으로 만들고 답을 데이터로 받습니다. 예제 두 개를 읽고 첫 프로그램을 실행해 보세요.

두 예제 모두 설치 없이 플레이그라운드에서 실행할 수 있습니다. 함수 호출과 참·거짓 질문을 알아보는 정도면 시작할 수 있습니다.

두 수 더하기

LISPEX
(+ 2 3)

결과

출력
5

괄호는 식 하나를 묶습니다. +는 연산 이름이고 2와 3은 입력입니다. 리스펙스에서는 이처럼 호출하는 연산을 프로시저라고 부릅니다.

장을 시작할 쪽 정하기

이 출판사는 장을 언제나 홀수 쪽에서 시작합니다.

LISPEX
(define 마지막-쪽 37)

(if (odd? 마지막-쪽)
    '(판단 빈-쪽-넣기)
    '(판단 바로-시작))

결과

출력
(판단 빈-쪽-넣기)

define은 직전 장의 마지막 쪽 번호 37에 마지막-쪽이라는 이름을 붙입니다. (odd? 마지막-쪽)이 참이므로 if는 첫 번째 답을 고릅니다. 다음 쪽이 짝수인 38쪽이므로 빈 쪽을 먼저 넣습니다. 직전 장이 짝수 쪽에서 끝났다면 (판단 바로-시작)을 고릅니다.

앞의 작은따옴표는 (판단 빈-쪽-넣기)를 데이터인 리스트로 유지합니다. 따옴표가 없으면 리스펙스는 판단이라는 프로시저를 호출하려 합니다. 애플리케이션은 이 리스트를 읽고 빈 쪽을 넣을 수 있습니다.

직접 프로그램 실행하기

첫 프로그램에서 코드를 실행하고 숫자를 바꾸고 빠진 괄호를 고칩니다. 학습 경로의 여섯 수업에서는 하우스 스타일 규칙을 만들고 남은 줄이 2줄일 때와 1줄일 때, 장 제목일 때를 시험합니다.

다음에 할 일읽을 페이지
브라우저에서 실행하거나 로컬 파일로 저장하기첫 프로그램
자주 쓰는 문법 찾기문법 한눈에 보기
형식이나 프로시저 찾기구문 레퍼런스 또는 프로시저 색인
SICP를 읽고 예제를 수정하고 실행하기Lispex · SICP 과정

규칙에 입력을 전달하는 방법

애플리케이션이 입력을 전달하고 답으로 무엇을 할지 정합니다. 리스펙스 규칙에는 숨은 네트워크 호출, 시계, 난수, 패키지 임포트가 없습니다. 기준 구현은 가능한 경우 정확한 산술을 사용하며, 평가와 진단 방법을 정해 두고 있습니다.

실행을 비교할 때는 소스 바이트와 입력 바이트, 실행기, 자원 프로파일을 같게 맞추세요. 자원 프로파일은 한 번의 실행에 쓸 작업량과 메모리를 정합니다. 비교할 결과와 출력과 진단 항목도 같게 맞춥니다. 같은 결과와 실행 한도에서 자세히 설명합니다.

기본 실행은 신뢰하는 소스를 호출 프로세스 안에서 직접 실행합니다. 실행 방식을 비교하는 도구와 lispex mcp serve의 작성용 평가기도 같은 방식을 씁니다. 결정 규칙에 작업량과 메모리 한도를 지정하려면 네이티브의 lispex embed를 사용하세요. 호출 프로세스 안에서 실행하며, 실행이 끝나면 규칙과 입력과 한도와 결과를 묶은 기록을 만듭니다. 필요한 파일과 명령은 자원 프로파일 가이드에 있습니다.

규칙을 저장하거나 전달할 때

할 일기능과 가이드
정확한 소스 바이트를 픽셀에 저장하고 복원하기리스펙스 이미지
미리 준비한 명령을 실행하는 프로그램인 가상 머신을 로컬에서 쓰기검증된 바이트코드 실행하기
서명된 결정을 자신의 소스, 입력, 요구하는 로컬 결과와 대조하기리스펙스 바우치
규칙을 작성하고 애플리케이션에 연결하기규칙 작성과 앱 연결
바이트코드 저장하기바이트코드와 배포
구현 사이의 차이 살펴보기구현 비교

런타임 참조에서는 기준 구현과 결과 비교에 쓰는 인터프리터를 설명합니다. 다음 실습은 첫 프로그램에서 시작하세요.