The history of Fortran I, II, and III

Download The history of Fortran I, II, and III

Post on 28-Feb-2017

217 views

Category:

Documents

4 download

TRANSCRIPT

  • ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    The History of Fortran I, II, and IIIJOHN BACKUS

    This article discusses attitudes about automatic programming, the eco-nomics of programming, and existing programming systems, all in the early1950s. It describes the formation of the Fortran group, its knowledge of ex-isting systems, its plans for Fortran, and the development of the language in1954. It describes the development of the optimizing compiler for Fortran I,of various language manuals, and of Fortran II and III. It concludes with re-marks about later developments and the impact of Fortran and its succes-sors on programming today.

    >(GLWRUV QRWH 7KLV SDSHU RULJLQDOO\ DSSHDUHG LQ WKH$QQDOV RIWKH+LVWRU\RI&RPSXWLQJYROQR-XO\ 7KHVD\LQJVXVHGDVSXOOTXRWHVZHUHQRWLQWKHRULJLQDOSDSHUEXWZHUHRQFDUGV WKDW ZHUH GLVWULEXWHG GXULQJ WKH $),36 1DWLRQDO&RPSXWLQJ&RQIHUHQFHZKLFKLQFOXGHGD3LRQHHU'D\KRQRULQJ WKH)RUWUDQSLRQHHUV5HDGHUV LQWHUHVWHG LQ WKH WRSLFRI)RUWUDQVKRXOGFRQVXOWWKH$QQDOVYROQRZKLFKZDVDVSHFLDOLVVXH GHYRWHG WR WKH KLVWRU\ RI WKH ODQJXDJH GXULQJ LWV ILUVW \HDUV@

    Early Background and EnvironmentAttitudes About Automatic Programming in the1950s%HIRUH DOPRVW DOO SURJUDPPLQJZDVGRQH LQPDFKLQH ODQJXDJHRUDVVHPEO\ ODQJXDJH3URJUDPPHUV ULJKWO\ UHJDUGHG WKHLUZRUNDVDFRPSOH[FUHDWLYHDUW WKDWUHTXLUHGKXPDQLQYHQWLYHQHVVWRSURGXFHDQHIILFLHQWSURJUDP0XFKRIWKHLUHIIRUWZDVGHYRWHGWRRYHUFRPLQJWKHGLIILFXOWLHVFUHDWHGE\WKHFRPSXWHUVRIWKDWHUD

    WKHODFNRILQGH[UHJLVWHUV WKHODFNRIEXLOWLQIORDWLQJSRLQWRSHUDWLRQV UHVWULFWHG LQVWUXFWLRQVHWVZKLFKPLJKWKDYH$1'EXWQRW

    25IRUH[DPSOHDQG SULPLWLYHLQSXWRXWSXWDUUDQJHPHQWV

    *LYHQ WKHQDWXUHRIFRPSXWHUV WKH VHUYLFHV WKDW DXWRPDWLFSURJUDPPLQJ SHUIRUPHG IRU WKH SURJUDPPHUZHUH FRQFHUQHGZLWKRYHUFRPLQJ WKHPDFKLQHV VKRUWFRPLQJV7KXV WKHSULPDU\FRQFHUQRIVRPHDXWRPDWLFSURJUDPPLQJV\VWHPVZDVWRDOORZWKHXVHRIV\PEROLFDGGUHVVHVDQGGHFLPDOQXPEHUVHJWKH0,'$&,QSXW7UDQVODWLRQSURJUDP

    %XWPRVWRIWKHODUJHUDXWRPDWLFSURJUDPPLQJV\VWHPVZLWKWKHH[FHSWLRQRI -+/DQLQJDQG1=LHUOHUV DOJHEUDLF V\VWHP

    DQG WKH $ FRPSLOHU VLPSO\ SURYLGHG D V\QWKHWLF FRPSXWHUZLWKDQRUGHUFRGHGLIIHUHQWIURPWKDWRIWKHUHDOPDFKLQH7KLV V\QWKHWLF FRPSXWHU XVXDOO\ KDG IORDWLQJSRLQW LQVWUXFWLRQVDQG LQGH[UHJLVWHUVDQGKDG LPSURYHG LQSXWRXWSXWFRPPDQGV LWZDVWKHUHIRUHPXFKHDVLHUWRSURJUDPWKDQLWVUHDOFRXQWHUSDUW

    7KH$FRPSLOHUDOVRFDPHWREHDV\QWKHWLFFRPSXWHUVRPHWLPH DIWHU HDUO\ %XW LQ HDUO\ LWV LQSXW KDG D PXFKFUXGHUIRUPLQVWHDGRISVHXGRLQVWUXFWLRQVLWVLQSXWZDVWKHQD

    FRPSOH[ VHTXHQFH RI FRPSLOLQJ LQVWUXFWLRQV WKDW FRXOG WDNH DYDULHW\ RI IRUPV UDQJLQJ IURP PDFKLQH FRGH LWVHOI WR OHQJWK\JURXSVRIZRUGVFRQVWLWXWLQJUDWKHUFOXPV\FDOOLQJVHTXHQFHV IRUWKH GHVLUHG IORDWLQJSRLQW VXEURXWLQH WR DEEUHYLDWHG IRUP LQVWUXFWLRQV WKDW ZHUH FRQYHUWHG E\ D 7UDQVODWRU LQWR RUGLQDU\FRPSLOLQJLQVWUXFWLRQV

    $IWHU0D\WKH$FRPSLOHUDFTXLUHGDSVHXGRFRGHWKDWZDVVLPLODU WR WKHRUGHUFRGHVIRUPDQ\IORDWLQJSRLQW LQWHUSUHWLYHV\VWHPVWKDWZHUHDOUHDG\LQRSHUDWLRQLQIRUH[DPSOH

    WKH/RV$ODPRVV\VWHPV'8$/DQG6+$&2

    WKH0DVVDFKXVHWWV,QVWLWXWHRI7HFKQRORJ\0,76XPPHU6HVVLRQ&RPSXWHU

    DV\VWHPIRUWKH,OOLDFGHVLJQHGE\'-:KHHOHUDQG WKH6SHHGFRGLQJV\VWHPIRUWKH,%0

    7KH/DQLQJ DQG=LHUOHU V\VWHPZDV TXLWH D GLIIHUHQW VWRU\ ,WZDVWKHZRUOGVILUVWRSHUDWLQJDOJHEUDLFFRPSLOHUDUDWKHUHOHJDQWEXWVLPSOHRQH'RQDOG.QXWKDQG/XLV7UDEE3DUGRDVVLJQWKLVKRQRU WR$OLFN*OHQQLHV$XWRFRGHEXW , IRURQH DPXQDEOH WRUHFRJQL]HWKHVDPSOH$XWRFRGHSURJUDPWKH\JLYHDVDOJHEUDLFHVSHFLDOO\ZKHQ LW LV FRPSDUHG WR WKH FRUUHVSRQGLQJ/DQLQJ DQG=LHUOHUSURJUDP

    $OORIWKHHDUO\DXWRPDWLFSURJUDPPLQJV\VWHPVZHUHFRVWO\WRXVHVLQFHWKH\VORZHGGRZQWKHPDFKLQHE\DIDFWRURIILYHRU 7KHPRVW FRPPRQ UHDVRQ IRU WKH VORZGRZQZDV WKDW WKHVHV\VWHPVZHUH VSHQGLQJPRVW RI WKHLU WLPH LQ IORDWLQJSRLQW VXEURXWLQHV6LPXODWHGLQGH[LQJDQGRWKHUKRXVHNHHSLQJRSHUDWLRQVFRXOG EH GRQHZLWK VLPSOH LQHIILFLHQW WHFKQLTXHV VLQFH VORZ DVWKH\ZHUHWKH\WRRNIDUOHVVWLPHWKDQWKHIORDWLQJSRLQWZRUN

    ([SHULHQFHZLWKVORZDXWRPDWLFSURJUDPPLQJV\VWHPVSOXVWKHLU RZQH[SHULHQFHZLWK WKHSUREOHPVRI RUJDQL]LQJ ORRSV DQGDGGUHVV PRGLILFDWLRQ KDG FRQYLQFHG SURJUDPPHUV WKDW HIILFLHQWSURJUDPPLQJ ZDV VRPHWKLQJ WKDW FRXOG QRW EH DXWRPDWHG $QRWKHU UHDVRQ WKDW DXWRPDWLF SURJUDPPLQJ ZDV QRW WDNHQ VHULRXVO\E\WKHFRPSXWLQJFRPPXQLW\ZDVGXHWRWKHHQHUJHWLFSXEOLF UHODWLRQV HIIRUWV RI VRPH YLVLRQDULHV VSUHDGLQJ WKHZRUG WKDWWKHLUDXWRPDWLFSURJUDPPLQJV\VWHPVKDGDOPRVWKXPDQDELOLWLHVWRXQGHUVWDQGWKHODQJXDJHDQGWKHQHHGVRIWKHXVHUZKHUHDVFORVHULQVSHFWLRQRIWKRVHV\VWHPVZRXOGRIWHQUHYHDODFRPSOH[H[FHSWLRQULGGHQSHUIRUPHURIFOHULFDOWDVNVWKDWZDVERWKGLIILFXOW

    ,(((

  • ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    WR XVH DQG LQHIILFLHQW :KDWHYHU WKH UHDVRQV LW LV GLIILFXOW WRFRQYH\ WRD UHDGHU LQ WKH ODWHV WKH VWUHQJWKRI WKH VNHSWLFLVP DERXW DXWRPDWLF SURJUDPPLQJ LQ JHQHUDO DQG DERXW LWVDELOLW\ WRSURGXFH HIILFLHQWSURJUDPV LQSDUWLFXODU DV LW H[LVWHGLQ

    ,Q WKH DERYH GLVFXVVLRQ RI DWWLWXGHV DERXW DXWRPDWLF SURJUDPPLQJ LQ ,KDYHPHQWLRQHGRQO\ WKRVHDFWXDO V\VWHPVRIZKLFKP\FROOHDJXHVDQG,ZHUHDZDUHDWWKHWLPH)RUDFRPSUHKHQVLYH WUHDWPHQW RI HDUO\ SURJUDPPLQJ V\VWHPV DQG ODQJXDJHV , UHFRPPHQG WKH DUWLFOHV E\.QXWK DQG 3DUGR DQG E\-HDQ6DPPHW

    The Economics of Programming$QRWKHUIDFWRUWKDWLQIOXHQFHGWKHGHYHORSPHQWRI)RUWUDQZDVWKHHFRQRPLFV RI SURJUDPPLQJ LQ 7KH FRVW RI SURJUDPPHUVDVVRFLDWHGZLWKDFRPSXWHUFHQWHUZDVXVXDOO\DWOHDVWDVJUHDWDVWKHFRVWRIWKHFRPSXWHULWVHOI7KLVIDFWIROORZVIURPWKHDYHUDJHVDODU\ SOXV RYHUKHDG DQG WKH QXPEHU RI SURJUDPPHUV DW HDFKFHQWHU DQG IURP WKH FRPSXWHU UHQWDO ILJXUHV ,Q DGGLWLRQ IURPRQHTXDUWHU WR RQH KDOI RI WKH FRPSXWHUV WLPHZDV VSHQW LQ GHEXJJLQJ 7KXV SURJUDPPLQJ DQG GHEXJJLQJ DFFRXQWHG IRU DVPXFK DV WKUHH TXDUWHUV RI WKH FRVW RI RSHUDWLQJ D FRPSXWHU DQGREYLRXVO\ DV FRPSXWHUV JRW FKHDSHU WKLV VLWXDWLRQ ZRXOG JHWZRUVH

    Fortran is a collection of warts, heldtogether by bits of syntax.

    $QRQ

    7KLVHFRQRPLFIDFWRUZDVRQHRIWKHSULPHPRWLYDWLRQVWKDWOHGPHWRSURSRVHWKH)RUWUDQSURMHFWLQDOHWWHUWRP\ERVV&XWKEHUW+XUG LQ ODWH WKH H[DFW GDWH LV QRW NQRZQ EXW RWKHU IDFWVVXJJHVW'HFHPEHUDV D OLNHO\GDWH , EHOLHYH WKDW WKH HFRQRPLF QHHG IRU D V\VWHP OLNH )RUWUDQZDV RQH UHDVRQZK\ ,%0DQG P\ VXFFHVVLYH ERVVHV +XUG &KDUOHV 'H&DUOR DQG -RKQ0F3KHUVRQSURYLGHGIRURXUFRQVWDQWO\H[SDQGLQJQHHGVRYHUWKHQH[W ILYH\HDUVZLWKRXWHYHUDVNLQJXV WRSURMHFWRU MXVWLI\ WKRVHQHHGVLQDIRUPDOEXGJHW

    Programming Systems in 1954,W LV GLIILFXOW IRU D SURJUDPPHU RI WRGD\ WR FRPSUHKHQG ZKDWDXWRPDWLF SURJUDPPLQJ PHDQW WR SURJUDPPHUV LQ 7RPDQ\LW WKHQPHDQWVLPSO\SURYLGLQJPQHPRQLFRSHUDWLRQFRGHVDQGV\PEROLFDGGUHVVHVWRRWKHUVLWPHDQWWKHVLPSOHSURFHVVRIREWDLQLQJVXEURXWLQHVIURPDOLEUDU\DQGLQVHUWLQJWKHDGGUHVVHVRIRSHUDQGV LQWR HDFK VXEURXWLQH 0RVW DXWRPDWLF SURJUDPPLQJV\VWHPVZHUHDVVHPEO\SURJUDPVVXEURXWLQHIL[LQJSURJUDPVRUPRVWSRSXODUO\LQWHUSUHWLYHV\VWHPVWRSURYLGHIORDWLQJSRLQWDQGLQGH[LQJRSHUDWLRQV0\IULHQGVDQG,ZHUHDZDUHRIDQXPEHURIDVVHPEO\SURJUDPVDQGLQWHUSUHWLYHV\VWHPVVRPHRIZKLFKKDYHEHHQ PHQWLRQHG DERYH EHVLGHV WKHVH WKHUH ZHUH SULPDULO\ WZRRWKHUV\VWHPVRIVLJQLILFDQFHWKH$FRPSLOHUDQGWKH/DQLQJDQG=LHUOHUDOJHEUDLFFRPSLOHUDW0,7$VQRWHGDERYH WKH$FRPSLOHUZDVDWWKDWWLPHODUJHO\DVXEURXWLQHIL[HULWVRWKHUSULQFLSDOWDVNZDVWRSURYLGHIRURYHUOD\VEXWIURPWKHVWDQGSRLQWRILWVLQSXWSURJUDPVLWSURYLGHGIHZHUFRQYHQLHQFHVWKDQPRVWRIWKHWKHQFXUUHQWLQWHUSUHWLYHV\VWHPVPHQWLRQHGHDUOLHULW

    ODWHUDGRSWHGDSVHXGRFRGHDVLQSXWWKDWZDVVLPLODUWRWKHLQSXWFRGHVRIWKHVHLQWHUSUHWLYHV\VWHPV

    7KH /DQLQJ DQG =LHUOHU V\VWHP DFFHSWHG DV LQSXW DQ HOHJDQWEXW UDWKHU VLPSOH DOJHEUDLF ODQJXDJH ,W SHUPLWWHG VLQJOHOHWWHUYDULDEOHVLGHQWLILHUVWKDWFRXOGKDYHDVLQJOHFRQVWDQWRUYDULDEOHVXEVFULSW7KHUHSHUWRLUHRIIXQFWLRQVRQHFRXOGXVHZDVGHQRWHGE\ )ZLWK DQ LQWHJHU VXSHUVFULSW WR LQGLFDWH WKH FDWDORJQXPEHURIWKHGHVLUHGIXQFWLRQ$OJHEUDLFH[SUHVVLRQVZHUHFRPSLOHGLQWRFORVHGVXEURXWLQHVDQGSODFHGRQDPDJQHWLFGUXPIRUVXEVHTXHQWXVH7KHV\VWHPZDVRULJLQDOO\GHVLJQHGIRUWKH:KLUOZLQGFRPSXWHUZKHQ LW KDG VWRUDJH FHOOVZLWK WKH UHVXOW WKDW LWFDXVHGDVORZGRZQLQH[HFXWLRQVSHHGE\DIDFWRURIDERXW

    7KH HIIHFW RI WKH /DQLQJ DQG =LHUOHU V\VWHP RQ WKH GHYHORSPHQW RI )RUWUDQ LV D TXHVWLRQ WKDW KDV EHHQ PXGGOHG E\ PDQ\PLVVWDWHPHQWVRQP\SDUW)RUPDQ\\HDUV,EHOLHYHGWKDWZHKDGJRWWHQWKHLGHDIRUXVLQJDOJHEUDLFQRWDWLRQLQ)RUWUDQIURPVHHLQJDGHPRQVWUDWLRQRIWKH/DQLQJDQG=LHUOHUV\VWHPDW0,7,QSUHSDULQJDSDSHUIRU WKH,QWHUQDWLRQDO5HVHDUFK&RQIHUHQFHRQWKH+LVWRU\RI&RPSXWLQJDW/RV$ODPRV1HZ0H[LFR-XQH,UHYLHZHGWKHPDWWHUZLWK,UYLQJ=LOOHUDQGREWDLQHGDFRS\RIDOHWWHUZKLFK'U/DQLQJNLQGO\VHQWWRPH$VDUHVXOWWKHIDFWVRIWKHPDWWHUKDYHEHFRPHFOHDU7KHOHWWHULQTXHVWLRQLVRQH,VHQWWR'U/DQLQJDVNLQJIRUDGHPRQVWUDWLRQRIKLVV\VWHP,WPDNHV FOHDU WKDWZH KDG OHDUQHG RI KLVZRUN DW WKH2IILFH RI1DYDO 5HVHDUFK 6\PSRVLXP RQ $XWRPDWLF 3URJUDPPLQJ IRU'LJLWDO&RPSXWHUV0D\DQG WKDW WKHGHPRQVWUDWLRQWRRN SODFH RQ -XQH 7KH OHWWHU DOVRPDNHV FOHDU WKDW WKH)RUWUDQSURMHFWZDVZHOOXQGHUZD\ZKHQWKH OHWWHUZDVVHQW0D\ DQG LQFOXGHG+DUODQ+HUULFN5REHUW$1HOVRQ DQG=LOOHU DVZHOO DVP\VHOI)XUWKHUPRUH DQ DUWLFOH LQ WKHSURFHHGLQJVRIWKDWVDPH2IILFHRI1DYDO5HVHDUFK215V\PSRVLXPE\+HUULFNDQGP\VHOIVKRZVFOHDUO\WKDWZHZHUHDOUHDG\FRQVLGHULQJLQSXWH[SUHVVLRQVOLNH DLMEMNDQG;

  • The History of Fortran I, II, and III

    ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    DXWRPDWLF SURJUDPPLQJ HIIRUWV WKDW VLPXODWHG D V\QWKHWLF FRPSXWHUHJ0,7V6XPPHU6HVVLRQ&RPSXWHU6+$&2'8$/6SHHGFRGLQJ DQG WKH ,OOLDF V\VWHP VLQFH WKHLU ODQJXDJHV DQGV\VWHPVZHUH VR GLIIHUHQW IURP WKRVH RI )RUWUDQ$OVRZHZHUHQRW LQIOXHQFHGE\DOJHEUDLFV\VWHPV WKDWZHUHGHVLJQHGDIWHURXU3UHOLPLQDU\5HSRUWEXW WKDWEHJDQRSHUDWLRQEHIRUH)RUWUDQHJ %$&$,& ,7 DQG 0DWKH0DWLF $OWKRXJK 3$&7 ,

    ZDVQRWDQDOJHEUDLFFRPSLOHULWGHVHUYHVPHQWLRQDVDVLJQLILFDQWGHYHORSPHQW LWZDVGHVLJQHGDIWHU WKH)RUWUDQ ODQJXDJHEXWZDVLQRSHUDWLRQEHIRUH)RUWUDQLWGLGQRWLQIOXHQFHRXUZRUN

    2XU215 V\PSRVLXP DUWLFOH DOVRPDNHV FOHDU WKDW WKH )RUWUDQJURXSZDVDOUHDG\DZDUHWKDWLWIDFHGDQHZNLQGRISUREOHPLQDXWRPDWLFSURJUDPPLQJ

    The one central attribute of Fortranis its name.

    0DUWLQ*UHHQILHOG

    7KHYLDELOLW\ RIPRVW FRPSLOHUV DQG LQWHUSUHWHUV SULRU WR)RUWUDQKDG UHVWHGRQ WKH IDFW WKDWPRVW VRXUFH ODQJXDJHRSHUDWLRQVZHUH QRW PDFKLQH RSHUDWLRQV 7KXV HYHQ ODUJH LQHIILFLHQFLHV LQSHUIRUPLQJ ERWK ORRSLQJWHVWLQJ RSHUDWLRQV DQG FRPSXWLQJ DGGUHVVHVZHUHPDVNHGE\PRVWRIWKHRSHUDWLQJWLPHEHLQJVSHQWLQIORDWLQJSRLQW VXEURXWLQHV %XW WKH DGYHQW RI WKH ,%0 ZLWKEXLOWLQIORDWLQJSRLQWDQGLQGH[LQJUDGLFDOO\DOWHUHGWKHVLWXDWLRQ7KH SUHVHQWHG D GRXEOH FKDOOHQJH WR WKRVH ZKR ZDQWHG WRVLPSOLI\SURJUDPPLQJILUVWLWUHPRYHGWKHUDLVRQGHWUHRIHDUOLHUV\VWHPVE\SURYLGLQJ LQKDUGZDUH WKHRSHUDWLRQV WKH\ H[LVWHG WRSURYLGH VHFRQG LW LQFUHDVHG WKH SUREOHPRI JHQHUDWLQJ HIILFLHQWSURJUDPVE\DQRUGHURIPDJQLWXGHE\VSHHGLQJXSIORDWLQJSRLQWRSHUDWLRQV E\ D IDFWRU RI DQG WKHUHE\ OHDYLQJ LQHIILFLHQFLHVQRZKHUHWRKLGH,QYLHZRIWKHZLGHVSUHDGVNHSWLFLVPDERXWWKHSRVVLELOLW\ RI SURGXFLQJ HIILFLHQW SURJUDPV ZLWK DQ DXWRPDWLFSURJUDPPLQJ V\VWHP DQG WKH IDFW WKDW LQHIILFLHQFLHV FRXOG QRORQJHUEHKLGGHQZHZHUHFRQYLQFHGWKDW WKHNLQGRIV\VWHPZHKDGLQPLQGZRXOGEHZLGHO\XVHGRQO\LIZHFRXOGGHPRQVWUDWHWKDWLWZRXOGSURGXFHSURJUDPVDOPRVWDVHIILFLHQWDVKDQGFRGHGRQHVDQGGRVRRQYLUWXDOO\HYHU\MRE

    ,WZDVRXUEHOLHIWKDWLI)RUWUDQGXULQJLWVILUVWPRQWKVZHUHWRWUDQVODWHDQ\UHDVRQDEOHVFLHQWLILFVRXUFHSURJUDPLQWRDQREMHFWSURJUDPRQO\KDOIDVIDVWDV LWVKDQGFRGHGFRXQWHUSDUW WKHQDFFHSWDQFH RI RXU V\VWHPZRXOG EH LQ VHULRXV GDQJHU 7KLV EHOLHIFDXVHGXV WR UHJDUG WKH GHVLJQRI WKH WUDQVODWRU DV WKH UHDO FKDOOHQJHQRWWKHVLPSOHWDVNRIGHVLJQLQJWKHODQJXDJH2XUEHOLHILQWKH VLPSOLFLW\ RI ODQJXDJH GHVLJQ ZDV SDUWO\ FRQILUPHG E\ WKHUHODWLYH HDVH ZLWK ZKLFK VLPLODU ODQJXDJHV KDG EHHQ LQGHSHQGHQWO\GHYHORSHGE\5XWLVKDXVHU/DQLQJDQG=LHUOHUDQGRXUVHOYHVZKHUHDVZHZHUHDORQHLQVHHNLQJWRSURGXFHYHU\HIILFLHQWREMHFWSURJUDPV

    7RWKLVGD\,EHOLHYHWKDWRXUHPSKDVLVRQREMHFWSURJUDPHIILFLHQF\ UDWKHU WKDQ RQ ODQJXDJH GHVLJQ ZDV EDVLFDOO\ FRUUHFW ,EHOLHYHWKDWKDGZHIDLOHGWRSURGXFHHIILFLHQWSURJUDPVWKHZLGHVSUHDG XVH RI ODQJXDJHV OLNH )RUWUDQZRXOG KDYH EHHQ VHULRXVO\GHOD\HG ,Q IDFW , EHOLHYH WKDWZH DUH LQ D VLPLODU EXW XQUHFRJQL]HGVLWXDWLRQ WRGD\ ,QVSLWHRIDOO WKH IXVV WKDWKDVEHHQPDGHRYHUP\ULDGODQJXDJHGHWDLOVFXUUHQWFRQYHQWLRQDO ODQJXDJHVDUHVWLOO YHU\ ZHDN SURJUDPPLQJ DLGV DQG IDU PRUH SRZHUIXO ODQ

    JXDJHVZRXOGEHLQXVHWRGD\LIDQ\RQHKDGIRXQGDZD\WRPDNHWKHPUXQZLWKDGHTXDWHHIILFLHQF\,QRWKHUZRUGVWKHQH[WUHYROXWLRQLQSURJUDPPLQJZLOOWDNHSODFHRQO\ZKHQERWKRIWKHIROORZLQJUHTXLUHPHQWVKDYHEHHQPHW

    D QHZ NLQG RI SURJUDPPLQJ ODQJXDJH IDUPRUH SRZHUIXOWKDQWKRVHRIWRGD\KDVEHHQGHYHORSHGDQG

    D WHFKQLTXH KDV EHHQ IRXQG IRU H[HFXWLQJ LWV SURJUDPV DWQRWPXFKJUHDWHUFRVWWKDQWKDWRIWRGD\VSURJUDPV

    %HFDXVH RI RXU YLHZ WKDW VXFFHVV LQ SURGXFLQJ HIILFLHQW SURJUDPV ZDV PRUH LPSRUWDQW WKDQ WKH GHVLJQ RI WKH)RUWUDQ ODQJXDJH , FRQVLGHU WKH KLVWRU\ RI WKH FRPSLOHU FRQVWUXFWLRQ DQG WKHZRUNRI LWV LQYHQWRUV DQ LQWHJUDO SDUW RI WKHKLVWRU\RIWKH)RUWUDQODQJXDJHWKHUHIRUHDODWHUVHFWLRQGHDOVZLWKWKDWVXEMHFW

    Early Stages of the Fortran Project$IWHU+XUGDSSURYHGP\SURSRVDOWRGHYHORSDSUDFWLFDODXWRPDWLFSURJUDPPLQJ V\VWHP IRU WKH LQ 'HFHPEHU RU -DQXDU\=LOOHUZDVDVVLJQHGWRWKHSURMHFW:HVWDUWHGZRUNLQRQHRIWKHPDQ\VPDOORIILFHVWKHSURMHFWZDVWRRFFXS\LQWKHYLFLQLW\RI,%0KHDGTXDUWHUVDW0DGLVRQ$YHQXHLQ1HZ

  • ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    HPHUJHGDVZHWULHGWREXLOGDZD\RISURJUDPPLQJRQWKHVHEDVLFLGHDV

    :HFHUWDLQO\KDGQRLGHDWKDWODQJXDJHVDOPRVWLGHQWLFDOWRWKHRQHZHZHUHZRUNLQJRQZRXOGEHXVHGIRUPRUH WKDQRQH,%0FRPSXWHUQRWWRPHQWLRQWKRVHRIRWKHUPDQXIDFWXUHUV$IWHUDOOWKHUH ZHUH YHU\ IHZ FRPSXWHUV DURXQG EDFN WKHQ %XW ZH GLGH[SHFWRXUV\VWHPWRKDYHDELJLPSDFWLQWKHVHQVHWKDWLWZRXOGPDNH SURJUDPPLQJ IRU WKH YHU\ PXFK IDVWHU FKHDSHU DQGPRUH UHOLDEOH :H DOVR H[SHFWHG WKDW LI ZH ZHUH VXFFHVVIXO LQPHHWLQJRXUJRDOVRWKHUJURXSVDQGPDQXIDFWXUHUVZRXOGIROORZRXU H[DPSOH LQ UHGXFLQJ WKH FRVW RI SURJUDPPLQJ E\ SURYLGLQJVLPLODUV\VWHPVZLWKGLIIHUHQWEXWVLPLODUODQJXDJHV

    Fortranthe infantile disorderishopelessly inadequate for whatever

    computer application you have in mindtodaytoo clumsy, too risky,

    and too expensive.

    (GVJHU'LMNVWUD

    %\ WKH IDOO RI ZH KDG EHFRPH WKH 3URJUDPPLQJ 5HVHDUFK*URXSDQG,KDGEHFRPHLWVPDQDJHU%\1RYHPEHURIWKDW\HDUZHKDGSURGXFHGDSDSHU3UHOLPLQDU\5HSRUW6SHFLILFDWLRQV IRU WKH ,%00DWKHPDWLFDO )25PXOD 75$1VODWLQJ 6\VWHP)RUWUDQGDWHG1RYHPEHU,QLWVLQWURGXFWLRQZHQRWHGWKDWV\VWHPVZKLFKKDYHVRXJKWWRUHGXFHWKHMRERIFRGLQJDQGGHEXJJLQJSUREOHPVKDYHRIIHUHG WKH FKRLFHRI HDV\ FRGLQJDQG VORZ H[HFXWLRQ RU ODERULRXV FRGLQJ DQG IDVW H[HFXWLRQ2QWKHEDVLVPRUHRIIDLWKWKDQRINQRZOHGJHZHVXJJHVWHGWKDWSURJUDPV ZLOO EH H[HFXWHG LQ DERXW WKH VDPH WLPH WKDW ZRXOG EHUHTXLUHGKDG WKHSUREOHPEHHQ ODERULRXVO\KDQGFRGHG ,QZKDWWXUQHGRXWWREHDWUXHVWDWHPHQWZHVDLGWKDW)RUWUDQPD\DSSO\FRPSOH[ OHQJWK\ WHFKQLTXHV LQ FRGLQJ D SUREOHPZKLFK WKH KXPDQFRGHUZRXOGKDYHQHLWKHUWKHWLPHQRULQFOLQDWLRQWRGHULYHRUDSSO\

    7KHODQJXDJHGHVFULEHGLQWKH3UHOLPLQDU\5HSRUWKDG

    YDULDEOHVRIRQHRUWZRFKDUDFWHUVLQOHQJWK IXQFWLRQQDPHVRIWKUHHRUPRUHFKDUDFWHUV UHFXUVLYHO\GHILQHGH[SUHVVLRQV VXEVFULSWHGYDULDEOHVZLWKXSWRWKUHHVXEVFULSWV DULWKPHWLF IRUPXODV ZKLFK WXUQ RXW WR EH DVVLJQPHQW

    VWDWHPHQWVDQG '2IRUPXODV

    7KHVH'2IRUPXODVFRXOGVSHFLI\ERWKWKHILUVWDQGODVWVWDWHPHQWVWR EH FRQWUROOHG WKXV SHUPLWWLQJ D '2 WR FRQWURO D GLVWDQW VHTXHQFH RI VWDWHPHQWV DVZHOO DV VSHFLI\LQJ D WKLUG VWDWHPHQW WRZKLFK FRQWURO ZRXOG SDVV IROORZLQJ WKH HQG RI WKH LWHUDWLRQ ,IRQO\RQHVWDWHPHQWZDVVSHFLILHGWKHUDQJHRIWKH'2ZDVWKHVHTXHQFH RI VWDWHPHQWV IROORZLQJ WKH'2 GRZQ WR WKH VSHFLILHGVWDWHPHQW

    ([SUHVVLRQV LQ DULWKPHWLF IRUPXODV FRXOG EH PL[HG LQYROYLQJ ERWK IL[HGSRLQW LQWHJHU DQG IORDWLQJSRLQW TXDQWLWLHV7KHDULWKPHWLFXVHGDOOLQWHJHURUDOOIORDWLQJSRLQWWRHYDOXDWHDPL[HGH[SUHVVLRQZDVGHWHUPLQHGE\WKHW\SHRIWKHYDULDEOHRQWKHOHIWRIWKH VLJQ,)IRUPXODVHPSOR\HGDQHTXDOLW\RU

    LQHTXDOLW\VLJQ RU!RU! EHWZHHQWZRUHVWULFWHGH[SUHVVLRQVIROORZHGE\WZRVWDWHPHQWQXPEHUVRQHIRUWKHWUXHFDVHWKHRWKHUIRUWKHIDOVHFDVH

    $ 5HODEHO IRUPXODZDV GHVLJQHG WRPDNH LW HDV\ WR URWDWHVD\WKHLQGLFHVRIWKHURZVRIDPDWUL[VRWKDWWKHVDPHFRPSXWDWLRQ ZRXOG DSSO\ DIWHU UHODEHOLQJ HYHQ WKRXJK D QHZ URZ KDGEHHQUHDGLQDQGWKHQH[WFRPSXWDWLRQZDVQRZWRWDNHSODFHRQDGLIIHUHQW URWDWHG VHW RI URZV7KXV IRU H[DPSOH LI E LV D PDWUL[DIWHU5(/$%(/DUHIHUHQFHWR

    EMKDVWKHVDPHPHDQLQJDVEMEHIRUHUHODEHOLQJ EMDIWHU EMEHIRUH EMDIWHU EMEHIRUHDQG EMDIWHU EMEHIRUHUHODEHOLQJ

    7KH LQSXWRXWSXW VWDWHPHQWV WKDW ZHUH SURYLGHG LQFOXGHG WKHEDVLFQRWLRQRIVSHFLI\LQJWKHVHTXHQFHLQZKLFKGDWDZHUHWREHUHDGLQRURXWEXWGLGQRWLQFOXGHDQ\)RUPDWVWDWHPHQWV

    7KHUHSRUWDOVROLVWVIRXUNLQGVRIVSHFLILFDWLRQVHQWHQFHV

    GLPHQVLRQVHQWHQFHVIRUJLYLQJWKHGLPHQVLRQVRIDUUD\V HTXLYDOHQFHVHQWHQFHVIRUDVVLJQLQJWKHVDPHVWRUDJHOR

    FDWLRQVWRYDULDEOHV IUHTXHQF\VHQWHQFHVIRULQGLFDWLQJHVWLPDWHGUHODWLYHIUH

    TXHQF\RIEUDQFKSDWKVRUORRSVWRKHOSWKHFRPSLOHURSWLPL]HWKHREMHFWSURJUDPDQG

    UHODWLYHFRQVWDQW VHQWHQFHV WR LQGLFDWH VXEVFULSWYDULDEOHVZKLFKDUHH[SHFWHGWRFKDQJHWKHLUYDOXHVYHU\LQIUHTXHQWO\

    7RZDUG WKH HQG RI WKH UHSRUW SS WKHUH LV D VHFWLRQ)XWXUH$GGLWLRQVWRWKH)RUWUDQ6\VWHP,WVILUVWLWHPLVDYDULHW\ RI QHZ LQSXWRXWSXW IRUPXODV ZKLFK ZRXOG HQDEOH WKH SURJUDPPHUWRVSHFLI\YDULRXVIRUPDWVIRUFDUGVSULQWLQJLQSXWWDSHVDQG RXWSXW WDSHV ,W LV EHOLHYHG WKDW WKLV LWHP LV D UHVXOW RI RXUHDUO\ FRQVXOWDWLRQVZLWK1XWW 7KLV VHFWLRQ JRHV RQ WR OLVW RWKHUSURSRVHGIDFLOLWLHVWREHDGGHG

    FRPSOH[DQGGRXEOHSUHFLVLRQDULWKPHWLF PDWUL[DULWKPHWLF VRUWLQJ VROYLQJVLPXOWDQHRXVHTXDWLRQV GLIIHUHQWLDOHTXDWLRQVDQG OLQHDUSURJUDPPLQJSUREOHPV

    ,W DOVR GHVFULEHV IXQFWLRQ GHILQLWLRQ FDSDELOLWLHV VLPLODU WR WKRVHWKDWODWHUDSSHDUHGLQ)RUWUDQ,,

    IDFLOLWLHVIRUQXPHULFDOLQWHJUDWLRQ DVXPPDWLRQRSHUDWRUDQG WDEOHORRNXSIDFLOLWLHV

    7KHILQDOVHFWLRQRIWKHUHSRUWSSGLVFXVVHVSURJUDPPLQJ WHFKQLTXHV WRXVH WRKHOS WKHV\VWHPSURGXFHHIILFLHQWSURJUDPV ,W GLVFXVVHV KRZ WR XVH SDUHQWKHVHV WR KHOS WKH V\VWHPLGHQWLI\LGHQWLFDOVXEH[SUHVVLRQVZLWKLQDQH[SUHVVLRQDQGWKHUHE\HOLPLQDWHWKHLUGXSOLFDWHFDOFXODWLRQ7KHVHSDUHQWKHVHVKDGWREHVXSSOLHGRQO\ZKHQDUHFXUULQJVXEH[SUHVVLRQRFFXUUHGDVSDUWRIDWHUPHJLIDERFFXUUHGLQVHYHUDOSODFHVLWZRXOGEHEHWWHUWRZULWHWKHWHUPDEFDVDEFWRDYRLGGXSOLFDWHFDOFXODWLRQ RWKHUZLVH WKH V\VWHP ZRXOG LGHQWLI\ GXSOLFDWHV ZLWKRXWDQ\DVVLVWDQFH,WDOVRREVHUYHVWKDWWKHV\VWHPZRXOGQRWSURGXFHRSWLPDOFRGHIRUORRSVFRQVWUXFWHGZLWKRXW'2VWDWHPHQWV

    7KLVILQDOVHFWLRQRIWKHUHSRUWDOVRQRWHVWKDWQRVSHFLDOSUR

  • The History of Fortran I, II, and III

    ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    YLVLRQVKDYHEHHQLQFOXGHGLQWKH)RUWUDQV\VWHPIRU ORFDWLQJHUURUV LQ IRUPXODV ,W VXJJHVWVFKHFNLQJDSURJUDPE\ LQGHSHQGHQWO\ UHFUHDWLQJ WKHVSHFLILFDWLRQV IRUDSUREOHPIURPLWV)RUWUDQIRUPXODWLRQ >@ ,W VD\V QRWKLQJ DERXW WKH V\VWHP FDWFKLQJ V\QWDFWLFHUURUVEXWQRWHVWKDWDQHUURUILQGLQJSURJUDPFDQEHZULWWHQDIWHUVRPHH[SHULHQFHZLWKHUURUVKDVEHHQDFFXPXODWHG

    8QIRUWXQDWHO\ZHZHUHKRSHOHVVO\RSWLPLVWLFLQDERXWWKHHDVHRIGHEXJJLQJ)RUWUDQSURJUDPV WKXVZH ILQGRQSDJHRIWKH UHSRUW 6LQFH )RUWUDQ VKRXOG YLUWXDOO\ HOLPLQDWH FRGLQJ DQGGHEXJJLQJ >@ DQGKHQFH V\QWDFWLFHUURUFKHFNLQJ IDFLOLWLHVLQ WKH ILUVW GLVWULEXWLRQ RI )RUWUDQ , ZHUH ZHDN %HWWHU IDFLOLWLHVZHUH DGGHGQRW ORQJ DIWHU GLVWULEXWLRQ DQG IDLUO\ JRRG V\QWDFWLFFKHFNLQJZDVSURYLGHGLQ)RUWUDQ,,

    God is real (unless otherwise declaredin an explicit type statement or in an

    implicit declaration).

    %*UDKDP

    7KH)RUWUDQODQJXDJHGHVFULEHGLQWKH3URJUDPPHUV5HIHUHQFH0DQXDOGDWHG2FWREHUGLIIHUHGLQDIHZUHVSHFWVIURPWKDW RI WKH3UHOLPLQDU\5HSRUW EXW FRQVLGHULQJ RXU LJQRUDQFH LQRI WKHSUREOHPVZHZRXOGODWHUHQFRXQWHU LQSURGXFLQJ WKHFRPSLOHUWKHUHZHUH

    UHPDUNDEO\ IHZ GHOHWLRQV WKH 5HODEHO DQG 5HODWLYH &RQVWDQWVWDWHPHQWV

    DIHZUHWUHDWVVRPHIRUWXQDWHVRPHQRWVLPSOLILFDWLRQRI'2 VWDWHPHQWV GURSSLQJ LQHTXDOLWLHV IURP ,) VWDWHPHQWVIRUODFNRID!V\PERODQGSURKLELWLQJPRVWPL[HGH[SUHVVLRQVDQGVXEVFULSWHGVXEVFULSWVDQG

    WKHUHFWLILFDWLRQRIDIHZRPLVVLRQVDGGLWLRQRI)250$7&217,18( FRPSXWHG DQG DVVLJQHG *272 VWDWHPHQWVLQFUHDVLQJ WKH OHQJWK RI YDULDEOHV WR XS WR VL[ FKDUDFWHUVDQGJHQHUDOLPSURYHPHQWVRILQSXWRXWSXWVWDWHPHQWV

    6LQFH RXU HQWLUH DWWLWXGH DERXW ODQJXDJH GHVLJQ KDG DOZD\VEHHQDYHU\FDVXDORQHWKHFKDQJHVZHIHOWWREHGHVLUDEOHGXULQJWKHFRXUVHRIZULWLQJWKHFRPSLOHUZHUHPDGHHTXDOO\FDVXDOO\

    :HQHYHUIHOWWKDWDQ\RIWKHPLQYROYHGDUHDOVDFULILFHLQFRQYHQLHQFH RU SRZHU ZLWK WKH SRVVLEOH H[FHSWLRQ RI WKH 5HODEHOVWDWHPHQW ZKRVH SXUSRVH ZDV WR FRRUGLQDWH LQSXWRXWSXW ZLWKFRPSXWDWLRQV RQ DUUD\V EXW WKLV ZDV RQH IDFLOLW\ WKDW ZH IHOWZRXOGKDYHEHHQYHU\GLIILFXOW WR LPSOHPHQW ,EHOLHYH WKHVLPSOLILFDWLRQRIWKHRULJLQDO'2VWDWHPHQWUHVXOWHGIURPWKHUHDOL]DWLRQVWKDW

    LWZRXOGEHKDUGWRGHVFULEHSUHFLVHO\ LWZDVDZNZDUGWRFRPSLOHDQG LWSURYLGHGOLWWOHSRZHUEH\RQGWKDWRIWKHILQDOYHUVLRQ

    ,Q RXU QDLYH XQDZDUHQHVV RI ODQJXDJH GHVLJQ SUREOHPVRIFRXUVHZHNQHZQRWKLQJRIPDQ\LVVXHVWKDWZHUHODWHUWKRXJKWWREH LPSRUWDQW HJ EORFN VWUXFWXUH FRQGLWLRQDO H[SUHVVLRQV DQGW\SHGHFODUDWLRQVLWVHHPHGWRXV WKDWRQFHRQHKDGWKHQRWLRQVRIWKHDVVLJQPHQWVWDWHPHQWWKHVXEVFULSWHGYDULDEOHDQGWKH'2VWDWHPHQWLQKDQGDQGWKHVHZHUHDPRQJRXUHDUOLHVWLGHDVWKHQWKH UHPDLQLQJ SUREOHPV RI ODQJXDJH GHVLJQ ZHUH WULYLDO 7KHLUVROXWLRQZDVWKUXVWRQXVHLWKHUE\WKHQHHGWRSURYLGHVRPHPD

    FKLQHIDFLOLW\VXFKDVUHDGLQJLQSXWRUE\VRPHSURJUDPPLQJWDVNWKDWFRXOGQRWEHGRQHZLWKH[LVWLQJVWUXFWXUHV)RUH[DPSOHVNLSWRWKHHQGRID'2ORRSZLWKRXWVNLSSLQJWKHLQGH[LQJLQVWUXFWLRQVWKHUH7KLVJDYHULVHWRWKH&217,18(VWDWHPHQW

    2QHPXFKFULWLFL]HGGHVLJQFKRLFHLQ)RUWUDQFRQFHUQVWKHXVHRIVSDFHV%ODQNVZHUH LJQRUHGHYHQEODQNV LQ WKHPLGGOHRIDQLGHQWLILHU1XWWUHPLQGVPHWKDWWKDWFKRLFHZDVSDUWO\LQUHFRJQLWLRQRIDSUREOHPZLGHO\NQRZQLQ6+$5(WKHXVHUVDVVRFLDWLRQ 7KHUH ZDV D FRPPRQ SUREOHP ZLWK NH\SXQFKHUV QRWUHFRJQL]LQJRUSURSHUO\FRXQWLQJEODQNVLQKDQGZULWWHQGDWDDQGWKLV FDXVHGPDQ\ HUURUV:H DOVR UHJDUGHG LJQRULQJ EODQNV DV DGHYLFHWRHQDEOHSURJUDPPHUVWRDUUDQJHWKHLUSURJUDPVLQDPRUHUHDGDEOHIRUPZLWKRXWDOWHULQJWKHLUPHDQLQJRULQWURGXFLQJFRPSOH[UXOHVIRUIRUPDWWLQJVWDWHPHQWV

    $QRWKHUGHEDWDEOHGHVLJQFKRLFHZDVWRUXOHRXWPL[HGPRGHH[SUHVVLRQV LQYROYLQJ ERWK LQWHJHU DQG IORDWLQJSRLQW TXDQWLWLHV$OWKRXJK RXU 3UHOLPLQDU\5HSRUW KDG LQFOXGHG VXFK H[SUHVVLRQVDQGUXOHVIRUHYDOXDWLQJWKHPZHIHOWWKDWLIFRGHIRUW\SHFRQYHUVLRQZHUH WREHJHQHUDWHG WKHXVHU VKRXOGEHDZDUHRI WKDW DQGWKHEHVWZD\WRHQVXUHWKDWKHZDVDZDUHZDVWRDVNKLPWRVSHFLI\WKHP , EHOLHYH ZH ZHUH DOVR GRXEWIXO RI WKH XVHIXOQHVV RI WKHUXOHVLQRXUUHSRUWIRUHYDOXDWLQJPL[HGH[SUHVVLRQV,QDQ\FDVHWKHPRVW FRPPRQ VRUW RI PL[WXUHZDV DOORZHG ,QWHJHU H[SRQHQWV DQG IXQFWLRQ DUJXPHQWV ZHUH DOORZHG LQ D IORDWLQJSRLQWH[SUHVVLRQ

    ,Q ODWHDQGHDUO\DIWHUFRPSOHWLQJ WKH3UHOLPLQDU\5HSRUW+HUULFN=LOOHUDQG,JDYHSHUKDSVILYHRUVL[WDONVDERXWRXU SODQV IRU )RUWUDQ WR YDULRXV JURXSV RI ,%0 FXVWRPHUV ZKRKDGRUGHUHGDWKHKDGEHHQDQQRXQFHGDERXW0D\$WWKHVHWDONVZHFRYHUHGWKHPDWHULDOLQWKHUHSRUWDQGGLVFXVVHGRXU SODQV IRU WKH FRPSLOHU ZKLFK ZDV WR EH FRPSOHWHG ZLWKLQDERXWVL[PRQWKV>@WKLVZDVWRUHPDLQWKHLQWHUYDOWRFRPSOHWLRQZKHQHYHUZHZHUHDVNHGXQWLOLWDFWXDOO\ZDVFRPSOHWHGRYHUWZR\HDUV ODWHU LQ $SULO ,Q DGGLWLRQ WR LQIRUPLQJ FXVWRPHUVDERXWRXUSODQVDQRWKHUSXUSRVHRIWKHVHWDONVZDVWRDVVHPEOHDOLVWRI WKHLUREMHFWLRQVDQG IXUWKHU UHTXLUHPHQWV ,Q WKLVZHZHUHGLVDSSRLQWHG RXU OLVWHQHUVZHUHPRVWO\ VNHSWLFDO , EHOLHYH WKH\KDGKHDUGWRRPDQ\JORZLQJGHVFULSWLRQVRIZKDWWXUQHGRXWWREHFOXPV\ V\VWHPV WR WDNH XV VHULRXVO\ ,Q WKRVH GD\V RQHZDV DFFXVWRPHGWRILQGLQJORWVRISHFXOLDUEXWVLJQLILFDQWUHVWULFWLRQVLQDV\VWHPZKHQLWILQDOO\DUULYHGWKDWKDGQRWEHHQPHQWLRQHGLQLWVRULJLQDO GHVFULSWLRQ0RVW RI DOO RXU FODLPV WKDWZHZRXOG SURGXFH HIILFLHQW REMHFW SURJUDPV ZHUH GLVEHOLHYHG :KDWHYHU WKHUHDVRQVZHUHFHLYHGDOPRVWQRVXJJHVWLRQVRU IHHGEDFNRXU OLVWHQHUVKDGGRQHDOPRVWQRWKLQNLQJDERXW WKHSUREOHPVZHIDFHGDQGKDGDOPRVWQRVXJJHVWLRQVRUFULWLFLVPV7KXVZHIHOWWKDWRXUWULSVWR:DVKLQJWRQ'&$OEXTXHUTXH3LWWVEXUJK/RV$QJHOHVDQGRQHRUWZRRWKHUSODFHVZHUHQRWYHU\KHOSIXO

    2QHWULSWRJLYHRXUWDONSUREDEO\LQ-DQXDU\KDGDQH[FHOOHQWSD\RII7KLV WDON DW8QLWHG$LUFUDIW&RUS UHVXOWHG LQ DQDJUHHPHQW EHWZHHQ RXU JURXS DQG :DOWHU 5DPVKDZ DW 8QLWHG$LUFUDIW WKDW1XWWZRXOGEHFRPHD UHJXODUSDUWRIRXU HIIRUW DOWKRXJK UHPDLQLQJ DQ HPSOR\HH RI8QLWHG$LUFUDIW WR FRQWULEXWHKLV H[SHUWLVH RQ LQSXWRXWSXW DQG DVVHPEO\ URXWLQHV:LWK D IHZEUHDNV GXH WR KLV LQYROYHPHQW LQ ZULWLQJ YDULRXV 6+$5( SURJUDPV KH ZRXOG WKHQFHIRUWK FRPH WR 1HZ

  • ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    LQJ DQG =LHUOHUV DOJHEUDLF FRPSLOHU DW WKH 215 V\PSRVLXP LQ0D\ZRXOGKDYHEHHQPRUH OLNHO\ WRSHUVXDGHVRPHRQH WRXQGHUWDNHDVLPLODU OLQHRIHIIRUW WKDQZRXOG WKHEULHIGLVFXVVLRQRI WKH PHULWV RI XVLQJ D IDLUO\ QDWXUDO PDWKHPDWLFDO ODQJXDJHWKDW DSSHDUHG WKHUH LQ WKH SDSHU E\+HUULFN DQGP\VHOI%XW LWZDVRXULPSUHVVLRQWKDWRXUGLVFXVVLRQVZLWKYDULRXVJURXSVDIWHUWKDWWLPHWKHLUDFFHVVWRWKH3UHOLPLQDU\5HSRUWDQGWKHLUDZDUHQHVVRIWKHH[WHQWDQGVHULRXVQHVVRIRXUHIIRUWVWKDWWKHVHIDFWRUVHLWKHUJDYH WKH LQLWLDO VWLPXOXV WR VRPHRWKHUSURMHFWVRU DW OHDVWFDXVHG WKHPWREHPRUHDFWLYH WKDQ WKH\PLJKWKDYHEHHQRWKHUZLVH,WZDVRXULPSUHVVLRQIRUH[DPSOHWKDWWKH,7SURMHFWDW3XUGXH8QLYHUVLW\DQGODWHUDW&DUQHJLH0HOORQ8QLYHUVLW\EHJDQVKRUWO\DIWHUWKHGLVWULEXWLRQRIRXU3UHOLPLQDU\5HSRUWDVGLGWKH0DWK0DWLFSURMHFWDW6SHUU\5DQG

    I dont know what the language of theyear 2000 will look like, but I know it

    will be called Fortran.

    7RQ\+RDUH

    ,WLVQRWFOHDUZKDWLQIOXHQFHLIDQ\RXU/RV$QJHOHVWDONDQGHDUOLHUFRQWDFWVZLWKPHPEHUVRI WKHLUJURXSKDGRQ WKH3$&7,HIIRUWZKLFK,EHOLHYHZDVDOUHDG\LQLWVIRUPDWLYHVWDJHVZKHQZH JRW WR /RV $QJHOHV ,W LV FOHDU WKDW ZKDWHYHU LQIOXHQFH WKHVSHFLILFDWLRQVIRU)RUWUDQPD\KDYHKDGRQRWKHUSURMHFWVLQRXUSODQVZHUHZHOODGYDQFHGDQGTXLWHILUPE\WKHHQGRIEHIRUHZHKDGFRQWDFWRUNQRZOHGJHRIWKRVHRWKHUSURMHFWV2XU VSHFLILFDWLRQV ZHUH QRW DIIHFWHG E\ WKHP LQ DQ\ VLJQLILFDQWZD\DVIDUDV,DPDZDUHHYHQWKRXJKVRPHZHUHRSHUDWLQJEHIRUH)RUWUDQVLQFHWKH\ZHUHSULPDULO\LQWHUHVWHGLQSURYLGLQJDQLQSXWODQJXDJHUDWKHUWKDQDQRSWLPL]DWLRQWKHLUWDVNZDVFRQVLGHUDEO\VLPSOHUWKDQRXUV

    The Construction of the Compiler7KH )RUWUDQ FRPSLOHU RU WUDQVODWRU DVZH FDOOHG LW WKHQZDVEHJXQ LQHDUO\DOWKRXJKD ORWRIZRUNRQYDULRXV VFKHPHVWKDWZRXOGEHXVHGLQLWKDGEHHQGRQHLQ+HUULFNKDGGRQHD ORW RI WULDO SURJUDPPLQJ WR WHVW RXU ODQJXDJH DQG ZH KDGZRUNHGRXWWKHEDVLFVRUWRIPDFKLQHSURJUDPVWKDWZHZDQWHGWKHFRPSLOHU WR JHQHUDWH IRU YDULRXV VRXUFH ODQJXDJH SKUDVHV =LOOHUDQG , KDG ZRUNHG RXW D EDVLF VFKHPH IRU WUDQVODWLQJ DULWKPHWLFH[SUHVVLRQV

    %XW WKH UHDOZRUNRQ WKHFRPSLOHUJRWXQGHUZD\ LQRXU WKLUGORFDWLRQRQWKHILIWKIORRURI(DVWWK6WUHHWLQ1HZ

  • The History of Fortran I, II, and III

    ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    7KHDUFKLWHFWXUHDQGDOO WKH WHFKQLTXHVHPSOR\HG LQVHFWLRQZHUH LQYHQWHG E\ 1HOVRQ DQG =LOOHU 7KH\ SODQQHG DQG SURJUDPPHG WKH HQWLUH VHFWLRQ 2ULJLQDOO\ LW ZDV WKHLU LQWHQWLRQ WRSURGXFHWKHFRPSOHWHFRGHIRUWKHLUDUHDLQFOXGLQJWKHFKRLFHRIWKH LQGH[ UHJLVWHU WREHXVHG WKHKDG WKUHH LQGH[ UHJLVWHUV:KHQWKH\VWDUWHGORRNLQJDWWKHSUREOHPLWUDSLGO\EHFDPHFOHDUWKDWLWZDVQRWJRLQJWREHHDV\WRWUHDWLWRSWLPDOO\$WWKDWSRLQW,SURSRVHGWKDWWKH\VKRXOGSURGXFHDSURJUDPIRUDZLWKDQXQOLPLWHGQXPEHURILQGH[UHJLVWHUVDQGWKDWODWHUVHFWLRQVZRXOGDQDO\]HWKHIUHTXHQF\RIH[HFXWLRQRIYDULRXVSDUWVRIWKHSURJUDPE\ D 0RQWH &DUOR VLPXODWLRQ RI LWV H[HFXWLRQ DQG WKHQ PDNHLQGH[UHJLVWHUDVVLJQPHQWVVRDVWRPLQLPL]HWKHWUDQVIHUVRILWHPVEHWZHHQWKHVWRUHDQGWKHLQGH[UHJLVWHUV

    Fortran is a language to avoidunlessyou want some answers.

    $QRQ

    7KLV SURSRVDO JDYH ULVH WR WZR QHZ VHFWLRQV RI WKH FRPSLOHUWKDWZHKDGQRWDQWLFLSDWHGVHFWLRQVDQGVHFWLRQZDVDGGHGWRFRQYHUWWKHRXWSXWRIVHFWLRQVDQGWRWKHIRUPUHTXLUHGIRUVHFWLRQV DQG ,Q WKH IDOO RI /RLV 0LWFKHOO +DLEWMRLQHGRXUJURXSWRSODQDQGSURJUDPVHFWLRQ

    WR DQDO\]H WKH IORZ RI D SURJUDP SURGXFHG E\ VHFWLRQV DQG

    WRGLYLGHWKHSURJUDPLQWREDVLFEORFNVZKLFKFRQWDLQHGQREUDQFKLQJ

    WR GR D0RQWH &DUOR VWDWLVWLFDO DQDO\VLV RI WKH H[SHFWHGIUHTXHQF\RIH[HFXWLRQRIEDVLFEORFNVE\VLPXODWLQJWKHEHKDYLRURI WKHSURJUDPDQGNHHSLQJFRXQWVRI WKHXVHRIHDFK EORFNXVLQJ LQIRUPDWLRQ IURP '2 VWDWHPHQWV DQG)5(48(1&

  • ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    0DQXDO,WDSSHDUHGLQDJORVV\FRYHUKDQGVRPHO\SULQWHGZLWKWKHGDWH2FWREHU,WVWRRGIRUVRPHWLPHDVDXQLTXHH[DPSOH RI DPDQXDO IRU D SURJUDPPLQJ ODQJXDJH SHUKDSV LW VWLOOGRHV ,W KDGZLGHPDUJLQV \HWZDV RQO\ SDJHV ORQJ ,WV GHVFULSWLRQRIWKH)RUWUDQODQJXDJHH[FOXVLYHRILQSXWRXWSXWVWDWHPHQWV ZDV SDJHV WKH ,2 GHVFULSWLRQ RFFXSLHG DQRWKHU SDJHV WKH UHVW RI LW ZDV H[DPSOHV DQG GHWDLOV DERXW DULWKPHWLFWDEOHV HWF ,WJDYHDQHOHJDQW UHFXUVLYHGHILQLWLRQRI H[SUHVVLRQVDV JLYHQ E\ 6KHULGDQ DQG FRQFLVH FOHDU GHVFULSWLRQV ZLWK H[DPSOHV RI HDFK VWDWHPHQW W\SH RIZKLFK WKHUHZHUH PRVWO\PDFKLQHGHSHQGHQW LWHPV OLNH 6(16( /,*+7 ,) ',9,'(&+(&.381&+5($''580DQGVRRQ

    2QH IHDWXUH RI )RUWUDQ , LV PLVVLQJ IURP WKH 3URJUDPPHUV5HIHUHQFH0DQXDOQRWIURPDQRYHUVLJKWRI6D\UHVEXWEHFDXVHLWZDVDGGHGWRWKHV\VWHPDIWHUWKHPDQXDOZDVGLVWULEXWHG7KLVIHDWXUHZDV WKH DELOLW\ WRGHILQH D IXQFWLRQE\ D IXQFWLRQ VWDWHPHQW7KHVH VWDWHPHQWVKDG WRSUHFHGH WKH UHVW RI WKHSURJUDP7KH\ORRNHGOLNHDVVLJQPHQWVWDWHPHQWVZLWKWKHGHILQHGIXQFWLRQDQG GXPP\ DUJXPHQWV RQ WKH OHIW DQG DQ H[SUHVVLRQ LQYROYLQJWKRVHDUJXPHQWVRQWKHULJKW7KH\DUHGHVFULEHGLQWKHDGGHQGDWRWKH3URJUDPPHUV5HIHUHQFH0DQXDOZKLFKZHVHQWRQ)HEUXDU\WR-RKQ*UHHQVWDGWZKRZDVLQFKDUJHRI,%0VIDFLOLW\IRUGLVWULEXWLQJLQIRUPDWLRQWR6+$5(7KH\DUHDOVRGHVFULEHGLQDOOVXEVHTXHQWPDWHULDORQ)RUWUDQ,

    In the good old days, physicistsrepeated each others experiments, justto be sure. Today, they stick to Fortran

    so they can share each othersprograms, bugs included.

    (GVJHU'LMNVWUD

    7KHQH[W GRFXPHQWDWLRQ WDVNZH VHW RXUVHOYHVZDV WRZULWH DSDSHUGHVFULELQJWKH)RUWUDQODQJXDJHDQGWKHWUDQVODWRUSURJUDP7KH UHVXOWZDVDSDSHU HQWLWOHG 7KH)RUWUDQ$XWRPDWLF&RGLQJ6\VWHP ZKLFK ZH SUHVHQWHG DW WKH :HVWHUQ -RLQW &RPSXWHU&RQIHUHQFH LQ/RV$QJHOHV LQ)HEUXDU\ , KDYHPHQWLRQHGDOORIWKHDXWKRUVRIWKDWSDSHULQWKHSUHFHGLQJQDUUDWLYHH[FHSWRQH5REHUW$+XJKHV+HZDVHPSOR\HGE\WKH/LYHUPRUH5DGLDWLRQ /DERUDWRU\ E\ DUUDQJHPHQW ZLWK 6LGQH\ )HUQEDFK KHYLVLWHGXVIRUWZRRUWKUHHPRQWKVLQWKHVXPPHURIWRKHOSXVGRFXPHQWWKHV\VWHP

    $WDERXW WKH WLPHRI WKH:HVWHUQ-RLQW&RPSXWHU&RQIHUHQFHZHVSHQWVRPHWLPHLQ/RV$QJHOHVVWLOOIUDQWLFDOO\GHEXJJLQJWKHV\VWHP1RUWK$PHULFDQ$YLDWLRQJDYHXV WLPH DW QLJKW RQ WKHLUWRKHOSXVLQRXUPDGUXVKWRGLVWULEXWHWKHV\VWHP8SWRWKLVSRLQW WKHUH KDG EHHQ UHODWLYHO\ OLWWOH LQWHUHVW IURP LQVWDOODWLRQV ZLWK WKH H[FHSWLRQ RI 5DPVKDZV 8QLWHG $LUFUDIW VKRS+DUU\&DQWUHOOV*( LQVWDOODWLRQ LQ 6FKHQHFWDG\1HZ(GLWRUV QRWH 7KLV VWRU\ LV DOVRWROGLQ$QQDOVYROQRSS@

    $IWHU IDLOLQJ WRSURGXFHELQDU\GHFNV6D\UHGHYLVHGDQGSURJUDPPHG WKH VLPSOH HGLWRU DQG ORDGHU WKDW PDGH LW SRVVLEOH WRGLVWULEXWH DQG XSGDWH WKH V\VWHP IURP PDJQHWLF WDSHV WKLV DUUDQJHPHQWVHUYHGDVWKHPHFKDQLVPIRUFUHDWLQJQHZV\VWHPWDSHVIURPDPDVWHUWDSHDQGWKHELQDU\FRUUHFWLRQFDUGVWKDWRXUJURXSZRXOGJHQHUDWHLQODUJHQXPEHUVGXULQJWKHORQJILHOGGHEXJJLQJDQGPDLQWHQDQFHSHULRGWKDWIROORZHGGLVWULEXWLRQ

    :LWK WKH GLVWULEXWLRQ RI WKH V\VWHP WDSHVZHQW D3UHOLPLQDU\2SHUDWRUV0DQXDOGDWHG$SULO,WGHVFULEHVKRZWRXVHWKHWDSHHGLWRUDQGKRZWRPDLQWDLQWKHOLEUDU\RIIXQFWLRQV)LYHSDJHV RI VXFK JHQHUDO LQVWUXFWLRQV DUH IROORZHG E\ SDJHV RIHUURUVWRSVPDQ\RIWKHVHVD\VRXUFHSURJUDPHUURUJHWRIIPDFKLQHFRUUHFWIRUPXODLQTXHVWLRQDQGUHVWDUWSUREOHPDQGWKHQIRUH[DPSOHVWRSQRQ]HUROHYHOUHGXFWLRQGXHWRLQVXIILFLHQWRUUHGXQGDQWSDUHQWKHVHV LQDULWKPHWLFRU,)W\SHIRUPXOD6KRUWO\ DIWHU WKH GLVWULEXWLRQ RI WKH V\VWHPZH GLVWULEXWHGRQHFRS\SHULQVWDOODWLRQZKDWZDVIRQGO\NQRZQDVWKH7RPHWKHFRPSOHWHV\PEROLFOLVWLQJRIWKHHQWLUHFRPSLOHUSOXVRWKHUV\VWHPDQGGLDJQRVWLFLQIRUPDWLRQDQLQFKYROXPHDERXWIRXURUILYHLQFKHVWKLFN

    7KH SURSULHWRUV RI WKH VL[ VHFWLRQV ZHUH NHSW EXV\ WUDFNLQJGRZQEXJVHOLFLWHGE\RXUFXVWRPHUVXVHRI)RUWUDQXQWLOWKHODWHVXPPHURI+DO6WHUQVHUYHGDVWKHFRRUGLQDWRURIWKHILHOGGHEXJJLQJ DQGPDLQWHQDQFH HIIRUW KH UHFHLYHG D VWUHDPRI WHOHJUDPVPDLO DQG SKRQH FDOOV IURP DOO RYHU WKH FRXQWU\ DQG GLVWULEXWHGWKHLQFRPLQJSUREOHPVWRWKHDSSURSULDWHPHPEHUVRIRXUJURXS WR WUDFN GRZQ WKH HUURUV DQG JHQHUDWH FRUUHFWLRQ FDUGVZKLFKKHWKHQGLVWULEXWHGWRHYHU\LQVWDOODWLRQ

    ,Q WKH VSULQJ RI 0LWFKHOO MRLQHG RXU JURXS WRZULWH WKH3URJUDPPHUV 3ULPHU IRU )RUWUDQ 7KH SULPHU ZDV GLYLGHG LQWRWKUHH VHFWLRQV HDFK GHVFULEHG VXFFHVVLYHO\ ODUJHU VXEVHWV RI WKHODQJXDJH DFFRPSDQLHG E\ PDQ\ H[DPSOH SURJUDPV 7KH ILUVWHGLWLRQRIWKHSULPHUZDVLVVXHGLQWKHODWHIDOORUZLQWHURID VOLJKWO\ UHYLVHG HGLWLRQ DSSHDUHG LQ 0DUFK 0LWFKHOOSODQQHGDQGZURWHWKHSDJHSULPHUZLWKVRPHFRQVXOWDWLRQZLWKWKH UHVWRI WKHJURXS VKH ODWHUSURJUDPPHGPRVWRI WKHH[WHQVLYHFKDQJHVLQWKHV\VWHPWKDWUHVXOWHGLQ)RUWUDQ,,VHHEHORZ

    7KH SULPHU KDG DQ LPSRUWDQW LQIOXHQFH RQ WKH VXEVHTXHQWJURZWKLQWKHXVHRIWKHV\VWHP,EHOLHYHLWZDVWKHRQO\DYDLODEOHVLPSOLILHGLQVWUXFWLRQPDQXDORWKHUWKDQUHIHUHQFHPDQXDOVXQWLOWKH ODWHU DSSHDUDQFH RI ERRNV VXFK DV WKRVH E\ 'DQLHO0F&UDFNHQ(OOLRW2UJDQLFNDQGPDQ\RWKHUV

    $UHSRUWRQ)RUWUDQXVDJHLQ1RYHPEHUVD\VWKDWDVXUYH\ LQ$SULO >@RI WZHQW\VL[ LQVWDOODWLRQV LQGLFDWHV WKDWRYHUKDOIRIWKHPXVH)RUWUDQ>,@IRUPRUHWKDQKDOIRIWKHLUSUREOHPV0DQ\XVHLWIRURUPRUHRIWKHLUZRUNDQGDOPRVWDOO

  • The History of Fortran I, II, and III

    ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    XVH LW IRU VRPH RI WKHLU ZRUN %\ WKH IDOO RI WKHUH ZHUHVRPHLQVWDOODWLRQVZLWKDERXWVDQGPRUHWKDQKDOIWKHPDFKLQH LQVWUXFWLRQV IRU WKHVH PDFKLQHV DUH EHLQJ SURGXFHG E\)RUWUDQ6+$5(UHFHQWO\GHVLJQDWHG)RUWUDQDVWKHVHFRQGRIILFLDOPHGLXPIRUWUDQVPLWWDORISURJUDPV>6$3ZDVWKHILUVW@

    Fortran II'XULQJ WKH ILHOG GHEXJJLQJ SHULRG VRPH VKRUWFRPLQJV RI WKHV\VWHP GHVLJQ ZKLFK ZH KDG EHHQ DZDUH RI HDUOLHU EXW KDG QRWLPH WR FRUUHFW ZHUH FRQVWDQWO\ FRPLQJ WR RXU DWWHQWLRQ ,Q WKHHDUO\ IDOO RI ZH VWDUWHG WR SODQ ZD\V RI FRUUHFWLQJ WKHVHVKRUWFRPLQJVDGRFXPHQWGDWHG6HSWHPEHUFKDUDFWHUL]HVWKHPDV

    WKHQHHGIRUEHWWHUGLDJQRVWLFVFOHDUHUFRPPHQWVDERXWWKHQDWXUHRIVRXUFHSURJUDPHUURUVDQG

    WKHQHHGIRUVXEURXWLQHGHILQLWLRQFDSDELOLWLHV

    $OWKRXJKRQH)RUWUDQ,GLDJQRVWLFZRXOGSLQSRLQW LQDSULQWRXW DPLVVLQJ FRPPD LQ D SDUWLFXODU VWDWHPHQW RWKHUV FRXOGEHYHU\FU\SWLF7KLVGRFXPHQWLVWLWOHG3URSRVHG6SHFLILFDWLRQV IRU )RUWUDQ ,, IRU WKH LW VNHWFKHV D PRUH JHQHUDOGLDJQRVWLF V\VWHP DQG GHVFULEHV WKH QHZ VXEURXWLQH GHILQLWLRQ DQG (1' VWDWHPHQWV SOXV VRPH RWKHUV WKDW ZHUH QRWLPSOHPHQWHG ,W GHVFULEHV KRZ V\PEROLF LQIRUPDWLRQ LV UHWDLQHGLQWKHUHORFDWDEOHELQDU\IRUPRIDVXEURXWLQHVRWKDWWKHELQDU\ V\PEROLF VXEURXWLQH >%66@ ORDGHU FDQ LPSOHPHQWUHIHUHQFHV WR VHSDUDWHO\ FRPSLOHG VXEURXWLQHV ,W GHVFULEHVQHZ SURORJXHV IRU WKHVH VXEURXWLQHV DQG SRLQWV RXW WKDWPL[WXUHVRI)RUWUDQFRGHGDQGDVVHPEO\FRGHG UHORFDWDEOHELQDU\SURJUDPVFRXOGEHORDGHGDQGUXQWRJHWKHU,WGRHVQRWGLVFXVVWKH)81&7,21VWDWHPHQWWKDWZDVDOVRDYDLODEOHLQ)RUWUDQ,,)RUWUDQ,,ZDVGHVLJQHGPRVWO\E\1HOVRQ=LOOHUDQGP\VHOI0LWFKHOOSURJUDPPHG WKHPDMRULW\RIQHZFRGH IRU)RUWUDQ ,,ZLWK WKHPRVW XQXVXDO IHDWXUH WKDW VKH GHOLYHUHG LW DKHDG RIVFKHGXOH6KHZDVDLGHGLQWKLVE\%HUQ\FH%UDG\DQG/H5R\0D\6KHULGDQSODQQHGDQGPDGHWKHQHFHVVDU\FKDQJHVLQKLVSDUW RI VHFWLRQ 1XWW GLG WKH VDPH IRU VHFWLRQ )RUWUDQ ,,ZDVGLVWULEXWHGLQWKHVSULQJRI

    Fortran III:KLOH )RUWUDQ ,, ZDV EHLQJ GHYHORSHG =LOOHU ZDV GHVLJQLQJ DQHYHQPRUHDGYDQFHGV\VWHPWKDWKHFDOOHG)RUWUDQ,,,,WDOORZHGRQH WRZULWH LQWHUPL[HG V\PEROLF LQVWUXFWLRQV DQG )RUWUDQ VWDWHPHQWV7KH V\PEROLF LQVWUXFWLRQV FRXOG KDYH)RUWUDQ YDULDEOHV ZLWK RUZLWKRXW VXEVFULSWV DV DGGUHVVHV ,Q DGGLWLRQ WRWKLV PDFKLQHGHSHQGHQW IHDWXUH ZKLFK DVVXUHG WKH GHPLVH RI)RUWUDQ,,,DORQJZLWKWKDWRIWKHLWFRQWDLQHGHDUO\YHUVLRQVRIDQXPEHURILPSURYHPHQWVWKDWZHUHODWHUWRDSSHDULQ)RUWUDQ,9,WKDG%RROHDQH[SUHVVLRQVIXQFWLRQDQGVXEURXWLQHQDPHVFRXOG EH SDVVHG DV DUJXPHQWV DQG LW KDG IDFLOLWLHV IRU KDQGOLQJDOSKDQXPHULFGDWDLQFOXGLQJDQHZ)250$7FRGH$VLPLODUWRFRGHV,DQG(7KLVV\VWHPZDVSODQQHGDQGSURJUDPPHGE\=LOOHUZLWKVRPHKHOSIURP1HOVRQDQG1XWW=LOOHUPDLQWDLQHGLWDQGPDGH LW DYDLODEOH WR DERXW PRVWO\ ,%0 LQVWDOODWLRQV ,WZDV QHYHU GLVWULEXWHG JHQHUDOO\ ,W ZDV DFFRPSDQLHG E\ D EULHIGHVFULSWLYHGRFXPHQW,WEHFDPHDYDLODEOHRQWKLVOLPLWHGVFDOHLQWKH ZLQWHU RI DQG ZDV LQ RSHUDWLRQ XQWLO WKH HDUO\V LQSDUWRQ WKHXVLQJ WKH FRPSDWLELOLW\ IHDWXUH ZKLFKPDGHWKHRUGHUFRGHWKHVDPHDVWKDWRIWKH

    Fortran After 1958, Comments%\ WKH HQG RI RU HDUO\ WKH )RUWUDQ JURXS WKH 3URJUDPPLQJ5HVHDUFK'HSDUWPHQWZKLOH VWLOOKHOSLQJZLWKDQRFFDVLRQDOGHEXJJLQJSUREOHPZLWK)RUWUDQ,,ZDVSULPDULO\RFFXSLHGZLWKRWKHUUHVHDUFK$QRWKHU,%0GHSDUWPHQWKDGORQJVLQFHWDNHQUHVSRQVLELOLW\IRUWKH)RUWUDQV\VWHPDQGZDVUHYLVLQJLW LQWKHFRXUVHRISURGXFLQJDWUDQVODWRUIRUWKHWKDWXVHGWKHVDPHSURFHGXUHVDVWKH)RUWUDQ,,WUDQVODWRU6LQFHP\IULHQGVDQG,QR ORQJHU KDG UHVSRQVLELOLW\ IRU )RUWUDQ DQGZHUH EXV\ WKLQNLQJDERXWRWKHUWKLQJVE\WKHHQGRIWKDWVHHPVOLNHDJRRGSRLQWWREUHDNRIIWKLVDFFRXQW7KHUHUHPDLQRQO\DIHZFRPPHQWVWREHPDGHDERXWWKHVXEVHTXHQWGHYHORSPHQWRI)RUWUDQ

    7KHPRVWREYLRXVGHIHFWLQ)RUWUDQ,,IRUPDQ\RILWVXVHUVZDVWKHWLPHVSHQWLQFRPSLOLQJ(YHQWKRXJKWKHIDFLOLWLHVRI)RUWUDQ,, SHUPLWWHG VHSDUDWH FRPSLODWLRQ RI VXEURXWLQHV DQG KHQFHHOLPLQDWHGWKHQHHGWRUHFRPSLOHDQHQWLUHSURJUDPDWHDFKVWHSLQGHEXJJLQJ LW QHYHUWKHOHVV FRPSLOH WLPHVZHUH ORQJ DQG GXULQJGHEXJJLQJWKHFRQVLGHUDEOHWLPHVSHQWLQRSWLPL]LQJZDVZDVWHG,UHSHDWHGO\VXJJHVWHGWRWKRVHZKRZHUHLQFKDUJHRI)RUWUDQWKDWWKH\VKRXOGQRZGHYHORSDIDVWFRPSLOHUDQGRU LQWHUSUHWHUZLWKRXWDQ\RSWLPL]LQJDWDOOIRUXVHGXULQJGHEXJJLQJDQGIRUVKRUWUXQMREV8QIRUWXQDWHO\WKHGHYHORSHUVRI)RUWUDQ,9WKRXJKWWKH\FRXOGKDYHWKHEHVWRIERWKZRUOGVLQDVLQJOHFRPSLOHURQHWKDWZDVERWKIDVWDQGSURGXFHGRSWLPL]HGFRGH,ZDVXQVXFFHVVIXOLQFRQYLQFLQJ WKHP WKDW WZR FRPSLOHUVZRXOG KDYH EHHQ IDU EHWWHUWKDQ WKH FRPSURPLVH WKDW EHFDPH WKH RULJLQDO )RUWUDQ ,9 FRPSLOHU 7KH ODWWHU ZDV QRW QHDUO\ DV IDVW DV ODWHU FRPSLOHUV OLNH:$7)25DQGGLGQRWSURGXFHDVJRRGFRGHDV)RUWUDQ,,)RUPRUHGLVFXVVLRQRIODWHUGHYHORSPHQWVZLWK)RUWUDQVHHWKHSDSHUE\%DFNXVDQG:3+HLVLQJ

    0\RZQRSLQLRQDVWRWKHHIIHFWRI)RUWUDQRQODWHUODQJXDJHVDQGWKHFROOHFWLYHLPSDFWRIVXFKODQJXDJHVRQSURJUDPPLQJJHQHUDOO\LVQRWDSRSXODURSLQLRQ7KDWYLHZSRLQWLVWKHVXEMHFWRIDORQJ SDSHU , QRZ UHJDUG DOO FRQYHQWLRQDO ODQJXDJHV HJ WKH)RUWUDQV WKH$OJROV DQG WKHLU VXFFHVVRUV DQGGHULYDWLYHV DV LQFUHDVLQJO\FRPSOH[HODERUDWLRQVRIWKHVW\OHRISURJUDPPLQJGLFWDWHGE\ WKHYRQ1HXPDQQFRPSXWHU7KHVH YRQ1HXPDQQ ODQJXDJHV FUHDWH HQRUPRXV XQQHFHVVDU\ LQWHOOHFWXDO URDGEORFNV LQWKLQNLQJDERXWSURJUDPVDQGLQFUHDWLQJWKHKLJKHUOHYHOFRPELQLQJIRUPVUHTXLUHGLQDSRZHUIXOSURJUDPPLQJPHWKRGRORJ\7KHYRQ1HXPDQQODQJXDJHVFRQVWDQWO\NHHSRXUQRVHVSUHVVHGLQWKHGLUWRIDGGUHVVFRPSXWDWLRQDQGWKHVHSDUDWHFRPSXWDWLRQRIVLQJOHZRUGVZKHUHDVZHVKRXOGEHIRFXVLQJRQWKHIRUPDQGFRQWHQWRIWKHRYHUDOO UHVXOWZHDUH WU\LQJ WRSURGXFH:HKDYHFRPHWR UHJDUGWKH'2)25DQG:+,/(VWDWHPHQWVDQGWKHOLNHDVSRZHUIXOWRROVZKHUHDVWKH\DUHLQIDFWZHDNSDOOLDWLYHVWKDWDUHQHFHVVDU\ WRPDNH WKH SULPLWLYH YRQ1HXPDQQ VW\OH RI SURJUDPPLQJYLDEOHDWDOO

    %\VSOLWWLQJSURJUDPPLQJ LQWRDZRUOGRIH[SUHVVLRQVRQ WKHRQHKDQGDQGDZRUOGRIVWDWHPHQWVRQWKHRWKHUYRQ1HXPDQQODQJXDJHV SUHYHQW WKH HIIHFWLYH XVH RI KLJKHUOHYHO FRPELQLQJIRUPVWKHODFNRIWKHODWWHUPDNHVWKHGHILQLWLRQDOFDSDELOLWLHVRIYRQ 1HXPDQQ ODQJXDJHV VR ZHDN WKDW PRVW RI WKHLU LPSRUWDQWIHDWXUHV FDQQRW EH GHILQHG VWDUWLQJZLWK D VPDOO HOHJDQW IUDPHZRUNEXWPXVWEHEXLOWLQWRWKHIUDPHZRUNRIWKHODQJXDJHDWWKHRXWVHW7KHJDUJDQWXDQVL]HRI UHFHQWYRQ1HXPDQQ ODQJXDJHV LVHORTXHQWSURRIRIWKHLULQDELOLW\WRGHILQHQHZFRQVWUXFWV1RRQHZRXOGEXLOGLQVRPDQ\FRPSOH[IHDWXUHVLIWKH\FRXOGEHGHILQHGDQGZRXOGILWLQWRWKHH[LVWLQJIUDPHZRUNODWHU

  • ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    7KHZRUOGRIH[SUHVVLRQVKDVVRPHHOHJDQWDQGXVHIXOPDWKHPDWLFDOSURSHUWLHVZKHUHDVWKHZRUOGRIVWDWHPHQWVLVDGLVRUGHUO\RQHZLWKRXWXVHIXOPDWKHPDWLFDO SURSHUWLHV6WUXFWXUHGSURJUDPPLQJ FDQ EH YLHZHG DV D PRGHVW HIIRUW WR LQWURGXFH D VPDOODPRXQWRIRUGHULQWRWKHFKDRWLFZRUOGRIVWDWHPHQWV7KHZRUNRI&$5 +RDUH (GVJHU 'LMNVWUD DQG RWKHUV WRD[LRPDWL]HWKHSURSHUWLHVRIWKHVWDWHPHQWZRUOGFDQEHYLHZHGDVDYDOLDQWDQGHIIHFWLYHHIIRUWWREHSUHFLVHDERXWWKRVHSURSHUWLHVXQJDLQO\DVWKH\PD\EH

    7KLVLVQRWWKHSODFHIRUPHWRHODERUDWHDQ\IXUWKHUP\YLHZVDERXW YRQ 1HXPDQQ ODQJXDJHV 0\ SRLQW LV WKLV :KLOH LW ZDVSHUKDSVQDWXUDODQGLQHYLWDEOH WKDW ODQJXDJHVOLNH)RUWUDQDQGLWVVXFFHVVRUV VKRXOGKDYHGHYHORSHGRXW RI WKH FRQFHSW RI WKH YRQ1HXPDQQFRPSXWHUDVWKH\GLGWKHIDFWWKDWVXFKODQJXDJHVKDYHGRPLQDWHGRXU WKLQNLQJIRU\HDUV LVXQIRUWXQDWH ,W LVXQIRUWXQDWHEHFDXVHWKHLU ORQJVWDQGLQJIDPLOLDULW\ZLOOPDNHLWKDUGIRUXVWRXQGHUVWDQGDQGDGRSWQHZSURJUDPPLQJVW\OHVWKDWRQHGD\ZLOORIIHUIDUJUHDWHULQWHOOHFWXDODQGFRPSXWDWLRQDOSRZHU

    Acknowledgments0\JUHDWHVWGHEWLQFRQQHFWLRQZLWKWKLVSDSHULVWRP\ROGIULHQGVDQG FROOHDJXHVZKRVH FUHDWLYLW\ KDUGZRUN DQG LQYHQWLRQPDGH)RUWUDQSRVVLEOH ,W LVDSOHDVXUH WRDFNQRZOHGJHP\JUDWLWXGH WRWKHP IRU WKHLU FRQWULEXWLRQV WR WKH SURMHFW IRUPDNLQJ RXUZRUNWRJHWKHUVRORQJDJRVXFKDFRQJHQLDODQGPHPRUDEOHH[SHULHQFHDQGPRUH UHFHQWO\ IRUSURYLGLQJPHZLWK DJUHDW DPRXQWRI LQIRUPDWLRQ DQG KHOSIXO PDWHULDO LQ SUHSDULQJ WKLV SDSHU DQG IRUWKHLU FDUHIXO UHYLHZV RI DQ HDUOLHU GUDIW )RU DOO WKLV , WKDQN DOOWKRVHZKRZHUH DVVRFLDWHGZLWK WKH )RUWUDQ SURMHFW EXWZKR DUHWRRQXPHURXVWROLVWKHUH,QSDUWLFXODU,ZDQWWRWKDQNWKRVHZKRZHUH WKH SULQFLSDO PRYHUV LQPDNLQJ )RUWUDQ D UHDOLW\ 6KHOGRQ%HVW 5LFKDUG *ROGEHUJ /RLV +DLEW +DUODQ +HUULFN *UDFH0LWFKHOO5REHUW1HOVRQ5R\1XWW'DYLG6D\UH3HWHU6KHULGDQDQG,UYLQJ=LOOHU,DOVRZLVKWRWKDQN%HUQDUG*DOOHU-$1/HHDQG+HQU\7URSSIRUWKHLUDPLDEOHH[WHQVLYHDQGLQYDOXDEOHVXJJHVWLRQVIRULPSURYLQJWKHILUVWGUDIWRI WKLVSDSHU,DPJUDWHIXOWRRIRUDOOWKHZRUNRIWKH3URJUDP&RPPLWWHHLQSUHSDULQJKHOSIXOTXHVWLRQVWKDWVXJJHVWHGDQXPEHURIWRSLFVLQWKHSDSHU

    References>(GLWRUV QRWH0RVW RI WKH LWHPV OLVWHG EHORZ KDYH GDWHV LQ WKHVWKXVPDQ\WKDWDSSHDUHGLQWKHRSHQOLWHUDWXUHZLOOEHREWDLQDEOHRQO\LQWKHODUJHVWDQGROGHVWFROOHFWLRQV7KHLWHPVZLWKDQDVWHULVNZHUHHLWKHUQRWSXEOLVKHGRUZHUHRIVXFKDQDWXUHDVWRPDNH WKHLU DYDLODELOLW\ HYHQ OHVV OLNHO\ WKDQ WKDW RI WKH RWKHULWHPV@>@ $GDPV &KDUOHV : DQG /DQLQJ -+ -U 7KH 0,7 6\VWHPV RI

    $XWRPDWLF &RGLQJ &RPSUHKHQVLYH 6XPPHU 6HVVLRQ DQG $OJHEUDLF3URF6\PS$XWRPDWLF3URJUDPPLQJIRU'LJLWDO&RPSXWHUV:DVKLQJWRQ'&2IILFHRI1DYDO5HVHDUFK0D\

    >@ $GGHQGDWRWKH)RUWUDQ3URJUDPPHUV5HIHUHQFH0DQXDO)HEUXDU\ 7UDQVPLWWHG WR 'U -RKQ *UHHQVWDGW 6SHFLDO 3URJUDPV*URXS$SSOLHG6FLHQFH'LYLVLRQ ,%0 IRUGLVWULEXWLRQ WR6+$5(PHPEHUV E\ OHWWHU IURP -RKQ: %DFNXV 3URJUDPPLQJ 5HVHDUFK'HSW,%0SDJHV

    >@ $GGLWLRQVWR)RUWUDQ,,'HVFULSWLRQRI6RXUFH/DQJXDJH$GGLWLRQVWRWKH)RUWUDQ6\VWHP1HZ@ %DFNXV-RKQ/HWWHUWR-+/DQLQJ-U0D\>@ %DFNXV -: $XWRPDWLF 3URJUDPPLQJ 3URSHUWLHV DQG 3HUIRUP

    DQFHRI)25,5$16\VWHPV,DQG,,3URF6\PS0HFKDQLVDWLRQRI7KRXJKW 3URFHVVHV 7HGGLQJWRQ 0LGGOHVH[ (QJODQG 1DWLRQDO3K\VLFDO/DERUDWRU\1RY

    >@ %DFNXV -RKQ 3URJUDPPLQJ LQ$PHULFD LQ WKH1LQHWHHQ )LIWLHV6RPH3HUVRQDO ,PSUHVVLRQV10HWURSROLV -+RZOHWW DQG*LDQ&DUOR5RWDHGV$+LVWRU\RI&RPSXWLQJ LQ WKH7ZHQWLHWK&HQWXU\3URF,QWO&RQI+LVWRU\RI&RPSXWLQJ/RV$ODPRV101HZ@ %DFNXV-RKQ&DQ3URJUDPPLQJ%H/LEHUDWHG)URPWKHYRQ1HXPDQQ 6W\OH" $ )XQFWLRQDO 6W\OH DQG ,WV $OJHEUD RI 3URJUDPV&RPP$&0YROQRSS$XJ

    >@ %DFNXV-:DQG+HLVLQJ:3)RUWUDQ,(((7UDQV(OHFWURQLF&RPSXWHUVYROQRSS$XJ

    >@ %DFNXV-RKQ:DQG+HUULFN+DUODQ,%06SHHGFRGLQJDQG2WKHU $XWRPDWLF 3URJUDPPLQJ 6\VWHPV 3URF 6\PS $XWRPDWLF3URJUDPPLQJ IRU 'LJLWDO &RPSXWHUV:DVKLQJWRQ '& 2IILFH RI1DYDO5HVHDUFK0D\

    >@ %DFNXV -: %HHEHU 5- %HVW 6 *ROGEHUJ 5 +DLEW /0+HUULFN +/ 1HOVRQ 5$ 6D\UH ' 6KHULGDQ 3% 6WHUQ +=LOOHU,+XJKHV5$DQG1XWW57KH)RUWUDQ$XWRPDWLF&RGLQJ 6\VWHP 3URF :HVWHUQ -RLQW &RPSXWHU &RQI /RV $QJHOHV)HE

    >@ %DNHU&KDUOHV/7KH3$&7,&RGLQJ6\VWHPIRU WKH,%07\SH-$&0YROQRSS2FW

    >@ %HODG\/$0HDVXUHPHQWVRQ3URJUDPV2QH/HYHO6WRUH6LPXODWLRQ @ 'LMNVWUD (GVJHU : $ 'LVFLSOLQH RI 3URJUDPPLQJ (QJOHZRRG&OLIIV1-3UHQWLFH+DOO

    >@ *UHPV0DQGDOD\ DQG3RUWHU5( $7UXO\$XWRPDWLF 3URJUDPPLQJ6\VWHP3URF:HVWHUQ-RLQW&RPSXWHU&RQI

    >@ +RDUH&$5 $Q$[LRPDWLF%DVLV IRU&RPSXWHU3URJUDPPLQJ&RPP$&0YROSS2FW

    >@ ,%0 3URJUDPPHUV 5HIHUHQFH 0DQXDO WKH )RUWUDQ $XWRPDWLF&RGLQJ6\VWHPIRUWKH,%0('301HZ8QLY RI &DOLI 5DGLDWLRQ/DE/LYHUPRUH&DOLI@/%0LWFKHOO5$1HOVRQ51XWW>8QLWHG$LUFUDIW &RUS (DVW +DUWIRUG &RQQ@ ' 6D\UH 3% 6KHULGDQ +6WHUQ,=LOOHU

    >@ ,%03URJUDPPHUV3ULPHUIRU)RUWUDQ$XWRPDWLF&RGLQJ6\VWHPIRUWKH,%01HZ@ .QXWK 'RQDOG ( DQG 3DUGR /XLV 7UDEE (DUO\ 'HYHORSPHQW RI3URJUDPPLQJ /DQJXDJHV(QF\FORSHGLD RI &RPSXWHU 6FLHQFH DQG7HFKQRORJ\YROS1HZ

  • The History of Fortran I, II, and III

    ,((($QQDOVRIWKH+LVWRU\RI&RPSXWLQJ9RO1R

    >@ 0F&UDFNHQ 'DQLHO ' $ *XLGH WR )RUWUDQ 3URJUDPPLQJ 1HZ@ 0RVHU 1RUD % &RPSLOHU 0HWKRG RI $XWRPDWLF 3URJUDPPLQJ3URF 6\PS $XWRPDWLF 3URJUDPPLQJ IRU 'LJLWDO &RPSXWHUV:DVKLQJWRQ'&2IILFHRI1DYDO5HVHDUFK0D\

    >@ 0XOOHU 'DYLG ( ,QWHUSUHWLYH 5RXWLQHV LQ WKH ,//,$& /LEUDU\3URF 6\PS $XWRPDWLF 3URJUDPPLQJ IRU 'LJLWDO &RPSXWHUV:DVKLQJWRQ'&2IILFHRI1DYDO5HVHDUFK0D\

    >@ 3UHOLPLQDU\2SHUDWRUV0DQXDOIRUWKH)RUWUDQ$XWRPDWLF&RGLQJ6\VWHP IRU WKH ,%0('301HZ@ 5HPLQJWRQ5DQG,QF7KH$&RPSLOHU6\VWHP2SHUDWLRQV0DQXDO3UHSDUHGE\5LFKDUG.5LGJZD\DQG0DUJDUHW++DUSHUXQGHUWKHGLUHFWLRQRI*UDFH0+RSSHU1RY

    >@ 5XWLVKDXVHU +HLQ] $XWRPDWLVFKH 5HFKHQSODQIHUWLJXQJ EHL SURJUDPPJHVWHXHUWHQ5HFKHQPDVFKLQHQ0LWWHLOXQJHQDXVGHP,QVWILUDQJHZ0DWKDQGHU(7+=XQFKQU%DVHO%LUNKDXVHU

    >@ 6DPPHW -HDQ ( 3URJUDPPLQJ /DQJXDJHV +LVWRU\ DQG )XQGDPHQWDOV(QJOHZRRG&OLIIV1-3UHQWLFH+DOO

    >@ 6KHULGDQ3HWHU%7KH$ULWKPHWLF7UDQVODWRU&RPSLOHURIWKH,%0)RUWUDQ$XWRPDWLF&RGLQJ6\VWHP&RPP$&0YROQRSS)HE

    >@ 6FKOHVLQJHU 6, 'XDO &RGLQJ 6\VWHP /RV $ODPRV 10 /RV$ODPRV6FLHQFH/DE5HS/$-XO\

    >@ =XVH . 8EHU GHQ 3ODQNDONO(OHFWURQ 5HFKHQDQO YRO SS

    >@ =XVH.'HU3ODQNDONO%HQFKWHGHU&HVHOOVFKDIWIU0DWKHPDWLNXQG 'DWHQYHUDUEHLWXQJ YRO SDUW %RQQ 0DQXVFULSWSUHSDUHGLQ

    -RKQ %DFNXV OHG WKH GHYHORSPHQW RI )RUWUDQ DQG SDUWLFLSDWHG LQ GHVLJQLQJ WKH ,%0DQG$OJROKHSURSRVHG%1)IRUV\QWD[ GHVFULSWLRQ +H UHFHLYHG WKH 1DWLRQDO0HGDORI6FLHQFHLQWKH7XULQJ$ZDUG$&0LQWKH,(((&RPSXWHU6RFLHW\3LRQHHU $ZDUG LQ DQG WKH &KDUOHV6WDUN 'UDSHU $ZDUG IURP WKH 1DWLRQDO$FDGHP\ RI (QJLQHHULQJ LQ +H LV DPHPEHU RI WKH 1DWLRQDO $FDGHP\ RI 6FL

    HQFHVDQGWKH1DWLRQDO$FDGHP\RI(QJLQHHULQJ+HLVFXUUHQWO\UHWLUHG IURP KLV MRE DW WKH ,%05HVHDUFK /DERUDWRU\ 6DQ -RVH&DOLIRUQLDEXWFRQWLQXHVWRFRQVXOWZLWK,%0IURPWLPHWRWLPH

    7KHDXWKRUFDQEHFRQWDFWHGDW6W*HUPDLQ$YH6DQ)UDQFLVFR&$

Recommended

View more >