베어메탈 PC에서 Forth를 만들고 Dusk OS용 부분 C 컴파일러까지 구현하는 연재
Hacker News opinions
사이트를 훑어보니 Forth 언어를 쓰는 부분이 안 보이는데, 내가 놓친 게 있나?
6장 'A Tale of Two Stacks'까지 읽으면 Forth가 나온다는 걸 알 수 있음. 4장부터 직접 Forth를 구현하기 시작하더라.
Forth로 작성한 C 컴파일러를 못 본 것 같음.
live-bootstrap에서 GNU Mes 컴파일러를 대체하려고 나도 두 스택 Forth 계열 언어를 만들었음. 매개변수와 반환값용 스택, 반환 주소와 지역 변수용 스택을 두고 어셈블리로 변환한 뒤 ELF를 만듦. x86, x86_46, arm64를 대상으로 하고 riscv64는 다른 일 때문에 멈춘 상태임.
이건 완전히 내 취향임. 나도 베어메탈 Forth를 만들 생각을 했고, C로 Forth 인터프리터도 한 번 만들었음. 막 받은 8088 IBM PC용 플로피에서 부트 섹터를 만들어 보고 싶은데, 리얼 모드까지만 되겠지만 시작점으로는 재밌을 듯.
'복잡성을 피해 직접 OS와 C 컴파일러를 만든다. 그편이 더 단순하다'는 문장이 대담해서 좋음. 학습하려고 가장 단순한 버전을 직접 구현하는 접근을 좋아함.