Az Alphard programozási nyelv

Szabványos könyvtárak

Mivel a nyelvhez nem készült el fordítóprogram, ezért standard könyvtárak sem léteznek, de a nyelv fejlesztõi gondoltak a késõbbiekre, és fõleg a nyelv speciális típusossága miatt a fordítóprogramok számára az alábbi típusok elérhetõségét követelték meg:

Primitív típusok

Az alábbi típusok az Alphard nyelvi elemei:

Rowstorage

(lineárisan összefüggõ tár, bõvebben lásd feljebb) Megengedett mûveletek egyenlõ hosszúságú cellák esetén a tárolás és beolvasás, egy hosszú cellák esetén az egész és logikai mûveletek.

Boolean

Az elemei strukturálatlanok ({true és false} ténylegesen halmazt alkotnak), a szokásos unáris és bináris mûveletek a megengedettek.

Standard típusok

Integer

Mérete gépi jellemzõktõl függ, a szokásos unáris és bináris mûveletek értelmezettek rajta, az aritmetikai relációk, létezik egy maximális méretet leíró konstans, továbbá értelmezett egy konvertáló mûvelet a stringlet és az integer között.

Vector

Elemei tetszõleges típusok lehetnek, de csak egy típusból állhat. A vektor hossza fix. Az integerekre használt generátor segítségével elemei sorrendben elérhetõk. Van egy eljárás, ami egy részvektorát adja vissza.

Stringlet

Karakterekbõl álló vektorokat jelent (sztring), bár az Alphardban a karakter nem létezik önálló típusként (az 1 hosszú stringlet használatos ilyen célra).

Implementációfüggõ típusok

Az alábbi típusokat nem írják elõ kötelezõnek a nyelv megalkotói, de erõsen javasolt a megvalósításuk.

Real

Hardverfüggõ lebegõpontos számok, szokásos unáris és bináris mûveletekkel. Átváltási lehetõség integerekkel és strinletekkel. Nincs kevert aritmetika (pl integer és real összege nem értelmezett a standard típusoknál).

Kimenet / bemenet

Stringletekkel végezhetõ mûveleteket értünk ide, melyet az IOFile forma valósít meg. A fájlok egy hosszú stringletek konkatenációjaként értelmezett. Elérhetõ mûveletek: nyitás (olvasásra, írásra), zárás, fájl státuszának lekérdezése, stringletek olvasása, írása. Nem újradefiniálható típus.