Високорівнева мова програмування — мова програмування, розроблена для швидкого і зручного використання програмістом. Основна риса високорівневих мов — це абстракція, тобто введення смислових конструкцій, які коротко описують такі структури даних і операції над ними, опис яких на машинному коді або низькорівневій мові програмування був би дуже великим, складним для розуміння програмістів і зайняв би багато часу при написанні. Написані програми на мові високого рівня згодом перетворюються в машинний код для виконання безпосередньо операційною системою. В результаті безпосередній код, що виконується на комп'ютері і створений в процесі трансляції переважно містить певні зайві інструкції, тому виконання таких програм дещо повільніше. Швидкість також залежить від способу трансляції. Проте для сучасної обчислювальної техніки цей час не критичний. В разі якщо швидкість все ж критична, або ж потрібно напряму працювати з апаратним забезпеченням, то використовують мови низького рівня (асемблер).
Переваги та історія виникнення
Високорівневі мови програмування були розроблені для спрощення створення програм і з метою платформової незалежності суті алгоритмів. Написання програми на машинному коді або на мові низького рівня потребує від програміста доброго знання апаратного забезпечення та операційної системи. При використанні мови високого рівня програмістам здебільшого не потрібно, наприклад, вникати в особливості реалізації того чи іншого процесора комп'ютера. Залежність від платформи перекладається на інструментальні програми — транслятори, які перетворюють текст, написаний на мові високого рівня, в елементарні машинні команди (інструкції). Прикладами трансляторів є компілятори та інтерпретатори. Компілятори перетворюють код в машинний і в результаті виходить виконуваний файл для певної платформи, який згодом уже не потребує ніяких засобів даної мови для запуску програми. Інтерпретатори мови транслюють код при кожному запуску програми при цьому вимагається, щоб на комп'ютері були встановлені відповідні засоби для даної мови програмування. Для кожної мови програмування і для кожної платформи розробляється власний транслятор, який, наприклад, перекладає текст, написаний на Delphi в елементарні команди мікропроцесорів сімейства x86.
Так, високорівневі мови прагнуть не тільки полегшити вирішення складних програмних завдань, але і спростити портування програмного забезпечення. Використання різноманітних трансляторів забезпечує зв'язок програм, написаних за допомогою мов високого рівня, з різними операційними системами, програмованими пристроями та обладнанням, і, в ідеалі, не вимагає модифікації початкового тексту для будь-якої платформи.
Такого роду відірваність високорівневих мов від апаратної реалізації комп'ютера крім безлічі плюсів має і мінуси. Зокрема, вона не дозволяє створювати прості і точні інструкції для використовуваного устаткування. Програми, написані на мовах високого рівня, простіші для розуміння програмістом, але менш ефективні, ніж їхні аналоги, створювані за допомогою низькорівневих мов. Одним з наслідків цього стало додавання підтримки тієї чи іншої мови низького рівня (мова асемблера) в ряд сучасних професійних високорівневих мов програмування.
Прикладами мов високого рівня є , C#, Java, JavaScript, Python, PHP, Ruby, Perl, Pascal, Delphi, LISP. Мовам високого рівня властиве вміння працювати з комплексними структурами даних. До більшості з них інтегровано підтримку стрічкових типів, об'єктів, операцій файлового вводу-виводу і т. д..
Першою мовою програмування високого рівня вважається комп'ютерна мова Plankalkül, розроблена німецьким інженером Конрадом Цузе ще в період 1942-1946 років. Однак транслятора для нього не існувало до 2000 року. Першим у світі транслятором мови високого рівня є ПП (Програмуюча Програма), він же ПП-1, успішно випробуваний в 1954 році.
Однією з найперших реалізованих мов програмування високого рівня є Адресна мова програмування (1955 рік), яка вперше в світі використовувала опосередковану адресацію вищих рангів (Pointers — є аналогом). В результаті винаходу опосередкованої адресації в Адресному програмуванні були введені складні типи даних: деревоподібні формати, яким подібні абстрактні типи даних.
Транслятор ПП-2 (1955 рік, 4-й у світі транслятор) вже був оптимізувальним і містив власний завантажувач і зневаджувач, бібліотеку стандартних процедур, а транслятор ПП для ЕОМ Стріла-4 вже містив і компонувальник (linker) з модулів. Однак, широке застосування високорівневих мов почалося з виникненням Фортрана і створенням компілятора для цієї мови (1957).
Переносимість програм
Поширена думка, що програми на мовах високого рівня можна написати один раз і потім використовувати на комп'ютері будь-якого типу. Насправді ж це так тільки для тих програм, які мало взаємодіють з операційною системою, наприклад, виконують будь-які обчислення або обробку даних. Більшість же інтерактивних (а тим більше мультимедійних) програм звертаються до системних викликів, які сильно розрізняються залежно від операційної системи. Наприклад, для виведення графіки на екран комп'ютера програми під Microsoft Windows використовують функції Windows API, які відрізняються від використовуваних в системах, що підтримують стандарт POSIX. Найчастіше для цих цілей в них використовується програмний інтерфейс X-сервера.
До теперішнього часу створено цілий ряд програмних бібліотек (наприклад, бібліотека Qt або wxWidgets), що приховують невідповідності системних викликів різних операційних систем від прикладних програм. Однак такі бібліотеки, як правило, не дозволяють повністю використовувати всі можливості конкретних операційних систем.
Режими виконання
Існують три основні режими виконання для сучасних мов програмування високого рівня:
Коли написаний на мові код інтерпретується, то його синтаксис читається, а потім виконується безпосередньо, без стадії компіляції. Програма, яка називається інтерпретатором після запуску програми читає кожну інструкцію програми, слідуючи за течією виконання програми, і вирішує, що робити, і робить це. Гібрид інтерпретатора і компілятор компілює інструкцію в машинний код і виконує це; машинний код потім відкидається, щоб бути інтерпретованим заново, якщо лінія виконується знову. Інтерпретатори, як правило, найбільш прості варіанти реалізації поведінки мови, в порівнянні з іншими наведеними тут двома варіантами.
Коли код, написаний на мові, компілюється, його синтаксис перетворюється у виконувану форму перед запуском. Є два типи компіляції:
- Генерація машинного коду
Деякі компілятори компілюють вихідний код безпосередньо в машинний код. Це справжній режим компіляції, і мови, які безпосередньо і повністю перетворюються на машинний код можна назвати «справді компільованими» мовами. Дивитися мову асемблера.
- Проміжні представлення
Коли код, написаний на мові, компілюється в проміжне представлення, то таке проміжне представлення може бути оптимізовано або збережено для подальшого виконання без необхідності повторного читання початкового коду. Проміжне представлення може бути збережене, наприклад, у формі байт-коду. При виконанні, проміжне представлення згодом інтерпретується або додатково компілюється. Віртуальні машини далі можуть виконувати його безпосередньо або ж трансформувати його в машинний код. Таким чином межа між мовами з проміжним представленнями і дійсно компільованими мовами програмування є розмитою і нечіткою.
Транс-компіляція
Код, написаний на мові високого рівня, може бути перекладений на мову програмування низького рівня, для якої є широкодоступний рідний компілятор коду або на іншу мову високого рівня. Такі перекладачі існують для мов JavaScript і мова програмування C. Як приклад див. також CoffeeScript, [en] і Eiffel. Зокрема, згенерований C і C++ код у середовищі [en] IDE з мови програмування Eiffel, можна подивитись в каталозі EIFGENs будь-якого скомпільованого проекту Eiffel. В Eiffel, процес «Перекладення» називається Транс-компіляція або Транс-скомпільований і компілятор Eiffel як Transcompiler.
Зверніть увагу, що переважно мови програмування не є строго «інтерпретованими» або «компільованими». Конкретна реалізація мови визначає поведінку з кодом. Наприклад, Алгол 60 і Фортран обидва були інтерпретованими. Крім того, наприклад стосовно Java, є певні труднощі при застосуванні цих ярликів до мови, а не до реалізації; Java компілюється в байт-код і байт-код згодом інтерпретується (в JVM) або компілюється на льоту (Just-in-time компіляція).
Розвиток високорівневих мов програмування
Популярні в даний час мови програмування високого рівня (як-от Java, C#) та засоби розробки для них постійно розвиваються. У них з'являються нові елементи, нові бібліотеки класів, дещо міняється навіть і сам синтаксис тощо Розробники даних мов ведуть постійну роботу над покращенням швидкодії програм написаних на даних мовах. Популярні мови програмування також мають значну кількість сторонніх бібліотек та фреймворків. Ведуться спроби розробки нових мов програмування, у тому числі на базі існуючих мов програмування(Scala). Вдалі рішення в одній мові швидко підхоплюються розробниками інших мов, тому існуючі високорівневі мови мають значну кількість схожих елементів.
Фреймворки
Одною з основних тенденцій є поява і розвиток фреймворків — спеціалізованих інфраструктур програмних рішень для певних мов програмування, які беруть на себе вирішення певної складної задачі і таким чином значно прискорюють розробку складних систем. Наприклад спрощують розробку веб сайту, роботу з базою даних (автоматизують запити до бази даних), спрощують розробку графічного інтерфейсу для програм тощо Це свого роду складні бібліотеки (комплекс програмних бібліотек).
Надвисокорівневі мови програмування
Термін надвисокорівневі мови з'явився у зв'язку із спробами розробки мов більш високого рівня абстракції. В 1990-х роках популяризатори та розробники нових мов вживали термін надвисокорівневі мови програмування або ж ультра-високорівневі мови програмування. Це стосувалося мов, що характеризувалися наявністю додаткових структур і об'єктів, орієнтованих на прикладне використання. Прикладні об'єкти, у свою чергу, вимагають мінімального налаштування у вигляді параметрів і моментально готові до використання. Ультра-високорівневі мови програмування покликані знижувати часові витрати на розробку програмного забезпечення і підвищувати якість кінцевого продукту. По суті аналогічну функціональність мають елементи бібліотек та фреймворків усіх сучасних високорівневих мов програмування (як то Java, C#), тому особливої популярності поділ на високорівневі та надвискорівневі мови не здобув. Інколи під надвискорівневими мовами розуміють декларативні мови.
Високорівнева комп'ютерна архітектура
Ведуться спроби розробити комп'ютери, які б могли б безпосередньо виконувати команди високих мов програмування (так звана високорівнева комп'ютерна архітектура)
Примітки
- . Gamasutra.com. 24 липня 2000. Архів оригіналу за 1 жовтня 2017. Процитовано 15 вересня 2009.
- Giloi, Wolfgang, K. (1997). «Konrad Zuse's Plankalkül: The First High-Level „non von Neumann“ Programming Language». IEEE Annals of the History of Computing, vol. 19, no. 2, pp. 17–24, April–June, 1997. (abstract)
- Лондон, Кейс (1968). 4, Програмування. Вступ до комп'ютерів. 24 Russell Square London WC1: Faber and Faber Limited. с. 186. ISBN .
Дві мови програмування високого рівня, які можуть бути використані як приклади тут, щоб показати структуру і призначення автокоду є COBOL (Common Business Oriented Language) і FORTRAN.
{{}}
: Обслуговування CS1: Сторінки із проігнорованими помилками ISBN () - Сурана П. Мета-компіляція мови абстракцій.. (PDF). — 2006. з джерела 17 лютого 2015. Процитовано 2008-03-17.
- Кукетаєв. . Архів оригіналу за 11 січня 2009. Процитовано 17 березня 2008.
- Chatzigeorgiou; Stephanides (2002). Evaluating Performance and Power Of Object-Oriented Vs. Procedural Programming Languages. У Blieberger; Strohmeier (ред.). Proceedings - 7th International Conference on Reliable Software Technologies - Ada-Europe'2002. Springer. с. 367.
Див. також
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Visokorivneva mova programuvannya mova programuvannya rozroblena dlya shvidkogo i zruchnogo vikoristannya programistom Osnovna risa visokorivnevih mov ce abstrakciya tobto vvedennya smislovih konstrukcij yaki korotko opisuyut taki strukturi danih i operaciyi nad nimi opis yakih na mashinnomu kodi abo nizkorivnevij movi programuvannya buv bi duzhe velikim skladnim dlya rozuminnya programistiv i zajnyav bi bagato chasu pri napisanni Napisani programi na movi visokogo rivnya zgodom peretvoryuyutsya v mashinnij kod dlya vikonannya bezposeredno operacijnoyu sistemoyu V rezultati bezposerednij kod sho vikonuyetsya na komp yuteri i stvorenij v procesi translyaciyi perevazhno mistit pevni zajvi instrukciyi tomu vikonannya takih program desho povilnishe Shvidkist takozh zalezhit vid sposobu translyaciyi Prote dlya suchasnoyi obchislyuvalnoyi tehniki cej chas ne kritichnij V razi yaksho shvidkist vse zh kritichna abo zh potribno napryamu pracyuvati z aparatnim zabezpechennyam to vikoristovuyut movi nizkogo rivnya asembler Programuvannya v grafichnomu seredovishi rozrobnikaPerevagi ta istoriya viniknennyaVisokorivnevi movi programuvannya buli rozrobleni dlya sproshennya stvorennya program i z metoyu platformovoyi nezalezhnosti suti algoritmiv Napisannya programi na mashinnomu kodi abo na movi nizkogo rivnya potrebuye vid programista dobrogo znannya aparatnogo zabezpechennya ta operacijnoyi sistemi Pri vikoristanni movi visokogo rivnya programistam zdebilshogo ne potribno napriklad vnikati v osoblivosti realizaciyi togo chi inshogo procesora komp yutera Zalezhnist vid platformi perekladayetsya na instrumentalni programi translyatori yaki peretvoryuyut tekst napisanij na movi visokogo rivnya v elementarni mashinni komandi instrukciyi Prikladami translyatoriv ye kompilyatori ta interpretatori Kompilyatori peretvoryuyut kod v mashinnij i v rezultati vihodit vikonuvanij fajl dlya pevnoyi platformi yakij zgodom uzhe ne potrebuye niyakih zasobiv danoyi movi dlya zapusku programi Interpretatori movi translyuyut kod pri kozhnomu zapusku programi pri comu vimagayetsya shob na komp yuteri buli vstanovleni vidpovidni zasobi dlya danoyi movi programuvannya Dlya kozhnoyi movi programuvannya i dlya kozhnoyi platformi rozroblyayetsya vlasnij translyator yakij napriklad perekladaye tekst napisanij na Delphi v elementarni komandi mikroprocesoriv simejstva x86 Tak visokorivnevi movi pragnut ne tilki polegshiti virishennya skladnih programnih zavdan ale i sprostiti portuvannya programnogo zabezpechennya Vikoristannya riznomanitnih translyatoriv zabezpechuye zv yazok program napisanih za dopomogoyu mov visokogo rivnya z riznimi operacijnimi sistemami programovanimi pristroyami ta obladnannyam i v ideali ne vimagaye modifikaciyi pochatkovogo tekstu dlya bud yakoyi platformi Takogo rodu vidirvanist visokorivnevih mov vid aparatnoyi realizaciyi komp yutera krim bezlichi plyusiv maye i minusi Zokrema vona ne dozvolyaye stvoryuvati prosti i tochni instrukciyi dlya vikoristovuvanogo ustatkuvannya Programi napisani na movah visokogo rivnya prostishi dlya rozuminnya programistom ale mensh efektivni nizh yihni analogi stvoryuvani za dopomogoyu nizkorivnevih mov Odnim z naslidkiv cogo stalo dodavannya pidtrimki tiyeyi chi inshoyi movi nizkogo rivnya mova asemblera v ryad suchasnih profesijnih visokorivnevih mov programuvannya Mova S Prikladami mov visokogo rivnya ye C C Java JavaScript Python PHP Ruby Perl Pascal Delphi LISP Movam visokogo rivnya vlastive vminnya pracyuvati z kompleksnimi strukturami danih Do bilshosti z nih integrovano pidtrimku strichkovih tipiv ob yektiv operacij fajlovogo vvodu vivodu i t d Pershoyu movoyu programuvannya visokogo rivnya vvazhayetsya komp yuterna mova Plankalkul rozroblena nimeckim inzhenerom Konradom Cuze she v period 1942 1946 rokiv Odnak translyatora dlya nogo ne isnuvalo do 2000 roku Pershim u sviti translyatorom movi visokogo rivnya ye PP Programuyucha Programa vin zhe PP 1 uspishno viprobuvanij v 1954 roci Odniyeyu z najpershih realizovanih mov programuvannya visokogo rivnya ye Adresna mova programuvannya 1955 rik yaka vpershe v sviti vikoristovuvala oposeredkovanu adresaciyu vishih rangiv Pointers ye analogom V rezultati vinahodu oposeredkovanoyi adresaciyi v Adresnomu programuvanni buli vvedeni skladni tipi danih derevopodibni formati yakim podibni abstraktni tipi danih Translyator PP 2 1955 rik 4 j u sviti translyator vzhe buv optimizuvalnim i mistiv vlasnij zavantazhuvach i znevadzhuvach biblioteku standartnih procedur a translyator PP dlya EOM Strila 4 vzhe mistiv i komponuvalnik linker z moduliv Odnak shiroke zastosuvannya visokorivnevih mov pochalosya z viniknennyam Fortrana i stvorennyam kompilyatora dlya ciyeyi movi 1957 Perenosimist programPoshirena dumka sho programi na movah visokogo rivnya mozhna napisati odin raz i potim vikoristovuvati na komp yuteri bud yakogo tipu Naspravdi zh ce tak tilki dlya tih program yaki malo vzayemodiyut z operacijnoyu sistemoyu napriklad vikonuyut bud yaki obchislennya abo obrobku danih Bilshist zhe interaktivnih a tim bilshe multimedijnih program zvertayutsya do sistemnih viklikiv yaki silno rozriznyayutsya zalezhno vid operacijnoyi sistemi Napriklad dlya vivedennya grafiki na ekran komp yutera programi pid Microsoft Windows vikoristovuyut funkciyi Windows API yaki vidriznyayutsya vid vikoristovuvanih v sistemah sho pidtrimuyut standart POSIX Najchastishe dlya cih cilej v nih vikoristovuyetsya programnij interfejs X servera Do teperishnogo chasu stvoreno cilij ryad programnih bibliotek napriklad biblioteka Qt abo wxWidgets sho prihovuyut nevidpovidnosti sistemnih viklikiv riznih operacijnih sistem vid prikladnih program Odnak taki biblioteki yak pravilo ne dozvolyayut povnistyu vikoristovuvati vsi mozhlivosti konkretnih operacijnih sistem Rezhimi vikonannyaIsnuyut tri osnovni rezhimi vikonannya dlya suchasnih mov programuvannya visokogo rivnya Interpretaciya Koli napisanij na movi kod interpretuyetsya to jogo sintaksis chitayetsya a potim vikonuyetsya bezposeredno bez stadiyi kompilyaciyi Programa yaka nazivayetsya interpretatorom pislya zapusku programi chitaye kozhnu instrukciyu programi sliduyuchi za techiyeyu vikonannya programi i virishuye sho robiti i robit ce Gibrid interpretatora i kompilyator kompilyuye instrukciyu v mashinnij kod i vikonuye ce mashinnij kod potim vidkidayetsya shob buti interpretovanim zanovo yaksho liniya vikonuyetsya znovu Interpretatori yak pravilo najbilsh prosti varianti realizaciyi povedinki movi v porivnyanni z inshimi navedenimi tut dvoma variantami Kompilyaciya Koli kod napisanij na movi kompilyuyetsya jogo sintaksis peretvoryuyetsya u vikonuvanu formu pered zapuskom Ye dva tipi kompilyaciyi Generaciya mashinnogo kodu Deyaki kompilyatori kompilyuyut vihidnij kod bezposeredno v mashinnij kod Ce spravzhnij rezhim kompilyaciyi i movi yaki bezposeredno i povnistyu peretvoryuyutsya na mashinnij kod mozhna nazvati spravdi kompilovanimi movami Divitisya movu asemblera Promizhni predstavlennya Koli kod napisanij na movi kompilyuyetsya v promizhne predstavlennya to take promizhne predstavlennya mozhe buti optimizovano abo zberezheno dlya podalshogo vikonannya bez neobhidnosti povtornogo chitannya pochatkovogo kodu Promizhne predstavlennya mozhe buti zberezhene napriklad u formi bajt kodu Pri vikonanni promizhne predstavlennya zgodom interpretuyetsya abo dodatkovo kompilyuyetsya Virtualni mashini dali mozhut vikonuvati jogo bezposeredno abo zh transformuvati jogo v mashinnij kod Takim chinom mezha mizh movami z promizhnim predstavlennyami i dijsno kompilovanimi movami programuvannya ye rozmitoyu i nechitkoyu Trans kompilyaciya Kod napisanij na movi visokogo rivnya mozhe buti perekladenij na movu programuvannya nizkogo rivnya dlya yakoyi ye shirokodostupnij ridnij kompilyator kodu abo na inshu movu visokogo rivnya Taki perekladachi isnuyut dlya mov JavaScript i mova programuvannya C Yak priklad div takozh CoffeeScript en i Eiffel Zokrema zgenerovanij C i C kod u seredovishi en IDE z movi programuvannya Eiffel mozhna podivitis v katalozi EIFGENs bud yakogo skompilovanogo proektu Eiffel V Eiffel proces Perekladennya nazivayetsya Trans kompilyaciya abo Trans skompilovanij i kompilyator Eiffel yak Transcompiler Zvernit uvagu sho perevazhno movi programuvannya ne ye strogo interpretovanimi abo kompilovanimi Konkretna realizaciya movi viznachaye povedinku z kodom Napriklad Algol 60 i Fortran obidva buli interpretovanimi Krim togo napriklad stosovno Java ye pevni trudnoshi pri zastosuvanni cih yarlikiv do movi a ne do realizaciyi Java kompilyuyetsya v bajt kod i bajt kod zgodom interpretuyetsya v JVM abo kompilyuyetsya na lotu Just in time kompilyaciya Rozvitok visokorivnevih mov programuvannyaPopulyarni v danij chas movi programuvannya visokogo rivnya yak ot Java C ta zasobi rozrobki dlya nih postijno rozvivayutsya U nih z yavlyayutsya novi elementi novi biblioteki klasiv desho minyayetsya navit i sam sintaksis tosho Rozrobniki danih mov vedut postijnu robotu nad pokrashennyam shvidkodiyi program napisanih na danih movah Populyarni movi programuvannya takozh mayut znachnu kilkist storonnih bibliotek ta frejmvorkiv Vedutsya sprobi rozrobki novih mov programuvannya u tomu chisli na bazi isnuyuchih mov programuvannya Scala Vdali rishennya v odnij movi shvidko pidhoplyuyutsya rozrobnikami inshih mov tomu isnuyuchi visokorivnevi movi mayut znachnu kilkist shozhih elementiv Frejmvorki Odnoyu z osnovnih tendencij ye poyava i rozvitok frejmvorkiv specializovanih infrastruktur programnih rishen dlya pevnih mov programuvannya yaki berut na sebe virishennya pevnoyi skladnoyi zadachi i takim chinom znachno priskoryuyut rozrobku skladnih sistem Napriklad sproshuyut rozrobku veb sajtu robotu z bazoyu danih avtomatizuyut zapiti do bazi danih sproshuyut rozrobku grafichnogo interfejsu dlya program tosho Ce svogo rodu skladni biblioteki kompleks programnih bibliotek Nadvisokorivnevi movi programuvannya Termin nadvisokorivnevi movi z yavivsya u zv yazku iz sprobami rozrobki mov bilsh visokogo rivnya abstrakciyi V 1990 h rokah populyarizatori ta rozrobniki novih mov vzhivali termin nadvisokorivnevi movi programuvannya abo zh ultra visokorivnevi movi programuvannya Ce stosuvalosya mov sho harakterizuvalisya nayavnistyu dodatkovih struktur i ob yektiv oriyentovanih na prikladne vikoristannya Prikladni ob yekti u svoyu chergu vimagayut minimalnogo nalashtuvannya u viglyadi parametriv i momentalno gotovi do vikoristannya Ultra visokorivnevi movi programuvannya poklikani znizhuvati chasovi vitrati na rozrobku programnogo zabezpechennya i pidvishuvati yakist kincevogo produktu Po suti analogichnu funkcionalnist mayut elementi bibliotek ta frejmvorkiv usih suchasnih visokorivnevih mov programuvannya yak to Java C tomu osoblivoyi populyarnosti podil na visokorivnevi ta nadviskorivnevi movi ne zdobuv Inkoli pid nadviskorivnevimi movami rozumiyut deklarativni movi Visokorivneva komp yuterna arhitektura Vedutsya sprobi rozrobiti komp yuteri yaki b mogli b bezposeredno vikonuvati komandi visokih mov programuvannya tak zvana visokorivneva komp yuterna arhitektura Primitki Gamasutra com 24 lipnya 2000 Arhiv originalu za 1 zhovtnya 2017 Procitovano 15 veresnya 2009 Giloi Wolfgang K 1997 Konrad Zuse s Plankalkul The First High Level non von Neumann Programming Language IEEE Annals of the History of Computing vol 19 no 2 pp 17 24 April June 1997 abstract London Kejs 1968 4 Programuvannya Vstup do komp yuteriv 24 Russell Square London WC1 Faber and Faber Limited s 186 ISBN 0571085938 Dvi movi programuvannya visokogo rivnya yaki mozhut buti vikoristani yak prikladi tut shob pokazati strukturu i priznachennya avtokodu ye COBOL Common Business Oriented Language i FORTRAN a href wiki D0 A8 D0 B0 D0 B1 D0 BB D0 BE D0 BD Cite book title Shablon Cite book cite book a Obslugovuvannya CS1 Storinki iz proignorovanimi pomilkami ISBN posilannya Surana P Meta kompilyaciya movi abstrakcij PDF 2006 z dzherela 17 lyutogo 2015 Procitovano 2008 03 17 Kuketayev Arhiv originalu za 11 sichnya 2009 Procitovano 17 bereznya 2008 Chatzigeorgiou Stephanides 2002 Evaluating Performance and Power Of Object Oriented Vs Procedural Programming Languages U Blieberger Strohmeier red Proceedings 7th International Conference on Reliable Software Technologies Ada Europe 2002 Springer s 367 Div takozhMova programuvannya Metaprogramuvannya Psevdokod Abstraguvannya programuvannya