|
The cell matrix began with a philosophical discussion on how far the hardware/software line could be pushed towards the software extreme. The idea of a completely configurable hardware platform led quickly to the fine grained structure of a cell's D-mode behavior. However, the actual configuration mechanism of a cell (its C-mode behavior) derives from a question of how to make a system which can output its own configuration information. In a purely software domain, this is the question of writing a program which prints its own source code. The solution seemed to hinge on a dual representation of characters as either code or data. By extending this construct into hardware, the configuration mechanism of the cell matrix was formed. |
static char p[20][1024]
"#include <stdio.h>",
"#include <string.h>",
"",
"main()",
"{",
" int i,j;",
"",
" printf(\"static
" for (i=0;i<20;i
" if (i>0
" printf(
" for (j=
" if ((p[
" printf(
" }",
" }",
" printf(\"\\\"};
"",
" for (i=0;i<20;i++)
"}"};
#include <stdio.h>
#include <string.h>
main()
{
int i,j;
printf("static c
for (i=0;i<20;i+
if (i>0)
printf("
for (j=0
if ((p[i
printf("
}
}
printf("\"};\n\n
for (i=0;i<20;i++)
}
|