ST:n ohjelmointikielistä
Oletko koskaan ajatellut, miksi maailmassa on niin monenlaisia
ohjelmointikieliä? Onhan selvää, ettei kukaan huvikseen ala
suunnitella sellaista! Jokaisesta kielestä löytyy sekä hyviä että
huonoja ominaisuuksia. Käsittelen tässä nyt muutamia ST:llä
käytettävissä olevia kieliä. Aloittakaamme matkamme yksinkertai-
simmasta kielestä mitä on kehitetty: KONEKOODI. Tämä inhottava
bittimössö on tietokoneen ymmärtämää (?) kieltä, joka ei
valitettavasti avaudu ihmisolennoille. "Hei!"-tekstin tulostaminen
ruudulle on jo saavutus, koska siinä pitää jo perehtyä hienouksiin!
Helpompi sovellus konekoodista on ASSEMBLER, jossa bittikäskyt on
vaihdettu englantilaisiin lyhennelmiin. (Esim. $4E71 on
"No OPeration" NOP, huomaa "$"-tarkoittaa heksalukua, eikä
bittijonoa. $4E71 on bitteinä 100111001110001, joten ymmärrät,
miksi ihmiset käyttävät assembleria!) Nämä kaksi kieltä ovat aivan
yhtä nopeita ohjelmaa ajettaessa, toisen ohjelman tekemiseen vain
kuluu paljon aikaa. Assembler käännetään konekoodiksi omalla
kääntäjällä. Niiden tarjonta on kirjavaa, ehkä suosituin on
HiSoft:n tekemä DevPacST. Mutta jos haluat päästä halvalla
mukaan löytyy PD-kirjastoista useita kohtalaisia kääntäjiä.
Vaikka Assemblerilla ohjelmointi on työläämpää kuin
kehittyneemmillä kielillä, on syytä muistaa, että sillä
saavutetaan maksimi nopeus. Suurimmalle osalle (kaikille?)
nykyisistä tietokoneista löytyy C-kieli. Tällä kielellä on
kirjoitettu (jopa) Atarien käyttikset. Kuten huomaat (jos käytät
ataria) voi C:llä luoda kahdenlaista koodia:
hyvää, joka usein on melko nopeaa tai hidasta (josta esimerkkinä
mainittakoon atarien käyttöjärjestelmä. C-kääntäjän valinnalla
voi vaikuttaa koodin nopeuteen valtavasti. Osa kaupallisista
kääntäjistä häviää tehossaan JOPA ST-BASIC:lle, mikä on jo
saavutus! C:stä on kehitetty erilaisia murteita, joista C++ on
suosituin. C:n kanssa samalla tasolla on PASCAL. Tämä Ranskalaisen
matemaatikon mukaan nimetty kieli on teholtaan (melkein) C:n
luokkaa. Kuten C:stäkin, on pascalmurteita kehitetty. Tunnetuin
on TurboPascal. Pascalia käytetään erityisesti, mutta se soveltuu
varsin hyvin muihinkin käyttötarkoituksiin. Pascal suunniteltiin
alussa ohjelmoinnin opettelua varten, minkä takia useimmissa
kouluissa opetetaan sitä. Toinen opetuskieli on LOGO, jonka
erikoisuus on (oli!!) kilpikonnagrafiikka. Haittana on kielen
hitaus, koska logo on tulkkipohjainen kieli (käsky käännetää
konekoodiksi ajon aikana, toisin kuion esim. C ja Pascal)
Kilpikonna mahdollistaa monimutkaisien kuvioiden piirron helposti,
mutta yksinkertaiset kuviot ovat työn takana! Atarisi mukana on
varmasti tullut BASIC-kieli. Vanhoissa koneissa tuli mukana
ST-BASIC, jonka dokumentoinnissa sanottiin suurinpiirtein,
että "joku on verrannut ST-BASIC:ia tekstiseikkailupeliin, niin
monta tasoa siinä on ja niin vaikea sitä on tajuta!".
Toivottavasti kukaan ei enää käytä moista kieltä. (Itse opettelin
sillä ohjelmoinnin alkeet!) Nykyisin koneiden kylkiäisenä tulee
QuickBasic, joka on paljon parempi edeltäjiinsä verrattuna.
Varmasti joku vielä vannoo sen nimeen. Kaikille pelinteosta
kiinnostuneista tuli 90-luvun alussa taivaan lahjana STOS.
Tällä kielellä voi tehdä kaupallista tasoa olevia pelejä, ja
sille on perustettu lukuisia käyttäjäkerhoja. Ainoat haittapuolet
ovat, että se käyttää RIVINUMEROITA ja omia rutiineja, jotka eivät
toimi uusissa koneissa. Nämäkin voi kiertää, jos sisu riittää.
Aina uuden käyttisversion ilmestyttyä on aika päivittää ohjelmasi
toimiviksi.
GFA-Basic on (ehkä) tämänhetken paras basic. Siinä yhdistyvät
Pascalin ja basic:in parhaimmat ominaisuudet, mutta huonot on
armottomasti karsittu pois! Ainoa paha ongelma on editorin ja
kääntäjän bugisuus. Kääntäjä voi joskus tuottaa virheellistä
koodia, editori sekoilee (joskus talletettaessa kone kaatuu).
Tämän tekstin tarkoituksena ei ollut olla objektiivinen, vaan
kerroin omista kokemuksistani (viisastuneena?). Itse ohjelmoin
assemblerilla. Osaan välttävästi Pascal:ia. Basic:in osaan
erinomaisesti.
Tällä hetkellä opiskelen PC:llä ProLog-tekoälykieltä. C ja Logo
tietämykseni ei ole taivaita hipovaa. 8-(
Jokaisella on omat mieltymyksensä, joten kokeile kaikkia kieliä
(jos mahdollista). Monista kielistä on olemassa "demoversioita",
joita voit kysellä esimerkiksi ST-Klubi:n PD-kirjastosta!!!!
Kaikki ohjelmoimaan, vain sillä tavalla pidämme Ataria
elinkelpoisena.
"Though this is madness, yet there is method in't."
Shakespeare: Hamlet II,ii
|
|
(C)
Marko, Suomen Atari-sivut / ArkiSTo 2003
|
|