Logic Apps and Flow are done by the same team, actually, so that's no surprise. Logic Apps is for "Azure" users, which is mostly IT Pros and Dev. Flow is intended to compliment Power Apps. They can both be built by users aren't necessarily pro devs, but can use a drag-n-drop interface for configuring things.
Functions are code driven by events. Logic Apps are workflow driven by events. You can actually use the two together, which makes for some cool scenarios.