fork download
  1. #define Q strcpy
  2. #define F(x)bcopy(b,f,p-b);f[p-b x]=!Q(r,p);
  3. #define C(x,y)Q(S[s-x],S[s-y]);
  4. #define N[99]
  5. #define A Q(S[s++]
  6. #define D sprintf(S[s++],"%d"
  7. #define G(x);}if(*f==x){
  8. #define H(x)G(x)s--;
  9. #define R return
  10. #define Z(x)T(t,u,v)-1||putchar(x)H(
  11. z=1,*y;char S N N;s;c;T(b,f,r,p)char*b,*f,*r,*p;{strtol(b+=strspn(b," "),&p,0);if(p>b){F()R 1;}if(c=*b==40){for(p=++b;c;p++)if(z^=*p==34)c+=*p-41?*p==40:-1;F(-1)R-1;}p++;F()*r*=!!*b;R 0;}*P(char*p){R*p-34?y=P(p+1),D,*p),y:++p;}E(int*x){char*p,c N,f N,r N,t N,u N,v N;for(Q(c,x);*c;Q(c,p))if(Q(t,S[s-1]),T(c,f,p=r))A,f);else{{G(64)C(0,1)C(1,2)C(2,3)C(3,0)G(35)A,t)G(36)C(0,2)C(2,1)C(1,0)H(37)H(47)T(t,u,v);*v&&A,v);A,u)H(46)strcat(strcat(S[s-1]," "),t)H(43)D,atoi(t)+1)H(45)D,atoi(t)-1)G(60)D,getchar())H(62)Z(atoi(u))99)Z(*u)119)for(Q(u,t);atoi(S[s-1]);)E(u)G(34)p=P(p);}}}
  12.  
  13. main(){
  14. printf("\"Hi!\" : ");
  15. E("0 10 \"Hi!\" (>)w");
  16. printf("10x21 : ");
  17. E("10 21 0@($@#@($+$-)w%@$-)w%%");
  18. printf("%s\n",S[--s]);
  19. printf("Quine : ");
  20. E("(\")10$#34$(34 40 (>)w)....1$w\")10$#34$(34 40 (>)w)....1$w");
  21. }
Success #stdin #stdout 0s 5312KB
stdin
Standard input is empty
stdout
"Hi!" : Hi!
10x21 : 210
Quine : (")10$#34$(34 40 (>)w)....1$w")10$#34$(34 40 (>)w)....1$w