ISO/IEC 10514-3:1998 情報技術—プログラミング言語—パート3:オブジェクト指向Modula-2 | ページ 2

※一部、英文及び仏文を自動翻訳した日本語訳を使用しています。

序文

ISO (国際標準化機構) と IEC (国際電気標準会議) は、世界標準化のための専門システムを形成しています。 ISO または IEC のメンバーである国家機関は、技術活動の特定の分野を扱うために、それぞれの組織によって設立された技術委員会を通じて、国際規格の開発に参加しています。 ISO と IEC の技術委員会は、相互に関心のある分野で協力しています。 ISO および IEC と連携して、政府および非政府の他の国際機関もこの作業に参加しています。

情報技術の分野では、ISO と IEC は合同技術委員会 ISO/IEC JTC 1 を設立しました。合同技術委員会によって採択された国際規格の草案は、投票のために各国の機関に回覧されます。国際規格として発行するには、投票を行う国の機関の少なくとも 75% による承認が必要です。

国際規格 ISO/IEC 10514-3 は、合同技術委員会 ISO/IEC JTC 1, 情報技術、小委員会 SC 22, プログラミング言語、その環境およびシステム ソフトウェア インターフェイスによって作成されました。

ISO/IEC 10514 は、一般的なタイトルである情報技術 — プログラミング言語の下で、次の部分で構成されています。

  • Part 1: Modula-2, 基本言語
  • Part 2: Modula-2 のジェネリック
  • Part 3: オブジェクト指向 Modula-2

ISO/IEC 10514 のこの部分の附属書 A から F は、情報提供のみを目的としています。

序章

ISO/IEC 10514 のこのパートは、マルチパート標準 ISO/IEC 10514 のPart 3 であり、オブジェクト指向 Modula-2 プログラムの形式と意味を指定し、その仕様への参照により、オブジェクト指向 Modula-2 実装の要件を定めています。

読者は、プログラミング言語 Modula-2 の紹介文について、国際標準 ISO/IEC 10514-1 (このマルチパート標準の最初の部分であり、「基本標準」と呼ばれます) を参照してください。

ISO/IEC 10514 のこの部分は、基本言語のどの部分の意味も変更することなく、基本言語に追加することによってオブジェクト指向 Modula-2 を定義します (新しいキーワードの導入を除く - 5 節を参照)

ISO/IEC 10514 のこの部分は、オブジェクト指向 Modula-2 の正式な仕様を提供していませんが、WG13 は、委員会のリソースが許す場合に記述されている構文とセマンティクスの適切な VDM-SL 記述を構築することを意図しています。

合理的な

オブジェクト指向プログラミングは、高度な抽象化とプログラムの優れた構造化を可能にするプログラミング方法です。その実質的な利点により、プログラミングの一般的な方法になっています。

元の設計の Modula-2 は、オブジェクト指向に必要な基本機能 (データのカプセル化やモジュール化など) を提供するため、完全なオブジェクト指向機能を非常に自然な方法でベース言語に簡単に追加できます。したがって、この新しいプログラミング方法の利点は、完全に上位互換性のある方法でプログラマーに提供されます。

1 スコープ

1.1 目標

基本言語の目標に加えて、ISO/IEC 10514 のこの部分の目標は、国際規格 ISO/IEC 10514-1 で定義されている基本言語にオブジェクト指向プログラミング機能を変更せずに追加できるようにする単純な拡張機能を提供することです。 Base Language で許可されている有効なプログラムの意味 (この標準で導入された新しいキーワードの使用を除く。5 節を参照)

1.2 ISO/IEC 10514 のこのパートに含まれる仕様

基本言語に含まれる仕様に加えて、ISO/IEC 10514 のこの部分では、次の仕様が提供されます。

  • オブジェクト指向 Modula-2 プログラムに必要な記号。
  • オブジェクト指向 Modula-2 プログラムの語彙構造、構文構造、意味論。
  • オブジェクト指向 Modula-2 システム モジュールへのインターフェイスとセマンティクス。
  • 準拠する実装が検出する必要がある、オブジェクト指向拡張機能の使用に関する規則の違反。
  • 文書化要件を含む、実装のためのさらなるコンプライアンス要件。

1.3 ISO/IEC 10514-1 との関係

ISO/IEC 10514 のこのパートは、マルチパート標準 ISO/IEC 10514 のPart 3 です。 IEC 10514 は、基本言語に関してオプションです。 ISO/IEC 10514 のこのパートは、Part 1 を除く ISO/IEC 10514 の他のパートとも独立しており、そのような他のパートと一緒に、または独立して採用することができます。

1.4 ISO/IEC 10514 のこのパートの範囲外の仕様

Base Language によって除外された仕様のカテゴリに加えて、ISO/IEC 10514 のこの部分では、次の仕様は提供されていません。

  • オブジェクトとそれに関連するメソッドの内部表現。
  • ガベージ コレクターの実装。
  • 追跡されたオブジェクトの追跡メカニズムの実装。

2 参考文献

次の規範文書には、このテキストで参照することにより、この国際規格の規定を構成する規定が含まれています。日付の記載された参照については、これらの刊行物に対するその後の修正または改訂は適用されません。ただし、この国際規格に基づく協定の当事者は、以下に示す規範文書の最新版を適用する可能性を調査することをお勧めします。日付のない参照については、参照されている規範文書の最新版が適用されます。 ISO および IEC のメンバーは、現在有効な国際規格の登録簿を維持しています。

  • ISO/IEC 10514-1:1996情報技術プログラミング言語 — 1: Modula-2, 基本言語

3 定義、構造、および表記法

3.1 定義

ISO/IEC 10514 のこの部分の目的のために、基本規格に含まれるすべての定義が適用されます。追加の定義は必要ありません。

3.2 形式的定義の構造

ISO/IEC 10514 のこの部分は、現時点では VDM-SL にセマンティクスの正式な表現が含まれていないことを除いて、基本言語と同じ形式でその要件を述べています。

3.3 規約

ISO/IEC 10514 のこの部分で使用される規則は、現時点でこのドキュメントに VDM-SL が含まれていないことを除いて、基本言語と同じ方法で解釈されます。

Foreword

ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical committees established by the respective organization to deal with particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work.

In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1. Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote.

International Standard ISO/IEC 10514-3 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming languages, their environments and system software interfaces.

ISO/IEC 10514 consists of the following parts, under the general title Information technology — Programming languages:

  • Part 1: Modula-2, Base Language
  • Part 2: Generics in Modula-2
  • Part 3: Object Oriented Modula-2

Annexes A to F of this part of ISO/IEC 10514 are for information only.

Introduction

This part of ISO/IEC 10514 is part three of the multi-part standard ISO/IEC 10514 and specifies the form and meaning of Object Oriented Modula-2 programs and by reference to that specification lays down requirements for Object Oriented Modula-2 implementations.

The reader is referred to International Standard ISO/IEC 10514-1 (the first part of this multipart standard, herein referred to as"the Base Standard") for introductory remarks on the programming language Modula-2.

This part of ISO/IEC 10514 defines Object Oriented Modula-2 by additions to the Base Language without changing the meaning of any parts of the Base Language (except for the introduction of new keywords—see clause 5).

This part of ISO/IEC 10514 does not provide a formal specification of Object Oriented Modula-2, although it is the intention of WG13 to construct the appropriate VDM-SL descriptions for the syntax and semantics described herein when committee resources permit.

Rationale

Object oriented programming is a method of programming that allows a high degree of abstraction as well as good structuring of programs. Because of its substantial benefits it has become a common method of programming.

As Modula-2 in its original design provides for basic facilities necessary for object orientation (like data encapsulation and modularization), full object oriented facilities can be easily added to the base language in a very natural way. Thus the advantages of this new programming method are made available to the programmer in a fully upward compatible way.

1 Scope

1.1 Goals

In addition to the goals of the Base Language, the goal of this part of ISO/IEC 10514 is to provide simple extensions to allow object oriented programming facilities to be added to the Base Language defined in International Standard ISO/IEC 10514-1 without altering the meaning of any valid program allowed by the Base Language (except for the use of the new keywords introduced by this standard, see clause 5).

1.2 Specifications included in this part of ISO/IEC 10514

In addition to the specifications included in the Base Language this part of ISO/IEC 10514 provides specifications for:

  • required symbols for Object Oriented Modula-2 programs;
  • the lexical structure, the syntactic structure and semantics of Object Oriented Modula-2 programs;
  • the interface to and the semantics of Object Oriented Modula-2 system modules;
  • violations of the rules for the use of the object oriented extensions that a conforming implementation is required to detect;
  • further compliance requirements for implementations, including documentation requirements.

1.3 Relationship to ISO/IEC 10514-1

This part of ISO/IEC 10514 is part three of the multi-part standard ISO/IEC 10514. This part of ISO/IEC 10514 extends and modifies the Base Language ISO/IEC 10514-1, but the adoption of this part of ISO/IEC 10514 is optional with respect to the Base Language. This part of ISO/IEC 10514 is also independent of any other parts of ISO/IEC 10514 except for part 1, and can be adopted either together with or independently of such other parts.

1.4 Specifications not within the scope of this part of ISO/IEC 10514

In addition to the categories of specifications excluded by the Base Language this part of ISO/IEC 10514 provides no specifications for:

  • the internal representation of the objects and their associated methods;
  • the implementation of the garbage collector;
  • the implementation of the tracking mechanism for traced objects.

2 Normative References

The following normative documents contain provisions which, through reference in this text, constitute provisions of this International Standard. For dated references, subsequent amendments to, or revisions of, any of these publications do not apply. However, parties to agreements based on this International Standard are encouraged to investigate the possibility of applying the most recent editions of the normative documents indicated below. For undated references, the latest edition of the normative document referred to applies. Members of ISO and IEC maintain registers of currently valid International Standards.

  • ISO/IEC 10514-1:1996Information technology Programming languages — 1: Modula-2, Base Language.

3 Definitions, Structure, and Conventions

3.1 Definitions

For the purposes of this part of ISO/IEC 10514, all the definitions contained in the Base Standard apply. No additional definitions are needed.

3.2 Structure of the Formal Definition

This part of ISO/IEC 10514 states its requirements in the same form as the Base Language with the exception that it does not include formal expression of semantics in VDM-SL at this time.

3.3 Conventions

The conventions used in this part of ISO/IEC 10514 are to be interpreted in the same way as in the Base Language with the exception that this document does not include VDM-SL at this time.