الجيل الرابع من لغات البرمجة

يشكل الجيل الرابع من لغات البرمجة في الفترة (من سبعينيات حتى تسعينيات القرن الماضي) (والذي يتم اختصاره إلى (4GL)لغة برمجة أو بيئة برمجة مصممة بأغراض خاصة تم وضعها في الاعتبار، مثل تطوير برمجيات  الأعمال التجارية. وفي تاريخ علوم الحاسب الآلي، تبع الجيل الرابع من لغات البرمجة الجيل الثالث من لغات البرمجة في توجه تصاعدي نحو تجرد عالي وقوة بيان. وتبع الجيل الرابع من لغات البرمجة العديد من الجهود الرامية إلى تعريف واستخدام الجيل الخامس من لغات البرمجة.
وقد عملت اللغة الطبيعية، والنمط المنظم للمجموعة للجيل الثالث من لغات البرمجة على تحسين عملية تطوير البرمجيات ومع ذلك فإن أساليب تطويرالجيل الثالث من لغات البرمجة كانت بطيئة وعرضه للخطأ. وقد أصبح من الواضح أن بعض التطبيقات يمكن تطويرها بشكل أسرع عن طريق إضافة مستوى عالي من لغات البرمجة والمنهجيات الأمر الذي من شأنه إنتاج ما يعادل التعليمات المعقدة للغاية للجيل الثالث من لغات البرمجة مع قدر أقل من الأخطاء.
وفى بعض المدركات، نهضت هندسة البرمجيات لتعالج مشاكل تطوير الجيل الثالث من لغات البرمجة. وقد كانت مشروعات الجيل الرابع والجيل الخامس من لغات البرمجة موجهة بشكل أكبر نحو حل المشكلات  وهندسة النظم.
وقد تم تصميم جميع لغات الجيل الرابع من لغات البرمجة من أجل تقليل الجهود المبذولة في البرمجة، والوقت الذي يتم استغراقه في عملية تطوير البرمجيات، وتكلفة تطويرها أيضا.
وفى كثير من الأحيان لم تنجح هذه المهمة، وفي بعض الأحيان تكون الشفرة غير منظمة وليس لديها القدرة علي البقاء. ومع ذلك ونظرا للمشكلة الحقيقة، فإن استخدام جيل رابع مناسب من لغات البرمجة يمكن أن يؤدي إلي نجاح مذهل كما رأينا في لغة البرمجة "مارك الرابع" (MARK-IV) ونظام إدارة قواعد البيانات "مابر" (MAPPER). وقد سمحت التحسينات في قابلية الاستخدام التي يتحصل عليها من خلال بعض لغات الجيل الرابع من لغات البرمجة (وبيئاتها أيضا) ببحث أفضل من أجل استكشاف حلول تجريبية أكثر من ما حقق الجيل الثالث من لغات البرمجة.
وقد قام كابيرز جونز بوضع تعريف كمي للجيل الرابع من لغات البرمجة كجزء من عمله على تحليل النقاط الوظيفية. كما قام جونز بتعريف أجيال متنوعة من لغات البرمجة من ناحية إنتاجية المطور. والتي يتم قياسها بالنقاط الوظيفية للعاملين كل شهر. هذا وقد تم تعريف الجيل الرابع من لغات البرمجة علي أنه لغة تدعم 12-20 FP/SM. وهذا يرتبط بحوالي 16-27 خط من خطوط الشفرة لكل نقطة وظيفية يتم تنفيذها في الجيل الرابع من لغات البرمجة.
وغالبا ما تمت مقارنة الجيل الرابع من لغات البرمجة مع لغات البرمجة المختصة المجال DSLs.
وقد أفاد بعض الباحثين أن الجيل الرابع من لغات البرمجة  هو فرع من لغات البرمجة المختصة المجال ونظرا لاستمرار لغة تجميع حتى الآن، في بيئات تطوير متقدمة (مايكروسوفت ستوديو)، توقع أحدهم أن هذا النظام عبارة عن مزيج  من جميع الأجيال، مع استخدام محدود للغاية للجيل الأول منها.

التاريخ

على الرغم من استخدامه سابقا في الأوراق والمناقشات، فقد استُخدم مصطلح الجيل الرابع من لغات البرمجة رسميا لأول مرة من قبل جيمس مارتن في كتابه في عام 1982 تحت عنوان تطوير التطبيقات بدون مبرمجين (Application Development Without Programmers) بهدف الإشارة إلي لغات التوصيف عالية المستوي والغير إجرائية.  وبطريقة بسيطة إلى حد ما، يمكن وصف لغة البرمجة RPG  لآي بي إم (1960) علي أنها أول لغة برمجة من لغات الجيل الرابع التي تبعها مباشرة غيرها من اللغات، مثل لغة MARK-IV من شركة Informatics في عام (1967) ونظام مابر  MAPPER من شركة Sperry (للاستخدام المحلي عام 1969، وتم  اًصداره في عام 1979). 
تعددت الدوافع الكامنة وراء إنشاء الجيل الرابع من لغات البرمجة والاهتمام المستمر به. ويمكن أن يسري هذا المصطلح على العديد من منتجات البرمجيات. كما يمكن أن يسري علي النهج الذي يبحث عن خصائص دلالية وقوة تنفيذ أفضل. وكما قدم الجيل الثالث من لغات البرمجة قوة أكبر للمبرمج، فكذلك فتح الجيل الرابع من لغات البرمجة بيئة التطوير لعدد كبير من المبرمجين.
بمعنى أو بآخر، فإن الجيل الرابع من لغات البرمجة يعد مثال علي معالجة صندوق أسود (سبرانية) وكل جيل (بنفس المعني الوارد في الصفحة) هو أبعد من الآلة (انظر تاريخ علوم الحاسب الآلي فيما يخص تحسينات بنية البيانات وإخفاء المعلومات). إنها تلك الطبيعة الأخيرة المرتبطة مباشرة بالجيل الرابع من لغات البرمجة التي لديها أخطاء، في كثير من الحالات يصعب تصحيحها. ومن حيث التطبيقات فيمكن أن يكون الجيل الرابع من لغات البرمجة مستخدما في مجال الأعمال أو يمكن أن يتعامل مع المجال التقني. بمنأى عن أن الآلة تنطوي على كونها أقرب إلي المجال. ونظرا للتفاوت الكبير للمفاهيم والأساليب عبر المجالات، فإن قيود الجيل الرابع من لغات البرمجة تدفعنا إلى الاعتراف باحتياجنا إلى الجيل الخامس من لغات البرمجة.
وقد اعتمد مخطط الإدخال الأول للجيل الرابع من لغات البرمجة على الإدخال المدعوم للبيانات في حدود 72 حرف للبطاقات المثقبة (8 بايت مستخدمة في التسلسل) حيث يمكن للبطاقة التعرف علي النوع أو الوظيفة. ومع الاستخدام الحكيم لعدد قليل من البطاقات، يمكن لسطح الجيل الرابع من لغات البرمجة تقديم مجموعة كبيرة من إمكانات المعالجة وإعداد التقارير حيث أن الوظيفية المعادلة والمشفرة في الجيل الثالث من لغات البرمجة يمكن أن تصنف على أنها صندوق كامل أو عدد من البطاقات.
الاستعارة ذات 72 حرف التي استمرت لفترة من الوقت كجهاز تم تطويره إلى ذاكرة أكبر وواجهات طرفية. حتى مع هذه الحدود، فإن هذا النهج قد دعم تطبيقات على درجة عالية من التعقيد.
ونظرا لتحسن الواجهات والسماح بأطوال عبارات أكثر طولا ومعالجة إدخال قواعد نحوية موجه، فقد تلا ذلك قوة أكبر. وتم شرح مثال على ذلك في الصفحة المرتحلة. 
وهناك مثال آخر علي القوة المرتحلة شرحه نيكولاس رولينغز في تعليقاته لمتحف تاريخ علم الحاسوب حول نظام NCSS (انظر الاقتباس أدناه). 
وذكر أن جيمس مارتن طلب من رولينجز حلا للمشاكل القياسية والتي سماها مارتن بمشاكل المهندس: "عن طريق منح زيادة  6%  للمهندسين الذين بلغت معدلات  تقييمهم متوسط 7 أو أفضل" وقد قام مارتن بتقديم "الكثير من الصفحات حول لغة البرمجة كوبول وبعد ذلك صفحة أو صفحتان عن مارك الرابع  MARK IV، من شركة Informatics. "وقد قام رولينجز بتقديم العبارة المفردة الأتية، ونفذ عملية ضبط خلال زمن "set-at-a-time".
وقد تأثر تطوير الجيل الرابع من لغات البرمجة بعدة عوامل، فضلا عن قيود الأجهزة ونظام التشغيل التي تتمتع بوزن كبير. وعندما تم إنتاج الجيل الرابع من لغات البرمجة لأول مرة، عمل مزيج متباين من الأجهزة ونظم التشغيل على تعديل دعم تطوير التطبيقات التي كانت مخصصة للنظام بهدف دعم وضمان المبيعات. أحد الأمثلة هو نظام مابر (MAPPER) والذي طورته شركة سبيري (Sperry). رغم أن له جذور تعود إلي البداية، وقد أثبت النظام نجاحه في العديد من التطبيقات وتم نقله إلي المنصات الحديثة. وتم دمج الاختلاف الأخير في  عرض خادم معلومات الأعمال BIS   لشركة يونيسيس. وحاليا يعرف مارك الرابع (MARK IV) بباني الرؤية (VISION-BUILDER) وتقدمه شركات حاسب آلي زميلة.
أما السكة الحديد "سانتا في" فتستخدم مابر من أجل تطوير نظام، في مشروع كان يعد من أوائل الأمثلة علي الجيل الرابع من لغات البرمجة. النماذج الأولية السريعة، والبرمجة من خلال المستخدمين. والمسألة تكمن في سهولة تعليم خبراء السكة الحديد استخدام مابر من تعليم المبرمجين (تعقيدات عمليات السكة الحديد). 
تعد راميز (Ramis) إحدى اللغات الأولى (والمحمولة) التي تتمتع بخصائص الجيل الرابع من لغات البرمجة والتي قام بتطويرها جيرلاند سي كوهين في ماثيماتيكا Mathematica، شركة برمجيات مختصة بعلم الرياضيات.
وقام كوهن بترك ماثيماتيكا وأسس إنفورماشن بلدر Information Builders من أجل إنشاء لغة برمجة مشابهة من الجيل الرابع تتولى إعداد التقارير، وتدعى فوكس (Focus).
وترتبط الأنواع الحديثة من لغات الجيل الرابع من لغات البرمجة بنظام قاعدة بيانات وتختلف كثيرا عن الأنواع الأولى من حيث استخدامها لتقنيات ومصادر نتجت عن التحسن العام للمعالجة بمرور الوقت.
وتمثل التحول المدهش إلى مشهد الجيل الرابع من لغات البرمجة في إدراك أن الواجهات الرسومية والاستنتاجات ذات الصلة التي تمت بواسطة نموذج المستخدم (اللغة) الذي يصعب فهمه.