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

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

طراحی 
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).

واژه‌نامه

منابع 

تاریخ رایانش در بریتانیا
زبان‌های برنامه‌نویسی رویه‌ای
زبان‌های برنامه‌نویسی ساخته‌شده در ۱۹۶۳ (میلادی)
زبان‌های برنامه‌نویسی ساخته‌شده در دهه ۱۹۶۰ (میلادی)
زبان‌های برنامه‌نویسی ساخت‌یافته
معرفی‌شده‌های ۱۹۶۳ (میلادی)
مقاله‌های ایجاد شده توسط ایجادگر