CAZine: issue 8, February 2010

CAZine: issue 8, February 2010

Anomalies of Code

Last Months Challenge

  1. sub don‘t(&){}
  2.  
  3. do {print "Stuff"}
  4.  
  5. don’t{print "Things"}

This is yet another Perl caveat.  The name space of Perl typically looks like Package::Class::And::So::On. The last element can be referenced as a subroutine. Old Perl notation allowed for the delimiter to be a single quote.  The system was changed around Perl 5 to have name spaces resemble C name spaces. The old way wasn’t really removed, partly because, if it isn’t broke, don’t fix it. So therefore the first line can be better written as:

  1. sub don::t(&){}

The fancy (&) that you see means that the subroutine is expecting to get a subroutine as one of its parameters.

So the magic! When you pass code to “don’t” it doesn’t do anything with the code. Or for that matter anything at all. It does nothing. There are some minor things.

This was originally done by Damian Conway

Read more about packages

This Months Challenge

This one i don’t even think i will be able to explain all that well, if at all.

It is in C

  1. #include
  2. main(int t,char _,char *a)
  3. {
  4. return!0<3?main(-79,-13,a+main(-87,1-_,main(-86, 0, a+1 )+a)):1,t<_?main(t+1, _, a ):3,main ( -94, -27+t, a )&amp;&amp;t== 2 ?_<13 ?main ( 2, _+1, "%s %d %d\n" ):9:16:t<0?t<-72?main(_,t,"@n’+,#’/*{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l,+,/n{n+\,/+#n+,/#;#q#n+,/+k#;*+,/’r :’d*’3,}{w+K w’K:’+}e#’;dq#’l q#’+d’K#!/\+k#;q#’r}eKK#}w’r}eKK{nl]’/#;#q#n’){)#}w’){){nl]’/+#n’;d}rw’ i;# ){n\l]!/n{n#’; r{#w’r nc{nl]’/#{l,+’K {rw’ iK{;[{nl]‘/w#q#\ n’wk nw’iwk{KK{nl]!/w{%’l##w#’ i; :{nl]’/*{q#’ld;r’}{nlwb!/*de}’c \;;{nl’-{}rw]’/+,}##’*}#nc,’,#nw]’/+kd’+e}+;\#‘rdq#w! nr’/ ‘) }+}{rl#’{n’ ‘)# }’+}##(!!/") :t<-50?_==*a?putchar(a[31]):main(-65,_,a+1):main((*a == ‘/’)+t,_,a+1 ):0
  5. }
  6.  
  7. ….
  8. ….
  9. ….
  10. ….
  11. ….
  12. ….
  13. ….
  14. ….
  15. ….
  16. ….
  17. ….
  18. ….
  19. ….
VN:F [1.7.9_1023]
Rating: 10.0/10 (3 votes cast)
CAZine: issue 8, February 201010.0103

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

About the Author