FACT (لغة برمجة)

لغة FACT هي لغة برمجة حاسوبية قديمة توقف تطويرها ، أنشأتها شركة داتاماتيك التابعة لشركة هانيويل في مينيابوليس لأجهزة الكمبيوتر التجارية من سلسلة 800 في عام 1959. FACT اختصار لعبارة "تقنية التجميع التلقائي الكامل". [ 1 ] وقد أثرت على تصميم لغة البرمجة كوبول .

استند جزء من تصميم FACT إلى المشروع اللغوي Basic English ، الذي طوره CK Ogden حوالي عام 1925 .

تم تصميم البرنامج في الواقع بواسطة شركة علوم الكمبيوتر ( فليتشر جونز ، وروي نوت ، وروبرت ل. باتريك) بموجب عقد مع ريتشارد كليبنغر من شركة هانيويل.

المساهمات في لغة كوبول

كان لـ FACT تأثير في تصميم COBOL ، وهي واحدة من اللغات الثلاث السابقة المذكورة في جميع كتيبات COBOL.

تم دمج العديد من عناصر لغة FACT في لغة COBOL:

  • تعريف البيانات على شكل مستويات، مع عناصر المجموعة والعناصر الأولية.
  • تعيين القيم الأولية للبيانات أثناء تعريفها ( VALUEعبارة).
  • تحديد قائمة محدودة من القيم الحرفية المسموح بها في حقل معين ( 88عناصر بيانات المستوى).
  • مولد تقارير غير إجرائي يعتمد على تحديد مظهر التقرير المطلوب (قسم التقارير في COBOL-66).
  • تحديد أسماء البيانات ( INأو OFالعبارة).
  • نقل جماعي للعناصر ذات الأسماء المتشابهة ( MOVE CORRESPONDING).
  • التحقق من صحة البيانات الإجرائية ( ON ERRORالبند).
  • وظيفة مدمجة SORT.

التطبيقات

تم تطبيق نظام FACT في ستينيات القرن الماضي، حيث "يستخدم خمسة عملاء لنظام FACT جميع تطبيقاتهم باستخدام هذا النظام"، و"يستخدمه اثنا عشر عميلًا آخر لشركة هانيويل بدرجات متفاوتة". [ 2 ] وشمل ذلك نظامًا مصرفيًا ونظامًا لإدارة المخزون العسكري . كما استخدمته وزارة الدفاع الأسترالية في ستينيات وسبعينيات القرن الماضي.

برنامج نموذجي

تُظهر نماذج التعليمات البرمجية التالية من تطبيق الرواتب البسيط في مواصفات FACT الطبيعة الثابتة لـ FACT وأوجه التشابه بينها وبين COBOL.

مخططات الملفات:

O 1 ملف تفاصيل RU ، ( تفاصيل )، ( D ) O 2 التاريخ O 3 الشهر O 4 اليوم O 5 السنة O 6 * سجل الموظف O 7 رقم الموظف ، ( EMPLOYNO ) O 8 * موظف جديد ، ( NW ) O 9 الاسم O 10 المعدل O 11 الإعفاءات ، ( EXEMPT ) O 12 خصم الكفالة ، ( BONDEDUCT ) O 13 قيمة الكفالة ، ( BONDENOM )O 30 I INTERNAL-FILE1 O 31 WORKING-DATA O 32 11 D BATCH-SUM O 33 11 D BATCH-NUMBER O 34 11 D BATCH-COUNT O O 35 11 D 1 SUM-OF-HOURS O 36 11 D CARDS-IN-BATCH O

بيانات المصدر:

ص ٨٥ إجراء الكفالة . اكتب رقم الكفالة واطرح ١ من الرقم . ص ٨٦ ص ٨٧ ملاحظة . المرحلة الأولى من البرنامج النموذجي . تُستخدم الإجراءات التالية لإجراء عمليات فحص الدفعات أثناء تمريرة قراءة البطاقات . ص ٨٨ إجراء الجمع . ص ٨٩ ص ٩٠ إجراء الجمع . أضف ساعات RP إلى مجموع الساعات . أضف ١ إلى البطاقات الواردة - ص ٩١ - الدفعة . ص ٩٢ ص ٩٣ إجراء فحص الدفعة . إذا كان مجموع الدفعة لا يساوي مجموع الساعات أو كان عدد الدفعة - ص ٩٤ - لا يساوي عدد البطاقات الواردة في الدفعة ، فراجع الدفعة المعيبة . اضبط مجموع الساعات (P 95) وعدد البطاقات في الدفعة إلى الصفر . (P 96، P 97) إجراء الدفعة المعيبة . اعكس عملية New-Master . أغلق صفحة تقرير الأخطاء . (P 98، P 99 ) L. ضع أصفارًا في سطر الطباعة . اضبط الرقم على 8. (P 100 ، P 101) إنشاء . ضع رقم الموظف وساعات العمل في ( الرقم ) ثم EH . ( P 102) اطرح 1 من عدد البطاقات في الدفعة والرقم . إذا كان عدد البطاقات في الدفعة صفرًا، فاكتب ( P 103) تقرير الأخطاء ، اعكس .NEW-MASTER ، اترك الإجراء . احصل على المجموعة التالية . ص 104 إذا كان الرقم صفرًا ، فاكتب تقرير خطأ وانتقل إلى L ، وإلا فارجع إلى ص 105. بناء . نهاية الإجراء .

وصف التقرير:

R 1 40 تقرير خطأ A 2 عنوان الصفحة HDEJ 2 F 3 رقم الدفعة 24 رقم الدفعة ^ F 4 رقم الصفحة 1 43 في صفحة الخطأ ^ A 5 عناوين الأعمدة HD 3 F 6 30 رقم الموظف ساعات رقم الموظف ساعات ^ F 7 60 رقم الموظف ساعات رقم الموظف ساعات ^ F 8 90 رقم الموظف ساعات رقم الموظف ساعات ^ F 9 120 رقم الموظف ساعات رقم الموظف ساعات ^ A 10 سطر الخطأ OO 1 F 11 1 ST EN 8 ^ F 12 1 ST RH 14 .^ ف 13 2 إن دي إن 23 ^ ف 14 2 إن دي آر 29 . ^ ف 15 3 آر دي إن 38 ^ ف 16 3 آر دي آر إتش 44 . ^R 101 4 OBONDORDER A 102 BOND-HEADING HDEJ 2 F 103 BPAGE 1 A 104 BONDORDER-LINE OO 1 F 105 M EMPLOYNO F 106 M NAME

تخطيطات التقارير:

L 1 عنوان الصفحة رقم الدفعة ^ في صفحة الخطأ ^ L 2 عنوان العمود رقم الموظف ساعات العمل رقم الموظف ساعات العمل رقم الموظف ساعات العمل رقم الموظف ساعات العمل رقم الموظف ساعات العمل رقم الموظف ساعات العمل رقم الموظف ساعات العمل رقم الموظف ساعات العمل رقم الموظف ساعات العمل رقم الموظف ساعات العمل L 3 سطر الخطأ ^ . ^ ^ . ^ ^ . ^ ^ . ^ ^ . ^ ^ . ^ ^ . ^ L 4 عنوان السند أوامر السند رقم الموظف الاسم التاريخ صفحة السند ^ L 5 سطر أمر السند ^ ^ ^ - ^ - ^ . ^ L 6 عنوان الحذف إنهاءات رقم الموظف التاريخ الاسم رصيد السندالإجمالي .. إجمالي الضريبة FICA التأمين RET الصفحة ^ L 7 سطر الحذف ^ ^ - ^ - ^ ^ . ^ . ^ . ^ . ^ . ^ L 8 أخطاء في العنوان ... رقم الموظف التاريخ النوع الصفحة ^ L 9 أخطاء في السطر ^ ^ - ^ - ^ ^ L 10 سطر العنوان ضع نموذج التحقق في الطابعة L 12 1 سطر الدفع ^ ^ /^ / ^ . ^ ^ / ^ / ^ L 13 2 خط الدفع . ^ . ^ . ^ . ^ . ^ إل 14 3 خط الدفع ^ $ **** . ^ . ^ . ^

مصادر

مراجع

  1. تقنية التجميع التلقائي الكامل لـ FACT (ملف PDF) . معالجة البيانات الإلكترونية لشركة هانيويل. 1960. DSI-27.
  2. كليبنغر، آر إف (1 أغسطس 1962). "فاكت". مجلة الكمبيوتر . 5 (2): 112-119 (118 - تجربة استخدام فاكت ). doi : 10.1093/comjnl/5.2.112 . ISSN 0010-4620 .