A Grafit programozási nyelv

Típusok, típuskonstrukciók

Típusszerkezet

A nyelv gyengén típusos és minden értéket szövegként tartalmaz, amelyeket automatikusan konvertál műveletvégzéshez.

Elemi típusok

Egész típus

Az egész típussal elvégezhetőek a megszokott egész műveletek.
Minden inicializálatlan egész értéke 0.

String típus

Aposztrófok között (egyszeres idézőjel) adhatunk meg stringeket, és tetszőleges érték string értékét le tudjuk kérdezni az imageof kulcsszóval.
Minden inicializálatlan string érték egyenlő '0'-val.

Típuskonstrukciók

Tömb típus(ok)

A tömbök egyszerű változók, amelyeket indexelhetünk a [ ] párral. A belsejébe írt érték azonosítja a tömb elemét.
A tömbök nem folytonos adattárok, inkább asszociatívak.
Többféle multitömb típus létezik a grafit nyelvben:

Megjegyzés: a fenti négy kifejezés különböző helyre mutat.

Típuskonverziók

Konverzióra a valueof és imageof kulcsszavak használhatók. A valueof egy akármilyen típusú értéket egészként használ fel, amíg az imageof egy akármilyen típusú értéket stringként használ fel.

Változók

A változókat nem kell deklarálni, akármikor életbe léptethetünk egy új változót.
A változónak kezdeti értéke mindig 0.
A nyelvben nincsenek konstans kifejezések, bár modulban adhatunk csak olvasható értékeket.

Kifejezések, operátorok

A kifejezéseket a nyelv jobbasszociatívan, precedencia sorrendet figyelembe véve értékeli ki. Ez a precedenciatáblázat a következő:

OperátorSzintJelentés
not1Negáció
-Unáris -
*2Szorázs
/Osztás
%Maradékképzés
+3Összeadás
-Kivonás
=4Egyenlőség
not =Nem egyenlő
<Kisebb
>Nagyobb
<=Kisebb vagy egyenlő
>=Nagyobb vagy egyenlő
and5És
or6Vagy
->7Implikáció