Clarion - Енциклопедія мов програмування

Мова програмування Clarion була розроблена Брюсом Баррінгтоном в 1984 р. У своїй статті він так описує історію його створення: «Як це часто буває, я просто намагався зробити собі задоволення. Я купив свій перший персональний комп'ютер, дивився на нього та хотів писати програми для нього. Це моя робота. Моїм стимулом у роботі було переконання, що програмування має бути простіше, що мови програмування повинні полегшувати читання та написання програм і що низька продуктивність, пов'язана з процесом розробки програм, корениться у неадекватних та слабо спроектованих інструментальних засобах програмування». Спочатку проект створювався в рамках компанії HBO & Company”, але потім було викуплено McKesson Corporation.

Основними особливостями мови та середовища програмування є:

- Наявність потужної мови шаблонів, який дозволяє на підставі пропонованих розробником шаблонів здійснити генерацію працездатного коду за лічені хвилини. У шалонах, там, де це доцільно, є «точки вставки» (embeds), куди розробник може вставити свій власний код, який буде вставлений у згенерований текст програми. Ці шаблони відкриті для модифікації, а мова шаблонів дозволяє додавати нові можливості, навіть не передбачені творцями Clarion.

— механізм драйверів даних, що заміщуються. Робота з файлами даних будується виходячи з наявних у системі драйверів баз даних. Тому сама мова абстрагована від конкретних форматів файлів даних. В даний час підтримується робота з наступними форматами (ISAM: TopSpeed, Clarion, DBF, FoxPro, Clipper, Btrieve, SQL: MSSQL, Oracle, Pervasive SQL, SQLAnywhere, SQLite, ODBC). Цікаво, що робота з текстовими та бінарними файлами в Clarion такожсприймається як робота з якимось абстрактним форматом БД.

- Наявність в середовищі програмування словника даних (депозиторія даних), в якому описуються використовувані в програмі таблиці баз даних з описом для кожної таблиці полів, ключів, що використовуються драйверів БД. Таким чином, дані виділяються з тексту програми, в який вони потраплять згодом за допомогою наявних шаблонів генерації коду програми. Виділення даних депозиторій призводить до того, що табличні дані можна легко модифікувати, зокрема модифікація полів, опис ключів і індексів, опис зв'язків між таблицями, управління каскадністю операцій із записами. Каскадність може бути реалізована як засобами Clarion (використовуються стандартні шаблони), так і віддана в керування сервером. Крім того, є можливість написання внутрішньокларіонівських тригерів для таблиць будь-якого формату (від ISAM до SQL).

За синтаксисом Clarion схожий на мови Pascal і, особливо, Modula-2 - програмний код полягає в конструкції "початок-кінець". З Modula-2 успадковано операторів IF і LOOP. Від мови Сі мова почерпнула такі унарні операції як -=, +=, *=, /=, а також оператори управління циклами BREAK і CONTINUE. Є у мови свої власні оригінальні конструкції, наприклад EXECUTE і CASE. Ось як, наприклад, виглядає оператор розгалуження CASE:

Зверніть увагу, що для розгалуження можуть використовуватися не лише константи, а й вирази.

Середовище програмування має швидкий компілятор TopSpeed ​​(JPI). Поряд із бізнес-додатками мовою можна реалізовувати системні утиліти, що дозволяють взаємодіяти з операційною системою на низькому рівні не менш ефективно, ніж програмам, написаним загальноприйнятими мовами «низького рівня» таким, як Асемблер, Сі.

Заразце потужна і одночасно проста в освоєнні універсальна мова програмування з вбудованими засобами управління БД, на різних версіях якого можна розробляти програми для DOS, Microsoft Windows, .Net Framework.