<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 59, 文章 - 4, 評論 - 184, 引用 - 7
    數據加載中……

    程序員的進化——從學生到首席執行官(轉)


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

    ? 程序員的進化——從學生到首席執行官

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


    --------------------------------------------------------------------------------
    中學階段

    ? ? ? 10 PRINT "HELLO WORLD"
    ? ? ? 20 END
    --------------------------------------------------------------------------------
    大學一年級

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

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

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

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

    ? ? ? #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
    --------------------------------------------------------------------------------
    初級經理

    ? ? ? 10 PRINT "HELLO WORLD"
    ? ? ? 20 END
    --------------------------------------------------------------------------------
    中級經理

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

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

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

    posted on 2006-05-18 17:14 fisher 閱讀(1058) 評論(0)  編輯  收藏 所屬分類: Other

    評論

    # re: 程序員的進化——從學生到首席執行官(轉)  回復  更多評論   

    程序惡搞,不錯,收藏
    2007-08-28 14:36 | 姜利陽
    主站蜘蛛池模板: 中文成人久久久久影院免费观看| 日本免费一区二区三区| 国产成人精品日本亚洲专区| 国产精品99久久免费观看| 亚洲欧洲国产成人精品| 国产在线观看www鲁啊鲁免费| 国产午夜成人免费看片无遮挡| 亚洲 暴爽 AV人人爽日日碰 | 四虎永久在线精品免费观看地址 | 国产大片91精品免费看3| 久久国产精品免费观看| 亚洲熟女综合色一区二区三区 | 国产亚洲精品高清在线| 啦啦啦中文在线观看电视剧免费版 | 国产亚洲精品高清在线| 毛片a级毛片免费播放100| 久久最新免费视频| 亚洲午夜理论片在线观看| 国产亚洲真人做受在线观看| 麻豆国产VA免费精品高清在线| 久久精品成人免费网站| 亚洲a无码综合a国产av中文| 亚洲春色另类小说| 国产亚洲情侣一区二区无| 成年女人免费视频播放77777| 国产成人无码区免费内射一片色欲| 亚洲第一街区偷拍街拍| 亚洲视频中文字幕在线| 亚洲熟妇无码AV在线播放| 日韩精品视频免费在线观看| 91久久精品国产免费直播| 在线观看免费黄网站| 国产精品亚洲а∨无码播放麻豆| 亚洲综合一区二区国产精品| 亚洲熟妇丰满多毛XXXX| 亚洲AV无码乱码在线观看性色扶| 成人免费无码视频在线网站| 中文字幕在线观看免费视频| 日本免费污片中国特一级| g0g0人体全免费高清大胆视频| 久久亚洲AV成人无码国产电影|