동적 컴파일러 부분은 거의 전부 트레이스 컴파일에 대한 내용에 가깝다. 일반적으로 트레이스 컴파일은 막다른 길이었고 여러 번 버려져 왔음 이전 관련 글들: 이 강의가 왜 고급인지 조금 헷갈림. 대부분의 주제, 예를 들어 죽은 코드 제거, 데이터 흐름, 지배자 분석, SSA 형식은 컴파일러 첫 강의에 들어갈 것처럼 보임 이런 식의 자기 주도형 온라인 대학 수준 컴퓨터과학 강의가 또 있을까? Nora Sandler의 Writing a C compiler와 비교했을 때, 독자가 얻을 수 있는 이득은 어떻게 다를까? 고급 단계로 들어가기 전에 볼 수 있는 기초 컴파일러 자기 주도형 강의도 있을까? Rust 컴파일러를 다룬 팟캐스트를 봤는데, 시스템을 크래시시킬 수 있는 코드인지 판단하는 데 어떤 지점에서는 기계학습 알고리즘이 들어간다고 했던 것 같음 alexia massalin이 요즘 microunity 특허 로열티를 받는 것 말고 뭘 하고 있는지 정말 궁금함Hacker News 의견들
여기서 더 중요한 개념은 타입 피드백, 추측 실행과 역최적화, 빠른 컴파일러와 계층화라고 봄
강의 전체는 좋아 보이고, 이렇게 많은 자료가 온라인에 공개된 것도 훌륭함
말한 것처럼 산업계에서 실제로 잘 작동하는 것에 대한 맥락을 더 제공하고 싶음
다만 이 영역은 꽤 좁을 수 있고, 전통적인 컴파일러와도 많이 달라서 우리가 하는 일 중 일부를 보면 꽤 불편해할지도 모름
물론 TraceMonkey나 LuaJIT와는 문제 공간이 극단적으로 다르다는 건 알고 있음
당시 개발자 중 한 명, 아마 Jason Orendorff였던 사람과 이야기했는데, 트레이싱은 잘 안 풀린다고 했고, 제한적인 조건에서는 가능할 수도 있다고 봤음
다만 그 조건이 무엇이었는지는 완전히 잊어버림
LuaJIT는 큰 프로그램에서도, 수억 대의 서버와 기기에서도 잘 작동함
학자들조차 이 상투적인 얘기를 계속 반복하는 게 정말 안타까움. 모르는 게 약이라는 말이 떠오름
CS 6120: Advanced Compilers: The Self-Guided Online Course - https://news.ycombinator.com/item?id=39577878 - 2024년 3월, 댓글 102개
Advanced Compilers: Self-Guided Online Course - https://news.ycombinator.com/item?id=35130975 - 2023년 3월, 댓글 82개
Advanced Compilers: Self-Guided Online Course - https://news.ycombinator.com/item?id=25386756 - 2020년 12월, 댓글 232개
짧게 말하면 컴파일러는 사실상 두 과목으로 나뉘고, 첫 과목은 컴파일러를 만들기 위한 최소 요소인 어휘 분석, 구문 분석, 코드 생성, 레지스터 할당을 다룸
두 번째 과목은 최적화 컴파일러를 만드는 방법에 해당함
실제로 컴파일러든 인터프리터든 백엔드는 거의 항상 “독자에게 맡기는 연습문제”로 남겨짐
클로저를 만드는 법, 환경을 추적하는 법, 패턴 매칭, 메모리 표현 등 아직 찾아내야 할 게 얼마나 많은지 상상하기 어려울 정도임
흥미로운 모든 것은 직접 찾아봐야 함
추신: 이건 그중 한 해 분량일 뿐임: https://gist.githubusercontent.com/mamcx/e1743571b9a1ea163a7...
인터프리터와 컴파일러 책을 두 권 읽었는데, 백엔드는 많이 다루지 않았음
아마 백엔드 입문 강의에 가까운 것 아닐까 싶음
어떤 교수들은 “mooc” 프레임워크 밖에서도 강의와 과제를 공개함
댓글로 질문했을 때 답해준 교수도 있었음. 인터넷은 아직 꽤 멋질 때가 있음
초보자나 취미로 파보는 사람이라면 그 책이나 비슷한 수준의 자료로 시작한 뒤, 이 강의를 시도하면서 빈틈을 채우는 편이 좋음
인터프리터부터 시작하고 싶다면 Essentials of Programming Languages [4]가 좋음
이 사이트와 다른 곳에서 Crafting Interpreters가 인기 있는 건 인정하지만 개인적으로는 좋아하지 않음. 그래도 다른 사람들은 좋아하니 시도해볼 만하고 무료로 볼 수 있음
EOC와 EOPL은 다소 학술적인 편이지만, Scheme과 Racket에 불편함을 느끼는 사람들을 제외하면 꽤 접근하기 좋다고 봄. EOC의 Python 버전은 그 문제를 줄여줌
그다음에는 더 깊고 학술적인 컴파일러 책들이 더 쉽게 다가옴
[1] https://mitpress.mit.edu/9780262047760/essentials-of-compila... - Racket 버전, 오픈 액세스 버전 있음
[2] https://mitpress.mit.edu/9780262048248/essentials-of-compila... - Python 버전, 오픈 액세스 버전 있음
[3] https://nostarch.com/writing-c-compiler - 구현 언어 선택 가능
[4] https://mitpress.mit.edu/9780262062794/essentials-of-program... - Scheme이지만 Racket에서 사용 가능
두 부분으로 되어 있고, 첫 번째는 Java로 트리 순회 인터프리터를 만든 뒤 C로 작성한 버전으로 더 나아감
https://github.com/jamiebuilds/the-super-tiny-compiler
여기서 추천된 현대적인 책 몇 권과 함께 보면 충분할 것임
David Gries - https://www.cs.cornell.edu/gries/ 및 https://en.wikipedia.org/wiki/David_Gries
네덜란드 컴퓨터과학자 Dick Grune는 Compiler Construction for Digital Computers에 대해 “여러 세대의 컴파일러 제작자가 이 책과 함께 성장했고, 그들은 후회하지 않았다”고 썼음
Dick Grune 본인도 컴파일러와 프로그래밍 언어 책으로 유명함 - https://dickgrune.com/index.html 및 https://en.wikipedia.org/wiki/Dick_Grune
출처가 있을까?

12 hours ago
4
![[헬스캡슐]은행잎 추출물, ‘베타아밀로이드 응집 억제’ 효과 확인 外](https://dimg.donga.com/wps/NEWS/IMAGE/2026/05/26/133978263.3.jpg)



!['꽃청춘' 3인방, 무계획 제주의 높은 벽..결국 티켓 구하기 실패[별별TV]](https://image.starnewskorea.com/21/2026/05/2026052421091553722_1.jpg)

![[오피셜] ‘불꽃슈터’ 전성현, KT서 ‘퍼펙트 10’ 파트너 문성곤과 재회…서민수도 3년 계약](https://pimg.mk.co.kr/news/cms/202605/28/news-p.v1.20260528.c55346b19e8f45bfb362482843760fb3_R.png)

English (US) ·