(Lispex)sicp.io
원전 2판 · 범위 지도

빠진 부분까지 그대로 드러냅니다.

원전 2판 목차의 번호가 붙은 모든 하위 절을 따라갑니다. covered는 전용 실행 수업이 그 절의 핵심을 상당 부분 직접 다룬다는 뜻이고, partial은 관련 실행 표면이 있지만 절 전체를 아직 덮지 못한다는 뜻입니다.

원전 하위 절94
완료50
일부39
연결됨95%
완료일부미구현검증 보류 = 경로 작성 완료, 검증 묶음 대기
전체 94개 중 94개 하위 절 표시검증 보류 = 경로 작성 완료, 검증 묶음 대기
제1장

프로시저로 추상화 쌓기

전체 18개 중 18개 연결 · 12개 완료일부 6 · 미구현 018 / 18
1.1

프로그래밍의 기본 요소

  1. 1.1.1

    Expressions

    완료
  2. 1.1.2

    Naming and the Environment

    일부

    이름과 환경은 여러 수업에 나오지만 정의와 조회만을 다루는 전용 수업은 아직 없습니다.

  3. 1.1.3

    Evaluating Combinations

    완료
  4. 1.1.4

    Compound Procedures

    완료
  5. 1.1.5

    The Substitution Model for Procedure Application

    일부

    프로세스의 모양은 보이지만 치환 과정을 단계별로 다시 만들지는 않습니다.

  6. 1.1.6

    Conditional Expressions and Predicates

    일부

    조건식과 술어를 여러 예제에서 사용하지만 전용 수업으로 완결하지는 않았습니다.

  7. 1.1.7

    Example: Square Roots by Newton's Method

    완료
  8. 1.1.8

    Procedures as Black-Box Abstractions

    일부

    프로시저 경계는 다루지만 블랙박스 분해의 전체 논의까지 연결하지는 않았습니다.

1.2

프로시저와 프로시저가 만드는 프로세스

  1. 1.2.1

    Linear Recursion and Iteration

    완료
  2. 1.2.2

    Tree Recursion

    완료
  3. 1.2.3

    Orders of Growth

    완료
  4. 1.2.4

    Exponentiation

    완료
  5. 1.2.5

    Greatest Common Divisors

    완료
  6. 1.2.6

    Example: Testing for Primality

    일부

    expmod와 고정한 밑의 페르마 점검은 구현했지만 시간 측정 소수 검사와 확률적 검사의 전체 전개는 아직 없습니다.

1.3

고차 프로시저로 추상화 만들기

  1. 1.3.1

    Procedures as Arguments

    완료
  2. 1.3.2

    Constructing Procedures Using Lambda

    일부

    lambda 식을 직접 사용하지만 문법과 범위와 이름 붙이기를 전용 수업으로 분리하지는 않았습니다.

  3. 1.3.3

    Procedures as General Methods

    완료
  4. 1.3.4

    Procedures as Returned Values

    완료
제2장

데이터로 추상화 쌓기

전체 18개 중 18개 연결 · 13개 완료일부 5 · 미구현 018 / 18
2.1

데이터 추상화 소개

  1. 2.1.1

    Example: Arithmetic Operations for Rational Numbers

    완료
  2. 2.1.2

    Abstraction Barriers

    완료
  3. 2.1.3

    What Is Meant by Data?

    일부

    생성자와 선택자의 계약은 보여 주지만 프로시저 표현까지 완전하게 전개하지는 않았습니다.

  4. 2.1.4

    Extended Exercise: Interval Arithmetic

    완료
2.2

계층적 데이터와 닫힘 성질

  1. 2.2.1

    Representing Sequences

    완료
  2. 2.2.2

    Hierarchical Structures

    완료
  3. 2.2.3

    Sequences as Conventional Interfaces

    완료
  4. 2.2.4

    Example: A Picture Language

    완료
2.3

기호 데이터

  1. 2.3.1

    Quotation

    일부

    인용된 데이터를 폭넓게 사용하지만 인용과 동등성을 전용 수업으로 완결하지는 않았습니다.

  2. 2.3.2

    Example: Symbolic Differentiation

    완료
  3. 2.3.3

    Example: Representing Sets

    일부

    정렬된 리스트의 포함 검사와 합집합은 다루지만 무순서 리스트와 트리 집합은 아직 빠져 있습니다.

  4. 2.3.4

    Example: Huffman Encoding Trees

    완료
2.4

추상 데이터의 여러 표현

  1. 2.4.1

    Representations for Complex Numbers

    완료
  2. 2.4.2

    Tagged data

    완료
  3. 2.4.3

    Data-Directed Programming and Additivity

    일부

    연산 표와 가산적으로 확장되는 다항식 패키지는 실행되지만 완전한 범용 시스템 전체에 재사용하는 설치 프로토콜까지 구현하지는 않았습니다.

2.5

범용 연산 체계

  1. 2.5.1

    Generic Arithmetic Operations

    일부

    범용 디스패치와 명시적인 수치 tower와 다항식 덧셈·곱셈은 실행되지만 내리기와 더 넓은 산술 패키지 집합과 완전한 tower는 아직 빠져 있습니다.

  2. 2.5.2

    Combining Data of Different Types

    완료
  3. 2.5.3

    Example: Symbolic Algebra

    완료
제3장

모듈성, 객체, 상태

전체 19개 중 19개 연결 · 10개 완료일부 9 · 미구현 019 / 19
3.1

대입과 지역 상태

  1. 3.1.1

    Local State Variables

    완료
  2. 3.1.2

    The Benefits of Introducing Assignment

    일부

    상태 캡슐화와 재현성은 실행되지만 원전의 예제를 모두 따라가지는 않습니다.

  3. 3.1.3

    The Costs of Introducing Assignment

    일부

    별칭과 순서 의존성은 보이지만 환경 모델을 통한 전체 비교는 아직 불완전합니다.

3.2

평가의 환경 모델

  1. 3.2.1

    The Rules for Evaluation

    일부

    프레임과 조회는 실행되지만 환경 평가 규칙 전체를 한곳에서 제시하지는 않습니다.

  2. 3.2.2

    Applying Simple Procedures

    일부

    클로저 생성과 비공개 저장 위치는 다루지만 프레임별 적용 시각화는 아직 없습니다.

  3. 3.2.3

    Frames as the Repository of Local State

    완료
  4. 3.2.4

    Internal Definitions

    완료
3.3

가변 데이터로 모델링하기

  1. 3.3.1

    Mutable List Structure

    일부

    순서쌍 변경과 별칭은 보이지만 순환과 파괴적 append와 가변 리스트 도구 전체는 아직 없습니다.

  2. 3.3.2

    Representing Queues

    완료
  3. 3.3.3

    Representing Tables

    완료
  4. 3.3.4

    A Simulator for Digital Circuits

    일부

    정렬된 의제와 시뮬레이션 시간은 다루지만 전선과 게이트와 회로 전파는 아직 없습니다.

  5. 3.3.5

    Propagation of Constraints

    완료
3.4

동시성: 시간의 본질

  1. 3.4.1

    The Nature of Time in Concurrent Systems

    완료
  2. 3.4.2

    Mechanisms for Controlling Concurrency

    일부

    모형화한 serializer와 test-and-set 경계는 실행되지만 실제 스레드와 공정성과 교착 분석은 명시적으로 범위 밖입니다.

3.5

스트림

  1. 3.5.1

    Streams Are Delayed Lists

    완료
  2. 3.5.2

    Infinite Streams

    완료
  3. 3.5.3

    Exploiting the Stream Paradigm

    일부

    무한 스트림의 유한한 요구는 다루지만 수치 스트림 응용은 아직 연결하지 않았습니다.

  4. 3.5.4

    Streams and Delayed Evaluation

    완료
  5. 3.5.5

    Modularity of Functional Programs and Modularity of Objects

    일부

    두 모형은 별도 수업에 있지만 원전의 전체 비교 사례는 아직 없습니다.

제4장

메타언어적 추상화

전체 17개 중 17개 연결 · 8개 완료일부 9 · 미구현 017 / 17
4.1

메타순환 평가기

  1. 4.1.1

    The Core of the Evaluator

    일부

    핵심 디스패치와 프로시저 본문 전처리와 유한한 eval/apply 드라이버는 실행되지만 평가기의 전체 전개를 아직 재현하지는 않습니다.

  2. 4.1.2

    Representing Expressions

    완료
  3. 4.1.3

    Evaluator Data Structures

    일부

    환경과 복합 프로시저 레코드와 가변 전역 바인딩과 표현된 thunk와 명시적인 unassigned 지역 값은 실행되지만 평가기 자료구조 전체를 조립하지는 않았습니다.

  4. 4.1.4

    Running the Evaluator as a Program

    완료
  5. 4.1.5

    Data as Programs

    일부

    프로그램을 인용된 데이터로 다루며 파생 let과 내부 정의 scan-out과 유한한 최상위 드라이버로 변환·실행하지만 원전의 전체 논의는 아직 연결하지 않았습니다.

  6. 4.1.6

    Internal Definitions

    완료
  7. 4.1.7

    Separating Syntactic Analysis from Execution

    완료
4.2

Scheme의 변형 -- 지연 평가

  1. 4.2.1

    Normal Order and Applicative Order

    일부

    요구와 메모이제이션은 명시하지만 평가 순서의 예제를 완전히 전개하지는 않았습니다.

  2. 4.2.2

    An Interpreter with Lazy Evaluation

    일부

    명시적인 thunk는 핵심 표현 변화를 모형화하지만 완전한 지연 평가기는 아닙니다.

  3. 4.2.3

    Streams as Lazy Lists

    일부

    스트림과 명시적인 thunk는 별도 층에 있으며 지연 리스트 평가기 통합은 아직 없습니다.

4.3

Scheme의 변형 -- 비결정적 계산

  1. 4.3.1

    Amb and Search

    완료
  2. 4.3.2

    Examples of Nondeterministic Programs

    일부

    유한한 대안과 제약과 모든 해 수집과 명시적인 해 개수 한도는 실행되지만 더 넓은 퍼즐 예제와 무한 탐색 정책은 아직 다루지 않습니다.

  3. 4.3.3

    Implementing the Amb Evaluator

    완료
4.4

논리 프로그래밍

  1. 4.4.1

    Deductive Information Retrieval

    완료
  2. 4.4.2

    How the Query System Works

    일부

    프레임과 규칙 확장과 보이는 frontier를 의도적으로 좁은 평가기로 다룹니다.

  3. 4.4.3

    Is Logic Programming Mathematical Logic?

    완료
  4. 4.4.4

    Implementing the Query System

    일부

    매칭과 제한된 재귀 규칙은 실행되지만 일반 통합과 변수 이름 변경과 부정과 완전한 질의 엔진은 아직 없습니다.

제5장

레지스터 기계로 계산하기

전체 22개 중 17개 연결 · 7개 완료일부 10 · 미구현 517 / 22
5.1

레지스터 기계 설계하기

  1. 5.1.1

    A Language for Describing Register Machines

    일부

    컨트롤러 데이터와 핵심 명령 형식은 있지만 완전한 기계 기술 언어는 아직 없습니다.

  2. 5.1.2

    Abstraction in Machine Design

    일부

    상태와 컨트롤러 경계는 명시하지만 기계를 단계별로 다시 설계하는 전체 과정은 아직 없습니다.

  3. 5.1.3

    Subroutines

    완료
  4. 5.1.4

    Using a Stack to Implement Recursion

    완료
  5. 5.1.5

    Instruction Summary

    일부

    구현된 실행기는 assign과 test와 branch와 goto와 halt의 유한한 부분집합만 지원합니다.

5.2

레지스터 기계 시뮬레이터

  1. 5.2.1

    The Machine Model

    완료
  2. 5.2.2

    The Assembler

    완료
  3. 5.2.3

    Generating Execution Procedures for Instructions

    일부

    명령 실행을 하나의 유한한 실행기가 해석하며 일반 시뮬레이터의 실행 프로시저 집합을 생성하지는 않습니다.

  4. 5.2.4

    Monitoring Machine Performance

    완료
5.3

저장 공간 할당과 가비지 컬렉션

  1. 5.3.1

    Memory as Vectors

    일부

    도달 가능성은 명시하지만 car/cdr 벡터 메모리와 free 포인터 할당은 아직 구현하지 않았습니다.

  2. 5.3.2

    Maintaining the Illusion of Infinite Memory

    일부

    추적과 도달 불가능 분류는 다루지만 복사 수집이나 메모리 회수는 아직 없습니다.

5.4

명시적 제어 평가기

  1. 5.4.1

    The Core of the Explicit-Control Evaluator

    미구현

    아직 전용으로 실행할 수 있는 리스펙스 수업이 없습니다.

    완전한 명시적 제어 평가기 컨트롤러는 아직 없습니다.

  2. 5.4.2

    Sequence Evaluation and Tail Recursion

    미구현

    아직 전용으로 실행할 수 있는 리스펙스 수업이 없습니다.

    명시적 제어 평가기 안의 꼬리 재귀 수열 평가는 아직 연결되지 않았습니다.

  3. 5.4.3

    Conditionals, Assignments, and Definitions

    미구현

    아직 전용으로 실행할 수 있는 리스펙스 수업이 없습니다.

    이 평가기 컨트롤러 경로를 다루는 실행 기계 수업이 아직 없습니다.

  4. 5.4.4

    Running the Evaluator

    미구현

    아직 전용으로 실행할 수 있는 리스펙스 수업이 없습니다.

    처음부터 끝까지 실행하는 명시적 제어 평가기는 아직 없습니다.

5.5

컴파일

  1. 5.5.1

    Structure of the Compiler

    일부

    작은 컴파일러와 명령열 계약은 있지만 완전한 컴파일러 구조는 아직 없습니다.

  2. 5.5.2

    Compiling Expressions

    일부

    상수와 산술 식 트리는 컴파일하지만 변수와 대입과 정의와 조건식은 아직 완전하지 않습니다.

  3. 5.5.3

    Compiling Combinations

    일부

    스택 산술은 피연산자 순서를 보존하지만 일반 프로시저 호출과 linkage는 아직 컴파일하지 않습니다.

  4. 5.5.4

    Combining Instruction Sequences

    완료
  5. 5.5.5

    An Example of Compiled Code

    일부

    작은 산술 예제는 생성하고 실행하지만 완전한 재귀 프로시저의 컴파일 코드는 아직 보여 주지 않습니다.

  6. 5.5.6

    Lexical Addressing

    완료
  7. 5.5.7

    Interfacing Compiled Code to the Evaluator

    미구현

    아직 전용으로 실행할 수 있는 리스펙스 수업이 없습니다.

    컴파일된 프로시저와 평가기가 하나의 호출 가능한 런타임 경계를 아직 공유하지 않습니다.

이 지도를 읽는 기준 범위 상태는 제품 편집상의 판단이며 한 수업이 책의 모든 문단과 연습문제와 의미론적 주장을 재현한다는 증명이 아닙니다. 검증 보류 배지는 경로와 내용은 작성됐지만 소유자가 요청한 packaged-Wasm, 실행 흐름, 빌드, 브라우저 검증 묶음을 아직 기다린다는 뜻입니다.