المرجان
كورال (CORAL) ، اختصارًا لـ Computer On-line Real-time Applications Language، هي لغة برمجة طُوِّرت في الأصل عام 1964 في المؤسسة الملكية للرادار (RRE) في مالفيرن، ووسترشاير ، بالمملكة المتحدة. [ 2 ] كان الحرف R في الأصل يرمز إلى "رادار" وليس "وقت حقيقي". [ 3 ] تأثرت كورال بشكل أساسي بلغة جوفيال (JOVIAL )، وبالتالي بلغة ألغول (ALGOL )، ولكنها ليست مجموعة فرعية من أيٍّ منهما.
تم تطوير النسخة الأكثر شهرة على نطاق واسع، وهي CORAL 66 ، لاحقًا بواسطة IF Currie و M. Griffiths تحت رعاية اللجنة المشتركة بين المؤسسات لتطبيقات الحاسوب (IECCA). تم نشر تعريفها الرسمي، الذي حرره Woodward و Wetherall و Gorman، لأول مرة في عام 1970. [ 4 ]
في عام 1971، اختارت وزارة الدفاع لغة CORAL كلغة للتطبيقات العسكرية المستقبلية، ولدعم ذلك، تم إطلاق برنامج توحيد المعايير لضمان توافق مُجمِّعات CORAL مع المواصفات. وقد اعتمدت وزارة الدفاع الأمريكية هذه العملية لاحقًا عند تعريف لغة Ada .
ملخص
كورال 66 هي لغة برمجة متعددة الأغراض مبنية على لغة ALGOL 60 ، مع بعض الميزات من لغات كورال 64 و JOVIAL و Fortran . تتضمن أنواع سجلات مُهيكلة (كما في لغة باسكال ) وتدعم ضغط البيانات في مساحة تخزين محدودة (أيضًا كما في لغة باسكال). ومثل لغة Edinburgh IMP، تسمح كورال 66 باستخدام لغة التجميع المضمنة ، كما توفر فحصًا وتشخيصًا جيدًا أثناء التشغيل . صُممت كورال 66 للحوسبة الآنية وتطبيقات الأنظمة المضمنة ، وللاستخدام على أجهزة الكمبيوتر ذات القدرة الحاسوبية المحدودة، بما في ذلك تلك التي تقتصر على العمليات الحسابية ذات الفاصلة الثابتة وتلك التي لا تدعم تخصيص مساحة التخزين الديناميكي.
كانت هذه اللغة معيارًا مشتركًا بين مختلف فروع الجيش البريطاني لبرمجة الأنظمة العسكرية، [ 5 ] كما تم اعتمادها على نطاق واسع للأغراض المدنية في صناعة التحكم والأتمتة البريطانية. استُخدمت لكتابة برامج حاسوبية لكل من فيرانتي [ 6 ] وشركة جنرال إلكتريك (GEC) بدءًا من عام 1971. وتوجد أيضًا تطبيقات لمنصات إنترداتا 8/32، و PDP -11 ، و VAX، وألفا ، وخوادم HPE Integrity ؛ ولحاسوب هانيويل ، ولحاسوب Computer Technology Limited (CTL، التي أصبحت لاحقًا ITL) Modular-1 ؛ [ 7 ] ولمنصات SPARC التي تعمل بنظام سولاريس ، وحواسيب إنتل التي تعمل بنظام لينكس .
أرسلت الملكة إليزابيث الثانية أول بريد إلكتروني من رئيس دولة من المؤسسة الملكية للإشارات والرادار عبر شبكة أربانت في 26 مارس 1976. وجاء في الرسالة: "تُعلن هذه الرسالة لجميع مستخدمي أربانت عن توفر مُترجم كورال 66 على شبكة أربانت، والذي يوفره حاسوب GEC 4080 في المؤسسة الملكية للإشارات والرادار، مالفيرن، إنجلترا... كورال 66 هي لغة البرمجة عالية المستوى القياسية التي تعمل في الوقت الحقيقي، والتي اعتمدتها وزارة الدفاع ." [ 8 ] [ 9 ]
بما أن لغة كورال كانت موجهة لمجموعة متنوعة من تطبيقات الوقت الفعلي، وليس لمعالجة بيانات المكاتب العامة، لم يكن هناك مكافئ معياري لمكتبة الإدخال /الإخراج القياسية (stdio ). أوصت IECCA بحزمة إدخال/إخراج أساسية (I/O) مصاحبة لأي مترجم (في وثيقة بعنوان " إدخال/إخراج بيانات الأحرف في برامج كورال 66 المساعدة "). تجنب معظم المطورين ذلك من خلال إنشاء واجهات كورال لمكتبات فورتران الموجودة، ولاحقًا لمكتبات سي .
لعلّ أهمّ إسهامات كورال في مجال الحوسبة هو فرض معايير ضبط الجودة على المترجمات التجارية . [ 7 ] وللحصول على اعتماد مترجم كورال من قِبل IECCA، وبالتالي السماح بتسويقه كمترجم كورال 66، كان على المترجم المرشح تجميع وتنفيذ مجموعة قياسية من 25 برنامج اختبار و6 برامج مرجعية. وكانت هذه العملية جزءًا من عملية اعتماد المعيار البريطاني (BS) 5905. وقد رُصدت هذه المنهجية لاحقًا، ثمّ اعتمدتها وزارة الدفاع الأمريكية لاعتماد مترجمات لغة آدا .
تم استعادة الكود المصدري لمترجم Coral 66 (المكتوب بلغة BCPL ) وتم مسح وثيقة التعريف الرسمي لـ Coral 66 الصادرة عن مكتب القرطاسية التابع لجلالة الملكة (HMSO)؛ وقد أصدر مكتب براءات الاختراع التابع لوزارة الدفاع ترخيصًا لمشروع تاريخ الكمبيوتر في إدنبرة للسماح لهم بوضع كل من الكود ومرجع اللغة على الإنترنت للاستخدام غير التجاري.
المتغيرات
طُوِّرَت نسخةٌ من لغة كورال 66 تُدعى PO-CORAL خلال أواخر سبعينيات القرن العشرين وبداية ثمانينياته من قِبَل مكتب البريد العام البريطاني (GPO)، بالتعاون مع شركات GEC وSTC و Plessey ، لاستخدامها على حواسيب التحكم في مقاسم الهاتف الرقمية System X. أُعيدَ تسميتها لاحقًا إلى BT-CORAL عندما انفصلت شركة الاتصالات البريطانية (British Telecom) عن مكتب البريد. ومن السمات الفريدة لهذه اللغة التركيز على التنفيذ الفوري، ومعالجة الرسائل، وفرض قيود على تنفيذ التعليمات بين فترات انتظار الإدخال، ومنع الاستدعاء الذاتي (Recursion) للاستغناء عن الحاجة إلى مكدس .
مراجع
- ↑ "احصل على ميزة تنافسية مع CORAL وCORAL+ وContext" (ملف PDF) . شركة DXC Technology . سبتمبر 2017. مؤرشف (ملف PDF) من النسخة الأصلية بتاريخ 23 يناير 2021. تم الاطلاع عليه بتاريخ 29 ديسمبر 2021 .
- ↑ حاسوب الدائرة المتكاملة FM1600B من شركة فيرانتي للأنظمة الرقمية (ملف PDF) . براكنيل، بيركشاير، المملكة المتحدة: شركة فيرانتي المحدودة ، قسم الأنظمة الرقمية. أكتوبر 1968 [سبتمبر 1968]. القائمة DSD 68/6. مؤرشف (ملف PDF) من الأصل في 19 مايو 2020. تم الاطلاع عليه في 19 مايو 2020 .
- ↑ غوف، جاك (1993). مراقبة السماء: تاريخ الرادار الأرضي للدفاع الجوي عن المملكة المتحدة من قبل سلاح الجو الملكي من عام 1946 إلى عام 1975. منشورات مكتب صاحب الجلالة. ص 264. رقم ISBN 978-0-11-772723-6.
- ↑ وودوارد، فيليب م. (1970). التعريف الرسمي لـ CORAL 66. مكتب القرطاسية التابع لجلالة الملكة (HMSO). الصفحات: 7+58. ISBN 0114702217– عبر أرشيف الإنترنت .
- ↑ "كورال 66 - دليل مرجعي للغة - دليل - تاريخ الحوسبة" . www.computinghistory.org.uk . مؤرشف من الأصل في 31 يوليو 2023. تم الاطلاع عليه في 31 يوليو 2023 .
- ↑ جورمان، ب (يونيو 1978). مُجمِّع كورال 66 لحاسوب فيرانتي أرجوس 500 (تقرير). المؤسسة الملكية للإشارات والرادار. مذكرة فنية رقم 799. مؤرشف من الأصل في 17 مارس 2021. تم الاطلاع عليه في 17 يناير 2018 .
- 1 2 "لغة واضحة قد تساعد الحواسيب الأوروبية" . مجلة نيو ساينتست . 30 نوفمبر 1972. ص 513. تم الاطلاع عليه بتاريخ 8 أبريل 2019 .
- ↑ ميتز، كيد (25 ديسمبر 2012). "كيف سبقت ملكة إنجلترا الجميع إلى الإنترنت" . مجلة وايرد . الرقم الدولي الموحد للدوريات 1059-1028 . تاريخ الاسترجاع: 9 يناير 2020 .
- ↑ لفت، سارة (13 مارس 2002). "الجدول الزمني للبريد الإلكتروني" . صحيفة الغارديان . الرقم الدولي الموحد للدوريات 0261-3077 . تاريخ الاسترجاع: 9 يناير 2020 .
روابط خارجية
- برنامج اختبار CORAL 66 مستخرج من تقرير مستجيب الاختبار
- معايير CORAL 66
- معيار BS5905 CORAL 66
- DEF STAN 05-47
- مكتبة واجهة PDP-11 CORAL/ASM
- نص برمجي لتحرير ECCE لترجمة CORAL 66 إلى Edinburgh IMP
- لغات برمجة إلكترونيات الطيران
- تاريخ الحوسبة في المملكة المتحدة
- لغات البرمجة الإجرائية
- لغات البرمجة التي تم ابتكارها عام 1964
