PD ISO/IEC TR 10182:2016
Current
The latest, up-to-date edition.
Information technology. Programming languages, their environments and system software interfaces. Guidelines for language bindings
Hardcopy , PDF
English
31-03-2016
Foreword
Introduction
1 Scope
2 Terms and definitions
3 Overview of functional binding methods
4 Guidelines
5 Future directions
Annex A (informative) - Graphic Binding Examples
Annex B (informative) - GKS Bindings Generic Issues
Bibliography
Categorizes language binding methods, reporting on particular instances in detail, and to produce suggested guidelines for future language binding standards.
Committee |
IST/5
|
DevelopmentNote |
Supersedes BS ISO/IEC TR 10182. (04/2016)
|
DocumentType |
Standard
|
Pages |
52
|
PublisherName |
British Standards Institution
|
Status |
Current
|
Supersedes |
This Technical Report is based on experience gained in the standardization of two major areas in information processing. One area covers programming languages. The other area is composed of the services necessary to an application program to achieve its goal. The services are divided into coherent groups, each referred to as a SYSTEM FACILITY, that are accessed through a FUNCTIONAL INTERFACE. The specification of a system facility, referred to as a FUNCTIONAL SPECIFICATION, defines a collection of SYSTEM FUNCTIONS, each of which carries out some well-defined service.
Since in principle there is no reason why a particular system facility should not be used by a program, regardless of the language in which it is written, it is the practice of system facility specifiers to define an ‘abstract’ functional interface that is language independent. In this way, the concepts in a particular system facility may be refined by experts in that area without regard for language peculiarities. An internally coherent view of a particular system facility is defined, relating the system functions to each other in a consistent way and relating the system functions to other layers within the system facility, including protocols for communication with other objects in the total system.
However, if these two areas are standardized independently, it is not possible to guarantee that programs from one operating environment can be moved to another, even if the programs are written in a standard programming language and use only standard system facilities. A language binding of a system facility to a programming language provides language syntax that maps the system facility’s functional interface. This allows a program written in the language to access the system functions constituting the system facility in a standard way. The purpose of a language binding is to achieve portability of a program that uses particular facilities in a particular language. Examples of system facilities that have had language bindings developed for them are GKS, NDL, and SQL (see Bibliography). It is anticipated that further language binding development will be required. Some system facilities currently being standardized have no language bindings and additional system facilities will be standardized. There is a possibility of n × m language bindings, where n is the number of languages and m the number of system facilities.
The scope of this Technical Report is to classify language binding methods, reporting on particular instances in detail, and to produce suggested guidelines for future language binding standards.
Note that the language bindings and the abstract facility interfaces shall have a compatible run time representation, but the abstract facility does not necessarily have to be written in the host language. For example, if the application program is using a Pascal language binding and the corresponding facility is written in FORTRAN, there shall be a compatible run time representation in that operating environment. How this compatibility is achieved is outside the scope of these guidelines. This is generally a property of the operating environment defined by the implementor, and is reviewed briefly in this Technical Report.
Standards | Relationship |
ISO/IEC TR 10182:2016 | Identical |
ISO/IEC 9075-2:2016 | Information technology — Database languages — SQL — Part 2: Foundation (SQL/Foundation) |
ISO 8651-1:1988 | Information processing systems Computer graphics Graphical Kernel System (GKS) language bindings Part 1: FORTRAN |
ISO/IEC 7942-1:1994 | Information technology Computer graphics and image processing Graphical Kernel System (GKS) Part 1: Functional description |
ISO 7185:1990 | Information technology — Programming languages — Pascal |
ISO/IEC 9593-3:1990 | Information technology Computer graphics Programmer's Hierarchical Interactive Graphics System (PHIGS) language bindings Part 3: ADA |
ISO 8651-3:1988 | Information processing systems Computer graphics Graphical Kernel System (GKS) language bindings Part 3: Ada |
ISO/IEC 1989:2014 | Information technology — Programming languages, their environments and system software interfaces — Programming language COBOL |
ISO 8805:1988 | Information processing systems Computer graphics Graphical Kernel System for Three Dimensions (GKS-3D) functional description |
ISO 8651-2:1988 | Information processing systems Computer graphics Graphical Kernel System (GKS) language bindings Part 2: Pascal |
ISO/IEC 10206:1991 | Information technology Progamming languages Extended Pascal |
ISO 8907:1987 | Information processing system — Database languages — NDL |
ISO/IEC 1539-1:2010 | Information technology Programming languages Fortran Part 1: Base language |
ISO/IEC 9899:2011 | Information technology Programming languages C |
ISO/IEC 9593-1:1990 | Information processing systems Computer graphics Programmer's Hierarchical Interactive Graphics System (PHIGS) language bindings Part 1: FORTRAN |
ISO/IEC 9075-3:2016 | Information technology — Database languages — SQL — Part 3: Call-Level Interface (SQL/CLI) |
ISO/IEC 8651-4:1995 | Information technology — Computer graphics — Graphical Kernel System (GKS) language bindings — Part 4: C |
ISO/IEC 8652:2012 | Information technology — Programming languages — Ada |
ISO/IEC 9075-11:2016 | Information technology — Database languages — SQL — Part 11: Information and definition schemas (SQL/Schemata) |
ISO/IEC 9075-4:2016 | Information technology — Database languages — SQL — Part 4: Persistent stored modules (SQL/PSM) |
ISO 6373:1984 | Data processing — Programming languages — Minimal BASIC |
ISO/IEC 9593-4:1991 | Information technology Computer graphics Programmer's Hierarchical Interactive Graphics System (PHIGS) language bindings Part 4: C |
ISO/IEC 9075-1:2016 | Information technology — Database languages — SQL — Part 1: Framework (SQL/Framework) |
Access your standards online with a subscription
Features
-
Simple online access to standards, technical information and regulations.
-
Critical updates of standards and customisable alerts and notifications.
-
Multi-user online standards collection: secure, flexible and cost effective.