One of the items that I noticed during my travels is the difference in how pubs are staffed versus restaurants. Although my sample is only 13, it seemed rather obvious. The wait staff in pubs is Irish. The wait staff in restaurants is foreign (mostly European).
Since The Republic of Ireland is part of the EU, which of course means that worker relocation is relatively easy. This fluidity of workers, combined with the loss of Irish youth (see an earlier post) combined with the drive for higher education and avoidance of service jobs my particularly explain the need for additional workers and why they come from Europe.
However, this does not explain why the division between pubs and restaurants. I suspect that it may have to do with the different roles that pubs and restaurants play. A pub is a place for social gathering. Unlike a bar, food seems to be an integral part of what they do. As a social place, it would require a wait staff that people are comfortable with, understand the culture, and can interact at deeper and lengthier levels. In my way of thinking the scripts/social interaction and understanding required in a pub are much more complex than that required in a restaurant.
Restaurants on the other hand, have a much simpler script that tends to be more universal(?). The dining experience is much more focused on the food than the social interaction.
My experience is that although it is not stated, there are clear demarcations between the two. Restaurants are clearly defined as an eating establishment. Restaurants typically serve wine (and some beer) but lacks hard liquor (except for the coffee bar, which allows for Irish coffees and other flavors). In locations where a traditional physical bar is co-located, the name of the establishment often will differentiate the two (XXX bar and bistro). The term pub seems to be primarily reserved for what would traditional be called a bar (with usually a very good kitchen attached).