隨筆 - 59, 文章 - 4, 評(píng)論 - 184, 引用 - 7
          數(shù)據(jù)加載中……

          2006年5月18日

          一切都在變

          blog也搬遷了:http://blog.sina.com.cn/liuwendao

          來(lái)武漢快三年了,留在北京的最后一件物件-電吉它,也被我拿到武漢來(lái)了

          我們這么混,能成功嗎?
          立帖為證

          posted @ 2007-09-16 23:21 fisher 閱讀(1464) | 評(píng)論 (0)編輯 收藏

          來(lái)自蘇聯(lián)的笑話

            軍事演習(xí)區(qū),一位婦女駕車在大橋前被一名軍官攔住:“對(duì)不起,公民,您現(xiàn)在不能過(guò)去。”“為什么?”“這座橋在一小時(shí)前被炸毀了。”“您能告訴我這究竟是怎么回事嗎?”“很抱歉,不行。我本人已于2小時(shí)前陣亡。”
            
            
            伊萬(wàn)看電視,是勃在演講。伊萬(wàn)覺(jué)得無(wú)聊,換了一個(gè),還是勃在演講,又換一個(gè),還是他。伊萬(wàn)一連撥了幾十個(gè)臺(tái),最后累了,準(zhǔn)備關(guān)電視。這時(shí)候電視畫(huà)面變成一個(gè)KGB,怒氣沖沖地叫:“你再敢換?再敢換?再換判你10年大牢!”
            
            
            某日蘇聯(lián)舉行國(guó)慶**,沿著大街開(kāi)來(lái)了炮兵、機(jī)械化步兵、坦克、自行火炮、戰(zhàn)術(shù)導(dǎo)彈、戰(zhàn)略核導(dǎo)彈,破壞力一個(gè)比一個(gè)大;隊(duì)列末尾卻是兩個(gè)帶公文包的矮子。在看臺(tái)上勃列日涅夫驚訝地說(shuō):“這兩個(gè)人破壞力比核導(dǎo)彈還大!他們是什么人?”
            KGB頭子說(shuō):“不是我的人。”
            國(guó)防部長(zhǎng)說(shuō):“沒(méi)見(jiàn)過(guò)他們。”
            蘇聯(lián)總理說(shuō):“他們是國(guó)家計(jì)委的...”
            
            
            戈?duì)柊蛦谭蛞暡燹r(nóng)場(chǎng),看到豬兒乖乖,一時(shí)興起站在豬中間照了張像。
            待到報(bào)紙準(zhǔn)備發(fā)表時(shí),編輯為照片的標(biāo)題犯了難??
            “戈?duì)柊蛦谭蛲竞拓i在一起”不好。
            “豬和戈?duì)柊蛦谭蛲驹谝黄稹币膊缓谩?
            報(bào)紙出版后,照片下的說(shuō)明文字是??
            “左起第三位是戈?duì)柊蛦谭蛲尽?
            
            
            勃列日涅夫和美國(guó)總統(tǒng)卡特在瑞士開(kāi)會(huì),休息時(shí)間兩個(gè)人很無(wú)聊,就開(kāi)始比誰(shuí)的保膘更忠誠(chéng)。卡特先來(lái),他把自己的報(bào)膘叫進(jìn)來(lái),推開(kāi)窗(外面是20層樓)說(shuō):“約翰,從這里跳下去!”
            約翰哭著說(shuō):“你著么能這樣呢,總統(tǒng)先生,我還有老婆孩子吶。”
            卡特被感動(dòng)了,流著淚說(shuō)是自己不對(duì),叫約翰走了,然后掄到勃列日涅夫,他也大聲叫自己的保膘伊萬(wàn)。
            “伊萬(wàn),從這里跳下去!”
            伊萬(wàn)二話不說(shuō)就要往下跳,卡特一把抱住他說(shuō):“你瘋了?跳下去會(huì)死的!”
            伊萬(wàn)一邊掙扎著要跳下去一邊說(shuō):“放開(kāi)我,混蛋,我還有老婆孩子吶。”
            
            
            早年莫斯科修地鐵,工程師將方案上報(bào)斯大林審批。不久,方案發(fā)下來(lái),上面有斯大林的簽字。
            細(xì)心的工程師發(fā)現(xiàn)圖紙上多了一個(gè)圓型的茶杯印,于是莫斯科地鐵就多了一條環(huán)形線。
            
            
            斯大林肅反時(shí)期的蘇聯(lián)。一位內(nèi)務(wù)人民委員部審判員結(jié)束一天的審判工作,回到辦公室,突然一個(gè)人大笑起來(lái)。對(duì)面辦公桌的同事奇怪的問(wèn)道:“有什么好笑的事嗎?”“是啊,”審判員用手帕擦著笑出來(lái)的眼淚:“一個(gè)很好笑的笑話……”“哦?說(shuō)來(lái)聽(tīng)聽(tīng)?”“你瘋了嗎?!我剛判了說(shuō)這笑話的家伙五年苦役!”
            
            
            蘇聯(lián)30年代肅反擴(kuò)大化時(shí)期。內(nèi)務(wù)人民委員部的一間牢房里關(guān)了三個(gè)人,彼此間談起坐牢的原因。
            第一個(gè)人說(shuō),我因?yàn)榉磳?duì)了黨書(shū)記彼得羅夫;
            第二個(gè)人說(shuō),我因?yàn)橹С至吮说昧_夫;
            第三個(gè)人說(shuō),我就是彼得羅夫。
            
            
            戈?duì)柊蛦谭蚝退乃緳C(jī)開(kāi)著車在路上,戈?duì)柊蛦谭蛲话l(fā)異想,說(shuō):讓開(kāi)!我來(lái)開(kāi)。一個(gè)老警察和一個(gè)新警察在路上值勤,見(jiàn)一輛車歪歪扭扭的開(kāi)得瘋快,老警察就對(duì)新警察說(shuō):去!好好收拾一下。新警察將車攔住之后,又沒(méi)趣沒(méi)趣地回來(lái)了。老警察問(wèn):怎么?里面是誰(shuí)?新警察回答說(shuō):我也不知道里面是誰(shuí),反正給他開(kāi)車的是戈?duì)柊蛦谭颉?
            
            
            美國(guó)外交代表團(tuán)到蘇聯(lián)訪問(wèn),蘇聯(lián)接待官員陪他們參觀“建設(shè)的偉大成就”,并且得意的說(shuō):“到了下一個(gè)五年計(jì)劃,每個(gè)蘇聯(lián)家庭都可以擁有一架私人飛機(jī)!”美國(guó)人驚訝的問(wèn):“ 他們要飛機(jī)干什么呢?”蘇聯(lián)官員說(shuō):“當(dāng)然有用啊……譬如你在莫斯科聽(tīng)說(shuō)列寧格勒開(kāi)始供應(yīng)面包了,你可以馬上開(kāi)著飛機(jī)趕去排上隊(duì)。”
            
            
            一位公民打電話到基輔電臺(tái)問(wèn)主持人:“共產(chǎn)主義到底是藝術(shù)還是科學(xué)?” 主持人說(shuō):“我也不清楚,但我肯定不是科學(xué)” “為什么?” “如果是科學(xué)的話,他們應(yīng)該拿狗做試驗(yàn)。”
            
            
            斯大林在大會(huì)上引經(jīng)據(jù)典地說(shuō):“馬克思和列寧說(shuō)1+1=2,而托洛茨基和布哈林說(shuō)1+1不等于3。是托洛茨基和布哈林說(shuō)的對(duì)呢?還是馬克思和列寧說(shuō)得對(duì)呢?”下面聽(tīng)眾一臉疑惑,“毫無(wú)疑問(wèn),是馬克思和列寧說(shuō)的對(duì)!”底下熱烈鼓掌,“托洛茨基和布哈林是帝國(guó)主義派來(lái)的間諜,說(shuō)1+1不等于3的人罪不容赦……”
            
            
            列寧快去世了,叫趕快把繼承人斯大林召進(jìn)克里姆林宮來(lái),臨終有幾句話要囑托。“不瞞你說(shuō),我還有一個(gè)隱憂啊,斯大林。”“說(shuō)吧,親愛(ài)的伊里奇。”斯大林專心地聽(tīng)著。“那就是,人們會(huì)跟你走嗎?不知你想過(guò)了沒(méi)有?”“他們一定會(huì)跟我走的。”斯大林強(qiáng)調(diào)說(shuō),“一定會(huì)!” “但愿如此。”列寧說(shuō),“我只是擔(dān)心,萬(wàn)一他們不跟你走,你怎么辦?”“沒(méi)問(wèn)題!”斯大林答道:“那他們就得跟你走!”
            
            
            集體農(nóng)莊莊員伊萬(wàn)在河里捉到一條大魚(yú),高興的回到家里和老婆說(shuō):“看,我們有炸魚(yú)吃了!”
            “沒(méi)有油啊。”
            “那就煮!”
            “沒(méi)鍋。”
            “烤魚(yú)!”
            “沒(méi)柴。”
            伊萬(wàn)氣死了,走到河邊把魚(yú)扔了回去。那魚(yú)在水里劃了一個(gè)半圓,上身出水,舉起右鰭激動(dòng)地高呼:“斯大林萬(wàn)歲!”
            
            
            “瑞典能否建立共產(chǎn)主義”?
            “不能。”
            “為何?”
            “列寧同志說(shuō)了:共產(chǎn)主義不在山那邊。”
            
            
            一個(gè)蘇聯(lián)KGB特工和一個(gè)美國(guó)CIA特工互相吹噓各自的機(jī)構(gòu)是如何的杰出。
            那個(gè)KGB特工首先發(fā)言說(shuō),“我們擁有你們美國(guó)過(guò)去15年里所有導(dǎo)彈發(fā)射的詳細(xì)數(shù)據(jù)。”
            CIA特工說(shuō):“這不算什么。我們CIA掌握著你們蘇聯(lián)未來(lái)15年里所有當(dāng)選的中央委員名單。”
            
            
            一艘航行在大海上的輪船快要沉了,船長(zhǎng)叫乘客趕緊跳海,但他喊了半天沒(méi)有一個(gè)人跳,一個(gè)社會(huì)學(xué)家說(shuō)我來(lái)喊,他去喊過(guò)之后所有的人都跳下海去了。船長(zhǎng)覺(jué)得奇怪,問(wèn)他是怎么喊的,社會(huì)學(xué)家回答說(shuō):我對(duì)法國(guó)人說(shuō)這樣跳下去很浪漫,我對(duì)西班牙人說(shuō)這樣跳下去很瀟灑,我對(duì)英國(guó)人說(shuō)這樣跳下去是一種體育運(yùn)動(dòng),我對(duì)美國(guó)人說(shuō)這樣跳下去有利可圖,我對(duì)蘇聯(lián)人說(shuō)這樣跳下去是革命行動(dòng)。
            
            
            在蘇聯(lián)的一趟公交車,一個(gè)男的非常謙恭地問(wèn)站在他身旁的另一個(gè)男的:“同志,請(qǐng)問(wèn)您是克格勃嗎?”
            那人答道:“不是。”
            又問(wèn):“那您有沒(méi)有親戚或朋友是克格勃呢?”
            答:“沒(méi)有。”
            還問(wèn):“那您是否跟克格勃有些交往或聯(lián)系?”
            答:“沒(méi)有,你要干嘛啊!”
            該男生氣地說(shuō):“干嘛,他媽的,你踩著我的腳了!”
            
            
            赫魯曉夫作報(bào)告,批判斯大林。忽然,有人從臺(tái)下遞了個(gè)紙條,寫(xiě)道:當(dāng)他做壞事的時(shí)候,你在哪里?赫魯曉夫一看這個(gè)條子,大聲怒喝道:“是誰(shuí)寫(xiě)的,給我站出來(lái)。”臺(tái)下雅雀無(wú)聲,沒(méi)有人站出來(lái)。赫魯曉夫接著說(shuō)道:“同志們,我當(dāng)時(shí)就和你們現(xiàn)在一樣,你們知道我當(dāng)時(shí)為什么不敢站出來(lái)了吧”
            
            
            勃列日涅夫:同志們,美國(guó)人登上了月球,我們不能再等了,黨決定讓你們上太陽(yáng)。
            宇航員:總書(shū)記同志,我們會(huì)被燒死的。
            勃列日涅夫:沒(méi)關(guān)系,同志們,黨都替你們想好了,你們晚上去。
            
            
            電影《這里的黎明靜悄悄》試映時(shí),由于其中有部分裸體鏡頭,因此主管電影審核的官員曾試圖把這部電影禁演,幸虧勃列日涅夫內(nèi)部觀看時(shí)感動(dòng)得熱淚盈眶,這部?jī)?yōu)秀的電影才有幸與觀眾見(jiàn)面,成為世界電影史上不朽的篇章。而另一部電影由于其中有主人公走到教堂時(shí)跪地痛哭的鏡頭,被電影審核官員認(rèn)為是宣揚(yáng)宗教而準(zhǔn)備勒令裁掉這部分內(nèi)容,恰恰勃列日涅夫看到這里時(shí)動(dòng)了感情,因此這個(gè)鏡頭得以幸存下來(lái)。
            
            
            當(dāng)年的捷克斯洛伐克政府中,設(shè)立了一個(gè)“海軍部”,結(jié)果,蘇聯(lián)老大哥就對(duì)捷克人說(shuō):你們是內(nèi)陸國(guó)家,設(shè)什么海軍部?
            捷克人回答說(shuō):那你們不是也設(shè)了文化部嗎?

          posted @ 2007-01-20 15:15 fisher 閱讀(2199) | 評(píng)論 (0)編輯 收藏

          [調(diào)查]國(guó)內(nèi)有多少人使用MINA?

          最近看到越來(lái)越多的人使用mina,甚至在線下也碰到合作公司的庫(kù)中使用MINA,出于好奇,嘗試一下用自己的blog做一下調(diào)查,訪問(wèn)本blog的兄弟,如果您使用MINA作為自己的通訊基礎(chǔ)件,請(qǐng)留言介紹一下自己

          posted @ 2006-12-27 13:00 fisher 閱讀(4517) | 評(píng)論 (20)編輯 收藏

          隨想

          軟件開(kāi)發(fā)的世界里充滿了不理解,客戶不理解軟件是怎樣開(kāi)發(fā)的、經(jīng)理不理解開(kāi)發(fā)人員、開(kāi)發(fā)人員不理解指揮者。

          問(wèn)題在于軟件開(kāi)發(fā)驚人的困難,造成很少有開(kāi)發(fā)人員能夠說(shuō)出軟件自始至終是怎樣開(kāi)發(fā)的,并能夠?qū)@個(gè)過(guò)程中會(huì)遇到的不同選擇所隱含的結(jié)果表現(xiàn)出適度的理解。

          在軟件開(kāi)發(fā)人員還很年輕的時(shí)候(十幾歲或二十出頭),他們通常集中精力學(xué)習(xí)和使用技術(shù),稱自己為perl程序員、Linux專家、EJB開(kāi)發(fā)人員、.NET開(kāi)發(fā)人員等。對(duì)他們來(lái)說(shuō)技術(shù)是最重要的事情。因?yàn)榧夹g(shù)在不斷的變化,年輕的程序員傾向于大致學(xué)習(xí)一個(gè)技術(shù),在一到兩個(gè)項(xiàng)目中使用,然后重新開(kāi)始學(xué)習(xí)新技術(shù)或者是學(xué)習(xí)以前使用過(guò)的技術(shù)的最新發(fā)展。這里的問(wèn)題是,他們一遍又一遍的重復(fù)的學(xué)習(xí)的不過(guò)是同樣的低層次基本技能的不同風(fēng)味。

          幸運(yùn)的是,很多開(kāi)發(fā)人員在經(jīng)過(guò)了幾輪技術(shù)學(xué)習(xí)之后逐漸意識(shí)到:一旦用COBOLJavaC#等語(yǔ)言為事務(wù)控制編寫(xiě)過(guò)代碼,就會(huì)開(kāi)始認(rèn)識(shí)到基本的、本質(zhì)的東西是不變的。不同環(huán)境下的數(shù)據(jù)庫(kù)訪問(wèn)、用戶界面設(shè)計(jì)等領(lǐng)域也是同樣的情況。不久以后,開(kāi)發(fā)人員逐漸認(rèn)識(shí)到無(wú)論具體的技術(shù)怎樣,很多基礎(chǔ)性的東西是保持不變的,這些基礎(chǔ)性的東西有的在學(xué)校里講過(guò),有的沒(méi)有。
          這種認(rèn)識(shí)經(jīng)常發(fā)生在開(kāi)發(fā)人員接近三十歲或剛過(guò)三十歲的時(shí)候,通常是人們開(kāi)始穩(wěn)定下來(lái),結(jié)婚、買房的時(shí)候。這是比較幸運(yùn)的情況,因?yàn)樯厦嫣岬降倪@些新的個(gè)人需求意味著他們不可能再投入大量的時(shí)間去學(xué)習(xí)新的技術(shù),他們需要用這些時(shí)間和家庭成員在一起。突然的,高層次的角色如項(xiàng)目負(fù)責(zé)人、項(xiàng)目經(jīng)理、(非敏捷的)建模人員等對(duì)他們變得非常有吸引力,因?yàn)檫@些角色不需要持續(xù)花費(fèi)大量的時(shí)間和精力去學(xué)習(xí)新技術(shù)。于是,等到開(kāi)發(fā)人員開(kāi)始真正學(xué)到技藝的時(shí)候,他們已經(jīng)處于離開(kāi)開(kāi)發(fā)人員角色的轉(zhuǎn)變過(guò)程中了。所幸的是,新的“小年輕”不斷的跟上來(lái),這個(gè)過(guò)程在不斷的循環(huán)重復(fù)。最終的結(jié)果是:大部分最活躍的正在開(kāi)發(fā)軟件的人通常不是最稱職的做這件事的人,而他們自己甚至還不知道。

          posted @ 2006-07-24 11:31 fisher 閱讀(2251) | 評(píng)論 (6)編輯 收藏

          今天學(xué)會(huì)一個(gè)新名詞 - Troll

          來(lái)自pythoncn的maillist,呵呵,挺有意思
          -------------
          像Chris Qie <longroad1999@gmail.com>這樣的在公共論壇用侮辱性言語(yǔ)挑起罵戰(zhàn)并從中獲取某種不知名快感的人,在Usenet文化中有一個(gè)名稱:

          • Troll

          • Troll作動(dòng)詞是釣魚(yú)的意思,指那些人發(fā)表某種言論后等待別人的攻擊性回復(fù),從而獲得快感。Troll還有一個(gè)意思是斯堪的納維亞神話中一種長(zhǎng)相丑陋、愛(ài)惡作 劇、令人討厭的巨人,和那些找罵的人有相似之處,因此也被引申過(guò)來(lái)形容那些 人,做名詞使用。回troll的貼則被稱為feed the trolls,即給trolls喂食。
          • Trolls有很多種,像Chris Qie只是其中一種,即使用種族歧視性語(yǔ)言激怒別人,好讓別人回帖罵他。comp.lang.python上著名的troll: Xah Lee則是長(zhǎng)年在各個(gè) script語(yǔ)言討論組上交叉張貼無(wú)關(guān)內(nèi)容或用錯(cuò)誤百出的話語(yǔ)對(duì)某種語(yǔ)言或者文化進(jìn) 行攻擊。但無(wú)論那種troll,他們的目的都是一樣的:想通過(guò)怪誕的舉動(dòng)引起別人 的注意。這是一種病態(tài)心理,是一種未成熟,類似小孩“人來(lái)瘋”似的舉動(dòng)。
          • Trolls的存在對(duì)公共空間是破壞性的。它們的post會(huì)引起很多人回帖,甚至?xí)星榫w激動(dòng)者采用謾罵的方式回敬,這些人被稱為trollhunter。這些行為正中trolls 的下懷,使他們獲得被罵的快樂(lè),從而更加積極的trolling。而且即使 trollhunter的動(dòng)機(jī)是好的,也會(huì)給論壇帶來(lái)不好影響,使其他用戶接收到大量無(wú) 關(guān)信息和攻擊性信息,成為受害者。公共空間的和諧性被破壞。
          • Trolls最愿意看到別人回他的貼,無(wú)論是正兒八經(jīng)指出他的錯(cuò)誤還是義憤填膺的對(duì)他謾罵。對(duì)一個(gè)troll來(lái)說(shuō),最能讓他感到沮喪的則是沒(méi)有人理他。而我們,正是 應(yīng)該讓他們沮喪,失去trolling的動(dòng)力。
          • 對(duì)待trolls的方法,一方面要靠大家自覺(jué),克制自己回帖的沖動(dòng),不給他們喂食。

          另一方面,在郵件列表這種有管理員的公共空間,可以向管理員提出封禁trolls的 提案。

          • 下圖是我從c.l.python上Keith Thompson對(duì)Xah Lee的trolling行為提醒公眾的帖子中拷貝過(guò)來(lái)的圖片(請(qǐng)使用等寬字體觀看)
                  +-------------------+             .:\:\:/:/:.
                 |   PLEASE DO NOT   |            :.:\:\:/:/:.:
                 |  FEED THE TROLLS  |           :=.' -   - '.=:
                 |                   |           '=(\ 9   9 /)='
                 |   Thank you,      |              (  (_)  )
                 |       Management  |              /`-vvv-'\
                 +-------------------+             /         \
                         |  |        @@@          / /|,,,,,|\ \
                         |  |        @@@         /_//  /^\  \\_\
           @x@@x@        |  |         |/         WW(  (   )  )WW
           \||||/        |  |        \|           __\,,\ /,,/__
            \||/         |  |         |      jgs (______Y______)
          /\/\/\/\/\/\/\/\//\/\\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
          
          • 歷年python-cn 各種列表著名 Troll 案例:

            1. 051106-RE:python的無(wú)奈

              唉,沒(méi)想到這里鄉(xiāng)下賤農(nóng)(的賤崽)還真不少,
              說(shuō)城市人酒囊飯袋是農(nóng)村人聊以自慰的一點(diǎn)點(diǎn)資本,
              就象美國(guó)黑人在奧運(yùn)會(huì)奪得金牌時(shí)獲得的快樂(lè)一樣,
              我就是酒囊飯袋怎么樣?
              可惜就是你爸在田間地頭為我流汗流淚的勞作養(yǎng)活的我,
              哈哈?心理不平衡了?誰(shuí)讓你爹是農(nóng)民!
              還"龍村",真夠惡心的,一輩子你都是低賤的鄉(xiāng)下人 ,
              低賤!哈哈!就是血染你家老母老爹,然后發(fā)跡的,你能怎樣?HOHO~
              
              -- 是標(biāo)準(zhǔn)的運(yùn)用城市差異來(lái)挑起回復(fù)的實(shí)例,在中國(guó)這樣的發(fā)展中國(guó)家尤其奏效
          • 060112-RE:Web開(kāi)發(fā)有必要選Python(或者是ruby)么?????????

          • ???????????? -- 開(kāi)始,僅僅是比較典型的"是否最優(yōu)"探討,后來(lái)立即轉(zhuǎn)向人身攻擊,是經(jīng)典的通過(guò)技術(shù)爭(zhēng)論引發(fā)回復(fù)的實(shí)例

          posted @ 2006-06-13 10:27 fisher 閱讀(13592) | 評(píng)論 (9)編輯 收藏

          程序員的進(jìn)化——從學(xué)生到首席執(zhí)行官(轉(zhuǎn))


          /*-------------------------------------------

          ? 程序員的進(jìn)化——從學(xué)生到首席執(zhí)行官

          翻譯 2002 王詠剛
          http://www.contextfree.net/
          轉(zhuǎn)譯自 Omri's Computer Humor Page
          http://www.cs.bgu.ac.il/~omri/Humor/
          -------------------------------------------*/


          --------------------------------------------------------------------------------
          中學(xué)階段

          ? ? ? 10 PRINT "HELLO WORLD"
          ? ? ? 20 END
          --------------------------------------------------------------------------------
          大學(xué)一年級(jí)

          ? ? ? program Hello(input, output)
          ? ? ? ? begin
          ? ? ? ? writeln('Hello World')
          ? ? ? ? end.
          --------------------------------------------------------------------------------
          大學(xué)高年級(jí)

          ? ? ? (defun hello
          ? ? ? ? (print
          ? ? ? ? (cons 'Hello (list 'World))))
          --------------------------------------------------------------------------------
          初級(jí)程序員

          ? ? ? #include <stdio.h>
          ? ? ? void main(void)
          ? ? ? {
          ? ? ? ? char *message[] = {"Hello ", "World"};
          ? ? ? ? int i;

          ? ? ? ? for(i = 0; i < 2; ++i)
          ? ? ? ? printf("%s", message
          );
          ? ? ? ? printf("\n");
          ? ? ? }
          --------------------------------------------------------------------------------
          編程老鳥(niǎo)

          ? ? ? #include <iostream.h>
          ? ? ? #include <string.h>

          ? ? ? class string
          ? ? ? {
          ? ? ? private:
          ? ? ? ? int size;
          ? ? ? ? char *ptr;

          ? ? ? public:
          ? ? ? ? string() : size(0), ptr(new char('\0')) {}

          ? ? ? ? string(const string &s) : size(s.size)
          ? ? ? ? {
          ? ? ? ? ptr = new char[size + 1];
          ? ? ? ? strcpy(ptr, s.ptr);
          ? ? ? ? }

          ? ? ? ? ~string()
          ? ? ? ? {
          ? ? ? ? delete [] ptr;
          ? ? ? ? }

          ? ? ? ? friend ostream &operator <<(ostream &, const string &);
          ? ? ? ? string &operator=(const char *);
          ? ? ? };

          ? ? ? ostream &operator<<(ostream &stream, const string &s)
          ? ? ? {
          ? ? ? ? return(stream << s.ptr);
          ? ? ? }

          ? ? ? string &string::operator=(const char *chrs)
          ? ? ? {
          ? ? ? ? if (this != &chrs)
          ? ? ? ? {
          ? ? ? ? delete [] ptr;
          ? ? ? ? size = strlen(chrs);
          ? ? ? ? ptr = new char[size + 1];
          ? ? ? ? strcpy(ptr, chrs);
          ? ? ? ? }
          ? ? ? ? return(*this);
          ? ? ? }

          ? ? ? int main()
          ? ? ? {
          ? ? ? ? string str;

          ? ? ? ? str = "Hello World";
          ? ? ? ? cout << str << end

          ? ? ? ? return(0);
          ? ? ? }
          --------------------------------------------------------------------------------
          編程高手

          ? ? ? [
          ? ? ? uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820)
          ? ? ? ]
          ? ? ? library LHello
          ? ? ? {
          ? ? ? ? // bring in the master library
          ? ? ? ? importlib("actimp.tlb");
          ? ? ? ? importlib("actexp.tlb");

          ? ? ? ? // bring in my interfaces
          ? ? ? ? #include "pshlo.idl"

          ? ? ? ? [
          ? ? ? ? uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820)
          ? ? ? ? ]
          ? ? ? ? cotype THello
          ? ? ? {
          ? ? ? interface IHello;
          ? ? ? interface IPersistFile;
          ? ? ? };
          ? ? ? };

          ? ? ? [
          ? ? ? exe,
          ? ? ? uuid(2573F890-CFEE-101A-9A9F-00AA00342820)
          ? ? ? ]
          ? ? ? module CHelloLib
          ? ? ? {

          ? ? ? ? // some code related header files
          ? ? ? ? importheader(<windows.h>);
          ? ? ? ? importheader(<ole2.h>);
          ? ? ? ? importheader(<except.hxx>);
          ? ? ? ? importheader("pshlo.h");
          ? ? ? ? importheader("shlo.hxx");
          ? ? ? ? importheader("mycls.hxx");

          ? ? ? ? // needed typelibs
          ? ? ? ? importlib("actimp.tlb");
          ? ? ? ? importlib("actexp.tlb");
          ? ? ? ? importlib("thlo.tlb");

          ? ? ? ? [
          ? ? ? ? uuid(2573F891-CFEE-101A-9A9F-00AA00342820),
          ? ? ? ? aggregatable
          ? ? ? ? ]
          ? ? ? ? coclass CHello
          ? ? ? {
          ? ? ? cotype THello;
          ? ? ? };
          ? ? ? };

          ? ? ? #include "ipfix.hxx"

          ? ? ? extern HANDLE hEvent;

          ? ? ? class CHello : public CHelloBase
          ? ? ? {
          ? ? ? public:
          ? ? ? ? IPFIX(CLSID_CHello);

          ? ? ? ? CHello(IUnknown *pUnk);
          ? ? ? ? ~CHello();

          ? ? ? ? HRESULT __stdcall PrintSz(LPWSTR pwszString);

          ? ? ? private:
          ? ? ? ? static int cObjRef;
          ? ? ? };

          ? ? ? #include <windows.h>
          ? ? ? #include <ole2.h>
          ? ? ? #include <stdio.h>
          ? ? ? #include <stdlib.h>
          ? ? ? #include "thlo.h"
          ? ? ? #include "pshlo.h"
          ? ? ? #include "shlo.hxx"
          ? ? ? #include "mycls.hxx"

          ? ? ? int CHello::cObjRef = 0;

          ? ? ? CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk)
          ? ? ? {
          ? ? ? ? cObjRef++;
          ? ? ? ? return;
          ? ? ? }

          ? ? ? HRESULT __stdcall CHello::PrintSz(LPWSTR pwszString)
          ? ? ? {
          ? ? ? ? printf("%ws\n", pwszString);
          ? ? ? ? return(ResultFromScode(S_OK));
          ? ? ? }

          ? ? ? CHello::~CHello(void)
          ? ? ? {

          ? ? ? // when the object count goes to zero, stop the server
          ? ? ? cObjRef--;
          ? ? ? if( cObjRef == 0 )
          ? ? ? ? PulseEvent(hEvent);

          ? ? ? return;
          ? ? ? }

          ? ? ? #include <windows.h>
          ? ? ? #include <ole2.h>
          ? ? ? #include "pshlo.h"
          ? ? ? #include "shlo.hxx"
          ? ? ? #include "mycls.hxx"

          ? ? ? HANDLE hEvent;

          ? ? ? int _cdecl main(
          ? ? ? int argc,
          ? ? ? char * argv[]
          ? ? ? ) {
          ? ? ? ULONG ulRef;
          ? ? ? DWORD dwRegistration;
          ? ? ? CHelloCF *pCF = new CHelloCF();

          ? ? ? hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);

          ? ? ? // Initialize the OLE libraries
          ? ? ? CoInitializeEx(NULL, COINIT_MULTITHREADED);

          ? ? ? CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,
          ? ? ? ? REGCLS_MULTIPLEUSE, &dwRegistration);

          ? ? ? // wait on an event to stop
          ? ? ? WaitForSingleObject(hEvent, INFINITE);

          ? ? ? // revoke and release the class object
          ? ? ? CoRevokeClassObject(dwRegistration);
          ? ? ? ulRef = pCF->Release();

          ? ? ? // Tell OLE we are going away.
          ? ? ? CoUninitialize();

          ? ? ? return(0);
          ? ? ? }

          ? ? ? extern CLSID CLSID_CHello;
          ? ? ? extern UUID LIBID_CHelloLib;

          ? ? ? CLSID CLSID_CHello = { /* 2573F891-CFEE-101A-9A9F-00AA00342820 */
          ? ? ? ? 0x2573F891,
          ? ? ? ? 0xCFEE,
          ? ? ? ? 0x101A,
          ? ? ? ? { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
          ? ? ? };

          ? ? ? UUID LIBID_CHelloLib = { /* 2573F890-CFEE-101A-9A9F-00AA00342820 */
          ? ? ? ? 0x2573F890,
          ? ? ? ? 0xCFEE,
          ? ? ? ? 0x101A,
          ? ? ? ? { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
          ? ? ? };

          ? ? ? #include <windows.h>
          ? ? ? #include <ole2.h>
          ? ? ? #include <stdlib.h>
          ? ? ? #include <string.h>
          ? ? ? #include <stdio.h>
          ? ? ? #include "pshlo.h"
          ? ? ? #include "shlo.hxx"
          ? ? ? #include "clsid.h"

          ? ? ? int _cdecl main(
          ? ? ? int argc,
          ? ? ? char * argv[]
          ? ? ? ) {
          ? ? ? HRESULT hRslt;
          ? ? ? IHello ? ? *pHello;
          ? ? ? ULONG ulCnt;
          ? ? ? IMoniker * pmk;
          ? ? ? WCHAR wcsT[_MAX_PATH];
          ? ? ? WCHAR wcsPath[2 * _MAX_PATH];

          ? ? ? // get object path
          ? ? ? wcsPath[0] = '\0';
          ? ? ? wcsT[0] = '\0';
          ? ? ? if( argc > 1) {
          ? ? ? ? mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1);
          ? ? ? ? wcsupr(wcsPath);
          ? ? ? ? }
          ? ? ? else {
          ? ? ? ? fprintf(stderr, "Object path must be specified\n");
          ? ? ? ? return(1);
          ? ? ? ? }

          ? ? ? // get print string
          ? ? ? if(argc > 2)
          ? ? ? ? mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1);
          ? ? ? else
          ? ? ? ? wcscpy(wcsT, L"Hello World");

          ? ? ? printf("Linking to object %ws\n", wcsPath);
          ? ? ? printf("Text String %ws\n", wcsT);

          ? ? ? // Initialize the OLE libraries
          ? ? ? hRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);

          ? ? ? if(SUCCEEDED(hRslt)) {

          ? ? ? ? hRslt = CreateFileMoniker(wcsPath, &pmk);
          ? ? ? ? if(SUCCEEDED(hRslt))
          ? ? ? hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);

          ? ? ? ? if(SUCCEEDED(hRslt)) {

          ? ? ? // print a string out
          ? ? ? pHello->PrintSz(wcsT);

          ? ? ? Sleep(2000);
          ? ? ? ulCnt = pHello->Release();
          ? ? ? }
          ? ? ? ? else
          ? ? ? printf("Failure to connect, status: %lx", hRslt);

          ? ? ? ? // Tell OLE we are going away.
          ? ? ? ? CoUninitialize();
          ? ? ? ? }

          ? ? ? return(0);
          ? ? ? }
          --------------------------------------------------------------------------------
          黑客初階

          ? ? ? #!/usr/local/bin/perl
          ? ? ? $msg="Hello, world.\n";
          ? ? ? if ($#ARGV >= 0) {
          ? ? ? ? while(defined($arg=shift(@ARGV))) {
          ? ? ? ? $outfilename = $arg;
          ? ? ? ? open(FILE, ">" . $outfilename) || die "Can't write $arg: $!\n";
          ? ? ? ? print (FILE $msg);
          ? ? ? ? close(FILE) || die "Can't close $arg: $!\n";
          ? ? ? ? }
          ? ? ? } else {
          ? ? ? ? print ($msg);
          ? ? ? }
          ? ? ? 1;
          --------------------------------------------------------------------------------
          黑客有成

          ? ? ? #include <stdio.h>
          ? ? ? #define S "Hello, World\n"
          ? ? ? main(){exit(printf(S) == strlen(S) ? 0 : 1);}
          --------------------------------------------------------------------------------
          黑客高手

          ? ? ? % cc -o a.out ~/src/misc/hw/hw.c
          ? ? ? % a.out
          --------------------------------------------------------------------------------
          黑客大蝦

          ? ? ? % cat
          ? ? ? Hello, world.
          ? ? ? ^D
          --------------------------------------------------------------------------------
          初級(jí)經(jīng)理

          ? ? ? 10 PRINT "HELLO WORLD"
          ? ? ? 20 END
          --------------------------------------------------------------------------------
          中級(jí)經(jīng)理

          ? ? ? mail -s "Hello, world." bob@b12
          ? ? ? Bob, could you please write me a program that prints "Hello, world."?
          ? ? ? I need it by tomorrow.
          ? ? ? ^D
          --------------------------------------------------------------------------------
          高級(jí)經(jīng)理

          ? ? ? % zmail jim
          ? ? ? I need a "Hello, world." program by this afternoon.
          --------------------------------------------------------------------------------
          首席執(zhí)行官

          ? ? ? % letter
          ? ? ? letter: Command not found.
          ? ? ? % mail
          ? ? ? To: ^X ^F ^C
          ? ? ? % help mail
          ? ? ? help: Command not found.
          ? ? ? % damn!
          ? ? ? !: Event unrecognized
          ? ? ? % logout
          --------------------------------------------------------------------------------

          posted @ 2006-05-18 17:14 fisher 閱讀(1059) | 評(píng)論 (0)編輯 收藏

          Hello World的196種寫(xiě)法

          還記得孔乙己說(shuō):茴香豆的‘茴’字有四種寫(xiě)法嗎?現(xiàn)在我們的知識(shí)份子已經(jīng)進(jìn)步了,看看Hello World的196種寫(xiě)法:)

          http://man.lupaworld.com/content/develop/hello/HelloWorld.shtml

          posted @ 2006-05-18 16:58 fisher 閱讀(874) | 評(píng)論 (0)編輯 收藏

          主站蜘蛛池模板: 哈巴河县| 云浮市| 连州市| 襄汾县| 彭州市| 夏河县| 昌黎县| 泰宁县| 九台市| 会宁县| 纳雍县| 杨浦区| 新野县| 鞍山市| 徐州市| 蒙自县| 凤翔县| 扎鲁特旗| 秀山| 隆回县| 柳林县| 喜德县| 鄯善县| 长沙市| 赞皇县| 娄底市| 盐津县| 读书| 盱眙县| 龙里县| 泊头市| 汉川市| 类乌齐县| 东乡族自治县| 石屏县| 岑溪市| 石门县| 库伦旗| 南和县| 德江县| 巨野县|