PLDB
Languages Features Calendar CSV Lists Blog About Sponsor Add Language
GitHub icon

BCPL

BCPL

BCPL, aka Basic Combined Programming Language, is a pl created in 1966 by Martin Richards.

#144on PLDB 56Years Old 1.1kUsers
4Books 5Papers

BCPL ("Basic Combined Programming Language"; or 'Before C Programming Language' (a common humorous backronym) ) is a procedural, imperative, and structured computer programming language. Originally intended for writing compilers for other languages, BCPL is no longer in common use. However, its influence is still felt because a stripped down and syntactically changed version of BCPL, called B, was the language on which the C programming language was based. Read more on Wikipedia...


Example from the web:
GET "LIBHDR" LET START() = VALOF $( FOR I = 1 TO 5 DO WRITEF("%N! = %I4*N", I, FACT(I)) RESULTIS 0 $) AND FACT(N) = N = 0 -> 1, N * FACT(N - 1)
Example from hello-world:
GET "LIBHDR" LET START() BE $( WRITES("Hello World*N") $)
Example from the Hello World Collection:
// Hello world in BCLP GET "libhdr" LET start() = VALOF $( writes("Hello world*N") RESULTIS 0 $)
Example from Wikipedia:
GET "LIBHDR" GLOBAL $( COUNT: 200 ALL: 201 $) LET TRY(LD, ROW, RD) BE TEST ROW = ALL THEN COUNT := COUNT + 1 ELSE $( LET POSS = ALL & ~(LD | ROW | RD) UNTIL POSS = 0 DO $( LET P = POSS & -POSS POSS := POSS - P TRY(LD + P << 1, ROW + P, RD + P >> 1) $) $) LET START() = VALOF $( ALL := 1 FOR I = 1 TO 12 DO $( COUNT := 0 TRY(0, 0, 0) WRITEF("%I2-QUEENS PROBLEM HAS %I5 SOLUTIONS*N", I, COUNT) ALL := 2 * ALL + 1 $) RESULTIS 0 $)

Language features

Feature Supported Example Token
Assignment :=
Print() Debugging WRITES
Comments
// A comment
Line Comments
// A comment
//
Semantic Indentation ϴ

Books about BCPL on goodreads

title author year reviews ratings rating
Bcpl: The Language and Its Compiler Martin Richards 1981 1 3 4.33
Bcpl: The Language and Its Compiler M. Richards 1980 0 1 2.00
Bcpl On The Bbc Microcomputer User Guide Chris Jobson 0 0 0.0
Curly Bracket Programming Languages: C, Java, C++, Perl, JavaScript, PHP, Ruby, Bcpl, awk, Quakec, Objective-C, Cyclone, Pike, Unrealscript, Rc Books LLC 2010 0 1 3.00

Publications about BCPL from Semantic Scholar

title authors year citations influentialCitations
Implementing BCPL on the burroughs B6700 C. Lakos 1980 3 0
Machine architecture and the programming language BCPL M. Fox 1978 3 0
A space‐efficient code generation scheme for BCPL R. Agarwal and S. Chanson 1980 2 0
The Emulated OCODE Machine for the Support of BCPL O. Sørensen 1975 1 0
How BCPL Evolved from CPL M. Richards 2013 1 0
protobuf.html · bcpl.html · standard-ml.html

View source

PLDB - Build the next great programming language · v2022 · Day 28 · Docs · Build · Acknowledgements · Traffic Today · Traffic Trends · Mirrors · GitHub · feedback@pldb.com