Move 1988-2004 entries into subdirs

We we move 1988-2004 entries from all of a year's winning entries
in a single directory to each winner being in their own sub-directory
under the given year directory.
This commit is contained in:
Landon Curt Noll committed 2022-09-18 23:37:49 -07:00
1 parent 1e82e8aa3e
commit d2a42f42e8
478 files changed

No files matched your search

+33
View File
@@ -0,0 +1,33 @@
#define u unsigned
#define w char*
#define j(x)(*(*(x*)&T)++)
#define H j(short*)
#define K j(w)
#define e j(u*)
#define r register u
#define R(b)write(A,T=h,4*b);
#define S (u*)sbrk(Q*4+U*8)+U
#define E(a,b,c)a=c&1<<31|b/2;c=c*2|b&1;
#define V q=h^*L;L+=F;E(d,q,x)E(f,d,s)g=f&q;f^=q
#define W while(
#define Z q=I&f;M|=q&c;c^=q;I^=f;M|=g&c;c^=g
#define Y W(F= *s++-'0')<=9)*T=10**T+F;K
#define D(q,s)c);W q>s)G= *--q,*q= *s,*s++=G;
#define P if(i^z){x=Q+(n=D(x,n)
#define C if(i){q=Q*4+(s=(w)D(q,s)
u A,U,Q,J,X[9999],B;main(a,b)w*b;{r*c,*d,y=0,f,g,F,I,M,N,z,*x,*n,i,G;w q,*h=(w
)X,*T,*s=".slo.-W00,tmhw.W/";T=h;if(a>1){e;s=b[1];Y;Y;Y;Y;T=h;H;K=23;Y+=112;T=
h;Y;y= *--T;H=2;}else{H=1;W*s)K=1+*s++;}connect(A=socket(a,1,0),T=h,24-a*4);H=
17004;H=11;e=0;e=0;i=66==*h;R(3)read(A,h,8);e;H;read(A,h,4*H);T=h;e;F=e;e;e;I=
11+H;f=H-6;K;U=K;i^=K;z=!K;T+=I/4*4+8*U;W y--){T+=39;I=K;W I--)H,T+=4+24*H;}I=
e;e;B=(!e^**b&1)-1;e;e;U=H/32;J=H/30*30;T+=14;M=K;f/=U;T=h;K=55;K;H=4;e=F;e=I;
e=0;R(4)N=F+8192;K=53;K=M;H=4;e=N;e=I;H=U*32;H=J;R(4)K=2;K;H=4;e=I;e=1;e=N;R(4
)Q=J*U;c=S;d=S;L(c);W 1){P}C}y=0;W y<J){K=72;K=0;g=J-y;H=6+U*(g>f?g=f:g);e=N;e
=F;H=U*32;H=g;H=0;H=y;K=0;K=1;R(6)write(A,c+y*U,g*U*4);y+=g;}K=61;K=0;H=4;e=I;
e=0;e=0;R(4)C}P}v(c,d);}}L(A)r*A;{r*T=A+Q,X=getpid();W A<T)*A++=X=3*X^X/2;}v(n
,O)u*n,*O;{r*A,F=U,*L=n-F,*G=L+Q,I,c,d,M,f,g,N,q,i=0,X,T,v,s,x,*y,*z,h=B;W L<n
){*L= *G;G++[F]=L++[F];}W i<J){z=O+i*F;y=n+i*F-F;i+=30;L=y-1;A=L+U*32;W L<A){L
+=F;E(X,(*L^h),x)E(q,X,s)}X=0;W X++<F){L=y++;G=z++;V;c=g|f&d;I=f^d;V;W L<=A){M
=0;Z;N=d;T=f;v=g;V;Z;c^=I&d;*G=h^c&~M&(I^d|N);G+=F;c=v|T&N;I=T^N;}}}z=O;y=n;I=
J;W--I!=-1){f= *z>>31;G=z+F;L=y+F;W G>z){M= *--G;*--L=(M*2)+f;f=M>>31;}z+=F;y+
=F;}}
+34
View File
@@ -0,0 +1,34 @@
#define u unsigned
#define w char*
#define j(x)(*(*(x*)&T)++)
#define H j(short*)
#define K j(w)
#define e j(u*)
#define r register u
#define R(b)write(A,T=h,4*b);
#define S (u*)sbrk(Q*4+U*8)+U
#define E(a,b,c)a=c&1<<31|b/2;c=c*2|b&1;
#define V q= *L;L+=F;E(d,q,x)E(f,d,s)g=f&q;f^=q
#define W while(
#define Z q=I&f;M|=q&c;c^=q;I^=f;M|=g&c;c^=g
#define Y W(F= *s++)&16)*T=10**T+F-'0';T++
#define D(q,s)c);W q>s)G= *--q,*q= *s,*s++=G;
#define P if(i^z){x=Q+(n=D(x,n)
#define C if(i){q=Q*4+(s=(w)D(q,s)
u A,U,Q,J,X[9999];main(a,b)w*b;{r*c,*d,y,f,g,F,G,I,M,N,z,*x,*n,i,B,O;w q,*h=(w
)X,*T,*s;T=h;if(a>1){H=2;K=23;K=112;s=b[1];Y;Y;Y;Y;}else{s=".slo.-W00,tmhw.W/"
;H=1;W*s)K=1+*s++;K=0;}s=T;H=17004;H=11;e=0;e=0;i=66==*s;W connect(A=socket(a,
3-Q++,0),h,24-a*4)||write(A,s,12)!=12||read(A,T,8)!=8);e;H;read(A,h,4*H);T=h;e
;F=e;e;e;I=11+H;f=H-6;K;U=K;i^=K;z=!K;T+=I/4*4+8*U;I=e;e;O=e;B=e;e;U=H/32;J=H/
30*30;T+=14;M=K;f/=U;T=h;K=55;K;H=6;e=F;e=I;e=12;e=B;e=O;R(6)B=F+8192;K=53;K=1
;H=4;e=B;e=I;H=U*32;H=J;R(4)O=B+8192;K=55;K;H=4;e=O;e=B;e=0;R(4)N=O+8192;K=53;
K=M;H=4;e=N;e=I;H=U*32;H=J;R(4)K=2;K;H=4;e=I;e=1;e=N;R(4)Q=J*U;c=S;d=S;L(c);W
1){P}C}y=0;W y<J){K=72;K=0;g=J-y;H=6+U*(g>f?g=f:g);e=B;e=O;H=U*32;H=g;H=0;H=y;
K=0;K=1;R(6)write(A,c+y*U,g*U*4);y+=g;}K=63;K;H=8;e=B;e=N;e=F;e=0;e=0;H=U*32;H
=J;e=1;R(8)K=61;K=0;H=4;e=I;e=0;e=0;R(4)C}P}v(c,d);}}L(A)r*A;{r*T=A+Q,X=getpid
();W A<T)*A++=X=3*X^X/2;}v(n,O)u*n,*O;{r*A,F=U,*L=n-F,*G=L+Q,I,c,d,M,f,g,N,q,i
=0,X,T,v,s,x,*y,*z;W L<n){*L= *G;G++[F]=L++[F];}W i<J){z=O+i*F;y=n+i*F-F;i+=30
;L=y-1;A=L+U*32;W L<A){L+=F;E(X,*L,x)E(q,X,s)}X=0;W X++<F){L=y++;G=z++;V;c=g|f
&d;I=f^d;V;W L<=A){M=0;Z;N=d;T=f;v=g;V;Z;c^=I&d;*G=c&~M&(I^d|N);G+=F;c=v|T&N;I
=T^N;}}}z=O;y=n;I=J;W--I!=-1){f= *z>>31;G=z+F;L=y+F;W G>z){M= *--G;*--L=(M*2)+
f;f=M>>31;}z+=F;y+=F;}}
+122
View File
@@ -0,0 +1,122 @@
Best X11 Graphics:
David Applegate Guy Jacobson
School of Computer Science AT&T Bell Laboratories
Carnegie Mellon University 600 Mountain Avenue
Pittsburgh PA 15213 Murray Hill NJ 07974
USA USA
Judges' comments:
Make and run as follows:
make davidguy
davidguy ip_address:server.screen
where 'ip_address' in an IP address of an X server. For example, try:
davidguy 127.0.0.1:0.0
Of course, may need to supply a more reasonable address. :-)
Also try:
cp davidguy guydavid
guydavid 127.0.0.1:0.0
Can you determine why this makes a difference.
We permitted this type of entry to win because:
- it did not require X to be on the host system
- both BSD and SVR4 have sockets
Now that X11 and sockets have become 'standard', we plan to open
up the contest to programs that use them. Future rules will
explain this further.
We are pleased that this entry has helped bring new 'life' into
the contest.
NOTE: The orignal program that won may be found in davidguy.orig.c.
The author supplied a second version of the program, which
we have placed in the default location davidguy.c.
Selected notes from the authors:
The program is a fully-functional X client. It talks directly to
the X server through a socket without using Xlib, Xt or any other
wussie toolkit junk. With no arguments, it will try to run
locally using the unix-domain socket (only on BSD :-( ) or you can
give it a command line argument identifying a display host address
(in dotted octet notation, like 127.0.0.1:0.0) where the X server
is running. It handles color and monochrome displays, and
performs whatever byte-swapping and bit-reversal is needed (so
that the program works even when the server and the client have
different architectures). It buffers communication to the X
server for efficiency.
[[ NOTE: The original source in davidguy.c used only an IP address
argument (assumed :0.0) and assumed the color of black
and white. ]]
The program doesn't require any user interaction; you can just sit
back and watch it run. All the action takes place in the root
window of the display.
We think the program is interesting for these reasons:
1) It belongs to a class of programs that programmers make
the following complaints about: they require a mountain
of code to implement even the simplest program; and they
must be linked with giant libraries of hard-to-understand
functions. In contrast to these complaints (made by wimps,
in our humble opinion), our program fits in under 1536
bytes, doesn't need any external functions except for a few
system calls, and doesn't need to include any header files.
2) It implements an extremely efficient algorithm for the
computation it performs. One cool feature of the algorithm
(at least as far as this contest is concerned) is that its
obscurity is fundamentally necessary for its efficiency.
In other words, even if we took steps to present the algorithm
clearly, (we haven't) the relation of the computation performed
to the specification of what the program was supposed to do
would still be hard to understand.
Quasi-spoiler on internals:
The program plays Conway's game of Life in the root window's
background pixmap. It starts by setting the background to random
bits, and then plays Life, with one Life cell for each pixel of the
screen. In the game of Life, a cell survives to the next round if
2 or 3 of its 8 neighbors are also alive, and a cell is born if
exactly 3 of its neighbors are alive. Otherwise, a cell dies of
exposure if it has only 0 or 1 neighbors, and dies of overcrowding
if it has 4 or more neighbors.
The algorithm used to compute the next generation is based on the
observation that a cell's state in the next generation is a boolean
function of its current state, and the states of its 8 neighbors
(ie, a boolean function from 9 bits to 1 bit). This function can
be computed by a boolean circuit. In addition, intermediate values
computed by the circuit can be shared between neighboring cells,
reducing the number of gates per cell required. These ideas
have been used before, to compute the next generation through a
series of bit blits. Instead of doing this, we map values in the
circuit to bits in registers, so that the next generation can be
computed efficiently within registers, minimizing memory accesses.
As a result, the computation of the next generation is performed
with about 1.6 instructions per life cell, consisting of .125
memory accesses, .17 shifts, and 1.3 logic operations. The net
result is that the time to transfer the bits to the X server, and
for the X server to draw them on the screen, dominates the time to
compute the next generation.
Copyright (c) 1991, Landon Curt Noll & Larry Bassel.
All Rights Reserved. Permission for personal, educational or non-profit use is
granted provided this this copyright and notice are included in its entirety
and remains unaltered. All other uses must receive prior permission in writing
from both Landon Curt Noll and Larry Bassel.
+32
View File
@@ -0,0 +1,32 @@
#define _ define
#_ u unsigned
#_ w char*
#_ j(x)(*(*(x*)&T)++)
#_ H j(short*)
#_ K j(w)
#_ e j(u*)
#_ r register u
#_ R(b)write(A,T=h,4*b);
#_ S (u*)sbrk(Q*4+U*8)+U
#_ E(a,b,c)a=c&1<<31|b/2;c=c*2|b&1;
#_ V q= *L;L+=F;E(d,q,x)E(f,d,s)g=f&q;f^=q
#_ W while(
#_ Z q=I&f;M|=q&c;c^=q;I^=f;M|=g&c;c^=g
#_ Y W(F= *s++)&16)*T=10**T+F-'0';T++
#_ D(q,s)c);W q>s)G= *--q,*q= *s,*s++=G;
#_ P if(i^z){x=Q+(n=D(x,n)
#_ C if(i){q=Q*4+(s=(w)D(q,s)
u A,U,Q,J,X[9999];main(a,b)w*b;{r*c,*d,y,f,g,F,G,I,M,N,z,*x,*n,i;w q,*h=(w)X,*
T,*s=".slo.-W00,tmhw.W/";T=h;if(a>1){H=2;K=23;K=112;s=b[1];Y;Y;Y;Y;}else{H=1;W
*s)K=1+*s++;}connect(A=socket(a,1,0),T=h,24-a*4);H=17004;H=11;e=0;e=0;i=66==*h
;R(3)read(A,h,8);e;H;read(A,h,4*H);T=h;e;F=e;e;e;I=11+H;f=H-6;K;U=K;i^=K;z=!K;
T+=I/4*4+8*U;I=e;T+=16;U=H/32;J=H/30*30;T+=14;M=K;f/=U;T=h;K=55;K;H=4;e=F;e=I;
e=0;R(4)N=F+8192;K=53;K=M;H=4;e=N;e=I;H=U*32;H=J;R(4)K=2;K;H=4;e=I;e=1;e=N;R(4
)Q=J*U;c=S;d=S;L(c);W 1){P}C}y=0;W y<J){K=72;K=0;g=J-y;H=6+U*(g>f?g=f:g);e=N;e
=F;H=U*32;H=g;H=0;H=y;K=0;K=1;R(6)write(A,c+y*U,g*U*4);y+=g;}K=61;K=0;H=4;e=I;
e=0;e=0;R(4)C}P}v(c,d);}}L(A)r*A;{r*T=A+Q,X=getpid();W A<T)*A++=X=3*X^X/2;}v(n
,O)u*n,*O;{r*A,F=U,*L=n-F,*G=L+Q,I,c,d,M,f,g,N,q,i=0,X,T,v,s,x,*y,*z;W L<n){*L
= *G;G++[F]=L++[F];}W i<J){z=O+i*F;y=n+i*F-F;i+=30;L=y-1;A=L+U*32;W L<A){L+=F;
E(X,*L,x)E(q,X,s)}X=0;W X++<F){L=y++;G=z++;V;c=g|f&d;I=f^d;V;W L<=A){M=0;Z;N=d
;T=f;v=g;V;Z;c^=I&d;*G=c&~M&(I^d|N);G+=F;c=v|T&N;I=T^N;}}}z=O;y=n;I=J;W--I!=-1
){f= *z>>31;G=z+F;L=y+F;W G>z){M= *--G;*--L=(M*2)+f;f=M>>31;}z+=F;y+=F;}}