Окремі аспекти декларативності "мінус штрих-операції"

Loading...
Thumbnail Image
Date
2020
Authors
Ющенко, Юрій
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
У роботі розглянуто "мінус штрих-операцію", яку було введено як обернену до "штрих-операції" (1955 р.). Аналогом "штрих-операції" є розіменування вказівника (1964 р.). На прикладі продемонстровано, що для отримання адреси лінійного однозв’язного списку в Адресному програмуванні можна вказати порядковий номер цього вузла у списку. У цьому полягає перевага "штрих-операції" над розіменуванням вказівника. "Мінус штрих-операцію" в імперативних мовах програмування високого рівня не застосовують, оскільки за своєю сутністю вона належить до декларативної концепції програмування. У роботі досліджено динамічну (неявну) типізацію даних в Адресній мові програмування та наведено загальну класифікацію типів даних. У статті подано приклад представлення дерева в Адресній мові програмування шляхом указування "батьків" вершин дерева, без зазначення сукупності синів, як це потрібно робити в імперативних мовах програмування. В Адресному програмуванні сукупність адрес усіх синів можна отримати застосуванням до адреси вершини "мінус штрих-операції". Із цього та інших наведених прикладів випливає універсальна потужність "мінус штрих-операції" як інструменту декларативного програмування. Адресна мова програмування є багатоконцептуальною та поєднує у собі концепції імперативного та декларативного програмування. Основою декларативної концепції Адресного програмування (1955 р.) є "мінус штрих-операція".
The article considers the capacities of "Minus stroke-operation", which was introduced as the inverse of "stroke-operation" (dereferencing a pointer). Addressing higher ranks Address Programming is based on "stroke-operation" and, in contrast to the dereference (or indirection) operator, allows you to specify the rank of addressing, which can be both an integer value or an expression of integer type. The paper gives an example of using a "stroke-operation" to obtain the address of an arbitrary element of a linear single-linked list by its sequence number. The dereference operator of modern programming languages does not allow to make it and demands implementation with use of a cycle. "Minus stroke operation" operation is not used in imperative high-level programming languages, because it belongs to the declarative paradigm of programming. Address programming language has the dynamic types of data, which are based on "minus stroke-operation". This article provides some specific examples of the use of "minus stroke-operation" in the Address Programming language and compares the capabilities of this operation with some modern declarative programming tools. From the above examples it follows the universal power of "minus stroke-operation" as a tool of declarative programming. The paper presents an example of tree representation using "minus stroke-operation". In Address Programming, you can represent trees by defining only the vertex parents. The result of applying to the address of the node "minus the stroke-operation" is a set of sons of this node. An example of a tree representation in the Address Programming Language with parent-only indication is given. The Address Programming Language is multi-conceptual and combines the concepts of imperative and declarative programming. The basis of the declarative concept of Address Programming (1955) is "minus stroke-operation".
Description
Keywords
"штрих-операція", "мінус штрих-операція", адресне сортування, багатовимірне адресне сортування, списки, двозв’язні списки, дерева, абстрактні типи даних, структури даних, прості дані, скалярні дані, масиви, записи, вказівники, показники, посилання, Pointers, типи даних, неявна типізація, неявна типізація даних, бази даних, реляційні бази даних, SQL, Foreign Key, інформаційні системи, логічне програмування, імперативне програмування, декларативне програмування, мови програмування, стаття, stroke operation, minus stroke operation, address sorting, multidimensional address sorting, lists, two-linked lists, trees, abstract data type, data structures, simple data, scalar data, arrays, records, indicators, links, Pointers, data types, implicit typing, implicit data typing, Databases, Relational Databases, SQL, Foreign Key, information systems, logical programming, imperative programming, declarative programming, programming languages
Citation
Ющенко Ю. О. Окремі аспекти декларативності "мінус штрих-операції" / Ющенко Ю. О. // Наукові записки НаУКМА. Комп'ютерні науки. - 2020. - Т. 3. - С. 17-26.
Collections