공익 활동도 시작에 취업이 걱정되기도 하고
컴공과로 들어왔는데 뭐라도 만들어야 하지 않나 하던중에
이 책이 눈에 들어옴
인터프리터 만들기 딱 봐도 재밌어 보여서 시작하기로 결정
코드를 한줄씩 읽어가면서 번역하는 "프로그램"
코드를 한줄씩 읽어가며 기계어로 번역하기에 한번에 통째로 번역하는 컴파일러보단 느리다.
별도의 실행파일없이 해석과 동시에 실행이 된다.
대표적으로 파이썬, javascript 등이 존재한다.
프로그램 수정이 간단하며 오브젝트 파일을 만들지 않기 때문에 메모리 사용이 덜하다.
-> 개발자가 한줄씩 돌리며 어디서 문제가 났는지 바로 알수 있음
-> 왜 오브젝트 파일을써?? 어차피 그냥 링킹만 하면 되는데
대규모 프로젝트의 경우 각각 컴파일을 돌린후 오브젝트 파일로 만들어 두고
전체를 엮어서 링킹 하기 때문에 중간단계를 둠
매번 중간단계를 없애고 처리한다면 오버헤드가 발생하기 떄문
일단 그렇다고 하고 너무 딥하지 않게 간단하게 책 따라가면서 만들어볼 생각
다 만든후에는 c++로 다시한번 만들어보거나 컴파일러를 만들어보자
이 책은 go언어로 쓰여있다는데
처음에는 낯설다가 그냥 대충 뒤적여보니까 문법이 어느정도 이해가 되는듯