<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 | 姜利陽
    主站蜘蛛池模板: 亚欧免费无码aⅴ在线观看| 午夜爱爱免费视频| 亚洲五月综合网色九月色| 国产精品二区三区免费播放心| 永久免费观看黄网站| 亚洲精品视频在线播放| 国产小视频免费观看| 亚欧免费一级毛片| 国产亚洲一卡2卡3卡4卡新区| 亚洲色WWW成人永久网址| 99久久这里只精品国产免费| 久香草视频在线观看免费| 亚洲成人免费在线观看| 亚洲精品无码你懂的网站| 国产啪精品视频网免费| 拍拍拍无挡免费视频网站| 亚洲久热无码av中文字幕| 亚洲AV综合色一区二区三区| 成年男女免费视频网站| 久久久久久AV无码免费网站| 妇女自拍偷自拍亚洲精品| 亚洲成无码人在线观看| 久久亚洲精品中文字幕三区| 日本免费一区二区三区最新| 久久aa毛片免费播放嗯啊| 免费一级全黄少妇性色生活片| 亚洲国产韩国一区二区| 国产国拍亚洲精品mv在线观看 | 男女猛烈无遮掩视频免费软件| 亚洲免费精彩视频在线观看| 亚洲不卡无码av中文字幕| 日韩版码免费福利视频| 特级精品毛片免费观看| 国产va免费精品| 色偷偷尼玛图亚洲综合| ww亚洲ww在线观看国产| 亚洲精品在线网站| 亚洲国产一区二区a毛片| 亚洲区小说区图片区QVOD| 无码欧精品亚洲日韩一区夜夜嗨| 岛国大片免费在线观看|