From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,c2d3a023e86e434e X-Google-Attributes: gid103376,public From: dulman@ibm.net Subject: ada 95 and visual technology (Leonid Dulman) Date: 1996/08/09 Message-ID: <4uecqs$3m4q@news-s01.ny.us.ibm.net> X-Deja-AN: 173053684 reply-to: dulman@ibm.net newsgroups: comp.lang.ada Date: 1996-08-09T00:00:00+00:00 List-Id: Ada 95 AND VISUAL TECHNOLOGY ---------------------------- By Leonid Dulman The development of visual programming systems today is the most dynamic and quickly developing part of tool software. It is today possible to speak about a new algorithm-programming meta-language - VISUAL LANGUAGE, which operates with forms, objects,properties, methods and events. Its main objects utilize quite standard shapes which are similar in diverse VISUAL systems from VISUAL BASIC to VISUAL REXX. System-independence is characteristic of VISUAL METALANGUAGE (graphic images have identical imaging in MS-WINDOWS, in OS/2, and in UNIX), but it is also adaptable to some of the existing programming languages. But since VISUAL METALANGUAGE is a strictly structured language with adequate object oriented programming capability, its specific realization can not strictly apply to all visual languages. For instance, it is difficult to speak about language REXX as a structural programming language. VISUAL TECHNOLOGY has most completely connected the designing and programming software processes. VISUAL SYSTEMS used today have been used for the entire draft work related to the VISUAL interface development between the program and operating system. Thus for a programmer, working with VISUAL BASIC or DELPHI, it is not necessary to know all the WINDOWS details, which are built in to the tools . At the same time we need to emphasize, that the decisions regarding of a specific problem cannot be executed entirely by means of VISUAL tools and part of the code must be written manually. It is on the other hand rather desirable, that developed software should work in various operating systems, especially for information retrieval systems, REAL TIME systems, and others where the various software parts are executed on various computers and in various operating environments (PC, MAINFRAME, VAX). Two desireable features of VISUAL systems are: 1. The programming language should support OOP; 2. The language should be standard and system independent as much as possible. The first property is provided by many languages (and practically all dialects with prefix OBJECT). The second is provided by only one programming language, Ada 95. It is the sole language which does not change depending on the compiler developer firm and on the operating system. Moreover Ada 95 compilers must pass validation tests so that the generated object code has a higher probability of being correct. Principles of object-oriented programming have found in Ada 95 their most consistent and complete realization. The VISUAL objects types represent a packages tree. The object structure is described by TAGGED RECORD and form CLASS for all types derivative from it, but properties and methods are realized by means of PRIMITIVE OPERATION on parent objects. Thus is provided DISPATCHING and OVERLOAD of the objects operations ( In DELPHI the properties names coincide with the class component names and for the operation ":=", there is no strict definiteness. There is no clearly understood calling property or public component significance). In Ada 95, for PRIVATE type objects, direct access is impossible and their state may be changed only by calling authorized operations. The events mechanism can be realized directly. The language supports parallel data processing and does not depend on the operating system for the processes mechanism (they are realized on RUN TIME level). Each VISUAL object represents a separate process which can be in passive or active state (receives INPUT FOCUS). The system permanently manages the condition and interaction of these processes. If a programming language is not able to manage these processes itself (C ++, PASCAL), these functions are managed by operating system and the software becomes dependant on the operating environment . Ada 95, having task mechanisms, can manage processes independently , therefore the software developed with it can stand-alone. This property of the language must be provided for REAL TIME and DIRECT CONTROL systems, if we want successful software operable on various OS. Though many serious software developers look down today on the PC/DOS, OS/2 or WINDOWS, these systems are often used first at the start of large project development. They are used for emulation, for modeling software for debugging, and for testing of such programs. They are also used secondly even for the built-in microprocessor systems where visualization means are needed (even electronic watches have a dial). Ada 95 today is a unique language for distributed systems development on multiprocessor complexes. For Remote Client/Server networks, it is possible to develop indivisible and unified software instead of various software bits and pieces, thereby much increaseing its reliability and stability. The access to a database on the language level (PROTECTED TYPE) helps ensure a high degree of data reliability, absence of conflict, and safety. We shall consider an example( non ada) : Client A reads out some information INF1 from the database and uses it in forming INF2. During this process, if the data INF2 are accessible to read, Client B reads INF2 and updates data INF3. After Client A and Client B finish the process of data updating , the database will appear destroyed because of incompatibility INF2 and INF3. It is impossible in ADA 95 ENTRY mechanism. It seems to me that for the above reasons it is apparent that Ada 95 is an excellent base for the development of VISUAL systems today. It is easy to learn and provides a tool for developing beautiful,and reliable software. The availability in the near future of new Ada 95 VISUAL systems such as ActivAda, IntegrAda and Janus Ada will provide a serious alternative to VISUAL BASIC, DELPHI and OBJECT C ++.