Az OCCAM programozási nyelv

Nyelvi elemek

Jelkészlet

Az OCCAM a szabvány ASCII karaktereket használja. Előfordulhat, hogy a teljes ASCII karakterkészlet nem elérhető, ekkor az OCCAM a következő részhalmazát garantálja, ez az alap karakterkészlet:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 ! " # & ' ( ) * + , - . / : ; < = > ? [ ]

A következő formátumkezelő karaktereket érhetjük el:

*c *C

kocsivissza

*n *N 

újsor

*t *T

tabulátor

*s *S

space

*'

egyszeres idézőjel

*"

kétszeres idézőjel

**

csillag

Ezeket a karaktereket a *-os formájukban használhatjuk sztingekben vagy karakter konstansokként. Hivatkozhatunk bármely karakterre az ASCII kódjával is, a következő formában:

*#AB, ahol A és B egy-egy hexadecimális számjegy.

Azonosítók és literálok

Az OCCAM azonosítók állhatnak kis és nagybetűkből, számokból és a pont karakterből, azzal a megkötéssel, hogy a kezdő karakternek betűnek kell lennie. Hosszbeli megkötés nincs. Az OCCAM különbséget tesz kis és nagybetűk közt.

Egy karakter lehet közvetlenül egy ASCII karakter, speciális escape karakter *-gal bevezetve, vagy ASCII kód *#-kal bevezetve.

A sztring "-ek között álló karakterek sorozata, ahol lehetőség van a sztringet több sorba tördelni a * karakterrel, ezt a sor végére és a következő sor elejére is ki kell rakni.

Egész számokat megadhatunk tizes vagy tizenhatos számrendszerben. Utóbbi esetben a számot # karakternek kell indítania.

Valós számok esetében a számnak lehet exponense, amit egy E jel vezet be, majd a kétszámjegyű exponens + vagy - előjellel. Az exponens opcionális.

Minden numerikus literált egy ún. "díszítés" (decoration) kell hogy kövessen, ami a literál típusát adja meg. Ezek abban az esetben hagyhatóak el, ha a literál környezetéből egyértelmű annak típusa, vagyis, csak egy típus esetén kapunk értelmes és helyes OCCAM kifejezést. Ezek az esetek pontosan le is lettek definiálva.

Pl.:

42(BYTE)

egy byte érték

'T'(INT)

egy int érték

42(INT64)

egy 64 biten ábrázolt int érték

386.54(REAL64)

64 bites valós érték

645.0E-20(REAL64)

64 bites valós érték, exponenssel

Kommentek

Az OCCAM program kommentjeit -- jel vezeti be, és a sor végéig tartanak.

Fenntartott szavak:

Az OCCAM kulcsszavak nem használhatók azonosítóként. Az OCCAM implementációtól függően foglalhat le még szavakat, ekkor ezek csak nagy betűkből állnak. A kulcsszavak:

AFTER, ALT, AND, ANY, ASM, AT, BITAND, BITNOT, BITOR, BOOL, BYTE, BYTESINT, CASE, CHAN OF, DATA, ELSE, FALSE, FOR, FROM, FUNCTION, IF, INLINE, INT, INT16, INT32, INT64, IS, MINUS, MOSTNEG, MOSTPOS, NOT, OFFSETOF, OR, PACKED, PAR, PLACE, PLACED, PLUS, PORT, OF, PRI, PROC, PROCESSOR, PROTOCOL, REAL32, REAL64, RECORD, REM, RESHAPES, RESULT, RETYPES, ROUND, SEQ, SIZE, SKIP, STOP, TIMER, TIMES, TRUE, TRUNC, TYPE, VAL, VALOF, WHILE

Szóközök, bekezdések

AZ OCCAM nyelvben használják a két szóközzel való bentebb kezdést struktúrák kialakításához! ld.pl.: szekvencia, paralell végrehajtás.