In light of the "Hidden features of..." series of questions, what little-known features of BCPL have become useful to you?
The best "hidden feature" of BCPL is the one I use on my CV - I hide the fact that I know anything about it, and thus avoid all chance of being drafted onto one of those benighted projects that might still contain some BCPL. Also, perfect the automatc response:
"Weird! Is that some kind of Perl stuff?"
when unexpectedly confronted with BCPL code.
Curly brackets. Granted, it's not a particularly hidden feature, nor have I used them in BCPL itself; but it did originate in BCPL, and it's the only notable thing about BCPL for the modern programmer.
The best feature I saw (and this was only in a few implementations, not part of the base language from Martin Richards) was the use of "%%"
and "%!"
(I may have those two characters in the last one around the wrong way - it's been a while).
BCPL provided a dereferencing facility to extract a word from a word address with word offset by doing:
LET x = y!2
which would be similar to y[2]
in C.
The byte offset from byte address (%%)
and byte offset from word address (%!)
allowed much finer-grained control of memory access in the old CPUs (such as the 6800 and 6809) where BCPL was mostly used.