help in defining some basic programming digital words?

Wessee2014-08-26T12:15:24Z

what is the meaning of
1.layout
2compiler
3synthesizer
4mapping

in terms of programming and digital design?