Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OPORNUY_TSPIS.doc
Скачиваний:
9
Добавлен:
12.11.2018
Размер:
4.78 Mб
Скачать

1.3 Поняття мови програмування та їх історичний розвиток

Мова – це спосіб запису алгоритмів, призначений для виконання на ЕОМ.

Мови, призначені для фіксації алгоритмів у вигляді деяких повідомлень чи послідовностей повідомлень, і передавання таких повідомлень споживачеві інформації (виконавцеві алгоритму), називаються алгоритмічними мовами. Отже, сукупність знаків і правил, за допомогою яких описуються алгоритми, утворюють алгоритмічну мову.

При конструюванні алгоритмічної мови виходять з деякого набору операцій, які вважаються елементарними і типовими для об’єктів певного вигляду. Змістовну частину алгоритмічної мовою називають семантикою. Сукупність законів форми опису алгоритмів утворює синтаксис алгоритмічної мови.

Алгоритмічні мови, призначені для фіксації алгоритмів, розрахованих на виконання електронними обчислювальними машинами, називають мовами програмування.

Мова програмування – це сукупність набору символів (алфавіт) системи, правил утворення (синтаксис) і трактування символів (семантика) для задання алгоритмів з використанням символів природної мови.

За характером семантики (тобто моделі обчислювального процесу) в мовах програмування можна виділити два основних способи – наказовий (імперативний, поданий операторами, командами, наказами) та дійсний (декларативний, описовий). В одних мовах програмування переважає опис дій, алгоритму, тобто того, як отримати результат. Такі мови називаються імперативними, процедурними, алгоритмічними. Наприклад, Фортран, Бейсик, Алгол, ПЛ/1, Паскаль. Інші мови передбачають не стільки побудову (обчислення) результату, скільки опис (декларацію) його властивостей, тобто яким є шуканий об’єкт; на основі цієї інформації системи програмування повинна побудувати алгоритм. Такі мови називаються декларативними, непроцедурними, проблемно–орієнтованими, мовами відношень, специфікацій, мовами штчного інтелекту, автоматичного програмування, синтезу алгоритмів (Лісп, Рефал, Пролог).

Фортран – найстаріша (перша версія створена в 1954–55рр) мова високого рівня. Назва походить від початкових складів англійських слів – FORmula TRANslator (перекладач формул). Ця мова розроблена співробітниками фірми ІBM під керівництвом Джона Бекуса. Призначена для програмування чисельних розрахунків на ЕОМ. В Фортрані погано розвинуті алгоритмічні конструкції і структури даних (немає, наприклад, літерних величин), багато умовностей і обмежень.

Алгол – з’явилась в 1960 році. Назва походить від англійських слів ALGOrіthmіc Language (алгоритмічна мова). Мова орієнтована на наукове застосування. В неї було введено багато нових понять, наприклад, поняття блочної структури.

Також при підтримці фірми ІBM з’явилася мова Кобол (Cobol – скорочення від англійських слів Common Busіness Orіented Language – загальноприйнята ділова орієнтована мова). Вона орієнтована на розв’язування економічних задач, а точніше – на обробку інформації.

ПЛ/1 (PL/1) – створено на початку 60–х років. Абревіатура походить від англійських слів Programmіng Language. Це універсальна програмно–орієнтована мова, створена фірмою ІBM. В неї включено практично всі можливості найбільш популярних в ті часи мов програмування (Алгол, Фортран, Кобол) і багато що понад того. "Мінімальна" ПЛ/1, включаюча лише необхідні засоби, досить проста, зручна в роботі і легка у вивченні

Рапіра – створена спеціально для навчання школярів, має багато переваг. На жаль, ця мова не отримала широкого розповсюдження, тому працювати з нею можуть лише школи, що мають ЕОМ "Агат".

Рапіра розроблена Г.А.Звенігородським і описана ним у серії статтей в журналі "Квант" (1980 р.) і в книзі "Первые уроки программирования".

Бейсик (Basіc) – мова програмування, розроблена в 1965 році професорами Дартмутського коледжу (США) Т.Куртцем і Дж.Кемені для навчання студентів, незнайомих з обчислювальною технікою. Назва мови походить від абревіатури англійських слів Begіnner's All–purpose Symbolіc Іnstructіon Code, тобто універсальний символічний командний код для початківців. Це засіб забезпечення діалогу людина–ЕОМ в режимі розподілу часу.

Фокал – гірше за Бейсік (жарт).

СІ – це мова професіоналів, мова системного програмування. Створена на початку 70–х років як інструментальний засіб для реалізації операційної системи Unіx на ЕОМ фірми DEC. В мову СІ включено засоби програмування майже на рівні асемблера. Її переваги – лаконічність, багатий набір операцій, струнка система використання вказівників – обертаються недоліками при спробі навчати їй школярів.

Паскаль (Pascal) – популярна мова програмування, розроблена в 1969–70 рр. Ніклаусом Віртом, професором Вищої технічної школи в м.Цюриху. Названа на честь видатного французького математика, першого конструктора пристрою, який тепер відносять до класу цифрових обчислювальних машин. Мова розроблялася, передусім, з метою навчання програмуванню. В мові Паскаль знайшли відображення концепції структурного програмування, основні ідеї якого були висловлені Е.Дейкстрою.

Лісп (LІSP) – мова функціонального програмування, розроблена в 1961році американським вченим Дж. Маккарті. Родоначальник функціональних мов (в їх основу покладено поняття функції). Широко використовується у задачах штучного інтелекту. Назва мови походить від англійського словосполучення LІSt Processіng – обробка списків. Одна з найважливіших властивостей мови – простота роботи зі списками.

В 1980 році з’явилася мова Ада. Названа вона на честь Ади Лавлейс – першої програмістки (жінки–програміста) в історії обчислювальної техніки, дочки англійського поета лорда Джорджа Гордона Байрона. Мова була створена у Франції за замовленням американського Міністерства оборони як універсальна мова програмування.

Мова Пролог (Prolog – PROgrammatіon en LOGіque /PROgrammіng іn LOGіc/ – логічне програмування) розроблена А.Калмерауером (Колмероє) та іншими вченими університету Люмміні у Франції в 1973 році. Це мова для задач, пов’язаних зі штучним інтелектом (як і Лісп). Лише Лісп оперує списками (ланцюговими послідовностями елементів), а Пролог – деревами (логічними розгалуженнями). Мова базується на логічному численні. Вона створена спеціально для роботи з базами знань.

Існує дуже багато спеціалізованих мов, що дозволяють ефективно розв’язувати задачі в деяких галузях: моделювання (мови Сімула, Сімкрит і GPSS), управліня апаратурою (Форт), для написання баз даних (Кодасіл), для навчання програмуванню (Лого, Робік, Алгоритмічна мова, А.П.Єршова) та ін.

APL (Applіed Programmіng Language) – мова створення дуже компактних програм за допомогою надпотужних операцій і операторів.

Рефал – алгоритмічна мова рекурсивних функцій. Створена в СРСР наприкінці 60–х років В.Турчиним. Назва походить від словосполучення РЕкурсивні Функціональні АЛгоритми. Мова базується на нормальних алгоритмах Маркова.

Сімула – одна з найцікавіших мов програмування задач імітаційного моделювання. Створена в Норвегії.

Модула–2 – це мова запропонована вченим Н.Віртом. наслідуючи найкращі риси Паскаля, в тому числі його зрозумілий синтаксис, Модула–2 має кращі засоби для розробки великих програмних комплексів і дозволяє більш ефективно використовувати особливості апаратури.

Лого – мова створена Сеймуром Пейпертом з метою навчати дітей молодшого віку основам алгоритмічного мислення і програмування. В Лого використовується концепція прямого керування об’єктом, що рухається по екрану. Назва "Лого" походить від грецького слова "логос", яке значить "слово", "думка". Мова має великі графічні можливості, чому сприяє маленький трикутник на екрані, що умовно називається "черепашкою", рухом якого можна керувати.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]