Adaとは? わかりやすく解説

エイダ【Ada】

読み方:えいだ

コンピュータープログラミング言語の一。米国国防総省開発文法パスカルに似るが、システム機能リアルタイム機能をもつ。初の女性プログラマーとされるバイロンの娘エイダ=オーガスタにちなん命名


エー‐ディー‐エー【ADA】

読み方:えーでぃーえー

adenosine deaminase》⇒アデノシンデアミナーゼ


エー‐ディー‐エー【Ada】

読み方:えーでぃーえー

エイダ


エー‐ディー‐エー【ADA】


ADA/DDA Americans with Disabilities Act/Disabilities Discrimination Act


ADA

分子式C6H10N2O5
その他の名称アダ緩衝剤】、ADA【buffering agent】、ADA、N-(2-Amino-2-oxoethyl)-N-(carboxymethyl)glycine、N-(2-Amino-2-oxoethyl)iminodiacetic acid、2,2'-(Carbamoylmethylimino)diacetic acid、2,2'-(Carbamoylmethyl)iminodiacetic acid、[N-(Carbamoylmethyl)imino]diacetic acid、Carbamoylmethyliminodiacetic acid、2,2'-[(2-Amino-2-oxoethyl)imino]diacetic acid、N-(Carbamoylmethyl)-N-(carboxymethyl)glycine、[(2-Amino-2-oxoethyl)imino]bisacetic acid、2,2'-(Carbamoylmethylimino)bisacetic acid、(Carbamoylmethylimino)diacetic acid、[(Carbamoylmethyl)imino]diacetic acid、2-Amino-2-oxoethyliminodiacetic acid、N-(Carbamoylmethyl)iminodiacetic acid、N-(Carbamoylmethyl)iminobisacetic acid、Carbamoylmethyliminobisacetic acid
体系名:カルバモイルメチルイミノビス酢酸、2-アミノ-2-オキソエチルイミノ二酢酸、N-(カルバモイルメチル)イミノビス酢酸、N-(カルバモイルメチル)イミノ二酢酸、[(カルバモイルメチル)イミノ]二酢酸、N-(2-アミノ-2-オキソエチル)イミノジ酢酸、N-(2-アミノ-2-オキソエチル)-N-(カルボキシメチル)グリシン、2,2'-(カルバモイルメチルイミノ)二酢酸、2,2'-(カルバモイルメチル)イミノ二酢酸、[N-(カルバモイルメチル)イミノ]二酢酸、カルバモイルメチルイミノ二酢酸、2,2'-[(2-アミノ-2-オキソエチル)イミノ]二酢酸、N-(カルバモイルメチル)-N-(カルボキシメチル)グリシン、[(2-アミノ-2-オキソエチル)イミノ]ビス酢酸、2,2'-(カルバモイルメチルイミノ)ビス酢酸、(カルバモイルメチルイミノ)二酢酸


Ada

名前 アーダアダエイダ

Ada

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/02/15 11:31 UTC 版)

Ada horizon green logo with slogan
パラダイム オブジェクト指向プログラミング命令型プログラミング構造化プログラミング、マルチパラダイムプログラミング 
登場時期 <1983年 (42年前) (1983)
設計者 ジャン・イシュビア
1995年拡張はS. Tucker Taft主導
開発者 ジャン・イシュビア、S. Tucker Taft 
最新リリース ISO/IEC 8652:2012 (Ada 2012)
型付け nominative, 安全な強い静的型付け
主な処理系 GNAT (GCC) 他
方言 Ada 83
Ada 95
Ada 2005
Ada 2012
影響を受けた言語 ALGOL 68、PascalModula-2C++SmalltalkJavaEiffel、ALGOL 60、Green、Ada 95 
影響を与えた言語 C++, PL/SQL, VHDL, Java, C言語 (C99)
プラットフォーム 多数
ウェブサイト
拡張子 .adb, .ads
テンプレートを表示

Ada(エイダ)は、構造化静的型付け命令型オブジェクト指向パラダイムを持つ汎用プログラミング言語の一つである。構文はAlgol系である。

史上初のプログラマとされるエイダ・ラブレスの名前にちなんでAdaと命名されている。ADAと表記するのは誤り。

フリーのコンパイラとしては、GNATなどがある。

特徴

Adaのデータ型の階層構造を示した図。

1979年、米国国防総省が信頼性、保守性に優れた、主として組み込みシステム向けの言語を作りたいという意図のもと、国際競争入札を行い4社に発注、各設計仕様書の表紙が赤、青、黄、緑だったことから、そのままそれぞれの言語名称としてRED、BLUE、YELLOW、GREENと呼ばれた。この入札で優勝したのはフランス人チームで、公平を期すため選定時にはGREENと名付けられた。そのような理由から、イメージカラーは緑である。特徴的な要件としては、大規模開発や長期保守性の観点から、

  • コーディング効率よりも可読性を重視すること
  • プリプロセッサマクロを持たないこと

などがあった。

プログラム言語としての機能としては、

  • 強い型検査(コンパイル時および実行時)。属性によって型に関する情報が取得できる。
  • 複雑な型を持つ定数。
  • 手続き・関数・演算子の多重定義。
  • プラグマを使った処理系依存の機能の指定。
  • パッケージ(後にC++namespaceとして追従)
  • 汎用プログラミング(後にC++がテンプレートとして追従)
  • 並行プログラミング(タスク、entry/accept/select文など)
  • 例外

など、当時としては先進的な機能[注釈 1]を意欲的に取り入れたため、米国国防総省は大きなものとなってしまった言語仕様をまとめるのに、初版のStrawman(わら男、案山子の意味もある)からWoodenman(木男)、Tinman(ブリキ男、前述の案山子とともに『オズの魔法使い』に出てくる)、Ironman(鉄男)、最終版のSteelman(鋼鉄男)に至るまで5つのバージョンに分けて策定を行った。

言語仕様の大きさや厳密さのため、当時のコンピュータが持っていた資源では、処理系の実装にミニコンワークステーション程度を必要とし、16ビットパソコンには市場性といった事情もあり実装はほとんどない。実際にはAdaは、大企業において、主として信頼性や保守性を要求されるシステムの開発でのみ普及した。というよりも、実際にどの程度徹底されたかは不明だが、策定の主体であった米国国防総省が発注するようなもの、即ち兵器の開発において条件とされたと言われる。

この時期としては先進的であった、その他の特徴としては、

コンパイラの認定制度
仕様準拠か否かの検証プログラムキットが規定され、合格しない処理系は「Adaコンパイラ」と称することができない。
自動ビルド
複数モジュールの依存性から、再コンパイルの要否を自動判定する(いわゆるMakefileの記述が不要)

などがあげられる。

策定作業中に仕様が大きくなっていった際には、仕様が高度に巨大化した言語が、兵器のように高度な信頼性を要求される分野に、国防総省の「お墨付き」として使用されることを危ぶむ向きもあった。たとえばアントニー・ホーアは1980年度のチューリング賞受賞者だが[1]、その受賞記念講演 (Turing Award Lecture) "The Emperor's Old Clothes" において、自身のALGOL 68(en:ALGOL 68、やはり仕様の巨大化で知られる)に関する経験などに触れたうえで、Adaへの憂慮で締めくくっている[注釈 2]

標準

言語仕様は、最初に1983年にMIL規格として規格化され、エイダ・ラブレスの生年である1815年に因んで、MIL-STD-1815と採番された。この規格はANSI標準、1987年にISO標準 ISO/IEC 8652:1987 として標準化された。

1990年より、主としてタスキング仕様の改善およびオブジェクト指向の導入を目的として、ISO標準 (ISO/IEC 8652:1987) の改訂作業が開始された。1995年2月15日にISO標準として改訂が承認され、オブジェクト指向言語のうち、史上初の国際標準となった。1995年の規格は、オブジェクト指向の他、下記のような仕様も標準化されている。

  • 他言語 (C/FORTRAN/COBOL) との相互運用インターフェイス
    この時点でC++との相互運用インターフェイスが標準化できなかったのは、C++の標準化がまだだったからである(C++の標準は、紛糾を経て約3年半後の1998年9月1日に承認された)
  • 分散処理 (RPC)

2000年にTechnical Amendmentが発行された(ISO/IEC 8652:1995/COR1:2000)。同改訂版は、JISでは2002年版 (JIS X 3009:2002) に対応する。JIS X 3009は本文の翻訳はしていない「要約JIS」であった。2012年1月20日を以って「国際規格周知を目的として要約JISを発行したが,周知としての目的は終了したため。」として廃止されている。

Ada の ISO 規格は、その後、2005年と2012年にも改訂されている。

コード例

Adaのソースコードは各パッケージの宣言部を .ads ファイル (specification file) に、実装部を .adb ファイル (body file) に記述する。

リファレンスマニュアルなどでは慣例的に3スペース(空白3個)のインデントが使われている。大文字と小文字を区別しないが、識別子は慣例的に単語の先頭を大文字にして、さらに単語間をアンダースコアでつなぐ(キャメルケースとスネークケースの併用)。

Hello World

-- Ada.Text_IO パッケージを取り込む。
with Ada.Text_IO;
-- use 節で指定することでパッケージ名の修飾を省略することも可能。
--use Ada.Text_IO;

procedure Program is
begin
   Ada.Text_IO.Put_Line("Hello, world!");
   --Put_Line("Hello, world!");
end Program;

ループと条件分岐

with Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO;
use Ada.Text_IO;

procedure Program is
   I : Integer := 0;
   F : Float;
begin
   for I in 0 .. 10 loop
      -- 左寄せで出力。
      Ada.Integer_Text_IO.Put(I, 0);
      if I mod 2 = 0 then
         Put_Line(": even number.");
      else
         Put_Line(": odd number.");
      end if;
      F := Float(I) * 0.1;
      Ada.Float_Text_IO.Put(F, 0, 1, 0);
      Put_Line("");
   end loop;
end Program;

利用例

1990年代の利用例としてはF-22戦闘機97式魚雷などがある。ただしこの分野でもAdaの陳腐化が進んでおり、2000年代に開発されたF-35戦闘機以降はC++へ移行している。

民生品ではあまり利用されていないが、信頼性を重視する航空機の制御ソフトウェアに利用されることがある。例としてはボーイング777など。

脚注

注釈

  1. ^ 先進的ということは、言い換えれば「こなれていない」ということであり、兵器のようなシステムでは冒険的過ぎると言えなくもない。
  2. ^ この講演は、2通りのソフトウェアの設計構築法について述べた "One way is to make it so simple that there are obviously no deficiencies and the other way is to make it so complicated that there are no obvious deficiencies."; 「ひとつめの方法はあきらかに欠陥が無いようにso simpleにするというもので、もうひとつの方法はあきらかな欠陥が無いようにso complicatedにするというものである」という文章でも知られる。

出典

外部リンク

関連項目


ADA

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/01/26 14:39 UTC 版)

ADA(アダ、エイダ)

関連項目


Ada

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/11/10 17:56 UTC 版)

do-while文」の記事における「Ada」の解説

Adaの例。 with Ada.Integer_Text_IO;procedure Factorial is Counter : Integer := 5; Factorial : Integer := 1;begin loop Factorial := Factorial * Counter; Counter := Counter - 1; exit when Counter = 0; end loop; Ada.Integer_Text_IO.Put(Factorial);end Main;

※この「Ada」の解説は、「do-while文」の解説の一部です。
「Ada」を含む「do-while文」の記事については、「do-while文」の概要を参照ください。

ウィキペディア小見出し辞書の「Ada」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ

「Ada」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。



Adaと同じ種類の言葉


固有名詞の分類


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

辞書ショートカット

', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''];function getDictCodeItems(index) {return dictCodeList[index];}

すべての辞書の索引

「Ada」の関連用語




4
100% |||||

5
98% |||||

6
70% |||||

7
70% |||||

8
ギュウェルジンアダ島 デジタル大辞泉
70% |||||

9
ADA欠損症 デジタル大辞泉
58% |||||


Adaのお隣キーワード
検索ランキング
';function getSideRankTable() {return sideRankTable;}

   

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



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

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
財団法人和歌山県人権啓発センター財団法人和歌山県人権啓発センター
Copyright (C) 2025 財団法人和歌山県人権啓発センター All rights reserved.
社団法人日本映像ソフト協会社団法人日本映像ソフト協会
Copyright © 2000-2025 Japan Video Software Association
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2025 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリの【Apple Design Awards】の記事を利用しております。
拡張子辞典拡張子辞典
Copyright © 2005-2025 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリの【.ada】の記事を利用しております。
独立行政法人科学技術振興機構独立行政法人科学技術振興機構
All Rights Reserved, Copyright © Japan Science and Technology Agency
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのAda (改訂履歴)、ADA (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのdo-while文 (改訂履歴)、埋め込みSQL (改訂履歴)、if文 (改訂履歴)、列挙型 (改訂履歴)、カルダノ (ブロックチェーン) (改訂履歴)、ADA (イギリス海軍) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2025 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2025 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2025 GRAS Group, Inc.RSS