See www.usemod.com for current contact information. I have not been an active reader or contributor to the C2 wiki for well over a year (as of May 2004). Most of my contributions to this Wiki are anonymous, but you can click the title of this page to see the signed pages. -- Clifford Adams
Wiki:
Cliff wandered into Wiki around July 1999, and he had read most of it over the next two years. He often wondered Why Wiki Works (and sometimes Why Wiki Works Not). In late 1999, Cliff tried to improve the C2 wiki through the Change Summary project, which taught him difficult but valuable lessons about the limits of the C2-wiki community. Cliff was more successful in lobbying Ward Cunningham to solve the problems described in Edit Conflict Resolution.
Cliff's major wiki project is Use Mod Wiki, which has spawned several derivative projects.
Strn:
Cliff is the author of the strn (usenet) newsreader extensions which add scoring, virtual newsgroups, and the "scan" modes to Wayne Davison's trn (which is an extension of Stan Barber's and Larry Wall's rn). (At one time s/t/rn had #ifdef-ed code for both the PDP-11 and Cray supercomputers.) Strn was about 10K lines of C at its largest point (trn was about 40K lines). Cliff stopped actively maintaining strn in 1995, and merged most of its changes into trn 4.0. He believes Lifes Just Too Short for vt100 interfaces and languages like C.
Strn was envisioned as the first stage of a Usenet Moderation Project, with a goal of giving people tools to share rating, summary, and editing information about Usenet postings. The only implemented idea was the sharing of scoring and virtual newsgroups using http. Cliff now hopes that these ideas can be realized in Use Mod Wiki.
Forth and Smalltalk:
One of Cliff's old favorites is the Forth Language. Long ago Cliff implemented Lisp In Forth on a Commodore 64 (he couldn't quite afford a Lisp machine). He started with core data structures (atoms and cons-cells), advanced to list and symbol manipulation, then he simply translated the Lisp functions from a Lisp in Lisp demo. Cliff has considered a Smalltalk In Forth (possibly by translating the Squeak Smalltalk In Smalltalk). He thinks Forth could be a wonderfully powerful and flexible bytecode layer for Smalltalk.
Cliff has too many projects, but he sometimes thinks about "Smalltalk With Values" (think "C with Classes", but inverted), which would allow multiple classes to use the Small Integer optimization. The cost would be one bit of Small Integer coverage, and the initial idea would allow 16 or 32 small-value classes (each with 24 bits of value). Cliff is almost certain that someone else has already tried this - he can't be the only person who contemplated subclassing Small Integer.
Perl:
Cliff was the winner of the Third Annual Obfuscated Perl Contest in the "Most Powerful" category. He can write and sometimes understand code like:
#!/usr/local/bin/perl -s do 'bigint.pl';($_,$n)=@ARGV;s/^.(..)*$/0$&/;($k=unpack('B*',pack('H*',$_)))=~ s/^0*//;$x=0;$z=$n=~s/./$x=&badd(&bmul($x,16),hex$&)/ge;while(read(STDIN,$_,$w =((2*$d-1+$z)&~1)/2)){$r=1;$_=substr($_."\0"x$w,$c=0,$w);s/.|\n/$c=&badd(&bmul ($c,256),ord$&)/ge;$_=$k;s/./$r=&bmod(&bmul($r,$r),$x),$&?$r=&bmod(&bmul($r,$c ),$x):0,""/ge;($r,$t)=&bdiv($r,256),$_=pack(C,$t).$_ while$w--+1-2*$d;print}
(See www.cypherspace.org for an explanation.)
Cliff is responsible for Meatball Wiki and, hence, I owe him a round of beer. -- Sunir Shah (can I talk about him in the third person too?) [Sunir can if he wants too :-) -- Sean Palmer]
See original on c2.com