hwechtla-tl:
Forth
Ohjelmointikieliperhe, jonka jäsenet ovat tyypillisesti:
- yksinkertaisia toteuttaa
- kohtalaisen korkean tason kieliä
- syntaksiltaan hyvin yksinkertaisia
- laajennettavissa kielen tasolla
- toteutettu tulkki-kääntäjä -hybrideinä
- enimmäkseen kirjoitettu itsellään
- laajennettavia myös ohjelman lukuvaiheesta
- täydellisiä käyttöympäristöjä
Nämä ominaisuudet ovat myös tyypillisiä yksinkertaisille
Lisp-toteutuksille. Mutta Lisp-kielissä on tyypillisesti valmiiksi
paljon enemmän abstraktiotasoja kuin tyypillisessä Forth-toteutuksessa.
Toisin kuin Lisp-kielet, Forthit ovat tyypillisesti:
- melko suojaamattomia ympäristöjä
- vahvasti tilamuutoksiin perustuvia (vs. funktionaalinen ohjelmointi)
- tilamalliltaan pinopohjaisia (käskyt manipuloivat sisäistä pinoa)
- syntaksiltaan RPN: ei 3 + 5 vaan 3 5 +, ei 5 * (1 + 2) vaan 5 1 2 + *
- muistimalleiltaan ja tietotyypeiltään hyvin vajavaisia ja laitekohtaisia
- sisäiseltä rakenteeltaan sotkuisia ja vaikeasti ymmärrettäviä
- käytössä pienissä ympäristöissä, erityisesti sulautetuissa (embedded)
järjestelmissä
- hyvin helposti käännettävissä konekieleksi
- pieniä
- sisältävät editorin yms.
- myös I/O-abstraktioiltaan hyvin matalatasoisia: ei merkkivirtoja vaan
levyblokkeja
Hyvä alustus fortheista on Gforthin info-tiedosto (tulee gforthin
mukana, ei saatavilla luotettavasti www:ssa)
kategoria: ohjelmointi
kommentoi
(viimeksi muutettu 27.06.2005 15:41)