Багатопарадигмова мова програмування (також мультипарадигмальна мова програмування) — переважно мова програмування, розроблена спеціально як інструмент багатопарадигмового програмування, тобто образотворчі можливості якого спочатку передбачалось успадкувати від декількох, найчастіше неспоріднених мов.
Іноді термін багатопарадигмова мова програмування визначають як «мову, яка підтримує більше ніж одну парадигму програмування. Таке визначення є недостатньо точним, бо саме поняття парадигми програмування різні автори визначають по-різному. Наприклад, якщо рахувати парадигмами програмування рекурсію, структурне програмування і присвоювання, то виявиться, що під це визначення підійдуть мало чи не всі наявні мови програмування, за винятком деяких особливих випадків (наприклад, мови Haskell, де немає присвоювання у звичному вигляді).
Мета розроблення багатопарадигмових мов програмування полягає здебільшого в тому, щоб дозволити програмістам використовувати кращий інструмент для роботи, визнаючи, що жодна парадигма не розв'язує всі проблеми найлегшим чи найефективнішим способом.
Один з найбільш амбітних прикладів — Oz, яка є логічною, функційною, об'єктно-орієнтованою, мовою рівночасного програмування тощо. Oz розроблено за десять років, її мета — об'єднати поняття, які звичаєво пов'язані з різними програмними парадигмами.
Як одну з найуспішніших багатопарадигмових мов програмування часто називають мову .
Багатопарадигмові мови
Приклади багатопарадигмових мов програмування, розділених за кількістю парадигм, що підтримуються:
Дві парадигми
- Функційна, об'єктно-орієнтована:
- Функційна, процедурна:
- Функційна, логічна:
- AFL
- Curry
- Mercury
Три парадигми
- Функційна, процедурна, об'єктно-орієнтована:
- Perl (з версії 5)
- Python
- JavaScript
- Tcl
- PHP (з версії PHP 5.3 частково підтримується функційне програмування)
- Узагальнена, процедурна, об'єктно-орієнтована:
Чотири парадигми
- Функційна, узагальнена, процедурна, об'єктно-орієнтована:
- Функційна, процедурна, об'єктно-орієнтована, рівночасна:
- Об'єктно-орієнтована, узагальнена, процедурна, аспектно-орієнтована:
Шість парадигм
Сім парадигм
- Логічна, програмування в обмеженнях, функційна (як ледачі, так і «енергійні» обчислення), процедурна (імперативна), об'єктно-орієнтована, розподілена, рівнобіжна (паралельна)
- Oz
Див. також
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Bagatoparadigmova mova programuvannya takozh multiparadigmalna mova programuvannya perevazhno mova programuvannya rozroblena specialno yak instrument bagatoparadigmovogo programuvannya tobto obrazotvorchi mozhlivosti yakogo spochatku peredbachalos uspadkuvati vid dekilkoh najchastishe nesporidnenih mov Inodi termin bagatoparadigmova mova programuvannya viznachayut yak movu yaka pidtrimuye bilshe nizh odnu paradigmu programuvannya Take viznachennya ye nedostatno tochnim bo same ponyattya paradigmi programuvannya rizni avtori viznachayut po riznomu Napriklad yaksho rahuvati paradigmami programuvannya rekursiyu strukturne programuvannya i prisvoyuvannya to viyavitsya sho pid ce viznachennya pidijdut malo chi ne vsi nayavni movi programuvannya za vinyatkom deyakih osoblivih vipadkiv napriklad movi Haskell de nemaye prisvoyuvannya u zvichnomu viglyadi Meta rozroblennya bagatoparadigmovih mov programuvannya polyagaye zdebilshogo v tomu shob dozvoliti programistam vikoristovuvati krashij instrument dlya roboti viznayuchi sho zhodna paradigma ne rozv yazuye vsi problemi najlegshim chi najefektivnishim sposobom Odin z najbilsh ambitnih prikladiv Oz yaka ye logichnoyu funkcijnoyu ob yektno oriyentovanoyu movoyu rivnochasnogo programuvannya tosho Oz rozrobleno za desyat rokiv yiyi meta ob yednati ponyattya yaki zvichayevo pov yazani z riznimi programnimi paradigmami Yak odnu z najuspishnishih bagatoparadigmovih mov programuvannya chasto nazivayut movu C Bagatoparadigmovi moviPrikladi bagatoparadigmovih mov programuvannya rozdilenih za kilkistyu paradigm sho pidtrimuyutsya Dvi paradigmi Funkcijna ob yektno oriyentovana Dylan Funkcijna procedurna APL Funkcijna logichna AFL Curry Mercury Tri paradigmi Funkcijna procedurna ob yektno oriyentovana Perl z versiyi 5 Python JavaScript Tcl PHP z versiyi PHP 5 3 chastkovo pidtrimuyetsya funkcijne programuvannya Uzagalnena procedurna ob yektno oriyentovana C D Chotiri paradigmi Funkcijna uzagalnena procedurna ob yektno oriyentovana OCaml Common Lisp Funkcijna procedurna ob yektno oriyentovana rivnochasna Ruby Ob yektno oriyentovana uzagalnena procedurna aspektno oriyentovana Java Shist paradigm Ob yektno oriyentovana uzagalnena procedurna funkcijna podijno oriyentovana refleksivna C Sim paradigm Logichna programuvannya v obmezhennyah funkcijna yak ledachi tak i energijni obchislennya procedurna imperativna ob yektno oriyentovana rozpodilena rivnobizhna paralelna OzDiv takozhParadigma programuvannya