As a course assignemnt, a partner and I creaded an Interpreter in C++ for our custom language called C3. Then later, developed a compiler in Java for our language based on the outputs of our initial assignemnt.
Co-Creator
C3, the custom language we created, supported the ability to type a variable after assignemnt.
This feature led us to scrap and redesign the instructions ran that when defining a variable. We created a default type, that was updatable after the fact.