If you've ever wanted to learn more about how making a programming language works, I can't recommend Bob Nystrom's "Crafting Interpreters" highly enough: http://www.craftinginterpreters.com/

Also if you like, I started following along using Rust instead of Java or C, you can find that here: https://