كيف تم تصميم لغة البرمجة

لغات البرمجة 

هي هياكل لغوية نحوية في أجهزة الكمبيوتر يمكن من خلالها وصف الخوارزمية بواسطة تراكيب نحوية مختلفة لتشغيل الكمبيوتر ، مما يجعل من الممكن كتابة برامج لإنتاج برامج جديدة عادةً ما تحتوي أي لغة برمجة على بيئة برمجية لإدخال نص البرنامج وتنفيذه وتصنيفه وتصحيحه.


لغة البرمجة هي لغة إنجليزية تركيبية مصممة للتعبير عن العمليات الحسابية التي يمكن إجراؤها بواسطة آلة (خاصة الكمبيوتر). تُستخدم لغات البرمجة لإنشاء برامج تحدد سلوك الآلة ، أو تعبر عن خوارزميات دقيقة ، أو طريقة للتفاعل بين الإنسان والحاسوب تتميز العديد من لغات البرمجة ببعض أشكال الأوامر أو بناء الجملة المكتوبة (بناء الجملة) والدلالات (دلالات) ، لأن أجهزة الكمبيوتر تحتاج إلى أوامر محددة بدقة. يتم تحديد بعضها بواسطة مستند المواصفات (على سبيل المثال ، معيار ISO) ، بينما يكون للبعض الآخر تنفيذ سائد. (مثل Perl)


تعود لغة البرمجة الأولى إلى ما قبل اختراع الكمبيوتر ، وكانت تستخدم لتوجيه سلوك الآلات مثل المنسوجات الآلية والبيانو.


تم إنشاء المئات من لغات البرمجة ، معظمها يعتمد على الكمبيوتر. سياق يتم فيه إنشاء العديد من اللغات الأخرى كل عام.


تعود لغة البرمجة الأولى إلى ما قبل أجهزة الكمبيوتر الحديثة تيكست إل البيانو القابلة للبرمجة ، والتي تُعرف اليوم بأنها أمثلة على لغات البرمجة الخاصة بالمجال بداية القرن العشرين بطاقات مثقبة ؛ قاموا بتشفير البيانات وتوجيه المعالجة الميكانيكية. 


في الثلاثينيات والأربعينيات من القرن الماضي ، قدمت شكليات حساب لاندا ألونسو تشيرش وآلة تورينج ألين تورينج المفاهيم الرياضية للتعبير عن الخوارزمية.


 يستمر حساب لاندا في التأثير على تصميم اللغة.


في الأربعينيات من القرن الماضي ، تم إنشاء أول أجهزة كمبيوتر رقمية تعمل بالطاقة الرقمية. تم تصميم أول لغة برمجة عالية المستوى لحاسوب خطة حساب التفاضل والتكامل ، والذي صممه كونراد زيوس بين عامي 1945 و 1943 لصالح الألمانية Z3.


استخدمت أجهزة الكمبيوتر في أوائل الخمسينيات ، ولا سيما UNIVAC 1 و IBM 701 ، برامج لغة الآلة. تم استبدال برمجة لغة الجيل الأول بالجيل الثاني الذي يسمى لغة التجميع في السنوات الأخيرة من الخمسينيات من القرن الماضي ، تم استخدام لغة البرمجة التجميعية ، التي تطورت لاستخدام أوامر المايكرو من قبل ثلاث لغات برمجة أخرى عالية المستوى: فورتران و كوبال ولاسب 

 لا تزال الإصدارات المحدثة من هذه البرامج قيد الاستخدام ، وقد أثر كل منها على تطوير اللغة اللاحقة. في نهاية الخمسينيات من القرن الماضي ، تم تقديم العديد من لغات البرمجة اللاحقة ، مع الكثير من الاهتمام ، جاءت من جيل Algo نكون تأثر تنسيق واستخدام لغات البرمجة بشدة بقيود الواجهة.


التكريريحرر

أدت الفترة من الستينيات إلى أواخر السبعينيات إلى انتشار الأمثلة الرئيسية للغة الأكثر استخدامًا اليوم. ومع ذلك ، فإن العديد من الجوانب كانت تحسين الأفكار المبكرة للجيل الثالث من لغة البرمجة:


  • قدمت مصفوفة البرمجة آيبيال (APL) (برمجة Array) برمجة التطبيق معجبة.


  • تم تصميم PL / i (NPL) في أوائل الستينيات للجمع بين الأفكار الجيدة لـ Fortran و Cobol


  • في الستينيات ،كانت Simula اللغة الأولى التي تدعم البرمجة الشيئية تليها Smalltalk في منتصف السبعينيات كأول لغة موجهة بالكامل 


  • تم تطوير C بين عامي 1969 و 1973 كلغة برمجة نظام واستخدمت في العديد من أنظمة التشغيل.


  • باسكال والأساسية (عرفت فيما بعد تسمى البصرية الأساسية كانت) في الأصل لغة التعليمية، لكنه أصبح في وقت لاحق من المفيد مع إدخال مختلف المجمعين.


  • كانت لاسب إحدى اللغات التي عملت على معالجة القوائم وكانت مناسبة لخوارزميات الذكاء الاصطناعي .


. كانت prolog التي تم تصميمها في عام 1972 ، أول لغة برمجة منطقية والتي كانت مناسبة لخوارزميات الذكاء الاصطناعي.


  • في عام 1978 ، طورت ML نظام النوع متعدد الأشكال على Lisp ، وهي لغات برمجة تطبيقات من النوع الثابت الرائد.

تركت كل لغة من هذه اللغات عائلة كبيرة من الورثة ، وتنحدر أحدث اللغات من لغة واحدة على الأقل من اللغات المذكورة أعلاه.


شهدت الستينيات والسبعينيات من القرن الماضي الكثير من الجدل حول البرمجة المهيكلة ، وما إذا كان ينبغي تصميم لغات البرمجة لدعمها.


جادل Adsger Dixtra في خطاب مشهور عام 1968 إلى ACM التواصل أنه يجب إزالة أمر goto من جميع اللغات عالية المستوى.


في الستينيات والسبعينيات من القرن الماضي ، تم تطوير تقنيات قللت من فعالية البرنامج مع تحسين إنتاجية المبرمج والمستخدم كان مقبض البطاقة الخاص بـ 4GL الأصلي أصغر بكثير من برنامج المستوى المكتوب على سطح السفينة 3GL.

يحرر

التكامل والنمو


كانت الثمانينيات سنوات التكامل النسبي. C ++ مجتمعة البرمجة الشيئية مع برمجة الولايات المتحدة الموحدة Ida (لغة برمجة النظام الأكثر استخدامًا من قبل مقاولي الدفاع). في اليابان وأماكن أخرى ، تم إنفاق نفقات ضخمة على البحث في لغة الجيل الخامس مع هياكل البرمجة المنطقية. اتجهت جمعية اللغة التطبيقية نحو توحيد ML و Lisp. بدلاً من إنشاء أمثلة جديدة ، حسنت كل هذه الجهود الأفكار التي تم إنشاؤها في العقود السابقة.


كان الاتجاه المهم في تصميم اللغة في الثمانينيات هو التركيز بشكل أكبر على البرمجة للأنظمة الكبيرة من خلال الوحدات النمطية ، أو وحدات التعليمات البرمجية التنظيمية واسعة النطاق. الوحدة 2 ، إيدا ؛ وقد طورت ML جميع الأنظمة المعيارية المتميزة في الثمانينيات. على الرغم من أن اللغات الأخرى ، مثل PL / i ، لديها دعم جيد جدًا للبرمجة المعيارية. غالبًا ما ترتبط الأنظمة المعيارية بهياكل البرمجة العامة.


أتاح النمو السريع للإنترنت في منتصف التسعينيات فرصًا لإنشاء لغات جديدة. أصبحت Perl ، التي كانت في الأصل أداة كتابة في نظام Unix ، نُشرت لأول مرة في عام 1987 ، شائعة على مواقع الويب الديناميكية. تم استخدام Java للبرمجة بجانب الخادم. لم تكن هذه التطورات جديدة في الأساس ، بل تم تحسينها للغة والأمثلة الحالية ، وأكثر اعتمادًا على عائلة لغة البرمجة C. يستمر تطوير لغة البرمجة ، سواء في البحث أو في الصناعة. تتضمن الاتجاهات الحالية فحوصات الأمان والموثوقية وأنواع الوحدات النمطية الجديدة (mixin والتمثيلات والجوانب) وتجميع قاعدة البيانات.


4GLs هي أمثلة للغات مع مجموعة من الاستخدامات ، مثل SQL. بدلاً من إرجاع البيانات العددية ، يقومون بتعديل وإرجاع المجموعات الشائعة في معظم اللغات. على سبيل المثال ، يمكن لـ Perl باستخدام "Certificate Here" الخاصة بها أن تحتوي على العديد من تطبيقات 4GL ، مثل العديد من تطبيقات  JavaScript ، في جزء من كود Perl الخاص بها ودعم لغات برمجة متعددة بنسب متغيرة في "Certificate Here".

  • الجيل الأول ، لغة الآلة هي نفسها لغة الصفر والواحد.
  • الجيل الثاني عبارة عن لغات مثل التجميع ومشتقاته مفهومة أكثر للبشر.
  • الجيل الثالث عبارة عن لغات مثل Cobol و PL1 و که ، والتي لديها أوامر أكثر قابلية للفهم للبشر وتتطلب مترجمين.


  • الجيل الرابع عبارة عن لغات مثل Oracle و Foxpro و SQLs ، وهذا الجيل من اللغات قريب من الحوار البشري.

  • الجيل الخامس عبارة عن لغات مثل prolog و ops5 و visual Basic والتي تركز على حل المشكلات واستخدام الخوارزميات التي كتبها المبرمجون.


لا توجد أسئلة بعد