BCPL (Basic Combined Programming Language) – język programowania zaprojektowany przez na Uniwersytecie w Cambridge w 1967 roku jako wynik problemów z jego poprzednikiem – językiem CPL – w latach sześćdziesiątych. Pierwszy kompilator BCPL Richards napisał wiosną 1967 w czasie pobytu w MIT. Język został opisany w artykule zaprezentowanym na Spring Joint Computer Conference w 1969 roku. Na podstawie BCPL Dennis Ritchie później zaprojektował język programowania C.
BCPL powstał jako narzędzie do pisania kompilatorów, choć jednocześnie, w celu umożliwienia jego stosowania w programowaniu systemowym, zadecydowano, by jego składnia była prostsza niż miało to miejsce w przypadku CPL.
BCPL posiadał jeden typ danych – słowo maszynowe, którego długość w bitach zależała od docelowej architektury i była niezmienna w jej obrębie. Najczęściej zawierała się w zakresie od 16 do 36 bitów. Wszystkie wyrażenia i zmienne w języku przyjmowały wartość tego typu, która jednak mogła być odmiennie interpretowana w zależności od kontekstu.