سی‌پی‌ال (زبان برنامه‌نویسی)

CPL ( زبان برنامه‌نویسی ترکیب شده Combined Programming Language و قبل تر از آن تحت عنوان زبان برنامه‌نویسی کمبریج ) یک زبان برنامه‌نویسی چند مدلی[۱] (multi-paradigm) می‌باشد ، که در اوایل سال ۱۹۶۰ توسعه یافت.

CPL
پارادایم برنامه‌نویسیمولتی‌پارادایم: رویه‌ای، دستوری، ساخت‌یافته، تابعی
طراحی شده توسطChristopher Strachey et al.
ظهوریافته در۱۹۶۳ میلادی
متأثر از
الگول ۶۰
تأثیر گذاشته بر
بی‌سی‌پی‌ال، POP-2

طراحی ویرایش

CPL مشترکاً توسط آزمایشگاه ریاضیات دانشگاه کمبریج و همچنین واحد رایانه ای دانشگاه لندن , در طول دههٔ ۱۹۶۰ توسعه یافت . از این رو CPL نام مستعار "کمبریج بعلاوه ی لندن"[۲] را به دست آورد . تلاش مشترک این دو بیشتر برای قسمتِ "ترکیب شده" در نامِ زبان بود. (قبلاً نام زبان،زبان برنامه‌نویسی کمبریج بود.)
D.W. Barron و Christopher Strachey درگیر این پروژه بودند. در سال ۱۹۶۳ (زمانی که مقاله منتشر شد) این پروژه به‌طور همزمان در کامپیوتر تیتان , Titan Computer , در کمبریج و کامپیوتر اطلس , Atlas Computer ، در لندن پیاده‌سازی شد.
این زبان از زبان الگول ۶۰ بسیار تأثیر می پذیرفت، ولی به جای اینکه خیلی کوچک ، کارا ، کم دستور و ساده باشد ، نامزد داشتن زمینه‌های کاربردی گسترده تری نسبت به محاسبات علمی بود . بنابراین CPL زبانی بسیار پیچیده بود و به کاراییِ زبان الگول ۶۰ نبود. CPL در زمان خود , زبان بزرگی بود . CPL تلاش کرد تا از زبان الگول فراتر برود تا بتواند علاوه برداشتن ویژگی‌های زبان الگول شامل کنترل فرایندهای صنعتی و پردازش داده‌های تجاری نیز باشد . CPL همچنین تلاش داشت تا هم به برنامه‌های سطح پایین و هم داده‌های انتزاعی سطح بالا اجازه دهد که از یک زبان مشترک استفاده کنند.
اگرچه زبان CPL بسیار آهسته به مرحلهٔ پیاده‌سازی رسید , ولی اولین کامپایلر زبان احتمالاً در سال ۱۹۷۰ نوشته شده‌است . ولی این زبان هیچ گاه محبوبیت چندانی کسب نکرد و به نظر می‌رسد که در سال ۱۹۷۰ بدون هیچ اثری ناپدید شد.
زبان بعدی که بر پایهٔ زبان CPL نوشته شد ، بی‌سی‌پی‌ال نامیده شد (این نام برگرفته از "Basic CPL" به معنای بر اساس CPL می‌باشد ، اگرچه در اصل مخفف "Bootstrap CPL" به معنای CPL خودراه انداز بود.) BCPL زبان ساده تری می‌باشد و مشخصاً نامزد زبان برنامه‌نویسی سیستم[۳] مانند نوشتن کامپایلر[۴] بود. BCPL بعدها درخشید ، توسط زبان برنامه‌نویسی B , به سوی زبان برنامه‌نویسی مشهور و با نفوذ C پیش رفت.

مثال ویرایش

تابع MAX که توسط Peter Noving نوشته شده‌است:

Max(Items, ValueFunction) = value of
§ (Best, BestVal) = (NIL, -∞)
while Items do §
(Item, Val) = (Head(Items), ValueFunction(Head(Items)))
if Val> BestVal then (Best, BestVal) := (Item, Val)
Items := Rest(Items) §
result is Best §

کتاب شناسی ویرایش

  • Collected papers of Christopher Strachey, section pertaining to CPL, archived at the Bodleian Library, Oxford; CSAC 71.1.80/C.136-C.184
  • D. W. Barron, J. N. Buxton, D. F. Hartley, E. Nixon, and C. Strachey. "The main features of CPL" The Computer Journal 6:2:134-143 (1963).

واژه‌نامه ویرایش

منابع ویرایش

  1. http://en.wikipedia.org/wiki/Multi-paradigm_programming_language#Multi-paradigm_programming_language
  2. "Clive Feather on CPL and BCPL".
  3. http://en.wikipedia.org/wiki/Systems_programming
  4. http://en.wikipedia.org/wiki/Compiler