Right now, my focus is on the C compiler, but here's some ideas of things to improve in periphery of that main effort.
I'd like documentation about words to be in-system and this could be done with an annotation system. The annotation system is already there, we would need to populate those annotations.
Then, it's a matter of developing a nice interactive application to navigate words and see their associated documentation.
Right now, only one type of annotation is there, the docstring. However, another type of annotation would be useful, argspecs. To have comments like ( a b -- n ) be in a separate structure is not only for better doc formatting, it's also that it will eventually be essential for C code to call Forth words. Because the C compiler has to know the signature of a word to properly call it, we'll need that argpec annotation to have a "machine-readable" structure.
It would be fun if assemblers were leveraged early in the boot process to
accelerate some core words. For example, it could override the "+" word into an
immediate that emits eax [ebp] mov, ebp 4 i32 add, [ebp] eax add,
, or even
better, that detects if the last compiled word was a literal and replace that
literal with [ebp] (replaced literal) i32 add,
.