---
title: "Guile Scheme 64페이지 입문서 — define부터 WASM 배포까지"
published: 2026-01-07T22:49:56.000Z
canonical: https://jeff.news/article/540
---
# Guile Scheme 64페이지 입문서 — define부터 WASM 배포까지

Guile Scheme으로 프로그래밍 입문부터 웹서버, 브라우저 WASM, 리눅스 패키지 배포까지 64페이지에 담은 무료 책. 재귀 중심 철학과 실용적 미니멀리즘을 강조.

## Guile Scheme 입문서가 64페이지에 다 들어감

- "Programming Essentials with Guile Scheme"이라는 무료(FOSS) 책 소개. 첫 `define`부터 앱 배포까지 64페이지에 담겠다는 야심찬 구성임. 군더더기 없는, 의견이 확실한(opinionated) 입문서를 지향함

- 대상 독자: 프로그래밍을 코드 예제로 배우고 싶은 초보자, Scheme에 빠르게 입문하려는 경험자, 또는 "이렇게 적은 것만으로도 충분하다"를 확인하고 싶은 사람

## 핵심 내용 요약

- Scheme의 철학을 한 줄로 요약: "기능을 쌓는 게 아니라, 추가 기능이 필요해 보이게 만드는 약점과 제약을 제거하는 설계"

- 재귀(recursion)가 반복(iteration)보다 낫다는 입장이 강함. 디버깅이 쉽고(let 재귀 상단에서 모든 변수 확인 가능), 더 깔끔한 API를 만든다는 논거. 피보나치 같은 예제로 named let 패턴을 보여줌

- "Zen for Scheme" 원칙이 인상적:
  - **WM (Weakest Method)** — 일 되는 가장 약한 방법을 써라, 단 강한 방법도 알아둬라
  - **RW (Recursion Wins)** — 재귀가 이긴다, 루프 매크로가 더 명확한 경우 빼고
  - **RM (Readability Matters)** — 가독성이 중요하고, 중첩은 괜찮다

## 배포: 웹서버, 브라우저, 리눅스 패키지 다 됨

- Guile 내장 웹서버 모듈로 서버사이드 배포 가능. nginx SSL 터미네이터 뒤에 놓는 구성 예제 포함

- 클라이언트사이드도 됨 — Hoot을 이용해 Scheme 코드를 **WASM으로 컴파일**해서 브라우저에서 돌릴 수 있음. `define-foreign`으로 DOM API를 FFI로 연결하는 방식

- 리눅스 배포는 Guix pack으로 모든 의존성 포함한 tarball 생성. Docker 이미지로도 변환 가능

- autoconf/automake를 이용한 GNU 빌드 시스템 설정, texinfo 문서 생성까지 전통적인 GNU 프로젝트 구조를 따르는 방법을 상세히 다룸

> [!TIP]
> Scheme이 궁금했는데 진입 장벽이 높다고 느꼈다면, 64페이지짜리 실용 입문서로 시작하기 좋은 기회. 특히 WASM 컴파일 지원으로 "Scheme은 학술용"이라는 편견을 깨는 부분이 흥미로움

## 핵심 포인트

- 첫 define부터 앱 배포까지 64페이지 구성
- Hoot을 통해 Scheme을 WASM으로 컴파일하여 브라우저 실행 가능
- Guile 내장 웹서버로 서버사이드 배포, Guix pack으로 리눅스 배포
- Zen for Scheme: Weakest Method, Recursion Wins, Readability Matters

## 인사이트

Scheme이 학술용이라는 편견을 깨는 실용 입문서. 특히 WASM 컴파일 지원으로 웹 프론트엔드까지 커버하는 점이 주목할 만함.
