"Last night" is more specific but I don't think anyone would object to calling "tonight" part of "today." > (At night) What did you do today? > > (At night) What day is it today? However, you certainly wouldn't say "today night" instead of "tonight." I checked my local dictionary for a definition of "yesterday": `the day before today`. My guess is that "day" here implies a 24 hour period. That period includes a night and saying "yesterday night" provides an unambiguous reference to a specific time. All of that being said, "last night" sounds better and takes less time to type and write. The only reason I can see for saying it is to bug your friends which, in my opinion, isn't good enough.