here's my 2 cents.

compiler - a utility that translates a source code into a machine-readable/executable code.
editor - any utility you use to write the source code( e.g, edit.com, notepad.exe, etc...)
decompiler/disassembler - a utility used to generate the source code of an executable program. if you're curious about the source code of a particular program, you use a disassembler (e.g. HIEW, etc...)