이미 소장하고 있다면 판매해 보세요.
|
4. 언어를 처리하는 기법
4.1 메타써큘러 실행기 4.1.1 언어 실행기의 알짜배기 4.1.2 식을 나타내는 방법 4.1.3 언어 실행기에서 쓰는 데이터 구조 4.1.4 언어 실행기를 보통 프로그램처럼 돌려보기 4.1.5 프로그램도 데이터처럼 4.1.6 안쪽 정의(internal definition) 4.1.7 문법 분석과 실행 과정을 떼어놓기 4.2 Scheme 바꿔보기 - 제때 계산법 4.2.1 식의 값을 구하는 차례 - 정의대로 계산법과 인자 먼저 계산법 4.2.2 제때 계산법을 따르는 실행기 4.2.3 제때셈 리스트와 스트림 4.3 Scheme 바꿔보기 - 비결정적 계산 4.3.1 amb와 찾기 4.3.2 비결정적 프로그램 짜기 4.3.3 amb 실행기 구현 4.4 논리로 프로그램 짜기 4.4.1 연역식 정보 찾기 4.4.2 쿼리 시스템의 동작 방식 4.4.3 논리 프로그래밍은 수학 논리를 따르는가? 4.4.4 쿼리 시스템 만들기 4.4.4.1 드라이버 루프와 쿼리 값 찍어내기(instantiation) 4.4.4.2 실행기(evaluator) 4.4.4.3 패턴 매칭으로 참말 찾아내기 4.4.4.4 규칙과 동일화 4.4.4.5 데이터베이스의 관리 4.4.4.6 스트림 연산 4.4.4.7 쿼리의 문법을 처리하는 프로시저 4.4.4.8 일람표와 정의 5. 레지스터 기계로 계산하기 5.1 레지스터 기계 설계하기 5.1.1 레지스터 기계를 묘사하는 언어 5.1.2 기계 디자인에서의 속 내용 감추기(abstraction) 5.1.3 서브루틴 5.1.4 스택(stack)을 이용해 되돌기(recursion) 구현하기 5.1.5 명령어 정리 5.2 레지스터 기계 시뮬레이터 5.2.1 기계 모형 5.2.2 어셈블러 5.2.3 명령에 해당하는 실행 프로시저 만들기 5.2.4 기계 성능 지켜보기 5.3 메모리 할당(memory allocation)과 재활용(garbage collection) 5.3.1 벡터로 나타낸 메모리 5.3.2 무한히 많은 메모리인 양 보이기 5.4 제어가 다 보이는 실행기 5.4.1 제어가 다 보이는 실행기의 핵심부 5.4.2 시퀀스 계산과 꼬리 되돌기(tail recursion) 5.4.3 조건 식, 덮어쓰기(assignment), 정의 5.4.4 실행기 돌리기 5.5 번역(compilation) 5.5.1 번역기의 구조 5.5.2 프로그램 식의 번역 5.5.3 조합 식 번역하기 5.5.4 명령줄 한데 합치기 5.5.5 번역된 코드의 예 5.5.6 텍스트에서 변수의 정의를 파악하기(lexical addressing) 5.5.7 번역된 코드를 실행기에 연결하기 용어 대역표 연습문제 목차 참고문헌 찾아보기 |