No C compiler in common use today has much in common with the very first versions from the 70s. Even C compilers that implement the same version of the ISO standard have a large common subset but also significant differences in implementation-defined (i.e., not standardized) behavior and features not described in the ISO standard at all, which many real world C programs rely on. The Linux kernel was only intended to be compiled with GCC from the start, no other compiler. Eventually support was added for also compiling it with Clang, but this took many person-years of effort by the developers of Clang to implement all the non-standard GCC features Linux relies on.
The Dialog situation is not nearly as difficult because there is much less Dialog code than C code in the world. But still, a new compiler should ideally handle all existing and WIP Dialog games the same as the existing compiler, right? To achieve that, it has to match the existing compiler not just in the cases that you’re thinking of when you look at your Dialog code, it also has to handle all the weird things everyone else has done or will do in Dialog. There’s going to be dark, under-documented corners that someone has stumbled into (possibly without being aware of it), not just in syntax and data types but also in the low-level details of how programs are executed. For logic programming in particular, the execution details can make a huge difference (finishing instantly vs. looping forever or overflowing the call stack). Finding out these dark corners and matching what the existing compiler does is a challenge that doesn’t exist when you implement your own, new language.
I’m not saying it’s impossible for a single person to create a wholly new Dialog compiler that’s completely compatible. Certainly much easier than the Clang/GCC situation mentioned above. But I would expect that anyone who sets out to do it will still have to learn a fair amount about the existing compiler in the process, beyond what they would know from using Dialog themselves. That’s why I’m saying it’s not necessarily easier/quicker than learning to read the existing compiler’s source code.