The original Small-C compiler excluded many features from standard C for minimalism. Types are limited to char and int, while
Arrays of these types are restricted to one dimensional arrays only. The only loop statement that is available is the
While loop. Boolean operators were not included, meaning that logical statements had to be done with the equivalent bitwise operators, of which only
AND and
OR were given. Compilation was done in one pass with no optimization, although one could provide the compiler with an optimizer to use. A second version, now called Version 2.1, of the Small-C compiler was later developed by James E. Hendix, extending Small-C with many features commonly used in C. The new compiler optimized code by default and allowed preprocessor directives for
conditional compilation. Added features include
boolean operators,
For loops,
Do while loops,
Switch statements, and
Gotos. This allowed programming much closer to standard C. Rick Grehan ported Small-C to MS-DOS and
Macintosh in 1988 for a new version of the
BYTE benchmarks. ==See also==