목차

옮긴이의 글 서문 왜 모든 사람이 프로그래밍을 배워야 하는가 디자인 레시피 Scheme과 DrRacket의 선택 이 책의 구성 감사의 글 1부. 간단한 형태의 데이터 처리 1장 학습자, 교육자, 컴퓨터 2장 수, 표현, 간단한 프로그램 2.1 수와 연산 2.2 변수와 프로그램 2.3 응용 문제 2.4 오류 2.5 프로그램 디자인 3장 프로그램은 함수+변수 졍의다 3.1 함수 조합 3.2 변수 정의 3.3 함수 구성에 관한 연습문제 4장 조건문과 함수 4.1 불린과 관계 4.2 조건을 검사하는 함수 4.3 조건과 조건문 5장 기호 정보 5.1 기호에 관한 몸풀기 문제 6장 복합 데이터 1: 구조체 6.1 구조체 6.2 추가 연습문제: 간단한 그림 그리기 6.3 구조체 정의 6.4 데이터 정의 6.5 복합 데이터를 다루는 함수 디자인 6.6 추가 연습문제: 원과 사각형 움직이기 6.7 추가 연습문제: 행맨 단어 맞히기 7장 데이터의 다양성 7.1 데이터를 혼합하고 구분하기 7.2 혼합 데이터를 다루는 함수 디자인 7.3 함수 조합 다시 보기 7.4 추가 연습문제; 도형 움직이기 7.5 입력 오류 8장 쉬어가기 1: 구문과 의미 8.1 Scheme의 어휘 8.2 Scheme의 문법 8.3 Scheme의 의미 8.4 오류 8.5 불린 표현 8.6 변수 정의 8.7 구조체 정의 2부. 임의의 큰 자료 처리 9장 복합 데이터 2: 리스트 9.1 리스트 9.2 임의 길이의 리스트에 대한 데이터 정의 9.3 임의 길이의 리스트 다루기 9.4 자기 참조 데이터 정의에 대한 함수 디자인 9.5 간단한 리스트를 다루는 다양한 예 10장 리스트 처리 더 보기 10.1 리스트를 출력하는 함수 10.2 구조체를 포함하는 리스트 10.3 추가 연습문제: 그림 옮기기 11장 자연수 11.1 자연수의 정의 11.2 임의 길이의 자연수 다루기 11.3 추가 연습문제: 리스트 작성 및 함수 테스트 11.4 자연수에 대한 또 다른 데이터 정의 11.5 자연수의 성질에 관한 보다 자세한 논의 12장 함수 조합 다시 보기 12.1 복잡한 프로그램 디자인하기 12.2 재귀 보조 함수 12.3 문제 일반화, 함수 일반화 12.4 추가 연습문제: 단어 재배열하기 13장 쉬어가기 2: 리스트 축약 3부. 임의의 큰 데이터 처리 더 보기 14장 자기 참조 데이터 정의 더 보기 14.1 구조체의 구조 14.2 추가 연습문제: 이진 검색 트리 14.3 리스트 내의 리스트 14.4 추가 연습문제: Scheme 계산 15장 상호 참조 데이터 정의 15.1 구조체 리스트, 구조체 내의 리스트 15.2 상호 참조 정의를 다루는 함수 디자인하기 15.3 추가 연습문제: 웹페이지 더 보기 16장 반복적 개선을 통한 개발 16.1 데이터 분석 16.2 데이터 집합 정의하기 및 개선하기 16.3 함수 및 프로그램 개선하기 17장 두 복합 데이터 다루기 17.1 두 리스트 동시에 다루기: 경우 1 17.2 두 리스트 동시에 다루기: 경우 2 17.3 두 리스트 동시에 다루기: 경우 3 17.4 함수 단순화 17.5 복잡한 두 개의 데이터를 입력받는 함수 디자인 17.6 복잡한 두 입력을 다루는 예 17.7 추가 연습문제: Scheme 계산하기, 두 번째 17.8 통일성과 테스트 18장 쉬어가기 3: 지역정의와 유효 영역 18.1 local을 이용한 함수 조직 18.2 유효 영역과 블록 구조 4부. 디자인 추상화 19장 정의 사이의 유사성 19.1 함수 사이의 유사성 19.2 데이터 정의 사이의 유사성 20장 함수는 값이다 20.1 구문과 의미 20.2 추상 함수 및 다형적 함수에 대한 계약 21장 예에서 추상화 디자인하기 21.1 예에서 추상화 끌어내기 21.2 추상화 리스트 함수를 다루는 몸풀기 문제 21.3 추상화와 유일한 관리 지점 21.4 추가 연습문제: 움직이는 그림 다시 보기 21.5 참고: 템플릿으로부터 추상화 디자인하기 22장 함수를 출력하는 함수를 이용한 추상화 디자인 22.1 함수를 출력하는 함수 22.2 값으로서의 함수를 이용한 추상 함수 디자인 22.3 GUI 맛보기 23장 수학 예제 23.1 수열과 급수 23.2 등차수열과 급수 23.3 등비수열과 급수 23.4 함수 내 면적 23.5 함수의 기울기 24장 쉬어가기 4: 즉석에서 함수 정의하기 24.1 람다 표현의 구문 24.2 람다의 영역과 의미 24.3 람다의 활용 5부. 발생적 재귀 25장