|
PicoC is a very small C interpreter for scripting. It was originally
written as the script language for a UAV's on-board flight system.
It's also very suitable for other robotic, embedded and non-embedded
applications.
The core C source code is around 4000 lines of code. It's not
intended to be a complete implementation of ISO C but it has all the
essentials. When compiled it only takes a few k of code space and is
also very sparing of data space. This means it can work well in small
embedded devices. It's also a fun example of how to create a very
small language implementation while still keeping the code readable.
picoc has been tested on x86-32, x86-64, powerpc, arm, ultrasparc,
HP-PA and blackfin processors and is easy to port to new targets.
To show it working on the old DECUS grep program (included as one of its
tests):
% time picoc work/picoc/tests/46_grep.c - case work/picoc/tests/46_grep.c
File work/picoc/tests/46_grep.c:
"lower-case are always ignored. Blank lines never match. The expression",
case '^':
case '$':
case '.':
case '[':
case ':':
...
0.651u 0.000s 0:00.68 95.5% 0+0k 0+0io 0pf+0w
% wc work/picoc/tests/46_grep.c
557 1991 15172 work/picoc/tests/46_grep.c
%
|