FORTRAN
”En tiedä, millainen ohjelmointikieli vuonna 2000 on käytössä, mutta sen nimi on FORTRAN”
”Tosin Microsoft™ Basic on merkittävästi parempi myös vuoden 2000 jälkeen”
FORTRAN (engl: FORbitten TRANSistors) on amerikkalaisen John W. Backuksen kehittämä ohjelmointikieli.
Sisällysluettelo |
[muokkaa] Historia
John W. Backus työskenteli joskus 1950-60-luvulla IBM:llä insinöörinä kehittäen IBM:n tietokoneita yhä paremmiksi. Iltaisin töiden jälkeen hänellä ja hänen tiimillään [1] oli tapana jäädä pelaamaa IBM:n sen ajan parhaimmalla tietokoneella, IBM 704:llä [2] pienen yrittämisen jälkeen jopa insinöörikin tajuaa, että tuolle tietokoneelle ei ollutkaan olemassa pelejä saati sitten työkaluja, joilla pelejä olisi voinut tehdä! [3]. Joten JWB tiimeineen ryhtyi töihin asian korjaamiseksi.
Neljän vuoden työn ja IBM:n tapaan liian monen muistion kirjoittamisen jälkeen he saattoivat viimein esitellä työnsä tuloksen: Maailman ensimmäinen tietokonepeli!
[muokkaa] Maailman ensimmäinen tietokonepeli
Vihdoinkin JWB:llä oli esitellä jotain tuloksia työstä, josta hän oli saanut palkkaa[4]: Maailman ensimmäinen tietokonepeli ja sivutyönä syntynyt ensimmäinen korkeantason ohjelmointikieli, jolla peliohjelman saattoi kääntää tietokoneen ymmärtämään muotoon. Alkuperäisen ohjelman listaus oli tällainen[5]
C LUVUNARVAUSPELI
ILUKU=42
ILKM=0
60 FORMAT(A)
70 FORMAT(I3)
10 WRITE(*,60) 'ANNA LUKU 1...100'
READ(*,70) IARVAUS
ILKM=ILKM+1
IF(ILUKU-IARVAUS) 20,40,30
30 WRITE(*,*) 'LOL! LIIAN PIENI ARVAUS'
GOTO 10
20 WRITE(*,*) 'WTF! LIIAN SUURI ARVAUS'
GOTO 10
50 FORMAT(A,I2,A)
40 WRITE(*,50) 'OMG! OIKEIN! TARVITSIT ',ILKM,' ARVAUSTA'
STOP
END
IBM:n isot päälliköt ihastuivat välittömästi tähän peliin. Ne harvat pikkupomot, jotka edes ymmärsivät mistä asiassa on kyse ihastuivat FORTRANin uskomattomaan selkeyteen[6]
[muokkaa] FORTRANin kielioppi
FORTRANin kielioppia selvittää parhaiten klassinen "Hello World" esimerkki:
C HELLO WORLD
PROGRAM HELLO WORLD
10 FORMAT(A)
WRITE(*,10) 'HELLO WORLD'
C THE
END
Tästä ja yläpuolella olevasta esimerkistä selviää FORTRANin tehokkuus myös tulevaisuuden ohjelmointikielenä:
- Rivit tulee numeroida
- Kaikkia rivejä ei kuitenkaan ole pakko numeroida
- Vaikka sitten numeroisitkin rivin, ei niiden ole pakko olla numerojärjestyksessä
- KAIKKI TULEE KIRJOITTAA ISOILLA KIRJAIMILLA
- Tässä ohjelmointikielessä ei ole varattuja sanoja
- Väli lyöntejä voit laittaa minne haluat, vai k ka s a no jen vä liin
- Paitsi tietenkin ensimmäiseen viiteen sarakkeeseen
- FORTRANissa on täydellinen tuki goto rakenteelle[7]
[muokkaa] Käyttökohteet
Ne harvat IBM:n pikkupomot, jotka ymmärsivät tämän uuden keksinnön mullistavuuden. Tajusivat heti, että tämä ohjelmointikieli on omiaan raskaaseen tieteelliseen laskentaan.
Seuraava neliöjuuren laskentaesimerkki osoittaa FORTRANin käyttökelpoisuuden raskaassa tieteellisessä laskennassa:[8][9]
C FORTRAN-OHJELMA NELIOJUUREN LASKEMISEKSI
C OHJELMOINUT 31.3.70 P.PORRAS
PROGRAM NELIOJUURI
6 READ(*,2) A
2 FORMAT(F10.0)
7 X0=1.0
5 X1=0.5*(X0+A/X0)
8 IF(ABS((X1-X0)/X1)-0.0001) 3,4,4
4 X0=X1
GO TO 5
3 WRITE(*,1) A,X1
1 FORMAT('JUURRERRAVA=',F12.5,4X,
1 'NELIOJUURI=',F12.5)
END
Ohjelman ajon lopputulos on Linux-käyttöjärjestelmässä seuraava:[10]
$ gfortran juuri.f $ ./a.out 2 JUURRERRAVA= 2.00000 NELIOJUURI= 1.41421
[muokkaa] Tulevaisuus
- Linus Torvalds on suunnitellut koodaavansa Linux-käyttöjärjestelmän uudelleen FORTRANilla Lähde?
- Nokia ja Microsoft ovat suunnitelleet ottavansa uuden Windows-puhelimensa ohjelmointikieleksi FORTRANin Lähde?
[muokkaa] Aiheesta muualla
[muokkaa] Viitteet
- ↑ Sanaa "tiimi" ei tosin käytetty silloin
- ↑ http://mikropc.net/nettilehti/pdf/pc0410200118.pdf
- ↑ Huomautettakoon lukijalle, että Pleikkaria ei siihen aikaan voinut ostaa kaupasta
- ↑ . Itse asiassa he työskentelivät salaa, mutta muistivat kirjata työtunnit ylös. Lähde:[1]
- ↑ Tekstit ovat luonnollisesti käännetty englannista suomeksi, koska tämä on suomenkielinen Hikipedia
- ↑ Kuten näemme seuraavassa kappaleessa
- ↑ Monesta nykyaikaisesta ohjelmointikielestä, kuten esim. javasta se puuttuu
- ↑ Kirja: Tiedon Portaat osa Ⅷ, sivu 546 , Kirjoittanut Tekn. tri R. Pekka Malinen, Werner Söderström Osakeyhtiö, 1970
- ↑ Kyllä! ohjelmakoodi on 41 vuotta vanhaa ja se toimii edelleen. Luuletko, että Microsoft pystyy ikinä samaan?
- ↑ Artikkelin kirjoittaja on oikeasti testannut esittämiensä ohjelmointiesimerkkien toiminnan käyttämällä GNU FORTAN kääntäjää