목차
머리말 = 3
제1장 프로그래밍 언어 소개 = 13
1.1 프로그래밍 언어의 역사 = 13
1.1.1 초기의 프로그래밍 언어 = 13
1.1.2 과학 계산용 프로그래밍 언어 = 15
1.2 프로그래밍 언어의 특성 = 20
1.3 프로그래밍 언어의 요건 = 22
제2장 프로그래밍 언어의 구현 = 28
2.1 자연 언어와 인공 언어 = 28
2.2 구문과 시맨틱스 =31
2.3 컴파일러와 언어의 번역 = 35
2.4 인터프리터 = 37
제3장 프로그램의 구성 = 39
3.1 선언문 = 39
3.1.1 상수의 정의 = 39
3.1.2 수형의 정의 = 39
3.1.3 유도된 수형 = 42
3.1.4 변수의 선언 = 42
3.2 실행문 = 44
3.2.1 치환문 = 45
3.2.2 제어문 = 46
3.3 부프로그램 = 49
3.3.1 부프로그램의 제어 구조 = 49
3.3.2 함수 부프로그래(function subprogram) = 50
3.3.3 서브루틴/프로시저 부프로그램 = 51
3.3.4 재호출 부프로그램과 코루틴 = 52
3.3.5 인자의 전달 = 54
제4장 블록 구조 프로그램 = 59
4.1 블록 구조 = 59
4.2 범위 규칙과 바인딩 = 61
4.3 인바이런먼트와 칸투어 모델 = 66
4.4 유해한 성격 = 77
4.4.1 부작용 = 75
4.4.2 aliasing = 75
제5장 자료 = 78
5.1 자료의 선언 = 78
5.2 자료의 구성 = 81
5.2.1 내장된 자료 = 83
5.2.2 모임 자료 = 84
5.3 자료의 구조 = 86
5.3.1 기본 자료 = 86
5.3.2 모임 자료 = 90
제6장 기억 장소 관리 = 95
6.1 기억 장소 관리의 소개 = 95
6.2 실행 시간 기억 장소 배정 = 98
6.3 프로그래밍 언어와 기억 장소 배정 = 105
제7장 포트란 = 111
7.1 포트란의 구조 = 111
7.2 선언부 = 113
7.2.1 수형 선언 = 113
7.2.2 지정문 = 114
7.3 실행부 = 115
7.3.1 치환부 = 116
7.3.2 제어문 = 116
7.3.3 입출력문 = 120
7.4 부프로그램문 = 123
7.4.1 함수문 = 123
7.4.2 함수 부프로그램 = 124
7.4.3 서브루틴 부프로그램 = 125
7.4.4 인자의 전달 = 126
제8장 코볼 = 128
8.1 코볼의 구조 = 128
8.2 선언부 = 129
8.2.1 아이텐티피케이션부 = 130
8.2.2 인바이런먼트부 = 130
8.2.3 데이터부 = 132
8.3 프로시저부 = 140
8.3.1 프로시저부의 구성 = 140
8.3.2 입출력문 = 141
8.3.3 산술문 = 143
8.3.4 분기문 = 146
8.4 부프로그램 = 150
8.4.1 CALL문 = 151
8.4.2 ENTRY문 = 152
제9장 알골 = 154
9.1 프로그램의 구조 = 154
9.2 선언문 = 155
9.2.1 수형 선언(type declaration) = 156
9.2.2 배열 선언(array declaration) = 157
9.2.3 스위치 선언(switch declaration) = 157
9.3 알골문 = 159
9.3.1 치환문(assignment statement) = 159
9.3.2 제어문 = 163
9.4 부프로그램 = 166
9.4.1 프로시저 선언 = 166
9.4.2 부프로그램의 형식 인자 = 168
제10장 PL/I = 172
10.1 프로그램 구조 = 172
10.2 선언부 = 173
10.2.1 DECLARE문 = 174
10.2.2 DEFAULT문 = 176
10.2.3 FILE 선언문 = 177
10.2.4 PICTURE문 = 179
10.2.5 배열의 선언 = 181
10.2.6 기억 장소 classes = 182
10.3 실행문 = 185
10.3.1 치환문 = 185
10.3.2 제어문 = 188
10.3.3 입출력 = 191
10.3.4 리스트 처리 = 197
10.4 부프로그램 = 201
10.4.1 블록의 구조와 명칭 scope = 201
10.4.2 프로시저 = 204
제11장 파스칼 = 210
11.1 프로그램의 구조 = 210
11.2 선언부 = 213
11.2.1 상수의 정의 = 213
11.2.2 변수의 선언 = 214
11.2.3 수형의 정의 = 215
11.2.4 구조화된 데이터형 = 218
11.3 실행부 = 225
11.3.1 치환부 = 225
11.3.2 제어문 = 228
11.4 부프로그램 = 234
11.4.1 함수 선언 = 234
11.4.2 프로시저 = 236
11.4.3 함수문 및 프로시저문의 인자 = 239
제12장 C 언어 = 241
12.1 C 언어의 구조 = 241
12.2 선언부 = 242
12.2.1 수형 선언 = 242
12.2.2 변수의 class = 244
12.2.3 구조화된 데이터 = 246
12.3 실행부 = 252
12.3.1 치환문 = 252
12.3.2 제어문 = 256
12.4 부프로그램 = 258
12.4.1 함수의 구조 = 258
12.4.2 인자 = 261
제13장 리스프 = 264
13.1 리스프의 구조 = 264
13.2 수형 및 수식 = 267
13.2.1 원자 기호(atomic aymbol) = 267
13.2.2 수식 = 267
13.2.3 리스트 표현 = 270
13.2.4 수 = 275
13.2.5 리스트 구조 = 276
13.2.6 리스프 연산 = 279
13.3 리스프 함수 = 281
13.3.1 기본 함수 = 281
13.3.2 산술 함수 = 285
13.3.3 사용자 정의 함수 = 287
13.3.4 관계 함수 = 288
13.3.5 M-수식(Meta-expression) = 289
제14장 스노볼 = 292
14.1 스노볼의 구조 = 292
14.2 선언문 = 293
14.2.1 기본 수형 = 293
14.2.2 배열 = 295
14.2.3 테이블 = 296
14.2.4 정의된 데이터 = 297
14.3 스노볼문 = 300
14.3.1 치환문(assignment statement) = 301
14.3.2 패턴 매치문 = 306
14.3.3 패턴 수식 = 306
14.3.4 조건 치환문(conditional value assignment) = 310
14.3.5 직접 치환문(immediate value assignment) = 311
14.4 부프로그램 = 312
14.4.1 함수 프로그램의 선언 = 312
14.4 2 함수 선언 = 314
14.4.3 함수 선언의 실행 과정 = 315
제15장 APL = 318
15.1 APL의 구조 = 318
15.2 실행문 = 321
15.2.1 치환문 = 321
15.2.2 기본 연산 = 323
15.2.3 기타 산술 연산 = 327
15.2.4 분기 = 333
15.3 함수 = 335
15.3.1 함수 정의 = 335
15.3.2 함수의 인자 = 338
15.4 배열 연산 = 342
15.4.1 벡터 연산 = 342
15.4.2 배열 연산 = 344
제16장 프롤로그 = 347
16.1 프로그램의 구조 = 347
16.1.1 상수 및 변수 =347
16.1.2 사실(facts) = 349
16.1.3 규칙(rule) = 350
16.1.4 질문 = 351
16.2 backtracking과 cut = 354
16.2.1 backtracking = 354
16.2.2 cut = 356
16.2.3 cut, fail의 조합 = 357
16.3 리스트 처리 = 358
16.3.1 리스트의 구조 = 358
16.3.2 리스트의 처리 = 360
16.4 프롤로그와 논리 프로그램 = 364
16.4.1 Horn clause = 364
16.4.2 resolution = 365
제17장 Ada = 370
17.1 프로그램 구조 = 371
17.1.1 프로그램 환경 = 371
17.1.2 프로그램 구성 = 371
17.1.3 프로그램 성격 = 372
17.2 변수 및 수형 선언 = 374
17.2.1 명칭 = 374
17.2.2 수형 정의 = 374
17.2.3 종수형 = 375
17.2.4 구조형 데이터 = 375
17.2.5 기타 수형 = 376
17.3 실행문 = 379
17.3.1 수식 = 379
17.3.2 문 = 380
17.4 부프로그램 = 384
17.4.1 procedure와 function = 384
17.4.2 exception = 385
17.4.3 패키지 = 386
17.4.4 task = 388
17.4.5 generic = 389
제18장 C++ = 391
18.1 C++의 특징 = 391
18.1.1 객체 지향 프로그래밍 언어로서의 특징 = 391
18.1.2 C와 C++의 차이점 = 392
18.2 추상적 자료형 = 394
18.2.1 사용자가 정의한 자료형 = 394
18.2.2 자료형 변환 = 395
18.2.3 연산자 중복과 중복 함수 = 395
18.3 클래스(class) = 397
18.3.1 멤버 함수(member function) = 397
18.3.2 생성자와 소멸자 = 399
18.3.3 friend와 정적 변수 = 400
18.4 파생 클래스 = 402
18.4.1 상속 = 402
18.4.2 가상 함수 = 404
18.5 입력과 출력 = 406
18.5.1 출력 스트림 = 406
18.5.2 입력 스트림 = 407
18.5.3 화일과 스트림 = 408
제19장 Smalltalk = 410
19.1 객체 지향 프로그래밍의 개념 = 411
19.1.1 객체(object) = 411
19.1.2 인스턴스(instance) = 412
19.1.3 클래스(class), 메타클래스(mataclass) = 413
19.1.4 메시지(message) 메서드(mathod) = 415
19.2 객체 지향 언어의 특징 = 416
19.3 Smalltalk 프로그래밍 = 416
19.3.1 Hello, World = 417
19.3.2 리터럴(literal) = 417
19.3.3 수식의 구문(expression syntax) = 418
19.3.4 블록(block) = 422
19.3.5 변수 = 422
19.3.6 Smalltalk의 제어 구조 = 424
19.3.7 새로운 클래스를 정의하기 = 427
19.3.8 Smalltalk 클래스의 계층 구조 = 428