Natural (programming language)

from Wikipedia, the free encyclopedia

Natural - also in the German -speaking mostly English spoken - is a family of software development environments of Software AG for the creation of application programs . Natural supports u. a. a 4GL - Programming the self often confusingly called NPL (Natural Programming Language), Natural or NATURAL is called.

history

The first versions of the first variant for mainframe ( Engl. : Mainframe ) were from 1975 by Peter Pagé developed in collaboration with Margit Neumann. Right from the start, Natural enabled an interactive way of working on mainframes, which was initially only rarely possible (see literature).

System support

Natural was originally developed for mainframes from IBM and Siemens , but is now available on a wide variety of platforms . These include u. a.

Mainframe operating systems Unix Linux Windows

Database connection

In Natural, a large number of data storage systems can be accessed with partly highly efficient proprietary access commands as well as via standard SQL . These are mostly database management systems ( DBVS , English DBMS ). Access takes place via native (i.e. specific) drivers.

Natural supports u. a. the following data storage systems:

NPL programming language

The NPL programming language is part of the comprehensive, interactive software development environment Natural. With NPL, the first programming language for the creation of commercial application systems was offered, for which the term 4th generation was coined. An essential feature of the 4th generation languages ​​is the level of abstraction in which the problem is formulated. If higher-level programming languages ​​of the 3rd generation still require the programming of procedural technical individual steps, in languages ​​of the 4th generation the requirement is formulated more closely to the problem and executed by the system in any environment using the technical possibilities. Further features are: integrated design of the user interface, list generation, database access.

NPL code is very readable. Small application systems can be implemented very quickly. With NPL, however, very large application systems made up of tens of thousands of program modules with millions of lines of code have been and are successfully developed. Natural applications, especially in connection with Adabas , are known to be extremely powerful.

Examples:

* Hello World in Natural
WRITE 'Hello World!'
END
* Eine einfache Datenbank-Abfrage
DEFINE DATA
LOCAL
1    PERSONAL VIEW OF EMPLOYEES
 2   NAME
 2   CITY
END-DEFINE ;
FIND      ALL RECORDS
  IN FILE PERSONAL
  WITH    NAME = 'SCHMIDT' ;
  DISPLAY NAME CITY ;
END-FIND ;
END

In the course of modernizing existing Natural applications from the days of mainframes, there are a. the possibility of integrating this into an AJAX interface using Natural 4 Ajax.

Translation and runtime

NPL source code is traditionally in kind intermediate code compiled, then the in kind runtime interpreted is. This procedure is similar to that of the Java Virtual Machine . However, in many installations the Optimizing Compiler is used, which for the most part generates machine commands directly instead of intermediate code. This can significantly increase the efficiency of the NPL programs.

literature

  • Sylvia Scheu: Introduction to efficient NATURAL programming . Vieweg, 1995, ISBN 978-3-528-05291-1 .
  • Michael Schlüter: Introduction to programming with NATURAL (=  programming complex systems . No. 6 ). de Gruyter, Berlin / New York 1993, ISBN 3-11-013509-4 .
  • Michael Schlüter: Introduction to programming with Natural (=  programming complex systems . No. 1 ). 2nd, revised edition. Lehmanns Media, Berlin 2013, ISBN 978-3-86541-526-4 (368 pages).
  • Michael Schlüter: Introduction to programming with Natural & Adabas (=  programming complex systems . No. 4 ). 3rd, corrected and supplemented edition. Lehmanns Media, Berlin 2019, ISBN 978-3-86541-994-1 (382 pages).
  • Michael Schlüter: Introduction to programming with Natural & Adabas (e-book) (=  programming complex systems . No. 4 ). 3rd, corrected and supplemented edition. Lehmanns Media, Berlin 2019, ISBN 978-3-96543-059-4 (382 pages).

Web links