That's correct - that is a run-time compiler. The code is interpreted and "compiled" into machine code - usually line by line - at run time. Whereas a compiled program is one that has been previously compiled and stored in executable machine code (e.g., .exe on windows OS), for a particular hardware/OS configuration.
A "compiled program" doesn't require the services of .net, or python, or etc., to be running in the background. It has everything necessary, compiled into machine code, needed to interact directly with the CPU.
This seems to produce faster running code, but imposes some "gotchas", as variable binding within script blocks happens at compile time before variables are populated. Variable types that are passed by value will be null if you don't re-close the script block over the variables at run time.