- Many undergraduate CS programs require their students to take one or two classes where students learn about grammars, parsing, abstract syntax trees, interpreters, and compilers. I’ve also taken graduate courses in programming languages that involved adding features to languages.
Writing a new language from scratch is typically beyond the scope of a semester. It’s trivial to implement a small language like Scheme in a semester, but more complex languages will take more time.
- We had to do something like this although IIRC we didn't have to go all the way.