We noticed you’re not on the correct regional site. Switch to our AMERICAS site for the best experience.
  • ISO/IEC TR 10182:2016

    Current The latest, up-to-date edition.
    Add to Watchlist
    This Standard has been added successfully to your Watchlist
    Please visit My Watchlist to see all standards that you are watching.
    Please log in or to add this standard to your Watchlist.
    We could not add this standard to your Watchlist.
    Please retry or contact support for assistance.
    We could not add this standard to your Watchlist.
    Please retry or contact support for assistance.
    You have already added this standard to your Watchlist.
    Visit My Watchlist to view the full list.

    Information technology Programming languages, their environments and system software interfaces Guidelines for language bindings

    Available format(s):  Hardcopy, PDF 1 User, PDF 3 Users, PDF 5 Users, PDF 9 Users

    Language(s):  English

    Published date:  10-03-2016

    Publisher:  International Organization for Standardization

    Add to Watchlist

    Add To Cart

    Abstract - (Show below) - (Hide below)

    ISO/IEC TR 10182:2016 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 a 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 is written, 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 Clause 3). 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 must 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 must 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.

    General Product Information - (Show below) - (Hide below)

    Committee ISO/IEC JTC 1/SC 22
    Document Type Standard
    Publisher International Organization for Standardization
    Status Current
    Supersedes

    Standards Referenced By This Book - (Show below) - (Hide below)

    CSA ISO/IEC 13719-2 : 2000 INFORMATION TECHNOLOGY - PORTABLE COMMON TOOL ENVIRONMENT (PCTE) - PART 2: C PROGRAMMING LANGUAGE BINDING
    ISO/IEC TR 14369:2018 Information technology Programming languages, their environments and system software interfaces Guidelines for the preparation of language-independent service specifications (LISS)
    BS ISO/IEC 10967-1 : 2012 INFORMATION TECHNOLOGY - LANGUAGE INDEPENDENT ARITHMETIC - PART 1: INTEGER AND FLOATING POINT ARITHMETIC
    CSA ISO/IEC 11730 : 0 INFORMATION TECHNOLOGY - PROGRAMMING LANGUAGES - FORM INTERFACE MANAGEMENT SYSTEMS (FIMS)
    BS EN 61209 : 1999
    CSA ISO/IEC 10967-1:14 (R2019) Information technology - Language independent arithmetic - Part 1: Integer and floating point arithmetic (Adopted ISO/IEC 10967-1:2012, second edition, 2012-07-15)
    04/30106462 DC : DRAFT JUL 2004 ISO/IEC 10967-3 - INFORMATION TECHNOLOGY - LANGUAGE INDEPENDENT ARITHMETIC - PART 3 : COMPLEX FLOATING POINT ARITHMETIC AND COMPLEX ELEMENTARY NUMERICAL FUNCTIONS
    CSA ISO/IEC 10967-2 : 2002 : R2016 INFORMATION TECHNOLOGY - LANGUAGE INDEPENDENT ARITHMETIC - PART 2: ELEMENTARY NUMERICAL FUNCTIONS
    CSA ISO/IEC 10967-2 : 2002 : R2011 INFORMATION TECHNOLOGY - LANGUAGE INDEPENDENT ARITHMETIC - PART 2: ELEMENTARY NUMERICAL FUNCTIONS
    CSA ISO/IEC 10967-2 :2002 INFORMATION TECHNOLOGY - LANGUAGE INDEPENDENT ARITHMETIC - PART 2: ELEMENTARY NUMERICAL FUNCTIONS
    CAN/CSA-ISO/IEC 13719-3-00 (R2018) Information Technology - Portable Common Tool Environment (PCTE) - Part 3: Ada Programming Language Binding (Adopted ISO/IEC 13719-3:1998, second edition, 1998-10-01)
    ECMA 162 : 4ED 97
    ECMA 234 : 1ED 95 APPLICATION PROGRAMMING INTERFACE FOR WINDOWS (APIW)
    ECMA 158 : 4ED 97 PORTABLE COMMON TOOL ENVIRONMENT (PCTE) - C PROGRAMMING LANGUAGE BINDING
    ISO/IEC 13719-2:1998 Information technology Portable Common Tool Environment (PCTE) Part 2: C programming language binding
    ISO/IEC 13719-3:1998 Information technology Portable common tool environment (PCTE) Part 3: Ada programming language binding
    CSA ISO/IEC 13719-2:00 (R2019) Information Technology - Portable Common Tool Environment (PCTE) - Part 2: C Programming Language Binding (Adopted ISO/IEC 13719- 2:1998, second edition, 1998-10-01)
    ISO/IEC 10967-2:2001 Information technology Language independent arithmetic Part 2: Elementary numerical functions
    ISO/IEC 10967-1:2012 Information technology Language independent arithmetic Part 1: Integer and floating point arithmetic

    Standards Referencing This Book - (Show below) - (Hide below)

    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, flexibile and cost effective