لغات البرمجة

لغة برمجة إدنبرة IMP

لغة برمجة إدنبرة IMP (Edinburgh IMP) هي تطوير للغة أطلس أوتوكود (ATLAS Autocode)، تم تطويرها في البداية حوالي عامي 1966-1969 في جامعة إدنبرة بأسكتلندا. IMP هي لغة برمجة عامة تم استخدامها بشكل كبير في برمجة الأنظمة. من الناحية التعبيرية، تشبه IMP بشكل كبير لغة البرمجة ألجول (Algol) وتتضمن جميع هياكل البلوك الخاصة بألجول، والكلمات المحجوزة، وأنواع البيانات مثل الأرايهات والسجلات. تضيف IMP إلى لغات ألجول نوعًا جديدًا من البيانات وهو نوع النص (مشابه لأرايه مرنة من الأحرف)، ومشغلات مدمجة لعمليات تعامل مع النصوص ومعالجة الأحرف. توفر IMP تحكمًا كبيرًا في رسم الخرائط التخزينية للبيانات، بالإضافة إلى أوامر لتوجيه العناوين داخل أجزاء من الكلمات. تقدم معظم مترجمات IMP فحوصات تشغيل مولدة بواسطة المترجم ومرفق للتتبع حتى في الشفرة الإنتاجية. تسمح IMP للمبرمج بإدراج تعليمات لغة الآلة مباشرة في شفرة المصدر IMP. تم تطوير مترجمات IMP المبكرة لأجهزة مثل الـ English Electric KDF9، ICL System 4، UNIVAC 1108، IBM 360، DEC PDP-9، DEC PDP-15 و CTL Modular One. تم استخدام IMP لتنفيذ نظام التشغيل EMAS. في السنوات اللاحقة، تم تطوير نسخة من IMP تسمى IMP77 من قبل بيتر روبرتسون داخل قسم علم الحاسوب في إدنبرة والتي كانت مترجمة محمولة تجلب IMP إلى المزيد من المنصات. في عام 2002، تم إحياء لغة IMP77 من قبل مشروع تاريخ الحاسوب في إدنبرة لتشغيلها على أجهزة إنتل x86 بنظام DOS وWindows وLinux وتم استخدامها مرة أخرى من قبل خريجي إدنبرة والمغتربين. تم دمج IMP وIMP77 المتفرعة لاحقًا في لغة واحدة مع إطلاق المعيار IMP80 ودعمه من قبل تطبيقات من مركز الحاسوب الإقليمي في إدنبرة. تم نقل IMP80 أيضًا إلى العديد من المنصات بما في ذلك إنتل وكانت قيد الاستخدام النشط حتى السبعينيات. يجب ملاحظة أن لغة برمجة إدنبرة IMP ليست ذات صلة بلغة البرمجة IMP بصيغتها القابلة للتمديد التي طورها Irons لكمبيوتر CDC 6600 والتي كانت اللغة الرئيسية المستخدمة من قبل وكالة الأمن القومي لسنوات عديدة.