Free Pascal
Free Pascal on avoimeen lähdekoodiin perustuva Pascal-ohjelmointikielen käännin. Free Pascal toimii useissa eri käyttöjärjestelmissä ja eri suorittimilla.
Free Pascal kääntää Object Pascalia ja muutamia Pascalin murteita, muun muassa Turbo Pascalia, Delphiä ja Mac Pascalia.
Pascal oli alun perin proseduraalinen ohjelmointikieli. Niklaus Wirth kehitti sen 1960- ja 1970-lukujen vaihteessa Algol-kielen pohjalta erityisesti opetuskäyttöä ajatellen. Ohjelmointikieli 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.
Pakollinen esimerkki, eli Hello World Pascalilla. Tässä tosin sanotaan “Goodbye, World!”, mutta tämä koodi löytyi Rosetta Codesta enkä halunnut muokata.
program byeworld;
begin
writeln('Goodbye, World!');
end.
Jos kokeilet tuota ohjelma graafisessa työpöytäympäristössä saattaa
ohjelman ikkuna sulkeutua välittömästi ohjelman suorituksen päätyttyä,
jolloin ei ehdi näkemään mitä ohjelma tulosti ruudulle. Tähän auttaa
ennen end.
-riviä lisätty readln;
-komento. Tällöin ohjelma jää
odottamaan Enter-näppäimen
Tiedosto:mono_key_enter.png
painallusta, ja loppuu vasta sitten.
Ammattikäyttöön Pascal-kieli tuli Borlandin Turbo Pascal -kielen 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.
Pascal-kielen pohjalta on kehitetty Object Pascal lisäämällä Pascaliin olio-ohjelmointiin liittyviä ominaisuuksia. Lisäksi siihen kuuluvat poikkeukset ja niiden hallinta. Ohjelman voi jakaa käännösyksiköihin helpottamaan isojen ohjelmistoprojektien koostamista. Alkuperäinen Pascal oli tarkoitettu ohjelmoinnin opetukseen, eikä siinä ollut mukana ammattiohjelmoijien tarvitsemia ominaisuuksia. Free Pascalissa ei tätä puutetta ole, sillä voi koodata pelejäkin, esimerkiksi Slot Cars: The Video Game, josta on video traileri.
Kuten Turbo Pascal on Free Pascalkin hyvin nopea käännin. Kuvakaappauksissa oleva pidempi testiohjelma kääntyi viidessä sadasosasekunnissa. Laajemmat ohjelmat vievät enemmän aikaa, mutta ne taas voi jakaa pienempiin käännösyksiköihin ja useimmiten muutetaan vain yhtä käännösyksikköä käännöskertojen välillä, jolloin vain se yksi käännösyksikkö on käännettävä uudestaan ja linkattava suorituskelpoinen ohjelma siitä ja muista jo valmiiksi käännetyistä osista.
Mukana tulee ohjelmankehitysympäristö eli IDE, joka käynnistyy
komennolla fp
. IDE on melko samanlainen kuin Turbo Pascalin vastaava
oli aikoinaan. Semmoinen parannus on, että hiiri toimii, eli ei tarvita
niin paljoa pikanäppäinten käyttöä.
Free Pascalille pitää kertoa mitä murretta käännettävän ohjelman on
tarkoitus olla. Tämä tehdään komentorivillä tarkentimella -M
tai
IDE:ssä valikossa Options | Compiler | Compiler Mode
.
Free Pascal osasi kääntää vuonna 1995 Turbo Pascal 7:lla tekemäni ohjelman. Silloin oli käytössä DOS, nyt ohjelmaa sai ajettua Linuxissa. Aika ei ole syönyt koodiani piloille. Sen verran piti säätää, että disketiltä Linuxiin lukemieni tiedostojen nimet oli kaikki isoilla kirjaimilla. Ohjelmakoodissa taas käännösyksiköt oli pienellä paitsi iso alkukirjain. Koska Linuxissa tiedostojen nimissä isoilla kirjaimilla on väliä, piti tiedostojen nimet korjata.
Free Pascalia hyödyntävä ja Free Pascalilla toteutettu graafinen kehitysympäristö on Lazarus.
Kotisivu
http://freepascal.org
Lisenssi
GNU GPL
Toimii seuraavilla alustoilla
DOS, FreeBSD, Haiku, Linux, Mac OS X/iOS/Darwin, MorphOS, Nintendo GBA,
Nintendo DS, Nintendo Wii, OS/2, WinCE, Win32, Win64.
Asennus
Linux-jakeluissa tulee jakelun omista pakettivarastoista. Muille
käyttöjärjestelmille löytyy asennustiedosto Free Pascalin webbisivuilta.
Käyttöohjeet
Webbisivuilla on paljon ohjeita: http://www.freepascal.org/docs.var.
Free Pascalin wikissä on suomenkielisiäkin sivuja: http://wiki.freepascal.org/Main_Page/fi
Tietoa Pascal-kielestä suomeksi Webissä: http://www.cs.tut.fi/~jkorpela/Pascal.html
Ohjelmointiputkan Pascal-ohjelmointi: http://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=pascal01
SchoolFreewaren opetusmateriaalia ja videoita: http://www.schoolfreeware.com/Free_Pascal_Tutorials.html
Youtubesta löytyy opetusvideoita.
Lisätietoja
Teksti: Taleman
Kuvakaappaukset: Taleman
Kuvituskuva: David Monniaux (CC-BY-SA,
https://commons.wikimedia.org/wiki/File:Arts_et_Metiers_Pascaline_dsc03869.jpg)