Flow-Maticとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > Flow-Maticの意味・解説 

FLOW-MATIC

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/09/24 09:42 UTC 版)

ナビゲーションに移動 検索に移動
FLOW-MATIC
パラダイム 命令型
登場時期 1955 (1955)
設計者 レミントンランドグレース・ホッパー
影響を受けた言語 ARITH-MATIC英語版
影響を与えた言語 MATH-MATIC英語版AIMACO英語版COBOL
テンプレートを表示

FLOW-MATIC(フローマティック)は、世界初の英語に近い表記のデータ処理用プログラミング言語である。元の名称はB-0(Business Language version 0)であった。1955年から1959年にかけて、レミントンランドに所属していたグレース・ホッパーによってUNIVAC I用に開発された。この言語は、COBOLの開発に大きな影響を与えた。

開発

ホッパーは、ビジネスデータ処理を行う顧客が数学的な表記法を不快に感じていることに気づいた。そのことを次のように書き残している[1]

私は数学の教授でした。当時、数学を学べない学生がかなりいることに気づきました。その後私は、ビジネスマンが私達のコンピュータを簡単に使用できるようにするための仕事を任されました。私は、数学を学べるかどうかが問題なのではなく、彼らが数学を学びたいかどうかが問題であることに気づきました。(中略)彼らは言いました「それらの記号を使わないでください。私はそれらの意味がわかりませんし、私には記号を学ぶ時間がありません。」私は、データ処理のを行う人達に数学記号を使用してもらい、副社長や大佐や提督にそれらの記号を教えることを試みようとしている人達への返信を提案します。私はそれを試したことを保証します。

1953年後半、彼女はデータ処理の問題を英語のキーワードを使用して表現することを提案したが、レミントンランド社の管理者はこの考えは実現不可能だと考えた。1955年初頭、彼女とそのチームはそのようなプログラミング言語の仕様を書き、プロトタイプを実装した[2]。FLOW-MATICのコンパイラは1958年初頭に公開され、1959年にほぼ完成した[3]

革新と影響

第一に、FLOW-MATICは、英語のような文を使用して操作を表現する英語版世界初のプログラミング言語である[3]

第二に、FLOW-MATICは、データの記述とその操作を明確に分離した最初のシステムである。実行可能な文とは異なり、データ定義言語は英語に似ていなかった。データ構造は事前に印刷されたフォームに記入することによって定義された[3]

FLOW-MATICは、COBOLの設計に大きな影響を与えた[4]。FLOW-MATICの要素のうち、以下に掲げるものがCOBOLに組み込まれた。

  • 事前にファイルを定義し、INPUTファイルとOUTPUTファイルに分けること。
  • データ名の修飾(IN句、OF句)
  • ファイルのREAD操作におけるIF END OF DATA (AT END)
  • 表意定数ZERO(オリジナルはZZZ...ZZZで、Zの数で精度を示した)
  • プログラムを節に分割し、プログラムの様々な部分を分離すること。FLOW-MATICの節には、 Computer(環境部(environment division))、Directory(データ部(data division))、Compiler(手続き部(procedure division))がある。

サンプルプログラム

マーケティングパンフレットに記載されたFLOW-MATICのサンプルプログラム[5][6]を以下に掲げる。

 (0)  INPUT INVENTORY FILE-A PRICE FILE-B ; OUTPUT PRICED-INV FILE-C UNPRICED-INV
     FILE-D ; HSP D .
 (1)  COMPARE PRODUCT-NO (A) WITH PRODUCT-NO (B) ; IF GREATER GO TO OPERATION 10 ;
     IF EQUAL GO TO OPERATION 5 ; OTHERWISE GO TO OPERATION 2 .
 (2)  TRANSFER A TO D .
 (3)  WRITE-ITEM D .
 (4)  JUMP TO OPERATION 8 .
 (5)  TRANSFER A TO C .
 (6)  MOVE UNIT-PRICE (B) TO UNIT-PRICE (C) .
 (7)  WRITE-ITEM C .
 (8)  READ-ITEM A ; IF END OF DATA GO TO OPERATION 14 .
 (9)  JUMP TO OPERATION 1 .
(10)  READ-ITEM B ; IF END OF DATA GO TO OPERATION 12 .
(11)  JUMP TO OPERATION 1 .
(12)  SET OPERATION 9 TO GO TO OPERATION 2 .
(13)  JUMP TO OPERATION 2 .
(14)  TEST PRODUCT-NO (B) AGAINST ; IF EQUAL GO TO OPERATION 16 ;
     OTHERWISE GO TO OPERATION 15 .
(15)  REWIND B .
(16)  CLOSE-OUT FILES C ; D .
(17)  STOP . (END)


このサンプルには、プログラムの実行可能文、すなわちCOMPILER節のみであることに注意。データ部PRODUCT-NOおよびUNIT-PRICEDIRECTORY節で定義されるが、(前述のように)英語のような構文は使用していない[7]

脚注

  1. ^ Hopper (1959) p. 198.
  2. ^ Hopper (1978) p. 16.
  3. ^ a b c Sammet (1969) p. 316
  4. ^ Sammet (1978) p. 204.
  5. ^ Sperry Rand (1957) p. 7.
  6. ^ Sammet (1969) p. 323.
  7. ^ Hopper (1978) p. 18.

参考文献

この記事は2008年11月1日までGFDLバージョン1.3以降の再ライセンス規約に基づいていたFree On-line Dictionary of Computingにある項目の資料が元になっている。




英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Flow-Matic」の関連用語

Flow-Maticのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Flow-Maticのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのFLOW-MATIC (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS