Well, you pretty much can't. A lone hobbyist simply isn't going to throw together a state-of-the-art garbage collector, any more than they're going to outperform LLVM's optimisations and code-generation. The choice is between leveraging existing GCs, such as by compiling to Java bytecode, or making do with an inferior garbage collector (or the choice of several inferior garbage collectors), the way D/Nim/OCaml do.