C-BC is a typed version of POSIX BC enhanced with a large number of features
This is the legacy distribution from 1993 originally contained in the
comp.compilers archive and re-released in 2001. It is now available under GIT
It is undergoing upward revision to expand its type system,
- to remove the incompatibilities with POSIX BC entailed by having a type
- to speed up its multiplication routine
- to bring it to parity with GNU-BC,
- to include support for multithreaded programming, and
- to both improve its math.b routines and add in more of the functionality of
"calc" and of LAPACK and ALGLIB.
Currently it compiles under ??? (which the Makefile has been configured for). With
minor changes it will compile under Windows with LCC-WIN or LCC; and probably
There are no other library or utility dependencies. Neither bison/yacc nor
flex/lex are required.
This implementation was originally generated over a several month period in
late 1992, with numerous revisions in the early part of 1993, and in early
summer of 1993. It's actually come in handy for me on the most unexpected
occasions (e.g.: the generation of editing and production command-line scripts
for music and video). Minor upgrades have been made in 2001 and more recently
in 2015-onward with a major expansion now in the works to include support for
multi-threaded programming; particularly geared toward making this suitable as
a language for multi-media scripting.
The most important change envisioned for it will be the inclusion of the
multi-threaded runtime system at its core; and the integration of a yet more
substantial subset of C; of calc; of GNU-BC (which it is already a functional
superset of but GNU-BC uses a faster multiplication and better implementation
of math.b); and integration of the functionality of ALGLIB and/or LAPACK.
Currently the heaviest use I make of C-BC is to generate shell scripts;
particularly for test routines and for multi-media editing and production.
These videos (Flyover of a nice scene (with a twist):
https://www.youtube.com/watch?v=z_Dm-76SFCA; Cosmetological Singularity
https://www.youtube.com/watch?v=kjPbFEVVvWw and A Beautiful Angel Smiles and
Flirts https://www.youtube.com/watch?v=lnATwZgmI2I), for instance, were all
composited individually frame-by-frame and laid out by scripts generated by
C-BC; and I am gearing future development toward making the language more
suitable to these ends with its own internal library.