Why does the Maxine compiler use CPS?
Although not everybody is familiar with Continuation-Passing Style intermediate representations, CPS is actually simpler than SSA for our purposes. Because of Maxine’s architecture, we don’t believe that unfamiliarity will be a probem for most people interested in working with Maxine. First, most people will need to do little if any compiler work at all; meta-circularity allows us to isolate the compiler from other features in almost all cases. Second, compiler-focused people will be able to add other kinds of compilers as needed.