بليس (لغة برمجة)
عودة للموسوعة"بليس" هي لغة برمجة نظام تم تطويرها في جامعة كارنيغي ميلون على يد "و.أ. وولف" و"د.ب. روسيل" و"أ.ن. هاربرمان" حوالي عام 1970. وقد تكون أفضل لغات برمجة النظام في حينه حتى ظهور لغة سي (لغة برمجة)، حيث أصبحت لغة بليش تتلاشى. عندما كانت لغة سي لا تزال وليدة، ناقشت عدة مشاريع في مختبرات بل مزايا بليس مقارنة بلغة سي.
بليس هي لغة لا تتطلب إدخال البيانات طباعةً تعتمد على التعابير بدلاً من جمل البيانات، وتتضمن بُنى لمعالجة الاستثناءات والروتينات المساعدة والماكرو. لكنها لا تتضمن جملة "GOTO" يشار إلى حتى الاسم BLISS هومختصر جملة "اللغة الأساسية لتطبيق برمجات النظام" ("Basic Language for Implementation of System Software")أولغة تطبيق برمجية النظام" بالمقلوب ("System Software Implementation Language, Backwards). كانت تسمى سابقاً بـ"لغة بل لتطبيق برمجيات النظام" على اسم "بل وولف". كان مترجم كارنيجي ميللون الأصلي معروفاً لاستخدامه المكثف لـ"أمثلة المترجم" ولتكوينه أساساً لكتاب "تصميم المترجم الأمثل". طورت ديجيتال إكوبمينت مترجمات BLISS لـPDP-10PDP-11,وVAXوDEC PRISMوتعليمات الميبسوDEC Alphaوأي إيه-32. لم تشتهر هذه اللغة بين العملاء والقليل منهم كان لديه المترجم. لكن شركة ديجيتال إكوبمينت استخدمته بكثافة في عملها خلال عقد 1980، حيث خطت معظم برامج الأدوات في نظام تشغيل نظام الذاكرة الافتراضية المفتوح بلغة BLISS-32. بعد حتى استحوذت شركة كومباك على ديجيتال إكوبمنت عملت على تطوير مترجم بليس لمعالجات Interl IA-64
مثال على الكود
أخذ هذا المثال حرفياً من كتاب "دليل لغة بليس":
MODULE E1 (MAIN = CTRL) =
BEGIN
FORWARD ROUTINE
CTRL,
STEP;
ROUTINE CTRL =
!+
! هذا الإجراء يُدخل قيمة ويعالجها ومن ثم يخرج النتائج
!-
BEGIN
EXTERNAL ROUTINE
GETNUM, ! Input a number from terminal
PUTNUM; ! Output a number to terminal
LOCAL
X, ! Storage for input value
Y; ! Storage for output value
GETNUM(X);
Y = STEP(.X);
PUTNUM(.Y)
END;
ROUTINE STEP(A) =
!+
! هذا الإجراء يضيف 1 إلى القيمة المعطاة
!-
(.A+1);
END
ELUDOM
المراجع
- ↑ Brender, Ronald F. (2002). "The BLISS programming language: a history" (PDF). Software: Practice and Experience. 32 (10): 955–981. doi:10.1002/spe.470. مؤرشف من الأصل (PDF) في 11 أبريل 2019.
- ^ MacLaren, Don (August 27, 1987). "DECWest Compiler Project, Description, and Plan" (PDF). مؤرشف من الأصل (PDF) في 29 مايو2019.
- ^ da Cruz, Frank (1987-09-16). "News about Kermit Programs for VAX/VMS". Info-Kermit Digest (Mailing list). Kermit Project, Columbia University. مؤرشف من الأصل في 05 مارس 2017. اطلع عليه بتاريخ 03 مارس 2016.
- ^ Bliss Language Manual, ديجيتال إكوبمينت (1987) نسخة محفوظة 04 نوفمبر 2017 على مسقط واي باك مشين.
وصلات خارجية
- BLISS Manual at DECUS
- Alan Lehotsky posting about BLISS at DEC
- "BLISS: A Language for Systems Programming" by W.A. Wulf, D.B. Russell, and A.N. Habermann. (PostScript)
- Session notes for "Introduction to BLISS" by Matthew D. Madison. (PostScript)
للتحميل
- BLISS-10
- Older BLISS-11
- BLISS-36
- BLISS-11, BLISS-32 and BLISS-64
- FreeVMS Portable BLISS for GCC
التصنيفات: برمجيات 1970, برمجيات OpenVMS, لغات برمجة, لغات برمجة أنشئت في 1970, قالب أرشيف الإنترنت بوصلات واي باك, بوابة برمجة الحاسوب/مقالات متعلقة, جميع المقالات التي تستخدم شريط بوابات