Overview of high-level multi-paradigm programming languages