کورال کیست؟ توضیح بده.
CORAL، مخفف Computer On-line Real-time Applications Language (زبان برنامه‌نویسی کاربردهای بلادرنگ آنلاین کامپیوتر)، یک زبان برنامه‌نویسی است که سال ۱۹۶۴ در (RRE)، مالورن، ووسترشایر، در بریتانیا توسعه یافت. حرف R در ابتدا به معنای "رادار" بود، نه "بلادرنگ". این زبان عمدتاً تحت تأثیر JOVIAL و نتیجتاً الگول بود، اما زیرمجموعه هیچ‌کدام از آنها نیست.معروف‌ترین نسخه، CORAL 66، سپس توسط آی.اف.کوری و ام. گریفیث تحت نظارت "کمیته بین‌موسسه‌ای برنامه‌های کامپیوتری" (IECCA) توسعه یافت. تعریف رسمی آن، که توسط ، ودرال و گورمن ویرایش شد، برای اولین بار در سال ۱۹۷۰ منتشر شد.در سال ۱۹۷۱، CORAL توسط وزارت دفاع به عنوان زبان برنامه‌نویسی برای کاربردهای نظامی آینده انتخاب شد و برای حمایت از این امر، برنامه استانداردسازی‌ای معرفی شد تا اطمینان حاصل شود که کامپایلرهای CORAL مشخصات مورد نیاز را برآورده می‌کنند. این فرایند بعداً توسط وزارت دفاع ایالات متحده در هنگام تعریف زبان ایدا اتخاذ شد.بررسی اجمالی.Coral 66 یک زبان برنامه‌نویسی همه‌منظوره است که بر اساس ALGOL 60 طراحی شده و دارای برخی از ویژگی‌های Coral 64، JOVIAL، و Fortran است. این زبان شامل انواع رکورد ساخت‌یافته (مانند پاسکال) است و از بسته‌بندی داده‌ها در حافظه محدود پشتیبانی می‌کند (همچنین مانند پاسکال). مانند ، اجازه استفاده از زبان اسمبلی درون‌خطی (درج‌شده) را می‌دهد و همچنین بررسی و تشخیص‌های خوبی ارائه می‌دهد. این زبان برای رایانش بلادرنگ و کاربردهای سیستم‌های تعبیه‌شده و برای استفاده در کامپیوترهایی با توان پردازش محدود، از جمله آنهایی که به هستند یا از تخصیص حافظه پویا پشتیبانی نمی‌کنند، طراحی شده است.این زبان یک استاندارد میان‌خدمتی برای برنامه‌نویسی نظامی بریتانیا بود و همچنین برای اهداف غیرنظامی در صنعت کنترل و اتوماسیون بریتانیا به‌طور گسترده‌ای مورد استفاده قرار گرفت. از این زبان برای نوشتن نرم‌افزار برای کامپیوترهای فرانتی و کامپیوترهای جی‌ئی‌سی از سال ۱۹۷۱ به بعد استفاده شد. همچنین پیاده‌سازی‌هایی نیز برای Interdata 8/32، VAX، و پلتفرم‌های Alpha و ، برای Honeywell و (CTL، بعدها ITL) ؛ و نیز برای اسپارک با سیستم عامل سولاریس و اینتل با سیستم عامل لینوکس وجود دارد.ملکه الیزابت دوم اولین ایمیل را از سوی یک رئیس کشور از از طریق آرپانت در ۲۶ مارس ۱۹۷۶ ارسال کرد. پیام به این مضمون بود: "این پیام به همه کاربران ARPANET اعلام می‌کند که کامپایلر Coral 66 ارائه شده توسط کامپیوتر در موسسه سیگنال‌ها و رادار سلطنتی، مالورن، انگلستان، در ARPANET در دسترس است... Coral 66 زبان سطح بالای استاندارد بلادرنگی است که توسط وزارت دفاع پذیرفته شده است."از آنجا که Coral برای کارهای بلادرنگ مختلف و نه پردازش داده‌های عمومی دفتر کار طراحی شده بود، معادل استانداردی برای کتابخانه "" وجود نداشت. IECCA یک بسته ورودی/خروجی (I/O) ابتدایی را توصیه کرد که همراه هر کامپایلری باشد (در سندی با عنوان "ورودی/خروجی داده‌های کاراکتری در برنامه‌های کمکی Coral 66"). بیشتر پیاده‌سازان این مشکل را با تولید رابط‌های Coral برای کتابخانه‌های موجود Fortran و بعداً C برطرف کردند.مهم‌ترین سهم CORAL در محاسبات ممکن است اجرای کنترل کیفیت در کامپایلرهای تجاری باشد. برای اینکه یک کامپایلر CORAL توسط IECCA تأیید شود و به این ترتیب اجازه داشته باشد به عنوان یک کامپایلر CORAL 66 به بازار عرضه شود، کامپایلر مورد نظر باید یک مجموعه استاندارد شامل ۲۵ برنامه آزمایشی و ۶ برنامه بنچمارک را کامپایل و اجرا کند. این فرایند بخشی از فرایند تأیید استاندارد بریتانیا (BS) 5905 بود. این روش بعداً توسط وزارت دفاع ایالات متحده برای تأیید کامپایلرهای ایدا مشاهده و اقتباس شد.کد منبع یک کامپایلر Coral 66 (نوشته شده به زبان BCPL) بازیابی شده و سند "تعریف رسمی Coral 66" توسط اسکن شده است؛ اداره ثبت اختراعات وزارت دفاع مجوزی به پروژه تاریخچه کامپیوتر ادینبورگ صادر کرده تا به آنها اجازه دهد هر دو کد و مرجع زبان را برای استفاده غیرتجاری به صورت آنلاین قرار دهند.گونه‌ها.یک گونه از Coral 66 به نام PO-CORAL در اواخر دهه ۱۹۷۰ تا اوایل دهه ۱۹۸۰ توسط به همراه جنرال الکتریک کمپانی، STC، و برای استفاده در کامپیوترهای کنترل مراکز تلفن دیجیتال توسعه یافت. این زبان بعداً با نام BT-CORAL شناخته شد زمانی که گروه بی‌تیاز اداره پست جدا شد. ویژگی‌های منحصر به فرد این زبان تمرکز بر اجرای بلادرنگ، پردازش پیام، محدودیت در اجرای دستورها حین انتظار برای ورودی، و ممنوعیت استفاده از بازگشت (recursion) برای حذف نیاز به پشته بود.