"Funny" Observations From (PERL) Programming Docs...

In summary, the author of Toledo Nanochess claims to have the world's smallest chess program written in C. It is heavily obfuscated and inaccessible to anyone other than the author.
  • #1
sbrothy
Gold Member
441
335
So here I am slaving over Perl documentation (For my own pleasure I'm sad to say. I regard programming as LEGO for grownups) and I'm finding weird and funny things like:

o - pretend to optimize your code, but actually introduce bugs

I mean what is that about?

And perhaps less obvious:

[making] classes more readable:

Code:
/ [d-e g-i 3-7]/xx
/[ ! @ " # $ % ^ & * () = ? <> ' ]/xx

may be easier to grasp than the squashed equivalents:

Code:
/[d-eg-i3-7]/
/[!@"#$%^&*()=?<>']/

Well yes, it might :)

You have any even more crazy or funny examples from the amount of information I'm sure you people plow through on a daily basis? No matter the language.

Regards.
 
Technology news on Phys.org
  • #2
sbrothy said:
You have any even more crazy or funny examples from the amount of information I'm sure you people plow through on a daily basis? No matter the language.
Ha! There is a whole contest called "The International Obfuscated C Code Contest"
https://www.ioccc.org/ Reading the winning entries can melt your brain.

You can also find examples on Wikipedia.
https://en.wikipedia.org/wiki/International_Obfuscated_C_Code_Contest
Here's one.

Toledo Nanochess is a chess engine developed by Mexican Oscar Toledo Gutiérrez, a five-time winner of the IOCCC. In accordance with IOCCC rules, it is 1255 characters long. The author claims that it is the world's smallest chess program written in C.

The source code for Toledo Nanochess and other engines is available.[13] Because Toledo Nanochess is based on Toledo's winning entry from the 18th IOCCC (Best Game[14]), it is heavily obfuscated.[15]

On February 2, 2014, the author published the book Toledo Nanochess: The commented source code, which contains the fully commented source code.[16]

As of February 7, 2010, it appears to be one of only two chess engines written in less than 2 kilobytes of C that are able to play full legal chess moves, along with Micro-Max by Dutch physicist H. G. Muller. In 2014 the 1 kilobyte barrier was broken by Super Micro Chess[17] – a derivative of Micro-Max – totaling 760 characters (spaces and newlines included).[18] There is also a smaller version of Toledo's engine, the Toledo Picochess, consisting of 944 non-blank characters.
Source code excerpt

B,i,y,u,b,I[411],*G=I,x=10,z=15,M=1e4;X(w,c,h,e,S,s){int t,o,L,E,d,O=e,N=-M*M,K
=78-h<<x,p,*g,n,*m,A,q,r,C,J,a=y?-x:x;y^=8;G++;d=w||s&&s>=h&&v 0,0)>M;do{_ o=I[
p=O]){q=o&z^y _ q<7){A=q--&2?8:4;C=o-9&z?q["& .$ "]:42;do{r=I[p+=C[l]-64]_!w|p
==w){g=q|p+a-S?0:I+S _!r&(q|A<3||g)||(r+1&z^y)>9&&q|A>2){_ m=!(r-2&7))P G[1]=O,
K;J=n=o&z;E=I[p-a]&z;t=q|E-7?n:(n+=2,6^y);Z n<=t){L=r?l[r&7]*9-189-h-q:0 _ s)L
+=(1-q?l[p/x+5]-l[O/x+5]+l[p%x+6]*-~!q-l[O%x+6]+o/16*8:!m*9)+(q?0:!(I[p-1]^n)+
!(I[p+1]^n)+l[n&7]*9-386+!g*99+(A<2))+!(E^y^9)_ s>h||1<s&s==h&&L>z|d){p=n,O
=m?*g=*m,*m=0:g?*g=0:0;L-=X(s>h|d?0:p,L-N,h+1,G[1],J=q|A>1?0:p,s)_!(h||s-1|B
-O|i-n|p-b|L<-M))P y^=8,u=J;J=q-1|A<7||m||!s|d|r|o<z||v 0,0)>M;O=o;p=r;m?
*m=*g,*g=0:g?*g=9^y:0;}_ L>N){*G=O _ s>1){_ h&&c-L<0)P L _!h)i=n,B=O,b=p;}N=L;}
n+=J||(g=I+p,m=p<O?g-3:g+2,*m<z|m[O-p]||I[p+=p-O]);}}}}Z!r&q>2||(p=O,q|A>2|o>z&
!r&&++C*--A));}}}Z++O>98?O=20:e-O);P N+M*M&&N>-K+1924|d?N:0;}main(){Z++B<121)*G
++=B/x%x<2|B%x<2?7:B/x&4?0:*l++&31;Z B=19){Z B++<99)putchar(B%x?l[B|16]:x)_
x-(B=F)){i=I[B+=(x-F)*x]&z;b=F;b+=(x-F)*x;Z x-(*G=F))i=*G^8^y;}else v u,5);v u,
1);}}
 
  • Like
Likes sbrothy
  • #3
I knew about the obfuscated C contest. I think I even made a meager contribution to an unofficial obfuscated C++ contest once. The chess thingy is new to me though. There are a lot of weird programing languages out there. Like brainfuck .

I was more nonplussed by (PERL) documentation admitting that it has a flag for optimizing your code which admittedly does the opposite!
 
  • #4
sbrothy said:
I think I even made a meager contribution to an unofficial obfuscated C++ contest once.
My co-workers often enter my code to that contest.
 
  • Haha
  • Wow
Likes anorlunda, berkeman and sbrothy
  • #5
Vanadium 50 said:
My co-workers often enter my code to that contest.

I actually found the thread:

C++ fun: obfuscated "Hello world!"

Mine is #59. Not exactly genius material but then again it was written on company time. :)

BTW: I found a link to Writing Unmaintainable Code in my footer. Off course it's purpose is to make people avoid these pitfalls. It's written, as the author says upfront, "tongue in cheek".
 
  • Like
Likes anorlunda

1. What are some examples of funny observations found in PERL programming docs?

Some examples include comments such as "I have no idea what I'm doing" or "This is probably a bad idea".

2. Why are there humorous observations in programming documentation?

Humor can make dry and technical material more engaging and memorable for readers. It also adds a personal touch and can help create a sense of community among programmers.

3. Are there any downsides to including funny observations in programming documentation?

Some may argue that it can be distracting or unprofessional, but as long as the humor is appropriate and not excessive, it can actually enhance the readability and enjoyment of the material.

4. Do other programming languages have similar humorous comments in their documentation?

Yes, many programming languages have similar humorous comments or Easter eggs hidden in their documentation. Some notable examples include Python, Java, and C++.

5. Can adding humor to programming documentation actually improve the learning experience?

Yes, studies have shown that incorporating humor into educational material can increase motivation, engagement, and retention of information. It can also help alleviate stress and make the learning process more enjoyable.

Back
Top