Pascal (ohjelmointikieli)
Pascal | |
---|---|
Paradigma | proseduraalinen, strukturoitu |
Kehittäjä | Niklaus Wirth |
Vakaa versio | ISO 7185:1990[1] |
Vaikutteet | ALGOL |
Vaikuttanut | Object Pascal, Modula-2, Oberon |
Pascal on Niklaus Wirthin kehittämä proseduraalinen ohjelmointikieli, joka on kehitetty 1960- ja 1970-lukujen vaihteessa ALGOL-kielen pohjalta erityisesti opetuskäyttöä ajatellen.[2][3] Pascalia pidetään esimerkkinä strukturoitua ohjelmointia tukevasta kielestä.[4]
Pascal-kieli on nimetty matemaatikko Blaise Pascalin mukaan. Pascalia hyvin lähellä ovat Wirthin myöhemmin kehittämät ohjelmointikielet Modula-2 ja Oberon, joita voidaan pitää Pascalin "jälkeläisinä". Pascal oli suosittu kieli opetuskäytössä 1970-luvulta 1990-luvun alkupuolelle asti kunnes C-kieli syrjäytti sen.
Ammattikäyttöön Pascal-kieli tuli Borlandin Turbo Pascal -ympäristön ansiosta 1980-luvulla. Silloiset Turbo Pascalin ylivoimaiset ominaisuudet aiheuttivat sen, että muut ohjelmointikieliä tekevät ohjelmistotalot luopuivat vähitellen omista Pascal-kääntäjistään.
Esimerkkiohjelma
[muokkaa | muokkaa wikitekstiä]Yleinen esimerkki ohjelmointikielen syntaksista on Hei maailma -ohjelma.
{ Ohjelma tulostaa tekstin "Hei maailma!" }
program HeiMaailma(input,output);
begin
WriteLn('Hei maailma!');
end.
Kaikki Pascal-ohjelmat alkavat "Program"-avainsanalla ja ohjelmalohkon alku ja loppu merkitään avainsanoilla "Begin" ja "End". Yksittäiset lauseet erotetaan puolipisteellä, ja koko ohjelma loppuu pisteeseen.
Pascalin kehitys
[muokkaa | muokkaa wikitekstiä]Kielestä on kehitetty eräitä muunnelmia.
Object Pascal lisää kieleen olio-ohjelmointiin liittyviä ominaisuuksia. Siihen kuuluvat myös poikkeukset ja niiden hallinta.
Super Pascal on rinnakkaisuusohjelmointiin kehitetty versio.[5]
Extended Pascal on muunnos, joka on määritelty standardeissa ISO 10206:1991 ja ANSI/IEEE 770X3.160-1989 (ISO- ja ANSI-standardit ovat tekniseltä sisällöltä identtisiä).[6]
Concurrent Pascal ja Sequential Pascal ovat eräitä muunnoksia.
Kritiikkiä
[muokkaa | muokkaa wikitekstiä]Kielen ISO-standardia edeltävää versiota on kritisoitu sen soveltuvuudesta käytännön ohjelmointiin ja sen soveltuvuudesta vain opetuskäyttöön.[7] Esimerkiksi taulukon koko osana sen tyyppiä ei mahdollista käyttää samaa lajittelualgoritmin toteutusta erikokoisille taulukoille.[7]
Myöhempi standardoitu versio on korjannut useita kritiikin kohteita. Kieleen kohdistunut kritiikkiä on myöhemmin käsitelty vastineissa.[8]
Pascal-kääntäjiä
[muokkaa | muokkaa wikitekstiä]Lähteet
[muokkaa | muokkaa wikitekstiä]- Wirth, Niklaus: Algorithms + Data Structures = Programs. Prentice-Hall, 1976. ISBN 0-13-022418-9
- Findlay, William & Watt, David A.: Pascal: An Introduction to Methodical Programming. Great Britain: Pitman, 1979. ISBN 0-273-01220-7
- Korpela, Jukka & Larmela, Timo & Planman, Ahti: Pascal-ohjelmointikieli. Espoo: OtaDATA, 1980. ISBN 951-767-034-6
Viitteet
[muokkaa | muokkaa wikitekstiä]- ↑ ISO 7185:1990 ISO. Viitattu 14.2.2020. (englanniksi)
- ↑ Korpela et al. 1980, s. 7
- ↑ Niklaus E. Wirth amturing.acm.org. Viitattu 6.9.2019. (englanniksi)
- ↑ Karl P. Hunt: An introduction to structured programming (PDF) link.springer.com. 1979. doi:10.3758/BF03205654 Viitattu 6.1.2020. (englanniksi)
- ↑ https://link.springer.com/chapter/10.1007%2F3-540-48387-X_52
- ↑ Language standards – Internet Archive
- ↑ a b Brian W. Kernighan: Why Pascal is Not My Favorite Programming Language lysator.liu.se. 2.4.1981. Viitattu 14.2.2020. (englanniksi)
- ↑ Bill Catambay: IV. Myths Uncovered pascal-central.com. Arkistoitu 17.9.2015. Viitattu 14.2.2020. (englanniksi)
Aiheesta muualla
[muokkaa | muokkaa wikitekstiä]
|
|