Many programming languages are used throughout these notes, for different purposes. For some sections of these notes, proficiency in Python and Java is assumed, though no notes are provided. Languages by Topic § Architecture - ARM Assembly Engineering - Verilog Implementation of Programming Languages § Assemblers Compilers Interpreters Preprocessors