دارتموث ألغول 30

دارتموث ألغول 30
النماذجمتعدد النماذج : إجرائي ، إلزامي ، منظم
عائلةألغول
صمم بواسطةستيفن جيه جارلاند
روبرت ف. هارغريفز
أنتوني دبليو ناب
توماس إي. كورتز
المطوركلية دارتموث
ظهرت لأول مرة1961 ؛ منذ 63 عامًا ( 1961 )
لغة التنفيذحَشد
منصةLGP-30
نظام التشغيللا أحد
متأثر بـ
ألجول 58 ، ألجول 60
متأثر
SCALP لـ LGP-30
Algol 60 لنظام تقاسم الوقت في دارتموث

كان Dartmouth ALGOL 30 تطبيقًا يعود إلى حقبة الستينيات، أولًا للغة البرمجة ALGOL 58 ثم ALGOL 60. وقد سُمي على اسم الكمبيوتر الذي كان يعمل عليه: كمبيوتر بحجم المكتب من نوع Librascope General Precision ( LGP-30 ) حصلت عليه كلية دارتموث في عام 1959.

نظرًا لأن الحجم المحدود لـ LGP-30 (4K كلمة 31 بت) منع التنفيذ الكامل لـ ALGOL 60، فقد تم حذف بعض الميزات (المصفوفات التي يتم استدعاؤها بالقيمة، والمصفوفات الخاصة، والسلاسل، وحدود المصفوفات المتغيرة، والتكرار)؛ لكن التنفيذ تضمن معلمات يتم استدعاؤها بالاسم، باستخدام thunks [1] [2] وعلامات الأعداد الصحيحة. [3]

تم تنفيذ ALGOL 30 بواسطة أربعة طلاب جامعيين. كتب ستيفن جيه جارلاند المترجم، واكتشف في سنته الثانية أنه يمكن تضمين العبارات المركبة والكتل في خوارزمية ترجمة ساميلسون وباور. [4] لم يتم نشر هذه الحقيقة البسيطة حتى بعد بضع سنوات بواسطة ديفيد جريس. [5] طور روبرت إف هارجريفز وجورج لاسير وأنتوني دبليو ناب نظام وقت التشغيل، والذي تضمن مفسّرًا للحسابات ذات الفاصلة العائمة (غير مدعوم بمجموعة التعليمات المحدودة لـ LGP-30). [6]

كان ALGOL 30 عبارة عن نظام يتكون من مرحلتين. المرحلة الأولى كانت تحمل المترجم وتعالج الكود المصدر الذي كتبه المستخدم؛ ثم تولِّد كودًا وسيطًا، يشبه الثنائي القابل للنقل، وتطبعه على شريط ورقي. والمرحلة الثانية كانت تحمل كلًا من نظام وقت التشغيل والكود الوسيط. وكان من الممكن "تجميع" عمليات التجميع، ولكن التأخير بين إدخال شريط الكود المصدر وتنفيذ البرنامج المترجم كان كبيرًا للغاية بحيث لا يسمح باستخدامه على نطاق واسع من قبل الطلاب. [7]

لتمكين الاستخدام على نطاق أوسع، طور جارلاند وناب نظام "التحميل والتشغيل" المعروف باسم SCALP، وهو معالج AL gol مستقل ، لمجموعة فرعية أصغر من ALGOL 60 (الذي لم يسمح بالمتغيرات أو المشغلات المنطقية، أو الكتل، أو الإجراءات، أو المصفوفات الخاصة أو الديناميكية، أو التعبيرات الشرطية، والخطوة حتى للعبارات). خصص SCALP ثلث ذاكرة LGP للمترجم، وثلثًا لنظام وقت التشغيل (الذي تضمن مفسرًا للفاصلة العائمة ووظائف رقمية)، وثلثًا لكود المستخدم المترجم. قام الطلاب بإعداد الكود المصدر دون اتصال بالإنترنت وختمه على شريط ورقي باستخدام Friden Flexowriter. حدث التجميع بسرعة تكاد تكون بنفس سرعة قراءة الشريط. مكّن هذا من إكمال وظائف الطلاب في ثلاث دقائق. استخدم مئات الطلاب SCALP قبل أن يصبح BASIC متاحًا على نظام Dartmouth Time Sharing في عام 1965. [8] [9]

كان ALGOL 30 هو الأساس لتنفيذ ALGOL 60 في عام 1965 على نظام تقاسم الوقت في دارتموث . وبعد عدة سنوات، أنتج سيدني مارشال تنفيذًا لـ ALGOL 68. [10]

مراجع

  1. ^ PZ Ingerman، "Thunks: طريقة لتجميع بيانات الإجراءات مع بعض التعليقات على إعلانات الإجراءات"، اتصالات ACM 4:1 ، يناير 1961، الصفحات 55-58.
  2. ^ ET Irons و W. Feurzeig، "تعليقات على تنفيذ الإجراءات والكتل المتكررة في Algol-60"، اتصالات ACM 4:11، يناير 1961، الصفحات 65-69
  3. ^ توماس إي. كورتز، "الأساسيات"، تاريخ لغات البرمجة ، جمعية آلات الحوسبة، يونيو 1978، صفحة 516.
  4. ^ K. Samelson و FL Bauer، "ترجمة الصيغة المتسلسلة"، اتصالات ACM 3:2، فبراير 1960، الصفحات 76-83.
  5. ^ (ديفيد جريس، "استخدام مصفوفات الانتقال في التجميع"، اتصالات ACM 11:1، يناير 1968، الصفحات 26-34.
  6. ^ ALGOL لـ LGP-30، مقارنة، مركز الحوسبة، كلية دارتموث، 16 فبراير 1962.
  7. ^ كورتز، المصدر السابق.
  8. ^ كورتز، المصدر السابق ، ص 517.
  9. ^ دليل SCALP، وهو معالج Algol مستقل لجهاز General Precision LGP-30 ، CCM-7A، مركز الحوسبة، كلية دارتموث، 1 يناير 1964.
  10. ^ سيدني مارشال، تقرير أولي حول تنفيذ ALGOL 68 ، مركز الحوسبة كيويت، كلية دارتموث، 1 ديسمبر 1969.
  • أوراق ستيفن جيه جارلاند في مكتبة كلية دارتموث
  • ملخص (وروابط إلى) المذكرات الفنية المتعلقة بـ ALGOL 30 و SCALP 1962–1964
تم الاسترجاع من "https://en.wikipedia.org/w/index.php?title=ألغول_دارتموث_30&oldid=1236173031"
Original text
Rate this translation
Your feedback will be used to help improve Google Translate