The problem of computer code: Leviathan or common power? $GULDQ0DFNHQ]LH ,QVWLWXWHIRU&XOWXUDO5HVHDUFK/DQFDVWHU8QLYHUVLW\ 0DUFK The problem of computer code: Leviathan or common power? >,@WLVWKHVROXWLRQWKDWFRXQWVEXWWKHSUREOHPDOZD\VKDVWKHVROXWLRQLWGHVHUYHVLQ WHUPVRIWKHZD\LQZKLFKLWLVVWDWHGLHWKHFRQGLWLRQVXQGHUZKLFKLWLV GHWHUPLQHGDVDSUREOHPDQGRIWKHPHDQVDQGWHUPVDWRXUGLVSRVDOIRUVWDWLQJLW 'HOHX]H ,VFRGHLPSRUWDQW"2YHUWKHODVWGHFDGHVWXGLHVRIGLJLWDOFXOWXUHLQIRUPDWLRQFXOWXUH LQIRUPDWLRQVRFLHW\DQGF\EHUFXOWXUHVKDYHIRFXVHGRQWKHFRQWHQWRIQHZPHGLDDQG KRZQHZPHGLDDUHXVHG7KHVHVWXGLHVLGHQWLI\FKDQJHVLQWKHFRPPXQLWLHV UHSUHVHQWDWLRQVLQWHUDFWLRQVLGHRORJLHVVXEMHFWLYLWLHVDQGHYHQFRUSRUHDOLWLHV DVVRFLDWHGZLWKLQIRUPDWLRQDQGFRPPXQLFDWLRQ7KLVSDSHUVKLIWVIRFXVDQGDVNV ZKHWKHUFRGHVRIWZDUHRUSURJUDPVLVLPSRUWDQW Why code? &RGHREMHFWVKDYHYHU\XQHYHQYLVLELOLW\DQGVLJQLILFDQFHZLWKLQFROOHFWLYHOLIH6RPH FRGHREMHFWVDUHPXFKPRUHLPSRUWDQWDQGVLQJXODUWKDQRWKHUV0DQ\DUHORVWWRVLJKW IRXQGHULQJLQEDQDOUDWLRQDOLVDWLRQVWULYLDODSSOLFDWLRQVDQGVHHPLQJO\SRLQWOHVV IDQWDVLHVRILQIRUPDWLFRUGHU 6RPHIRUPFULWLFDOFRPSRQHQWVRINH\LQIUDVWUXFWXUHV (OOHQ8OOPDQDSURJUDPPHUIURPWKH:HVW&RDVWRIWKH86$ZULWHVRIKHUDVWRQLVKPHQW DWILQGLQJWKDWWKHHQWLUHWUDQVDFWLRQSURFHVVLQJV\VWHPRIDJOREDOFUHGLWFDUGSURYLGHU UHOLHGRQVHYHUDOGR]HQOLQHVRIDQWLTXHDVVHPEOHUFRGHWKDWYHU\IHZSHRSOHFRXOG XQGHUVWDQG8OOPDQ1HLWKHUWKHLQWULQVLFSURSHUWLHVRIFRGHDVDQREMHFW 0DQRYLFKQRUFRQWHVWVRYHULWVFRPPRGLW\YDOXHRUSURSHUW\VWDWXV/HVVLJ 0RRG\QRUWKHSDUWLFXODUNLQGVRIODERXULGHQWLW\RUVXEFXOWXUDOOLIH DVVRFLDWHGZLWKLW SURJUDPPHU KDFNHU NQRZOHGJHZRUNHU &DVWHOOVJXDUDQWHH WKHUHOHYDQFHRUSRWHQF\RIFRGH *LYHQWKLVZK\DQDO\VHFRGHUDWKHUWKDQPRUHYLVLEOHDFFHVVLEOHGLUHFWO\LQWHUDFWLYH DQGDIIHFWLYHIDFHWVRIFRQWHPSRUDU\FXOWXUHVXFKDVZHEVLWHVDFKDWURRPFRPSXWHU JDPHVRUDGDWDEDVH"'HVSLWHWKHH[LVWHQFHRIP\ULDGERRNVRQKRZWRSURJUDPGHVSLWH WKHHIIRUWVRIZKROHDFDGHPLFGLVFLSOLQHVGHYRWHGWRFRGHREMHFWVFRPSXWHUVFLHQFH VRIWZDUHHQJLQHHULQJLQIRUPDWLRQV\VWHPVDQGLQWKHIDFHRIPLOOLRQVRISHRSOH VFDWWHUHGWKURXJKRXW(XURSH$PHULFD$VLDDQG$IULFDZKRVWURQJO\LGHQWLI\ WKHPVHOYHVDVSURJUDPPHUVVRIWZDUHHQJLQHHUVKDFNHUVV\VWHPDQDO\VWVDQGVRIWZDUH DUFKLWHFWVZHFDQQRWEHVXUHZKDWFRGHLVDQGZKDWLWGRHV7KHUHDUHVHYHUDOUHDVRQV IRUWKLVXQFHUWDLQW\ 8VXDOO\ZHXQGHUVWDQGFRGHDVDVHWRILQVWUXFWLRQVWKDWFRQWUROWKHRSHUDWLRQVRID FRPSXWLQJPDFKLQH3RSXODUDQGDFDGHPLFDFFRXQWVFRQVLVWHQWO\UHLWHUDWHWKLV XQGHUVWDQGLQJ,WUHGXFHVFRGHWRDSURJUDPIRUDPHFKDQLVP:HVKRXOGUHVLVWWKDW UHGXFWLRQIRUDQXPEHURIUHDVRQV0DQ\GLIIHUHQWNLQGVRISUDFWLFHVLQWHUDFWLRQV LQVWDELOLWLHVFRQWHVWVGLVSXWHVDQGHYHQWVSRSXODWHWKH]RQHEHWZHHQWKHZULWWHQ LQVWUXFWLRQVDQGWKHRSHUDWLRQVRIFRPSXWLQJPDFKLQHV(YHQWKHVWDUWLQJDQGHQGSRLQWV ²WKHZULWWHQWH[WDQGWKHDFWXDORSHUDWLRQVRIFRPSXWLQJGHYLFHV²DUHIUR]HQLQSODFH E\WKLVLGHDOLVHGXQGHUVWDQGLQJRIFRGHUDWKHUWKDQEHLQJVHHQDVWKHRXWFRPHRI FRPSOH[LQWHUDFWLRQVLQYROYLQJFRPPRGLW\SURGXFWLRQRUJDQLVDWLRQDOOLIH WHFKQRVFLHQWLILFNQRZOHGJHVDQGHQWHUSULVHVWKHRUJDQLVDWLRQRIZRUNPDQLIROG LGHQWLWLHVDQGJHRSROLWLFDOWHFKQRORJLFDO]RQHVRIFRQWHVW&RGHDVZULWWHQWH[WHYHQLWV PRVWIHWLVKL]HGIRUPDVSURSULHWDU\VRXUFHFRGHWKHFRGHWKDWSURJUDPPHUVDFWXDOO\ UHDGDQGZULWHZKLFK0LFURVRIWKDVUHFHQWO\DJUHHGWRVHOOIRUWKHILUVWWLPHWR GHPRFUDWLFJRYHUQPHQWVLQWKHLQWHUHVWVRIDQWLWHUURULVWVHFXULW\/HWWLFH/RKU UDUHO\VWDQGVVWLOORUPHDQVRQHWKLQJDVZHZLOOVHH 0RUHRYHUFRGHUXQVGHHSLQWKHLQFUHDVLQJO\LQIRUPDWLFDOO\UHJXODWHGLQIUDVWUXFWXUHV DQGEXLOWHQYLURQPHQWVZHPRYHWKURXJKDQGLQKDELW&RGHSDUWLFLSDWHVKHDYLO\LQ FRQWHPSRUDU\HFRQRPLFFXOWXUDOSROLWLFDOPLOLWDU\DQGJRYHUPHQWDOGRPDLQV,W PRGXODWHVUHODWLRQVZLWKLQFROOHFWLYHOLIH,WRUJDQLVHVDQGGLVUXSWVUHODWLRQVRISRZHU,W DOWHUVWKHFRQGLWLRQVRISHUFHSWLRQFRPPRGLILFDWLRQDQGUHSUHVHQWDWLRQ$V*HRIIUH\ %RZNHUDQG6XVDQ/HLJK6WDUZULWH >L@WLVSROLWLFDOO\DQGHWKLFDOO\FUXFLDOWRUHFRJQL]H WKHYLWDOUROHRILQIUDVWUXFWXUHLQWKH´EXLOWPRUDOHQYLURQPHQWµ6HHPLQJO\SXUHO\ WHFKQLFDOLVVXHVOLNHKRZWRQDPHWKLQJVDQGKRZWRVWRUHGDWDLQIDFWFRQVWLWXWHPXFK RIZKDWZHKDYHFRPHWRNQRZDVQDWXUDO %RZNHU6WDU&RGHKDVEHHQ QDWXUDOLVHGWKURXJKLWVGLUHFWSDUWLFLSDWLRQLQWKHRUGLQDU\DQGODUJHO\LQYLVLEOH LQIUDVWUXFWXUHVRIPRUDOSROLWLFDOJOREDOPLOLWDU\DHVWKHWLFDQGHQWHUWDLQPHQW HQYLURQPHQWV,WSRWHQWLDWHVQHZIRUPVRIOLIHOLYHVZKLFKFDQQRWEHVHSDUDWHGIURP WKHLUIRUPV$JDPEHQ Code is a ’solution’, code is a problem 7KHVHWZRUHDVRQVWRDQDO\VHFRGH²WRUHVFXHLWIURPWKHLGHDRIDSURJUDPDQGWR VKRZKRZFRGHLVLQYLVLEO\QDWXUDOLVHG²UDLVHPRUHTXHVWLRQVWKDQWKH\DQVZHU,Q UHVSRQVHWRWKHVHTXHVWLRQV,ZLOODUJXHWKDWPRGHRIH[LVWHQFHRIFRGHLVSUREOHPDWLF ,QFRPPHUFLDOVRIWZDUHSURGXFWLRQFRGHLVRIWHQFDOOHGD VROXWLRQ 6RIWZDUHSURGXFHUV SURYLGHVROXWLRQV7RZKDWNLQGVRISUREOHPLVFRGHDVROXWLRQ"&DQZHDOVRVHHFRGHDV DSUREOHPDVDPHDQVRIVWDWLQJFROOHFWLYHSUREOHPV"$SUREOHPLVVRPHWKLQJZKRVH PRGHRIH[LVWHQFHLVWURXEOHVRPHFRQWHVWHGXQVWDEOHDQGVRPHZKDWFRQWUDGLFWRU\:H VHHNVROXWLRQVWRSUREOHPVEXWVROXWLRQVDUHRIWHQSDUWLDORUSURYLVLRQDO0RUHRYHUD VROXWLRQGHSHQGVDVWKHHSLJUDSKIURP*LOOHV'HOHX]HLQGLFDWHVRQKRZWKHSUREOHPLV SRVHGRUVWDWHGDQGRQ WKHFRQGLWLRQVXQGHUZKLFKLWLVGHWHUPLQHGDVDSUREOHP 'LIIHUHQWZD\VRIVWDWLQJDSUREOHPVXJJHVWGLIIHUHQWZD\VRIVROYLQJLW ,QWKHH[DPSOHWKDWIROORZVFRGHSUHVHQWVDWOHDVWIRXUSUREOHPDWLFIDFHWV7KH H[DPSOHLVDVKRUWSLHFHRIFRPSXWHUFRGHFDOOHG IRUNERPESO WKDWZRQWKH 7UDQVPHGLDOH$UW3UL]H%HUOLQ:LWKLQFRQWHPSRUDU\JOREDOWHFKQRORJLFDOFXOWXUHV ZKHUHPHGLDWLFLQIUDVWUXFWXUHDQGLQIRUPDWLRQSODWIRUPVSHUPHDWHGRPDLQVRIPHDQLQJ DQGVLJQLILFDWLRQLQFRPSOH[PDQLIROGZD\V/DVKFRGHKDVVWDUWHGWREHFRPHDQ DHVWKHWLFREMHFW7KH7UDQVPHGLDOHMXU\ZURWH IRUNERPESOZDVDZDUGHG>WKHSUL]H@ DVDFUDIWHGFRGHZKLFKLVWUDQVIRUPHGLQWRDQDUWRIWHFKQLFDOWUDQVJUHVVLRQ 7UDQVPHGLDOH7KHZRUNLVQRWDQLVRODWHGH[DPSOHRIDUWLVWLFSUDFWLFH &RPSXWHUDUWLVWVKDYHEHHQZRUNLQJZLWKFRPSXWHUFRGHVLQFHWKHV)RU FRQWHPSRUDU\H[DPSOHVRIVRIWZDUHDUWVHH6RIWZDUH$UW5HSRVLWRU\ IRUNERPESOKRZHYHULVVWULNLQJEHFDXVHWKHFRGHLWVHOIDVZHOODVDQ\HIIHFWLWPLJKW SURGXFHLQH[HFXWLRQLVNH\WRWKHZRUN$VDFRQWHPSRUDU\DUWREMHFWFRGHKHUH EHFRPHVVRPHWKLQJWKDWRYHUIORZVRUGLQDU\ZRUNXVHRUH[FKDQJHYDOXHDQGH[SOLFLWO\ VHHNVWRSRVHLWVHOIDVDSUREOHPVRPHWKLQJWKDWILJXUHVDGLIIHUHQFHDFRQWUDGLFWLRQD SRWHQWLDOIRULQYHQWLRQJHQHUDWLRQRUPHWDPRUSKRVLV IRUNERPESOZDVZULWWHQE\%ULWLVKDUWLVW$OH[0F/HDQ7KHHQWLUHVRXUFHFRGHWKH FRGHZULWWHQE\WKHSURJUDPPHUIRUIRUNERPESOLVOLVWHGEHORZ GLH3OHDVHGRQRWUXQWKLVVFULSWZLWKRXWUHDGLQJWKHGRFXPHQWDWLRQ LIQRW#$5*9 P\VWUHQJWK $5*9>@ ZKLOHQRWIRUN^ H[LWXQOHVVVWUHQJWK SULQW WZLVWZKLOHIRUN^ H[LWXQOHVVVWUHQJWK SULQW ` ` JRWR WZLVW LIVWUHQJWK $ORQJZLWKVRPHWH[WFRPPHQWDU\DSSUR[LPDWHO\KDOIDVFUHHQWKLVPXQGDQHOLVWLQJ LQDOOLWVUXOHJRYHUQHGUDWLRQDOLW\FRQVWLWXWHVDOPRVWWKHHQWLUHW\RIWKHZRUN :KLOH QRWYHU\FRPSOH[E\FRQWUDVWZLWKWKHPLOOLRQVRIOLQHVFRPSULVLQJDW\SLFDOFRPPHUFLDO RSHUDWLQJV\VWHPRUPDMRUVRIWZDUHLQVWDOODWLRQWKHVHOLQHVHFRQRPLFDOO\FRQGHQVH VRPHFUXFLDOGLPHQVLRQVRIFRGHREMHFWV$FWXDOO\DQHYHQPRUHFRQFLVHH[SUHVVLRQRI WKHFRUHRIWKHSURJUDPZRXOGEH ZKLOHIRUN $VXEVWDQWLDODPRXQWRIWDFLW NQRZOHGJHFRQQHFWVWKHVHOLQHVRIFRGHWRYDULRXVRWKHUSUDFWLFHV Two senses of code: text and process :KDWNLQGRIREMHFWRUWKLQJLVIRUNERPESO",WUDLVHVWKHTXHVWLRQRIZKDWZHPHDQE\ FRGH7KHZRUG FRGH XVHGE\WKH-XU\ZKHQWKH\UHIHUUHGWRIRUNERPESORVFLOODWHV EHWZHHQWZRGLIIHUHQWEXWFORVHO\SHUKDSVHYHQXQGHFLGDEO\UHODWHGVHQVHVWH[WDQG SURFHVV7KLVXQGHFLGDEOHRVFLOODWLRQOLHVDWWKHURRWRIWKHSUREOHPDWLFPRGHRI H[LVWHQFHRIFRGH ,QLWVILUVWVHQVHFRGHDVDWH[WLVWKHSURGXFWRIWKHSUDFWLFHRISURJUDPPLQJRUFRGLQJ ,WXVXDOO\WDNHVWKHIRUPRIDVHWRIWH[WILOHVFRQWDLQLQJVRXUFHFRGHRUVFULSWVXFKDV WKRVHOLVWHGDERYH+HQFHWKH-XU\VSHDNVRI FUDIWHG FRGH&RGLQJSURJUDPPLQJRU KDFNLQJSURGXFHVFRGH&RGHLQWKLVVHQVHLVDOZD\VZULWWHQLQVRPHSURJUDPPLQJ ODQJXDJH²&3HUO-DYDDVVHPEO\ODQJXDJH/LVS&RERO%DVLFHWF7KHFRGHVKRZQ DERYHLVZULWWHQLQWKHVFULSWLQJODQJXDJH3HUO7KHUHDGLQJDQGZULWLQJSUDFWLFHV ZKLFKJHQHUDWHFRGHUDQJHIURPKLJKO\FUHDWLYHDQGH[SORUDWRU\WRPXQGDQHDQG UHSHWLWLYH&RGHFUDIWZRUNRYHUWKHODVW\HDUVKDVDFFUXHGPDQ\VXEFXOWXUHV ODQJXDJHVLGLRPVGLDOHFWVGHVLJQHQJLQHHULQJDQGDUFKLWHFWXUDODSSURDFKHV ,QWHUQHFLQHVWUXJJOHVDQGIDFWLRQDOGLVSXWHVFRQVWDQWO\VKLIWWKHPHDQLQJDQGYDOXHRI FRGHZRUN6RPHWLPHVWKHVHVWUXJJOHVFRQFHUQFRGLQJ VW\OH DQGFUDIWDHVWKHWLF MXGJHPHQWVRYHUKRZFRGHVKRXOGEHODLGRXWRQVFUHHQKRZYDULDEOHVVKRXOGEH QDPHGHWF6RPHWLPHVWKHVWUXJJOHVKDYHZLGHULGHRORJLFDOGLPHQVLRQV3URJUDPPLQJ ODQJXDJHVDUHSODWIRUPVIRUFRUSRUDWHPDUNHWLQJVWUDWHJLHV$WWUDFWLQJVRIWZDUH GHYHORSHUVWRDSDUWLFXODUSURJUDPPLQJODQJXDJHRSHQVWKHSRVVLELOLW\RIVHOOLQJRWKHU VRIWZDUHDQGKDUGZDUHGHVLJQHGWRZRUNZLWKWKDWODQJXDJH$VDNH\VPHDQVRI SURGXFWLRQRIQHZFRGHREMHFWVSURJUDPPLQJODQJXDJHVDUHYLWDOVWUDWHJLFUHVRXUFHVWR FRPSXWHUDQGRSHUDWLQJV\VWHPSURGXFHUVVXFKDV0LFURVRIW,%0$SSOHDQG6XQ 0LFURVRIW V&ODQJXDJHUHOHDVHGLQFRPSHWHVZLWK6XQ&RUSRUDWLRQ VKLJKO\ VXFFHVVIXODQGZLGHVSUHDG-DYDODQJXDJH%RWKODQJXDJHVDUHOLQNHGWRWKHVDOHRIRWKHU VHUYLFHVXSJUDGHVPDLQWDLQDQFHDQGKDUGZDUH7KHUHODWLYHHFRQRPLFYDOXHDQG JHRJUDSKLFDOGLVWULEXWLRQRIFRGLQJZRUNVKLIWVFRQVWDQWO\DVVRIWZDUHSURGXFWLRQLV DXWRPDWHGLQGXVWULDOLVHGVKLIWHGWRFKHDSHUODERXUPDUNHWVHJRXWVRXUFLQJRI SURJUDPPLQJZRUNWR,QGLDRUEHFRPHV IUHH LQWKHIRUPRIRSHQVRXUFHVRIWZDUH 0XFKURXWLQHFRGLQJKDVEHHQSDUWLDOO\DXWRPDWHGIRULQVWDQFHQHZHUZHEDXWKRULQJ WRROVREYLDWHPXFKRIWKHQHHGIRUKDQGFRGLQJZHESDJHV&RGHDVDWH[WSURGXFLQJ SUDFWLFHLVYDULDEOHDQGG\QDPLF ,QLWVVHFRQGVHQVHFRGHPHDQVVRPHWKLQJH[HFXWDEOHGHSHQGLQJRQEXJVDQGRWKHU XQSUHGLFWDEOHIDFWRUVZLWKLQDFRPSXWLQJHQYLURQPHQWRURQVRPHFRPSXWLQJ SODWIRUPV7KHSXUSRVHRIFRGHDIWHUDOOLVWRZRUNRURSHUDWH'XULQJH[HFXWLRQD FRGHREMHFWEHFRPHVDSURFHVV7KHHQYLURQPHQWVLQZKLFKDSURFHVVH[HFXWHVDUH GLYHUVH&RGHREMHFWVPLJKWEHVRPHWKLQJWKDWDSHUVRQGRXEOHFOLFNVRQDQGUXQVWKH\ PLJKWEHUXQQLQJLQDQHOHFWURQLFWR\RUDSSOLDQFHRUWKH\PLJKWEHDXWRPDWLFDOO\ GRZQORDGHGDQGH[HFXWHGE\DGHYLFHVXFKDVDPRELOHSKRQH,WLVVRPHWKLQJWKDWD SDUWLFXODUKDUGZDUHSODWIRUP,QWHO$0'0RWRURODD3OD\6WDWLRQRU;ER[HWFDQ RSHUDWLQJV\VWHP:LQGRZV0DF268QL[3DOP26/LQX[HWFRUSHUKDSVDYLUWXDO PDFKLQHVXFKDVWKH-DYD9LUWXDO0DFKLQHFDQUXQ&RGHLQWKLVVHQVHVRPHWKLQJ SURGXFHGE\WKHSUDFWLFHVRIFRGLQJEHFRPHVVRIWZDUH'HWDFKHGIURPWKHZRUNRI FRGLQJLWFDQEHSDFNDJHGVKULQNZUDSSHGDQGFLUFXODWHG,QWKHFDVHRIIRUNERPESO DSLHFHRIVXSSRUWLQJVRIWZDUHWKH3HUOLQWHUSUHWHUWUDQVODWHVWKHFRGHLQWRFDOOVRQ ORZHUOHYHORSHUDWLQJV\VWHPIXQFWLRQV3HUOSURYLGHVDPLGGOHOD\HUEHWZHHQWKH RSHUDWLQJV\VWHPDQGHQGXVHUDSSOLFDWLRQV /LNHWKHSUDFWLFHVRIUHDGLQJDQGZULWLQJFRGHFRGHDVSURFHVVLVQRWDVLPSOH KRPRJHQHRXVRUXQGLIIHUHQWLDWHG2QWKHFRQWUDU\WKHHQYLURQPHQWLQZKLFKFRGH H[HFXWHVWKHSODWIRUPLVDFRQWHVWHGVLWHD OLIWHGRXWVSDFH /DVK7KHUH DUHWKHZHOONQRZQFRPPHUFLDOVWUXJJOHVEHWZHHQSODWIRUPVVXFKDV$SSOHYHUVXV 0LFURVRIWZKLFKIHHGWKHHPHUJHQFHRIGLIIHUHQWVXEFXOWXUHVRIFRPSXWHUXVHUV7KHUH DUHDOVRVWUXJJOHVWKDWFRQFHUQWKHFRPPRGLW\VWDWXVRIDJLYHQSODWIRUP7KH RSHQ VRXUFH RSHUDWLQJV\VWHP/LQX[IRUH[DPSOHFDQEHVHHQDVVSULQJLQJIURPDGHVLUHWR H[WUDFWWKHJHQHULF[,QWHOIDPLO\RI&38 VPDQXIDFWXUHGE\,QWHODQGRWKHUFRPSDQLHV VXFKDV$0'IURPWKHWHUULWRULDOGRPLQDQFHRI0LFURVRIW&RUSRUDWLRQ%\UXQQLQJD GLIIHUHQWRSHUDWLQJV\VWHPIURPWKH0LFURVRIWRSHUDWLQJV\VWHPVWKDWXVXDOO\UXQRQVXFK FRPPRGLW\KDUGZDUHWKH/LQX[VXEFXOWXUHDOWHUVWKHKHJHPRQLFVWDWXVRIWKHRSHUDWLQJ V\VWHPLQFHUWDLQZD\V7KHOLQNEHWZHHQDSDUWLFXODURSHUDWLQJV\VWHPDQGD FRPPRGLW\KDUGZDUHSODWIRUPEHFRPHVPRUHWHQXRXVDQGRSHQWRYDULDWLRQ Code integrates and disintegrates :HKDYHDOUHDG\VHHQWKHFRGHRIIRUNERPESODVDZULWWHQWH[W:KDWKDSSHQVZKHQ ZHVHHIRUNERPESODVDSURFHVV":KHQWKH7UDQVPHGLDMXU\UHIHUVWRIRUNERPESODV WUDQVJUHVVLYH WKLVRWKHUVHQVHRIFRGHDVH[HFXWLQJSURFHVVLVLQSOD\$VDSURFHVV IRUNERPESOLQWHUIHUHVZLWKRWKHUSURFHVVHVLQH[HFXWLRQ$ XVHU UXQV WKHZRUNE\ W\SLQJ SHUOIRUNERPESO DQGVRPHWKLQJOLNHWKHIROORZLQJRXWSXWDSSHDUV -XGJLQJE\WKLVPRGHVWRXWSXWWKHSHUFHSWXDOGLPHQVLRQVRIWKHZRUNDQGWKHDHVWKHWLF VHQVDWLRQVLWLPPHGLDWHO\HOLFLWVDUHPLQLPDOWRVD\WKHOHDVW:HDUHQRWVSHFWDWRUVRI DFRQYHQWLRQDODHVWKHWLFREMHFWKHUH,WKDUGO\UDWHVDJDLQVWWKHLFRQLFGHQVLW\FRORXU DQGFDUHIXOO\GHVLJQHGOD\RXWRIWKHDYHUDJHFRPSXWHULQWHUIDFHRUWKHVSHFWXODUYLVXDO GHWDLOVHHQLQWKHODWHVWJHQHUDWLRQRIFRQVROHFRPSXWHUJDPHV(YHQZLWKLQWKHUHDOP RIVRIWZDUHDUWRWKHUZRUNVKDYHPRUHH[SOLFLWSROLWLFDODQGFXOWXUDOVLJQLILFDQFH)RU LQVWDQFHWKHZHOONQRZQVRIWZDUHDUWZRUN&DUQLYRUH3(&DUQLYRUH3(DOORZVWKH PRYHPHQWRIGDWDRQQHWZRUNVWREHWUDFNHGDQGYLVXDOLVHG,WPLPLFVVRIWZDUHXVHGE\ WKH)%,WRFRQGXFWHOHFWURQLFZLUHWDSVWKHUHE\PDNLQJWKHRSHUDWLRQVRIWKH86 JRYHUQPHQWYLVLEOHDQGSHUKDSVPRUHFRQWHVWDEOH,QWKHFDVHRIIRUNERPESOWKH H[HFXWLQJSURFHVVKDVQRFOHDUSROLWLFDORUDHVWKHWLFVLJQLILFDQFH7KHRXWSXWVKRZVWKDW DQH[HFXWLQJSURFHVVJHQHUDWHVRUGHUHGVHWVRIPDUNV+HUHWKHVHWLVFRPSRVHGVLPSO\ RIWKHILJXUHVDQG-XVWDVFRGLQJLQYROYHVHGLWLQJWH[WDFFRUGLQJWRUXOHVH[SUHVVHG V\QWDFWLFDOO\E\DSURJUDPPLQJODQJXDJHWKHZRUNGRQHE\H[HFXWLQJFRGHLVPXQGDQH QRWP\VWHULRXVLWJHQHUDWHVVHTXHQFHVRIPDUNVRYHUWLPH +RZHYHUMXVWDVWKHPXQGDQHFRGLQJZRUNLVDQLPDWHGE\PDQ\RWKHUG\QDPLFVWKH VLJQLILFDQFHRIDVHTXHQFHRIPDUNVGHSHQGVRQKRZWKHVHPDUNVDUHFRQQHFWHGWRRWKHU FRQWH[WV7KHDUWLVW$OH[0F/HDQVXJJHVWVWKDWWKHZRUNEHVHHQDVSURGXFLQJD ZDWHUPDUN RIWKHIXQFWLRQDOFRXSOLQJRIDQRSHUDWLQJV\VWHPDQGKDUGZDUHSODWIRUP (YHU\RSHUDWLQJV\VWHPDQGSODWIRUPZLOOSURGXFHDGLIIHUHQWRXWSXW(YHQWKHVDPH FRPSXWHUZLOOSURGXFHGLIIHUHQWRXWSXWVGHSHQGLQJRQZKDWRWKHUSURFHVVHVDUHUXQQLQJ DWWKDWWLPH&R[0F/HDQ:DUG5XQQLQJLWDIHZWLPHVEHDUVWKLVRXWEXWLW ZRXOGQHHGDQH[WHQGHGGHVFULSWLRQRIKRZIRUNERPESOZRUNVWRVKRZZK\WKLVLVWKLV FDVH ,QYLHZRIWKHVRXUFHFRGHRIIRUNERPESODQGLWVRXWSXWRIVDQGVFRGHVKRZVLWVHOI XQGHUWZRIDFHWVRQHRULHQWHGWRZDUGVWKHSUDFWLFHVRISURGXFHUVVXFKDVDUWLVWV SURJUDPPHUVDQGKDFNHUVUHDGLQJZULWLQJSURJUDPVDQGDQRWKHUIDFLQJWRZDUGVWKH HQYLURQPHQWDOSDUWLFXODULWLHVRIPDFKLQHVQHWZRUNVDQGRSHUDWLQJV\VWHPVZKLFK FRQWDLQH[HFXWLQJSURFHVVHVDQGXVHUV&RGHLVERWKZULWWHQDQGUHDGE\SHRSOHDQG H[HFXWHGZLWKLQDFRPSXWLQJHQYLURQPHQWE\XVHUV&RGHKDVDFRPSOH[RUIRUNHGPRGH RIH[LVWHQFH,WH[LVWVERWKDVKLJKO\UXOHJRYHUQHGSUDFWLFHVRIZULWWHQH[SUHVVLRQZLWK SDUWLFXODUWUDLWVWKDWZHFRXOGORRNDWPRUHFORVHO\IRULQVWDQFHWKLVFRGHLVZULWWHQLQ 3HUOUDWKHUWKDQ-DYDZKDWGLIIHUHQFHGRHVWKDWPDNH"DQGDVVRPHWKLQJ SUHKHQGHG RUDUWLFXODWHGZLWKLQWKHVSHFLILFLW\RIDQHQYLURQPHQWWKDWFRPSXWHVDFRPSXWLQJ HQYLURQPHQWRUSODWIRUPZLWKLQZKLFKWKHFRGHH[HFXWHVIRUNERPESODGGUHVVHVWKH SUREOHPRIUHODWLQJGLIIHUHQWWLPHVDQGSODFHVWKDWRIUHDGLQJZULWLQJDQGWKDWRI H[HFXWLQJ IRUNERPESOFDQGRPRUHWKDQ ZDWHUPDUN DQRSHUDWLQJV\VWHP7RIRUNLQ8QL[ RSHUDWLQJV\VWHPWHUPLQRORJ\PHDQVWRVWDUWDQHZSURFHVVDORQJVLGHH[LVWLQJSURFHVVHV 7KHV\VWHPFDOOIRUNFUHDWHVWZRQHDUO\LGHQWLFDOFRSLHVRIDSURFHVV2QHFRS\LV FDOOHGWKHSDUHQWDQGWKHRWKHUWKHFKLOG,QWKHSDUHQWSURFHVVIRUNUHWXUQVWKH SURFHVVQXPEHURIWKHFKLOG7KHYDOXHUHWXUQHGLQWKHFKLOGLV]HUR,IIRUNFDQQRW FUHDWHDQHZSURFHVVWKHDLVUHWXUQHG7KLVFDQKDSSHQIRUH[DPSOHZKHQWKH V\VWHPSURFHVVWDEOHLVIXOORULIWKHIRUNFDOOLVLQWHUUUXSWHG%RXUQH $IRUNERPERFFXUVZKHQDQRSHUDWLQJV\VWHPDWWHPSWVWRIRUNWRRRIWHQ$V7KH1HZ +DFNHU V'LFWLRQDU\ZULWHV DIRUNERPESURFHVV´H[SORGHVµE\UHFXUVLYHO\VSDZQLQJ FRSLHVRILWVHOI(YHQWXDOO\LWZHGJHVWKHV\VWHP 5D\PRQG7KHZRUN WDNHVLWVQDPHIURPZKDWKDSSHQVLIDXVHUW\SHVVRPHWKLQJOLNH SHUOIRUNERPESO 'HSHQGLQJRQWKHSODWIRUPLQFUHDVLQJWKHQXPHULFDOYDOXHDWWKHHQGRIWKHFRPPDQG OLQHIURPWRZLOOSUREDEO\SURJUHVVLYHO\EULQJDFRPSXWHUWRDKXQJRU ERPEHG VWDWHZKHUHLWSURGXFHVQRIXUWKHUSHUFHSWLEOHRXWSXWIRUNERPESO ERPEV DFRPSXWHU E\FRORQLVLQJWKHRSHUDWLQJV\VWHPZLWKDQH[SRQHQWLDOO\JURZLQJQXPEHURIFORQHVRI WKHIRUNERPESOSURFHVVHDFKUHFXUVLYHO\JHQHUDWLQJFRSLHVRILWVHOIDVGRYLUXVHVVXFK DV/RYH%XJ 7KHGLIIHUHQWSRVVLEOHRXWSXWVIURPIRUNERPESO²ZDWHUPDUNRIWKHRSHUDWLQJV\VWHPRU DIUR]HQ ZHGJHG V\VWHPLQZKLFKQRWKLQJDSSHDUVWREHKDSSHQLQJVXJJHVWWZR GLIIHUHQWFULWLFDOHYDOXDWLRQVRIFRGH7KHZDWHUPDUNRXWFRPHUHIOHFWVRUGHUFR RUGLQDWLRQVKDULQJRIUHVRXUFHVGLVWULEXWLRQDQGGLYLVLRQRIODERXU7KH ZHGJHG RXWFRPHVXJJHVWVGLVLQWHJUDWLQJVFDWWHULQJGLVSHUVDODQGGLVDJJUHJDWLQJORVVRIZRUNLQJ IXQFWLRQDOLW\:LWKWKLVRXWFRPHLQPLQGQHZVJURXSDQGOLVWVHUYHUUHVSRQVHVDPRQJVW 3HUOSURJUDPPHUVWRIRUNERPESO VSUL]HWHQGHGWREHZUDWKIXO)RULQVWDQFHRQHLUNHG UHVSRQVHUDQ 'RKDFNDWWDFNVQRZFRXQWDVDUW"9LUXVHV":RXOGQ WDQREIXVFDWHGSURJUDPWR FRPSOHWHO\HUDVHWKHGLVNRIWKHVXEMHFWV\VWHPEHHYHQPRUHFUDIWHGDQGDQHYHQ JUHDWHUWHFKQLFDOWUDQVJUHVVLRQDQGWKHUHIRUHHYHQEHWWHUDUW":LOOEHVHHLQJ>LW DV@DUWDGHIHQVHLQFRPSXWHUFULPHWULDOVQRZ" 3HUPXQJNDK $VWKH+DFNHU V'LFWLRQDU\JRHVRQWRVXJJHVW FUHDWLQJ>DIRUNERPE@VHOGRP DFFRPSOLVKHVPRUHWKDQWREULQJWKHMXVWZUDWKRIWKHJRGVGRZQXSRQWKHSHUSHWUDWRU 5D\PRQG Code evades visibility 7KHMXVWZUDWKRIWKHJRGVFDQWDNHRQDPRUHIXQGDPHQWDOLVWWRQH,QDQDUWLFOH HQWLWOHG 7KHUHLV1R6RIWZDUH WKHOLWHUDU\QHZPHGLDWKHRULVW)ULHGULFK.LWWOHU FKDUDFWHULVHVWKHFXOWXUDOSUREOHPRIFRGHLQWHUPVWKDWJREH\RQGLUNHGUHVSRQVHVWR WUDQVJUHVVLYHDUWZRUNVVXFKDVIRUNERPESO 3URJUDPPLQJODQJXDJHVKDYHHURGHGWKHPRQRSRO\RIRUGLQDU\ODQJXDJHDQGJURZQ LQWRDQHZKLHUDUFK\RIWKHLURZQ7KLVSRVWPRGHUQ7RZHURI%DEHOUHDFKHVIURP VLPSOHRSHUDWLRQFRGHVZKRVHOLQJXLVWLFH[WHQVLRQLVVWLOODKDUGZDUHFRQILJXUDWLRQ SDVVLQJWKURXJKDQDVVHPEOHUZKRVHH[WHQVLRQLVWKLVYHU\RSFRGHXSWRKLJKOHYHO SURJUDPPLQJODQJXDJHVZKRVHH[WHQVLRQLVWKDWYHU\DVVHPEOHU:KDWUHPDLQVD SUREOHPLVRQO\UHFRJQL]LQJWKHVHOD\HUVZKLFKOLNHPRGHUQPHGLDWHFKQRORJLHVLQ JHQHUDOKDYHEHHQH[SOLFLWO\FRQWULYHGWRHYDGHSHUFHSWLRQ:HVLPSO\GRQRWNQRZ ZKDWRXUZULWLQJGRHV.LWWOHU ,QWKLVSDVVDJHWKHSUREOHPRIFRGHKLQJHVRQWKHZD\LWHYDGHVSHUFHSWLRQ$VKDSSHQV ZKHQIRUNERPESOUXQVDWWKHWUDQJUHVVLYHVWUHQJWKRI ZHGRVLPSO\GRQRWNQRZ ZKDWZKDWRXUZULWLQJGRHV 7KHJHQHUDOSUREOHPRIFRGHLVWKDW LWVHHPVWRKLGHWKH YHU\DFWRIZULWLQJ .LWWOHU)XUWKHUPRUHWKHLQVFULSWLRQVWKDWUHVXOWIURP WKLVZULWLQJ DUHDEOHWRUHDGDQGZULWHE\WKHPVHOYHV $WWKHVDPHWLPH KDUGZDUHFRQWUDFWVGRZQLQWRHYHUPRUHGHQVHO\LQWHUFRQQHFWHGFLUFXLWVLQWKH FRPSXWHUKDUGZDUHLQQRYDWLRQUDFH$VLQVFULSWLRQVKULQNGRZQLQWRFKLSVFRGHLWVHOI SLOHVXSLQWRDSRVWPRGHUQ7RZHURI%DEHORULQWRDFDFRSKRQ\RIGLIIHUHQWFRGLQJ ODQJXDJHVVRPHWLPHVKLHUDUFKLFDOO\UHODWHGVRPHWLPHVQRW 0RYLQJXSZDUGVDQGGRZQZDUGVLQZDUGVDQGRXWZDUGVFRGHDSSHDUVWRZULWHLWVHOI$V DQHIIHFWRIWKHVFDOHDQGFRPSOLFDWLRQRIOD\HUVFRGHHYDGHVFRJQLWLRQE\DQ\RQH REVHUYHU,QFRQWUDVWWRSULQWHGWH[WVFRGHZULWHVLWVHOIKHUPHWLFDOO\.LWWOHU VUHVSRQVH LVUDGLFDODQGLQVRPHZD\VKDUGWRFRQWHVWWKHFRQVWLWXWLYHOLPLWIRUFRGHRQHWKDWLW ZLOOLQHYLWDEO\HQFRXQWHULV VKHHUKDUGZDUH RUQRQSURJUDPPDEOHV\VWHPVZKRVH FRPSOH[LW\ PD\ZHOOEHWKHRQO\ZD\WRHQWHUWKDWERG\RIUHDOQXPEHUVRULJLQDOO\ NQRZQDVFKDRV .LWWOHU1RQSURJUDPPDEOHV\VWHPVDUHLQGHHGWKHREMHFWRI RQJRLQJWHFKQRVFLHQWLILFVSHFXODWLRQ,QSRSXODUVFLHQWLILFDQGWHFKQRORJ\PDJD]LQHV VXFKDV1HZ6FLHQWLVWRU7HFKQRORJ\5HYLHZTXDQWXPRU'1$FRPSXWLQJV\VWHPVRI H[FHSWLRQDOEXWDOPRVWXQFRQWUROODEOHFRPSXWLQJSRZHUIUHTXHQWO\FRPHXSIRU GLVFXVVLRQ .LWWOHU VUHVSRQVHSRLQWVWRDWKLUGIDFHWRIWKHSUREOHPDWLFPRGHRIH[LVWHQFHRIFRGH &RGHHYDGHVSHUFHSWLRQ$VLWFRYHUVRYHUWKHQRQSURJUDPPDEOHFRPSOH[LW\RIWKHUHDO RU FKDRV E\VHHNLQJWRQDPHDQGRUGHULWLWJHQHUDWHVRSDFLW\DQGXQLQWHOOLJLEOH FRPSOH[LW\DVE\SURGXFWV7KHVSDZQLQJPXWDWLQJDQGFORQLQJRIGLIIHUHQWLGLRPVRI FRGHDQGLQGHHGRIGLIIHUHQWYHUVLRQVRIVLPLODUVRIWZDUHDSSOLFDWLRQVRU VROXWLRQV JHQHUDWHVFRGHEDEEOH7KHUHDUHPDQ\EDQDORURUGLQDU\PDQLIHVWDWLRQVRIWKLV GLVLQWHJUDWLRQ7KHQHHGWRFRQVWDQWO\XSJUDGHVRIWZDUHWRIL[EXJVDQGHQVXUH FRPSDWDELOLW\WKHVWUXJJOHVRYHUVWDQGDUGLVDWLRQRIGLIIHUHQWSURWRFROVDQG SUROLIHUDWLRQRIFORQHVDQGYDULDQWVRIWKHVDPHDSSOLFDWLRQRUVROXWLRQDOODWWHVWWRWKLV FRGHEDEEOHDQGWRDPXOWLSOLFDWLRQRIWRQJXHVVRWRVSHDN Where is the object? Where is the subject? &RPSDUH.LWWOHU VWUHDWPHQWRIFRGHDVZULWLQJWKDWDWWHPSWVWRLQWHOOLJEO\RUGHUWKH LUUHGXFLEOHFRQWLQJHQFLHVRIPDWWHUDQGHQGVXSUHQGHULQJRUGHUDOPRVWXQLQWHOOLJLEOH ZLWKWKHVWDQGSRLQWRI%UXQR/DWRXU:ULWLQJDERXWWKHFRPSOH[LW\RIFRQWHPSRUDU\ WHFKQLFDOREMHFWV/DWRXUREVHUYHV 7KHSDUDGR[RIDWHFKQRORJLFDOREMHFWZLWKPLOOLRQVRILQVWUXFWLRQVLVWKDWLWLVIURP WKHVWDQGSRLQWRIWKHGLYLVLRQRIODERXUDIUDFWDOREMHFWWKDWLVHTXDOO\VLPSOHDW HYHU\SRLQWDQGZKROHORRNVQHYHUWKHOHVVOLNHD/HYLDWKDQWKDWLQILQLWHO\VXUSDVVHV KXPDQPHDVXUH/DWRXU 7KH /HYLDWKDQ RIFRGH KDVDIILQLWLHVWR.LWWOHU V ZHGRQRWZULWHDQ\PRUH .LWWOHU /HYLDWKDQVRIWHQVHHPWREHPRQWURXVDQGRXWRIFRQWURO%XW/DWRXUZULWHV >W@KHHQWLUHWHFKQRORJLFDOZL]DUGU\OLHVLQWKHLPSHQHWUDEOHSDUWLWLRQVDQGLQWKHSHJV WKDWPDNHLWSRVVLEOHWRKRRNRQH·VWDVNWRDQHLJKERXU·V +HUHWKHHIIHFWVRI %DEHOLVDWLRQGHVFULEHGE\.LWWOHUDUHHYDOXDWHGGLIIHUHQWO\DVRFLDORUJDQLVDWLRQRI ERXQGDULHVGHWRXUVRIIROGVDQGRUGHULQJVSHUPLWV DSLOLQJXSRI5XVVLDQGROOV /LNH.LWWOHU VDFFRXQWDSURFHVVRISLOLQJXSRUOD\HULQJRIFRGHDFFRXQWVIRUWKH DSSDUHQWGLVDSSHDUDQFHRIVSLULWLQWRPDWWHU,QFRQWUDVWWR.LWWOHUQRLUUHGXFLEOH QRQSURJUDPPDEOHGRPDLQXQGHUZULWHVDTXDVLWUDQVFHQGHQWDOMXGJPHQWRIZKDWFRGH FDQRUFDQQRWGR,QVWHDGRIFRYHULQJRYHULUUHGXFLEOHFRPSOH[LW\WKHFRGHREMHFWLV HTXDOO\VLPSOHDWHYHU\SRLQW /DWRXUZULWHV :HWKRXJKWWKHUHZDVDIURQWLHUEH\RQGZKLFKRQHUHDOO\PRYHGLQWRPDWWHUWKDW LQHUWDQGFROGVWXIIIXQFWLRQDODQGVRXOOHVVZKLFKHDUQHGWKHDGPLUDWLRQRI PDWHULDOLVWVDQGWKHVFRUQRIWKHKXPDQLVWV/DWRXU ,QIDFWDFFRUGLQJWR/DWRXURQHQHYHUHQFRXQWHUVDEDUULHUEHWZHHQVLJQDQGWKLQJ VLQFHDWHYHU\OHYHOWKHUHDUHIXUWKHUIRUPV KDOILPSULQWDQGKDOIWH[W ,WLVVWULNLQJDQGWKLVSRLQWVWRDIRXUWKSUREOHPDWLFHOHPHQWLQFRGHWKDWWKH /HYLDWKDQVHHPVWRVXUSDVV KXPDQPHDVXUH /DWRXU VDFFRXQWVHHVFRGHDVFRQFHDOHG VRFLDORUGHUDQGDVWKHRXWFRPHRIFRRUGLQDWHGSDUWLWLRQLQJRIEHKDYLRXUVDQGDFWLRQV EHWZHHQGLIIHUHQWDFWRUVKXPDQDQGQRQKXPDQ+LVDFFRXQWDOORZVXVWRLQWHUSUHW IRUNERPESODVDPLQL/HYLDWKDQDVDQH[SUHVVLRQRIFRRUGLQDWLRQDQGUHFLSURFDO LQWHUDFWLRQEHWZHHQDPXOWLWXGHRIDJHQWVZLWKLQFRQWHPSRUDU\FROOHFWLYHV,Q/DWRXU V WHUPVWKHIDFWWKDWIRUNERPESOUXQVDWDOODWWHVWVWRDSLOLQJXSRI5XVVLDQGROOVD ODEU\QWKLQHIROGLQJWRJHWKHURIGLIIHUHQWDFWLRQVWRZKLFKQRXOWLPDWHOLPLWLV SUHVFULEHG/DWRXU VXVHRIWKHWHUP IUDFWDO FRQYH\VWKDWVHQVHRIQHVWHGRUUHFXUVLYH RUGHU,QWKLVFDVHWKHRUGHULQJSHUWDLQVWRFRPSXWLQJUHVRXUFHVIRUNERPESOKLJKOLJKWV WKHILQLWHDOORFDWLRQRIFRPSXWLQJUHVRXUFHVDYDLODEOHRQDQ\FRPSXWHU7KHDOORFDWLRQ RIFRPSXWLQJUHVRXUFHVZLWKLQFRPSXWLQJHQYLURQPHQWVXQGHUSLQVWKHHIIHFWVRI LQWHUDFWLYLW\UHVSRQVLYHQHVVQDYLJDELOLW\UHWULHYDELOLW\DQGVWRUDELOLW\RQZKLFK LQIRUPDWLFIRUPVRIOLIHGHSHQG7KHLPPRELOLVDWLRQSURGXFHGE\IRUNERPESORQO\ VLJQDOVWKDWWKHRUGHULQJSURFHVVKDVQRWEHHQFDUULHGVXIILFLHQWO\IDUHQRXJKWRFUHDWH WKHHIIHFWRIDWUXH/HYLDWKDQDPRQVWHURI LQILQLWHPHDVXUH $QRWKHUVHWRIGHWRXUV WUDQVODWLRQVPHGLDWLRQVRUK\EULGLVDWLRQVLVQHHGHG7KH\FRXOGEHVRFLDODV\VWHP DGPLQLVWUDWRUPLJKWVHWDOLPLWWRWKHQXPEHURISURFHVVHVWKDWFDQEH VSDZQHG E\DQ\ VLQJOHSURJUDP²RUWKH\EHWHFKQLFDO²DQRSHUDWLQJV\VWHPPLJKWVWDUWGLVWULEXWLQJWKH UHFXUVLYHO\JHQHUDWHGSURFHVVHVRQWRRWKHUPDFKLQHVIRUPLQJSDUWRIDFRPSXWLQJ FOXVWHURUD VHUYHUIDUP Theorematic code 7KURXJKIRUNERPESOWKHSUREOHPDWLFPRGHRIH[LVWHQFHRIFRGHDSSHDUVLQDQXPEHU RIGLIIHUHQWJXLVHV&RGHRVFLOODWHVEHWZHHQWH[WDQGSURFHVV,WLQWHJUDWHVDQG GLVLQWHJUDWHVFRQWH[WV,QDWWHPSWLQJWRELQGFRQWH[WVWRJHWKHUZLWKLQDFRPPRQ ODQJXDJHLWUHGLVWULEXWHVDQGGLYLGHVWDVNVLQZD\VWKDWRYHUIORZDQ\RQHVWDQGSRLQW DQGHYDGHSHUFHSWLRQ)LQDOO\FRGHFDQFRQVWLWXWHDFRPSUHVVHG/HYLDWKDQDFROOHFWLYH ZKHUHERGLHVDFWLRQVUXOHVDQGSRZHUDUHRUFKHVWUDWHG,WFDQJLYHWKHDSSHDURIDQ DOPRVWH[HFXWLYHSRZHU\HWLQUHDOLW\LWUHOLHVRQDILQLWLHDOORFDWLRQRIUHVRXUFHV 7KHH[DPSOHRIIRUNERPESOLVDULVN\RQHLQFHUWDLQUHVSHFWV:KHQFRGHEHFRPHVDQ DHVWKHWLFREMHFWKRZFDQZHMXGJHLWVLPSRUWDQFH"7KHSKLORVRSKHU$1:KLWHKHDG ZULWHV 2QHFKDUDFWHUL]DWLRQRILPSRUWDQFHLVWKDWLWLVWKDWDVSHFWRIIHHOLQJZKHUHE\D SHUVSHFWLYHLVLPSRVHGXSRQWKHXQLYHUVHRIWKLQJVIHOW:KLWHKHDG ,QWUHDWLQJWKHH[HFXWLRQRIIRUNERPESODVDQDXWRQRPRXVDHVWKHWLFSKHQRPHQDFDQ ZHORFDWHRULQYHQWGLIIHUHQWSHUVSHFWLYHV XSRQWKHXQLYHUVHRIWKLQJVIHOW "'RHVLWDOORZ XVWRVHHKRZDQGXQGHUZKDWFRQGLWLRQVFRGHEHFRPHVLPSRUWDQW" 7KHUHDUHFRPSHWLQJLQWHUSUHWDWLRQVRIWKHLPSRUWDQFHRIFRGH,QWKHDFDGHPLF GLVFLSOLQHVRIFRPSXWHUVFLHQFHDQGVRIWZDUHHQJLQHHULQJZKHUHDIRUPDOLVWRU WKHRUHPDWLFXQGHUVWDQGLQJRIFRGHSUHYDLOVWKHLPSRUWDQFHRIFRGHFRQVLVWVLQ DEVWUDFWLRQ7KHVHHQJLQHHULQJGLVFLSOLQHVUHSUHVHQWFRGHDVDV\VWHPZKRVHSURSHUWLHV FDQEHPRGHOOHGDQGH[SUHVVHGULJRURXVO\SUHIHUDEO\LQDIRUPDOJUDPPDULIQRWDVD PDWKHPDWLFDOSURRI&RPSXWHUVFLHQWLVWVIRUPXODWHWKHRUHPDWLFLQWHUSUHWDWLRQVRIFRGH XVLQJVHWWKHRU\ $OPRVWDOOWKHHQWLWLHVDULVLQJLQWKHVWXG\RIFRPSXWHUVRIWZDUHV\VWHPVLQFOXGLQJ FRPSXWHUSURJUDPVODQJXDJHVGDWDVWUXFWXUHVDQGRSHUDWLQJV\VWHPVFDQEH DEVWUDFWO\PDWKHPDWLFDOO\GHILQHGDV DOJHEUDLFV\VWHPV LHDVVHWVRIREMHFWV WRJHWKHUZLWKFHUWDLQ UHODWLRQV DQG RSHUDWLRQV DVVRFLDWHGZLWKWKHVHWV/HZ )URPWKLVSHUVSHFWLYHWKHZRUNFRGHGRHVZLWKLQFROOHFWLYHOLIHXOWLPDWHO\UHGXFHVWR UHODWLRQVDQGRSHUDWLRQVVXFKDVVRUWLQJFRPSDULQJFRS\LQJUHPRYLQJSHUWDLQLQJWR LQIRUPDWLRQHQWLWLHV7KHDFWXDOFRGHWKDWSURJUDPPHUVUHDGDQGZULWHFRQVLVWRI SUDFWLFDOH[SUHVVLRQVRIDEVWUDFWUHODWLRQVDQGIRUPDORSHUDWLRQVEHWZHHQHQWLWLHV JURXSHGLQVHWV7KHFRQFUHWHGRPDLQLQZKLFKWKHVHHQWLWLHVUHODWLRQVDQGRSHUDWLRQV H[LVWDQGWKHDFWXDOFRGHWKDWH[SUHVVHVWKHPZRXOGEHVHFRQGDU\6XFKDQ LQWHUSUHWDWLRQDOORZDIRUPDOLVWUHDGLQJRIIRUNERPESO VFRGH(DFKOLQHRIWKHFRGH ZRXOGHLWKHUGHILQHDQHQWLW\DUHODWLRQRUDQRSHUDWLRQRQUHODWLRQVEHWZHHQHQWLWLHV ZLWKLQWKHGRPDLQRIDQDOJHEUDLFV\VWHP6RIRULQVWDQFHWKHOLQH P\VWUHQJWK $5*9>@ ZRXOGGHILQHDQHQWLW\LQWKLVFDVHDYDULDEOHDVVRFLDWHLWZLWKDQDPH VWUHQJWK DVVLJQLWDYDOXHLQWKLVFDVHE\UHIHUULQJWRDYDOXHVXSSOLHGE\WKHXVHUDQGFRQWDLQHG LQWKHYDULDEOH$5*9>@DQGWKHQFDUU\RXWWKHDULWKPHWLFRSHUDWLRQRIDGGLQJWR WKHYDULDEOHQDPHG VWUHQJWK 7KHWKHRUHPDWLFLQWHUSUHWDWLRQUHVWVRQDZHOO HVWDEOLVKHGVHSDUDWLRQEHWZHHQIRUPDQGFRQWHQWZKLFKKRPRJHQLVHVFRQWHQWDQG VXERUGLQDWHVLWWRIRUP $GLIIHUHQWLQWHUSUHWDWLRQRIFRGHFRUUHODWHVPXFKPRUHFORVHO\ZLWKWKHGD\WRGD\ SUDFWLFHVRISURJUDPPHUVDQGSHUKDSVDFFRUGVVRPHJHQHUDWLYHSRWHQWLDOVWRFRGLQJ 'HOHX]HDQG*XDWWDULZULWH ZKHUHDVWKHWKHRUHPEHORQJVWRWKHUDWLRQDORUGHUVWKH SUREOHPLVDIIHFWLYHDQGLVLQVHSDUDEOHIURPWKHPHWDPRUSKRVHVJHQHUDWLRQVDQG FUHDWLRQV 'HOHX]H*XDWWDUL,QWKHLUDFFRXQWRIKRZ FROOHFWLYHERGLHV FDQWULJJHUQRYHOFRPSRVLWLRQVRUPHWDPRUSKRVHV'HOHX]HDQG*XDWWDULDWWULEXWH SRWHQF\WR IULQJHVRUPLQRULWLHV JUDSSOLQJZLWKWKHSUREOHPVSRVHGE\TXLWHWHFKQLFDO HQWHUSULVHVVXFKDVPHWDOOXUJ\PXVLFFDWKHGUDORUEULGJHEXLOGLQJRUZH FRXOGDGGFRGH7KHSUDFWLFHVRIWKHVHIULQJHJURXSVGHPRQVWUDWHDGLIIHUHQWUHODWLRQ EHWZHHQIRUPDQGFRQWHQWWKDQWKHXVXDOLPSRVLWLRQRIIRUPRQWRFRQWHQWPDWWHU$ OHVVWKHRUHPDWLFDQGPRUHSUREOHPDWLFDSSURDFKDSSHDUVWKHUH >0@DWWHULQQRPDGVFLHQFHLVQHYHUSUHSDUHGDQGWKHUHIRUHKRPRJHQL]HGPDWWHU EXWLVHVVHQWLDOO\ODGHQZLWKVLQJXODULWLHVZKLFKFRQVWLWXWHDIRUPRIFRQWHQW$QG QHLWKHULVH[SUHVVLRQIRUPDOLWLVLQVHSDUDEOHIURPSHUWLQHQWWUDLWVZKLFKFRQVWLWXWH DPDWWHURIH[SUHVVLRQ'HOHX]H*XDWWDUL ,IZHWDNHWKHVHLGHDVRIPDWHULDOVLQJXODULWLHVDQGWUDLWVRIH[SUHVVLRQVHULRXVO\FRGH FDQQRWEHVHHQDVDIRUPDOVHWRIRSHUDWLRQVDQGUHODWLRQVFRQFHUQLQJHQWLWLHV7KH PDWWHURQZKLFKFRGHZRUNVLVQHYHUKRPRJHQHRXVRUIXOO\SUHSDUHG7KH PDWWHU RQ ZKLFKFRGHRSHUDWHVLQFOXGHVFROOHFWLYHDUUDQJHPHQWVRINQRZOHGJHSURGXFWLRQ FLUFXODWLRQDQGFRQVXPSWLRQSDWWHUQVRIWUDQVDFWLRQDQGH[FKDQJHLQGLYLGXDODQGPDVV FRPPXQLFDWLRQLQWHUDFWLRQSURGXFWLRQUHFHSWLRQDQGDXGLHQFLQJRIYDULRXVDXGLRYLVXDO WH[WVUDQJLQJDFURVVVRXQGLPDJHDQGWH[WVPDQDJHPHQWDQGRUJDQLVDWLRQDOVWUXFWXUHV HWF²LVKLJKO\KHWHURJHQHRXVG\QDPLFDQGPXWDEOH Problematic code :KDWZRXOGWKHVHPHDQLQWHUPVRIDQDO\VLQJIRUNERPESODVSLHFHRIFRGH"$V VXJJHVWHGDERYHIRUNERPESOLVDVRPHZKDWVHOIUHIHUHQWLDOZRUN$OOLWGRHVLV JHQHUDWHDQH[SRQHQWLDOO\LQFUHDVLQJQXPEHURIFRSLHVRILWVHOI$WWKHVDPHWLPHWKH ZRUNUHOLHVRQWZRSDUWLFXODUGLVWLQFWLYHIHDWXUHVRIFRQWHPSRUDU\PXOWLXVHULQWHUDFWLYH RSHUDWLQJV\VWHPV7KHVHIHDWXUHVDUHGLUHFWO\UHDGDEOHIURPWKHFRGHLWVHOI7KHNH\ OLQHVWKDWSRLQWWRZDUGVERWKPDWHULDOVLQJXODULWLHVZLWKLQWKHFRPSXWLQJHQYLURQPHQW DQGWUDLWVRIH[SUHVVLRQZLWKLQWKHFRGHDUH ZKLOHQRWIRUN^ H[LWXQOHVVVWUHQJWK SULQW IRUNERPESOUHOLHVRQWKHSUHVHQFHRID IRUN RSHUDWLRQZLWKLQWKHSURJUDPPLQJ ODQJXDJH3HUO1RWDOOSURJUDPPLQJODQJXDJHVKDYHVXFKDFRQVWUXFW7KHILUVWSRLQW KHUHLVWKDWIRUNERPESOFRXOGQRWEHHDVLO\ZULWWHQLQMXVWDQ\SURJUDPPLQJODQJXDJH 3HUOGLVSOD\VVRPHSHUWLQHQWWUDLWVRIH[SUHVVLRQ 7KHIRUNRSHUDWLRQLQ3HUORZHVLWVH[LVWHQFHWRWKHIDFWWKDWODQJXDJHZDVRULJLQDOO\ GHVLJQHGE\DFRPSXWHUV\VWHPDGPLQLVWUDWRUIRUXVHE\RWKHUV\VWHPDGPLQLVWUDWRUV 8QOLNHPRVWODQJXDJHGHVLJQHUVZRUNLQJLQDFDGHPLFFRPSXWLQJVFLHQFHGHSDUWPHQWVRU ODUJHFRUSRUDWHRULQVWLWXWLRQDOUHVHDUFKODERUDWRULHV/DUU\:DOOWKHODQJXDJHGHVLJQHU ZDVZRUNLQJGXULQJWKHVDVDV\VWHPDGPLQLVWUDWRULQDFRUSRUDWHHQYLURQPHQWRQ WKH:HVW&RDVWRI86$VRPHZKDWUHPRYHGIURPWKHWKHRUHPDWLFDJHQGDRIFRPSXWLQJ VFLHQFHDVDQDFDGHPLFGLVFLSOLQH0RRG\7KHPRWLYDWLRQIRU3HUO DFFRUGLQJWR:DOOVWHPPHGIURPDQXQRFFXSLHG HFRORJLFDOQLFKH LQH[LVWLQJFRPSXWLQJ HQYLURQPHQWV:DOO$SDUWIURPGHVNWRS3&VPRVWFRPSXWHUV\VWHPVDWWKHWLPH XVHGDQRSHUDWLQJV\VWHPFDOOHG8QL[EXWV\VWHPDGPLQLVWUDWRUVKDGWRHLWKHUXVHYHU\ ORZOHYHOWRROVRUKLJKOHYHOVRIWZDUHDSSOLFDWLRQV'DWLQJIURP3HUODWWDLQHG DOPRVWXQULYDOOHGSRSXODULW\LQZHESURJUDPPLQJDQGDVDV\VWHPDGPLQLVWUDWRU VWRRO EHFDXVHLWOLHVPLGZD\EHWZHHQORZOHYHOSURJUDPPLQJODQJXDJHVVXFKDV&DQGKLJK OHYHOVRIWZDUHWRROVDQGDSSOLFDWLRQV/DUU\:DOOGHVFULEHVKLVPRWLYDWLRQDVIROORZV :KHQ,VWDUWHGGHVLJQLQJ3HUO,H[SOLFLWO\VHWRXWWRGHFRQVWUXFWDOOWKHFRPSXWHU ODQJXDJHV,NQHZDQGUHFRPELQHRUUHFRQVWUXFWWKHPLQDGLIIHUHQWZD\EHFDXVH WKHUHZHUHPDQ\WKLQJV,OLNHGDERXWRWKHUODQJXDJHVDQGPDQ\WKLQJV,GLVOLNHG, ORYLQJO\UHXVHGIHDWXUHVIURPPDQ\ODQJXDJHV:KDWHYHUWKHYHUE\RXFKRRVH, YH GRQHLWRYHUWKHFRXUVHRIWKH\HDUVIURP&VKFVKJUHSVHGDZN)RUWUDQ&2%2/ 3/,%$6,&3/86612%2//LVS$GD&DQG3\WKRQ7RQDPHDIHZ7RWKHH[WHQW WKDW3HUOUXOHVUDWKHUWKDQVXFNVLW VEHFDXVHWKHYDULRXVIHDWXUHVRIWKHVHODQJXDJHV UXOHGUDWKHUWKDQVXFNHG:DOO :LWKRXWJRLQJLQWRWKHGHWDLOVPXFKRIWKHIRUNERPESOFRGHVKRZQDERYHFRXOGEH DQDO\VHGLQWHUPVRIWKHZD\LV ODGHQZLWKVLQJXODULWLHV GUDZQIURPDQWHFHGHQW SURJUDPPLQJODQJXDJHV7KHXVHRID ZKLOH VWDWHPHQWIRULQVWDQFHUHIOHFWVWKH LQIOXHQFHRIWKH&SURJUDPPLQJODQJXDJH7KHPRUHLPSRUWDQWSRLQWKHUHLVWKDWUDWKHU WKDQEHLQJDIRUPDOGHVFULSWLRQRIUHODWLRQVEHWZHHQDVHWRIHQWLWLHV3HUOHIIHFWLYHO\ VWDWHGDSUREOHPWKDWH[LVWHGDPLGVWWKHDVVHPEODJHRIODUJHVFDOHFRPSXWLQJQHWZRUNV GHYHORSLQJGXULQJWKHODWHV3HUOUHVSRQGVWRWKHSUREOHPRIDV:DOOSXWVLWDQ XQRFFXSLHGHFRORJLFDOQLFKH :DOOFRPELQHGIHDWXUHVIURPPDQ\GLIIHUHQWSURJUDPPLQJODQJXDJHVDVZHOODVGUDZLQJ RQOLQJXLVWLFWKHRU\7KHODQJXDJH IROORZVWKHFRQQHFWLRQVEHWZHHQVLQJXODULWLHVRI PDWWHUDQGWUDLWVRIH[SUHVVLRQDQGORGJHVRQWKHOHYHORIWKHVHFRQQHFWLRQVZKHWKHU WKH\EHQDWXUDORUIRUFHG 'HOHX]H*XDWWDUL&RPELQLQJVLQJXODULWLHVRI PDWWHUDQGWUDLWVRIH[SUHVVLRQWKDWHTXDOO\FRQFHUQWKHDUFKLWHFWXUHRIKDUGZDUH SODWIRUPVWKHH[LVWHQFHRIZLGHO\VKDUHGSUDFWLFDONQRZOHGJHRISDUWLFXODUSURJUDP FRQVWUXFWVVXFKDVORRSVDQGDUUD\VWKHFRPPRQDOLWLHVRIDYDLODEOHRSHUDWLQJV\VWHPV DQGH[LVWLQJZD\VRIRUJDQLVLQJDQGGLYLGLQJFRGLQJZRUN3HUOFKDQJHVKRZSURJUDPPHUV ZRUN &RQQHFWLQJVLQJXODULWLHVRIPDWWHUDQGWUDLWVRIH[SUHVVLRQDOVRLQYROYHV DQRWKHU RUJDQL]DWLRQRIZRUNDQGRIWKHVRFLDOILHOGWKURXJKZRUN 'HOHX]H*XDWWDUL %H\RQGWKHVPDOOH[DPSOHVRISDUWLFXODUSURJUDPPLQJFRQVWUXFWVZHKDYH DQDO\VHGZHFRXOGH[DPLQHZKDW3HUOKDVGRQHWRFRGHGXULQJWKHODVWWZRGHFDGHV,W ZRXOGEHSRVVLEOHWRPDSRXWWKHNLQGVRISURJUDPPLQJFRQVWUXFWVWKDW3HUOVXSSOLHV WKHV\QWDFWLFDOLGLRPVDQGFRQWUDFWLRQVLWPDNHVDYDLODEOHRUWKHYDVWOLEUDU\RIDGGRQ 3HUO PRGXOHV LQDUHDVVXFKDVFU\SWRJUDSK\GDWDEDVHDFFHVVQHWZRUNFRQWUROWH[W SURFHVVLQJDQGSDWWHUQPDWFKLQJWKDWKDYHEHFRPHIUHHO\DYDLODEOHRYHUWKHODVW \HDUV3HUOKDVEHHQLPSRUWDQWEHFDXVHLWDOORZVFRGHWREHZULWWHQTXLFNO\RIWHQXVLQJ KLJKO\FRPSUHVVHGDQGLGLRPDWLFV\QWD[6XFKFRGHKDVEHHQSDUWLFXODUO\XVHIXOIRU V\VWHPDGPLQLVWUDWRUVDQGSURJUDPPHUVZKRHIIHFWLYHO\VWLWFKHGWRJHWKHUWKH LQIUDVWUXFWXUHVRILQIRUPDWLRQDQGFRPPXQLFDWLRQWRGD\3HUOPDGHLWSRVVLEOHWRZULWH FRGHWKDWOLQNVZHEVHUYHUVLQWRRWKHULQIRUPDWLRQV\VWHPVIRULQVWDQFHLQH&RPPHUFH ZKHUHZHEVHUYHUVQHHGWREHFRQQHFWHGWRGDWDEDVHVDQGWUDQVDFWLRQSURFHVVLQJ V\VWHPV 7KHIDFWIRUNERPESOLVZULWWHQLQ3HUOFDUULHVDFHUWDLQFRQQRWDWLRQRIEHLQJFRQQHFWHG WRWKHLQIUDVWUXFWXUHVRILQIRUPDWLRQDQGFRPPXQLFDWLRQ%HFDXVH3HUOLVDV\VWHP DGPLQLVWUDWRU VWRROZULWLQJLQ3HUOLVDVVRFLDWHGZLWKLQKDELWLQJWKHLQIUDVWUXFWXUHV Conclusion: a feeling for code 3UREOHPVRFFXS\DVWUDQJHVSDFH$SUREOHPLVDWDVNDFFRUGLQJWR0DQXHO'HODQGD GHILQHGE\ DGLVWULEXWLRQRIWKHVLQJXODUDQGWKHRUGLQDU\WKHLPSRUWDQWDQGWKH XQLPSRUWDQWWKHUHOHYDQWDQGWKHLUUHOHYDQW 'HODQGD,KDYHEHHQDUJXLQJ WKDWFRGHKDVDSUREOHPDWLFPRGHRIH[LVWHQFHLQVHYHUDOZD\VLQWKHUHODWLRQEHWZHHQ WH[WDQGSURFHVVLQWKHFRQWHVWEHWZHHQRUGHULQJDQGGLVRUGHULQJLQLWVEHFRPLQJ LPSHUFHSWLEOHDQGLQWKHFROOHFWLYHKXPDQQRQKXPDQIRUPDWLRQVLWLQVWLWXWHV&RGH H[LVWVDVDSUREOHPLQWKHZD\WKDWDPDWKHPDWLFDOSUREOHPPLJKWEHVDLGWRH[LVWDV VRPHWKLQJWKDWSHRSOHWU\WRSRVHRUVWDWHDVVRPHWKLQJWKDWDWWUDFWVGLIIHUHQW VROXWLRQVDQGVRPHWKLQJWKDWOHDGVWRDIIHFWLYHUHVSRQVHV ,VFRGHLPSRUWDQW"&RGHSURYLGHVPHDQVDQGWHUPVIRUVWDWLQJVROXWLRQVWRFHUWDLQ SUREOHPVSRVHGZLWKLQFROOHFWLYHOLIH$SUREOHPZULWHV'HOHX]H DOZD\VKDVWKH VROXWLRQLWGHVHUYHVLQWHUPVRIWKHZD\LQZKLFKLWLVVWDWHGDQGRIWKHPHDQVDQG WHUPVDWRXUGLVSRVDOIRUVWDWLQJLW 'HOHX]H7KHVHPHDQVDQGWHUPVDUHQRW LQGLIIHUHQWDKLVWRULFDOWUDQVFHQGHQWDODSROLWLFDORULQFRQWHVWDEOH:HFDQQRWWKLQN FRGHLIZHUHGXFHLWVVSHFLILFLW\WRDWRWDOLVHGXQGHUVWDQGLQJRIWHFKQRORJ\RU LQIRUPDWLRQVRFLHW\RUZHLQIODWHLWVVWDWXVWRDUDGLFDOO\QHZNLQGRIVXEVWDQFHRU JURXQG &DQFRGHSURYRNHLQYHQWLYHRUFULWLFDOWKRXJKW",VFRGHJRRGWRWKLQNZLWKSROLWLFDOO\RU RQWRORJLFDOO\"&DQFRGHWURXEOHWKHW\SRORJLHVDQGRQWRORJLHVJRYHUQLQJFRQWHPSRUDU\ XQGHUVWDQGLQJVRILQIRUPDWLRQQHZPHGLDFRPPXQLFDWLRQDQGFROOHFWLYHOLIH" IRUNERPESOJLYHVDIHHOLQJRIKRZFRGHHQDEOHVSDUWLFXODUVROXWLRQVSDUWLFXODUZD\VRI FRQQHFWLQJPDWHULDOVLQJXODULWLHVDQGWUDLWVRIH[SUHVVLRQ&RGHLVZULWWHQDQGUXQZLWKLQ VLWXDWHGSUDFWLFHVZLWKUHIHUHQFHWRSDUWLFXODUGRPDLQVDQGZLWKLQSDUWLFXODURUGHULQJV DQGGLVRUGHULQJVRIFROOHFWLYHOLIH,WVIRUPVDQGDEVWUDFWLRQVDUHDWWDFKHGWROLYHV9LD 3HUOIRUNERPESOWDSVLQWRPDWHULDOVLQJXODULWLHVFRQFHUQLQJWKHGLVWULEXWLRQDQG DOORFDWLRQRIFRPSXWLQJUHVRXUFHVDNH\VLWHRIFRQWHVWDWLRQZLWKLQFRQWHPSRUDU\ WHFKQRVFDSHV7KHVHFRQWHVWVSHUYDGHFRPPRGLW\FRPSXWLQJSODWIRUPV$VXQZDQWHG EURZVHUZLQGRZVDSSHDUDVHPDLOVSDPILOOWKHPDLOER[HVDVYLUXVHVFRUUXSWKDUG GULYHVDQGDVGHQLDORIVHUYLFHDWWDFNVUHQGHU$O-D]HHUD VZHEVLWHLQYLVLEOHUHVRXUFH DOORFDWLRQFRQWHVWVVWUXFWXUHWKHHYHU\GD\H[SHULHQFHRILQWHUDFWLYHFRPSXWLQJWKDWZH PRVWO\WDNHIRUJUDQWHGDVSDUWRIWKHEXLOWHQYLURQPHQW7KHWUDLWVRIH[SUHVVLRQ IRUNERPESOGUDZVRQDUHHPEHGGHGLQ3HUO7KH\SHUWDLQWRDQRUJDQLVDWLRQRIFRGLQJ ZRUNGHYHORSHGRQWKHPDUJLQVRIPDLQVWUHDPFRPSXWLQJVFLHQFHLQWKHWHFKQLFLDQ V GRPDLQRIV\VWHPDGPLQLVWUDWLRQ7KHRQFHUHODWLYHO\PLQRUWHFKQLFDOZRUNRIFRPSXWHU V\VWHPDGPLQLVWUDWLRQWRGD\KDVEHFRPHDQLQWHJUDOOLQNLQFRQVWUXFWLQJQHWZRUNVDQG DOORZLQJPRYHPHQWEHWZHHQFRPSXWLQJHQYLURQPHQWV 8QGHUZKDWFRQGLWLRQVGRHVDIHHOLQJIRUFRGHLPSRVHDSHUVSHFWLYHXSRQWKH XQLYHUVH RIWKLQJVIHOW "+RZGRHVFRGHEHFRPHDQREMHFWRIDIIHFWLYHUHVSRQVH",QSULQFLSOH IHHOLQJWDJVDVKLIWLQUHODWLRQVEHWZHHQERGLHV,QWKHLUDFFRXQWRIWKHUHODWLRQEHWZHHQ IHHOLQJDQGFROOHFWLYHOLIHWKHSROLWLFDOSKLORVRSKHUV*HQHYLHYH/OR\GDQG0RLUD*DWHQV VXJJHVW 7KHDZDUHQHVVRIKXPDQFROOHFWLYLWLHVWKHDZDUHQHVVRIERGLHVLQUHODWLRQLVQRWD PHUHO\FRJQLWLYHDZDUHQHVVRIERGLO\FKDQJH,WLVVKRWWKURXJKZLWKHPRWLRQZLWK WKHDZDUHQHVVRIERGLO\WUDQVLWLRQWRJUHDWHURUOHVVHUVWDWHVRIDFWLYLW\6RFLDELOLW\LV LQKHUHQWO\DIIHFWLYH*DWHQV/OR\G $Q\IHHOLQJLQFOXGLQJDIHHOLQJIRUFRGHRIFRGH VLPSRUWDQFHDULVHVIURP ERGLHVLQ UHODWLRQ WRXVH*DWHQVDQG/OR\G V6SLQR]LVWWHUPLQRORJ\ +RZGRHVDIHHOLQJIRUFRGHRUDERXWFRGHFRPHDERXW",Q*DWHQVDQG/OR\G VWHUPV FRGHPD\LQYROYHWUDQVLWLRQWROHVVHURUJUHDWHUVWDWHVRIDFWLYLW\LWPD\SRWHQWLDWHRU SDVVLYDWH ERGLHVLQUHODWLRQ,KDYHEHHQVXJJHVWLQJWKDWFRGHKDVDSUREOHPDWLFUDWKHU WKDQWKHRUHPDWLFPRGHRIH[LVWHQFH&HUWDLQVROXWLRQVUHGXFHWKDWSUREOHPDWLFDVSHFW WRRUGLQDU\RSHUDWLRQDOLW\,QIDFWPXFKRIZKDWEHFRPHVLQYLVLEOHQDWXUDOHDV\LQ LQIRUPDWLRQLQIUDVWUXFWXUHVDWWHVWVWRDUHGXFWLRQWRWKHRUGLQDU\RUWKHQRUPDO0XFKRI WKHHYHU\GD\ZRUNRIFRGLQJWDNHVSODFHDVDVHWRIRUGLQDU\RUGHULQJSUDFWLFHV2WKHU VROXWLRQVPDLQWDLQDFORVHUUHODWLRQWRWKHSUREOHPIURPZKLFKWKH\VSULQJ 2FFDVLRQDOO\WKHVROXWLRQDSLHFHRIFRGHDFWXDOO\UHIRUPXODWHVDQGUHQGHUVYLVLEOHD SUREOHPDWLFQH[XVWKDWSUHYLRXVO\KDGEHHQEDGO\IRUPXODWHGRUSRVHGLQDFRQIXVHG ZD\ References $JDPEHQ*LRUJLR )RUPRIOLIH HGV+DUGW0LFKDHO9LUQR3DROR5DGLFDO7KRXJKWLQ ,WDO\$3RWHQWLDO3ROLWLFV8QLYHUVLW\RI0LQQHVRWD3UHVV0LQQHDSROLV/RQGRQ $SSDGXUDL$UMXQ0RGHUQLW\DWODUJHFXOWXUDOGLPHQVLRQVRIJOREDOL]DWLRQ8QLYHUVLW\ RI0LQQHVRWD3UHVV0LQQHDSROLV %RZNHU*HRIIUH\&6WDU6XVDQ/HLJK6RUWLQJ7KLQJV2XW&ODVVLILFDWLRQDQG,WV &RQVHTXHQFHV0,73UHVV&DPEULGJH0$ %RXUQH6WHSKHQ57KH8QL[6\VWHP9(QYLURQPHQW$GGLVRQ:HVOH\3XEOLVKLQJ &RPSDQ\ &DUQLYRUH3(KWWSZZZUKL]RPHRUJFDUQLYRUH-DQXDU\ &DVWHOOV0DQXHO7KH,QWHUQHWJDOD[\UHIOHFWLRQVRQWKH,QWHUQHWEXVLQHVVDQG VRFLHW\2[IRUG83 &R[*HRII0F/HDQ$OH[:DUG$GULDQ 7KH$HVWKHWLFVRI*HQHUDWLYH&RGH KWWSZZZJHQHUDWLYHQHWSDSHUVDHVWKHWLFVLQGH[KWPO'HFHPEHU 'HODQGD0DQXHO,QWHQVLYH6FLHQFHDQG9LUWXDO3KLORVRSK\&RQWLQXXP%RRNV/RQGRQ 1HZ<RUN 'HOHX]H*LOOHV*XDWWDUL)HOL[$7KRXVDQG3ODWHDXVWU%ULDQ0DVVXPL8QLYHUVLW\RI 0LQQHVRWD3UHVV0LQQHDSROLV 'HOHX]H*LOOHV%HUJVRQLVP=RQH%RRNV1HZ<RUN *DWHQV0RLUD/OR\G*HQHYLHYH&ROOHFWLYH,PDJLQLQJV6SLQR]DSDVWDQGSUHVHQW 5RXWOHGJH/RQGRQ1HZ<RUN .LWWOHU)ULHGULFK 7KHUHLVQRVRIWZDUH /LWHUDWXUH0HGLD,QIRUPDWLRQ6\VWHPVHG -RKQVWRQ-RKQ*%$UWV,QWHUQDWLRQDO /DVK6FRWW&ULWLTXHRI,QIRUPDWLRQ6DJH3XEOLFDWLRQV/WG /DWRXU%UXQR$UDPLVRUWKHORYHRIWHFKQRORJ\WUDQVE\&DWKHULQH3RUWHU+DUYDUG 83 /HVVLJ/DZUHQFH&RGHDQGRWKHU/DZVRI&\EHUVSDFH%DVLF%RRNV /HWWLFH-RKQ 06SOD\VWKHVHFXULW\FDUGLQ*RYVKDUHGVRXUFHUHWUHDG 7KH 5HJLVWHUKWWSFRQWHQWKWPO-DQ /HZ$UW&RPSXWHU6FLHQFH$0DWKHPDWLFDO,QWURGXFWLRQ3UHQWLFH+DOO,QWHUQDWLRQDO /RKU6WHYH¶0LFURVRIWWR*LYH*RYHUQPHQWV$FFHVVWR&RGH·1HZ<RUN7LPHV %XVLQHVV)LQDQFLDO'HVN-DQXDU\6HFWLRQ&S 0DQRYLFK/HY7KHODQJXDJHRIQHZPHGLD0,73UHVV&DPEULGJH 0RRG\*O\Q5HEHO&RGH/LQX[DQGWKH2SHQ6RXUFH5HYROXWLRQ3HQJXLQ 3HUPXQJNDK *UHDWTXRWH KWWSXVHSHUORUJFRPPHQWVSO"FLG VLG -DQ 5D\PRQG(ULF7KH1HZ+DFNHUV'LFWLRQDU\ (GLWLRQ0,73UHVV 6LHYHU(OOHQ6SDLQKRXU6WHSKHQ3DWZDUGKDQ1DWKDQ3HUOLQD1XWVKHOO$'HVNWRS 4XLFN5HIHUHQFH2 5HLOO\$VVRFLDWHV6HEDVWDSRO 6RIWZDUH$UW5HSRVLWRU\KWWSUXQPHRUJ-DQ 7UDQVPHGLDOH3UL]HVKWWSZZZWUDQVPHGLDOHGHHQSUHVVUHOHDVHVSKS -DQ 8OOPDQ(OOHQ&ORVHWRWKH0DFKLQH7HFKQRSKLOLDDQGLWV'LVFRQWHQWV&LW\/LJKWV %RRNV6DQ)UDQFLVFR :DOO/DUU\ 3HUOWKHILUVWSRVWPRGHUQFRPSXWHUODQJXDJH KWWSZZZSHUOFRPOSWDSPKWPO-XO\ :KLWHKHDG$OIUHG1RUWK0RGHVRI7KRXJKW&DPEULGJH8QLYHUVLW\3UHVV L $PDMRURQOLQHFRGHUHSRVLWRU\VXFKDV6RXUFH)RUJH6RXUFH)RUJHKRVWVWKRXVDQGVRIFRGLQJ SURMHFWV,Q-DQXDU\6RXUFH)RUJHFODLPHGWRFRQWDLQSURMHFWVDQGKDYHDURXQGDKDOI PLOOLRQUHJLVWHUHGXVHUV$OWKRXJKWKHQXPEHURIUHJLVWHUHGXVHUVRQO\DPRXQWVWRDVPDOOFLW\LQ FRQWHPSRUDU\WHUPVDURXQGGLIIHUHQWVRIWZDUHSURMHFWVDUHXQGHUGHYHORSPHQWWKHUH LL 7KLVFRGHIUDJPHQWVKRZVDFRXSOHRILPSRUWDQWWKLQJV7KHWH[WEDVLFDOO\FRQVLVWVRIWZR ZKLOH ORRSV 7\SLFDOO\WKHZRUNRIFRGLQJLQYROYHVPDNLQJORRSVVSOLFLQJORRSVWRJHWKHUDQGQHVWLQJORRSVZLWKLQ ORRSV/RRSVRIWHQLQWHUDFWZLWKHDFKRWKHUGXULQJH[HFXWLRQRIWKHFRGH,QWKLVFDVHWKHORRSV WZLVWHGWKURXJKHDFKRWKHUFRQVWDQWO\DOWHUHDFKRWKHUV ERXQGLQJFRQGLWLRQVWRDGHJUHHUHJXODWHGE\ WKH VWUHQJWK YDULDEOHSURYLGHGWKHXVHU LLL ,QDVHQVHWKHQ/DWRXU VSRVLWLRQHFKRHVWKHSKHQRPHQRORJLFDOGHVFULSWLRQRIFRGHJLYHQDERYHFRGHLV VRPHWKLQJERWKUHDGDQGH[HFXWHGLWGHVFULEHVDQGRSHUDWHVLWH[SUHVVHVVRPHWKLQJDQGGRHV VRPHWKLQJLWUHSUHVHQWVDQGSHUIRUPVZKDWLWUHSUHVHQWV7KLVVXJJHVWVWKDWFUXFLDOTXHVWLRQVDERXW FRGHZLOOFRQFHUQQRWZKHWKHURUQRWLWFDQFDSWXUHWKHUHDOEXWKRZFRGHFDQVHHPWRGRERWKWKLQJV DWRQFHERWKDWH[WGHVFULELQJDQDUURZO\GHILQHGFRQWH[WDQGDWUDLQRIRSHUDWLRQVRUGHULQJDQG UHJXODWLQJDFRQWH[W
© Copyright 2026 Paperzz