大力普及“他妈的”有助于语言交流

    在翻看现代汉语笔记时,我突然惊奇地发现,在语言文字中大量使用“他妈的”能够非常有效地避免歧义现象,提高语言交际的效率。
    让我们来看看这个句子:“今年的考题跟去年一样”。假设你想要在这句话里面加一个“他妈的”,在通常情况下(不强调句中的任何成份时),你应该加在哪里?嗯,不错,大家通常都会说,“今年的考题跟去年他妈的一样”。但是,再看看这个句子:“他很狡猾,跟狐狸一样”。同样在这里插入一句“他妈的”,你又会加在哪里呢?相信大多数人都会说,“他很狡猾,跟他妈的狐狸一样”。同样是“跟……一样”的结构,为什么“他妈的”插入的位置就不一样呢?其根本原因就在于,两个句子看似相同,但具体结构是不一样的。当表示A和B完全相同时,说“跟B一样”指的是“和B是一个样”,其结构是“跟B”加上“一样”;当表示A与B具有相似性时,说“跟B一样”指的是“好像B的样子”,其结构是“跟”加上“B一样”。因此,在这两个划分不同的结构间插入“他妈的”,位置也理所当然的不一样了。当“A跟B一样”表示相同时,我们往往说“A跟B他妈的一样”,重音在“一样”上;但当“A跟B一样”表示相似时,我们往往说“A跟他妈的B一样”,重音在B上。
    现在,考虑这个句子:“今年的考题跟作业题一样”。这就有歧义了——是说今年的考题真的用了作业里的题呢,还是仅仅是比喻这次考题简单得像作业题?这时,“他妈的”就派上用场了。我们可以在句子间加入“他妈的”来区别:

      今年的考题跟作业题他妈的一样 (指与作业题相同)
      今年的考题跟他妈的作业题一样 (暗指考题太简单)

Read more…

牛!Mathematica还能这样用!自己制作马赛克拼图

    Wolfram的Blog上更新了一段非常牛的Mathematica代码,真的让我大开眼界。只需要三行代码,你就可以自己做一个马赛克拼图。
imagePool = Map[With[{i = Import[#]}, {i, Mean[Flatten[N[i[[1, 1]]], 1]]}] &, FileNames["Pool/*.jpg"]];
closeMatch[c_] := RandomChoice[Take[SortBy[imagePool, Norm[c - #[[2]]] &], 20]][[1]];
Grid[Reverse[Map[closeMatch, Import["MasterImage.tif"][[1, 1]], {2}]], Spacings -> {0, 0}]

    其中,”Pool/*.jpg”是你的图库,我估计最少也得有几百张吧。我用Photoshop把我的collection全部处理成了35×35的小图;为了让最终效果更佳,我特地把它们全部处理成单色的,并且减小了对比度。”MasterImage.tif”是你的目标图片,Mathematica会把这个图片中的每一个像素用图库中一个合适的图来代替。我把我的照片剪裁了一下,然后压成19×22的大小。Mathematica首先把所有照片以及每个照片的RGB值的中位数存成一个list,函数closeMatch将图片按照RGB值的均方根排序,然后随机从头20个中选出一个。第三行用Grid函数输出我们所要的马赛克拼图。最后我们就得到了——由众MM图所组成的Matrix67的肖像画!!如果你还看不出来的话,站远点儿眯着眼睛就能看出来了。

Read more…

分享几个小游戏

Open Doors:http://www.kongregate.com/games/soapaintnice/open-doors
有点创意。后面基本上就开始乱搞了。
谁来建一个图论模型?

Puzzle Boy:http://puzzle.boy.flash.fizzlebot.com/
空格键重新开始,Shift键交换当前行动者。
华容道、推箱子等多个解谜游戏的结合体。

Grid16:http://www.jmtb02.com/flash/grid16.htm
非常有创意。让我想到了Arcadia REMIX

Timebot:http://www.gamerthegreat.com/GamerTheGreat/site/webgames.asp?op=playgame&gameid=269
按空格键后时间跳回到关卡开始的时候,你可以看到你过去的自己。
很像Cursor*10,只是关卡较多,有点难。

PMOG:http://pmog.com/
一款革命性的网游,安装一个Firefox插件后即可开始游戏,游戏场地就是整个互联网!

ZWOK:http://zwok-game.com/en_GB/
Flash在线多人团队对战游戏,很像百战天虫

顺便分享一个小笑话(原创),纯洁小MM请忽略:每次有人看见我把手指按压在IBM的小红帽上来回揉擦,问我那个东西是啥时,我都会说“是阴蒂”。今天我突然发现,这个比喻再合适不过了,因为小红帽和阴蒂有一个绝妙的共同点:它们都在”B”上。

加上了友情链接,大家帮忙看看有没有写错的,有没有写漏的。选哪些Blog放在侧栏的Blogroll里是一件很麻烦的事。

如果在Google Code Search里搜索fuck……

    Ben orenstein尝试在Goolge Code Search里输入脏话,在众多的开源软件中找到了一些非常牛B的代码:

gdb-6.4.50.20060515:
/* OK, now set up the filehdr...  */

/*   We will NOT put a fucking timestamp in the header here. Every time you
     put it back, I will come in and take it out again.  I’m sorry.  This
     field does not belong here.  We fill it with a 0 so it compares the
     same but is not a reasonable time. — gnu@cygnus.com  */

Siesta-0.66:
    # This job would be great if it wasn’t for the fucking customers.

CGI-FormBuilder-3.0202:
        # Get field from radio buttons or checkboxes
        # Must cycle through all again to see which is checked. yeesh.
        # However, this only works if there are MULTIPLE checkboxes!
        # The fucking JS DOM *changes* based on one or multiple boxes!?!?!
        # Damn damn damn I hate the JavaScript DOM so damn much!!!!!!

DJabberd-0.81:
    # Trillian, again, is fucking stupid and crashes on just
    # about anything its homemade XML parser doesn’t like.

gift-0.11.5:
void list_lock_insert_sorted (ListLock *lock, CompareFunc func, void *data)
{
    if (lock->locked)
    {
        /* TODO: this is obviously not right ... this whole fucking module
         * sucks anyway */
        list_lock_prepend (lock, data);
        return;
    }

    lock->list = list_insert_sorted (lock->list, func, data);
}

bh-asia-03-grugq:
    /* if we get here, there are massive fucking problems, for a start
     * our stack is fucked up, and we can’t return(). Just crash out. */

trunk:
    /* FIXME: please god, when will the hurting stop? Thus function is so
              fucking broken it’s not even funny. */

SQL-Abstract-1.20:
    # Note to self: I have no idea what this does anymore
    # It looks like a cool fucking segment of code though!
    # I just wish I remembered writing it… :-

mendax_linux:
for(i = 0 ; i < pktcount; i++) {
    from.sin_port = htons(ntohs(from.sin_port) + 1);
    pktlen = gen_tcp_pak(&pak, &from, dst, ip_id++,
                     seq_num, 0L, 0, flags);
    seq_num += 64000;

    /* don't fire dem packets too fucking fast */
    usleep(1000);

    send_pak((char *) &pak, pktlen, ether);
    putchar('.');
}

SugarOS-for-Microsoft-Full-4.5.0h:
    /*   Outlook can’t fucking follow RFC if someone PAID them to do it…
        oh wait, someone paid them NOT to do it. */

AfterStep-2.2.5:
    /* No we fucking don’t! DB entries should be stored in the same order
       as they are in the file ! I can’t belive I was so fucking stupid !  */

gallery-2.0.4/modules/core/classes/GalleryStorage:
else if ($affectedRows > 1) {
   /* Holy shit, we just updated more than one row!  What do we do now? */
   return GalleryStatus::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__,
                        "$query (" . implode('|', $data) . ") $affectedRows");
}

linux-2.4.34.1/arch/sparc/lib/checksum.S:
        /* Sun, you just can’t beat me, you just can’t.  Stop trying,
         * give up.  I’m serious, I am going to kick the living shit
         * out of you, game over, lights out. */

linux-2.6.1/arch/mips/kernel/sysirix.c:
    /* 2,191 lines of complete and utter shit coming up… */

nfs-utils-1.1.0/utils/statd/misc.c:
    if (!(ptr = malloc (size)))
            /* SHIT!  SHIT!  SHIT! */
            die (”malloc failed”);

dada-2_10_12:
    # code below replaces code above - any problems?
    # yeah, it doesn’t fucking work.

刚看到一个小笑话:我的数学MM

I told my girlfriend that she's "math girl, doer of math: unable to integrate with society, only with functions of x"
我告诉我的女朋友说,她是一个数学MM,正如数学一样,不能融入这个社会(不能对社会进行积分),只有X的功能(函数)。

and guys, this is why she's my girlfriend. she said:
你猜怎么着,她真不愧是我的女朋友。她说:

"I could do a u substitution…"
“我可以用U来进行代换……”

来源:http://bash.org/?823025
我要是有这样的MM就好了