راتفور

Ratfor (اختصار لـ Rational Fortran ) هي لغة برمجة تم تنفيذها كمعالج مسبق للغة Fortran 66. وهي توفر هياكل تحكم حديثة ، غير متوفرة في Fortran 66، لتحل محل أوامر GOTO وأرقام العبارات.

سمات

يوفر Ratfor الأنواع التالية من عبارات التحكم في التدفق، والتي وصفها كيرنيغان وبلاوغر بأنها "مسروقة بلا خجل من لغة C ، التي طورها دي إم ريتشي لنظام التشغيل UNIX " ("أدوات البرمجيات"، ص 318): 

  • تجميع العبارات باستخدام الأقواس
  • if-else ، while ، for ، do ، repeat-until ، break ، next
  • عبارات "حرة الشكل"، أي غير مقيدة بقواعد تنسيق فورتران
  • <، >، >=، ... بدلاً من .LT.، .GT.، .GE.، ...
  • يشمل
  • # تعليقات

على سبيل المثال، الكود التالي

إذا كان ( أ > ب ) { الحد الأقصى = أ } وإلا { الحد الأقصى = ب }

يمكن ترجمة ذلك على النحو التالي:

إذا لم يكن ( أ أكبر من ب ) ، فانتقل إلى 1. الحد الأقصى = أ. انتقل إلى 2. 1  استمر. الحد الأقصى = ب .  2 استمر.

نسخة Ratfor الموجودة في أدوات البرمجيات مكتوبة بلغة Ratfor، وكذلك البرامج النموذجية، وبما أن ترجمتها إلى لغة Fortran متوفرة، فيمكن نقلها إلى أي نظام Fortran. تنتهي أسماء ملفات شفرة مصدر Ratfor بالامتداد .r أو .rat.

تاريخ

تم تصميم وتنفيذ Ratfor بواسطة برايان كيرنيغان في مختبرات بيل للهاتف في عام 1974، وتم وصفه في كتاب Software Practice & Experience في عام 1975. وقد تم استخدامه في كتاب Software Tools لعام 1976 من تأليف كيرنيغان وبي جيه بلاوجر .

في عام ١٩٧٧، في جامعة بيردو ، طُوِّرت نسخة مُحسَّنة من مُعالِج Ratfor المُسبق. سُمِّيت Mouse4، نظرًا لصغر حجمها وسرعتها مقارنةً بـ Ratfor. وخلصت وثيقة منشورة للدكتور دوغلاس كومر ، الأستاذ في جامعة بيردو، إلى أنه "على عكس الأدلة التي قدمها مُصمِّم Ratfor، غالبًا ما يكون البحث التسلسلي غير كافٍ لبرامج الإنتاج. علاوة على ذلك، في حالة التحليل المعجمي، يبدو أن التقنيات المعروفة تُوفِّر كفاءةً مع الحفاظ على بساطة وسهولة البرمجة ومرونة الأساليب المُخصَّصة." (CSD-TR236).

بالمقارنة مع معالج Ratfor المسبق، استغرق برنامج مكون من 3000 سطر برمجي يعمل على نظام CDC 6500 مدة 185.470 ثانية من وقت المعالجة. انخفض هذا الوقت بنسبة 50% عند استخدام البحث الثنائي في كود Ratfor. كما أدى إعادة كتابة الماسح المعجمي المخصص باستخدام طريقة قياسية تعتمد على الأوتوماتا المحدودة إلى تقليل وقت التشغيل إلى 12.723 ثانية.

مع توفر لغة فورتران 77 ، يمكن لبرنامج لاحق يُدعى Ratfiv (Ratfor=rat4 => rat5=Ratfiv)، باستخدام الخيار /f77، إخراج كود فورتران 77 أكثر قابلية للقراءة:

إذا كان ( أ . أكبر من ب . ) فإن الحد الأقصى = أ، وإلا فإن الحد الأقصى = ب .

نُقلت الشفرة المصدرية الأولية لبرنامج Ratfor إلى لغة C في عام 1985 [ 1 ] ، ثم جرى تحسينها لإنتاج شفرة Fortran 77 أيضًا. [ 2 ] أُنشئت شجرة Git في عام 2010 بهدف إعادة إحياء برنامج Ratfor. [ 3 ] على الرغم من أن مُصرّف GNU C كان قادرًا على تجميع ملف Ratfor (.r) مباشرةً دون الاحتفاظ بشفرة Fortran وسيطة غير ضرورية (.f) gcc foo.r، إلا أن هذه الخاصية فُقدت في الإصدار 4 أثناء الانتقال من Fortran 77 إلى GNU Fortran في عام 2005. [ 4 ]

كان المصدر الأصلي متاحًا بصيغتي .deb و .rpm على موقعه الأصلي mirror.corbina.net/mandriva/، وقد اختفى أرشيفه www.dgate.org/ratfor/ اعتبارًا من أبريل 2024. لا تزال ملفات المصدر المضغوطة متاحة في أرشيف الإنترنت .

راتفيف

Ratfiv هي نسخة محسّنة من لغة البرمجة Ratfor ، وهي معالج مسبق للغة Fortran مصمم لمنحها إمكانيات شبيهة بلغة C. كانت Fortran تُستخدم على نطاق واسع في البرمجة العلمية، لكنها كانت تفتقر إلى أدوات تحكم أساسية للغاية ("do" و" goto ")، ولم تكن تحتوي على خاصية " الماكرو "، مما حدّ من قدرتها التعبيرية.

اسم اللغة هو تورية ( Ratfor (RATional FORtran) -> "Rat Four" -> "Rat Five" -> RatFiv ).

طُوِّر برنامج Ratfiv بواسطة بيل وود في معهد أبحاث السرطان في فيلادلفيا ، بنسلفانيا، في أوائل ثمانينيات القرن الماضي، ونُشر على عدة أشرطة تابعة لمجموعة مستخدمي المعدات الرقمية ( DECUS ) ومجموعة الاهتمامات الخاصة (SIG). وهو مبني على برنامج Ratfor الأصلي الذي ابتكره بي. كيرنيغان وبي جيه بلاوجر ، مع إعادة كتابة وتحسينات من قِبل ديفيد هانسون وزملاؤه (جامعة أريزونا)، وجو سفينتك وديبي شيرر ( مختبر لورانس بيركلي الوطني ).

تم توزيع برنامج Ratfiv V2.1 على شريط DECUS RSX82a SIG. [ 5 ]

انظر أيضاً

مراجع

  1. "تنفيذ Ratfor بلغة C (1985)" . مؤرشف من الأصل بتاريخ 2016-03-03 . تم الاطلاع عليه بتاريخ 2013-05-09 .
  2. "Ratfor77" .
  3. "إحياء راتفور جيت" .
  4. "gcc فقد المعالج المسبق ratfor" .
  5. أرشيف Ratfiv الإصدار 2.1