老婆給當程序員的老公打電話:“下班順路買一斤包子帶回來,如果看到賣西瓜的,買一個。” 當晚,程序員老公手捧一個包子進了家門。。。 老婆怒道:“你怎么就買了一個包子?!” 老公答曰:“因為看到了賣西瓜的。”
嚴格的講老婆的話是有二義性的,最后買一個沒有明確買的西瓜還是包子,也沒有說清楚是加買一個還是只買一樣東西。
從生活的角度,程序員是情商太低了,把編程的思維帶到了生活中來,不能揣測出別人的意思,不過至少中國很難出現這樣的程序員,因為生活有足夠的力量讓你變得聰明起來。
老婆的程序:
買一斤包子; if (看到賣西瓜的) 買一只(西瓜);
程序員老公的程序:
if ( ! 看見賣西瓜的) 買一斤包子; else 買一只(包子);
其實正確的程序應該是
function 下班后需要執行的老婆的指令(){ var 帶回來的東西 = []; 帶回來的東西.push(順路買一斤包子()); if(看到賣西瓜的){ 帶回來的東西.push(買一個西瓜()); } return 帶回來的東西; }