https://github.com/drmeister/clasp
Do any of this from scratch and your productivity will plummet:
LLVM for compiling; Boehm for garbage collection; GMP for bignums; Readline for interactivity; C++11 for ... cough ... oh will you look at the time---lesson is over for today, grasshoppers!
The Boehm GC is only so it doesn't run out of RAM while bootstrapping, it uses the Ravenbrook MPS precise garbage collector once it's bootstrapped.
Also note that Christian reported that Ravenbrook was very responsive when he discovered a few deficiencies in the MPS library.
Also he used clang to walk his C++ code to automatically generate information in order to enable precise GC of C++ objects.
I did watch the lecture, I do know how many libraries he used...