Az SR programozási nyelv

Nyelvi elemek

Ahogy a bevezetőből is kiderült, az SR nyelv egy "erőforrás alapú" programozási nyelv, ami az objektumorientáltság egy kezdetleges - kicsit sajátosan értelmezett - változataként is felfogható. Minden program erőforrásokból áll, melyek között van egy kitüntetett, ez a főprogram. Az erőforrások közötti interakciókat pedig úgynevezett operációkkal valósítjuk meg. A nyelv tervezőinek célja egy, a konkurens programok fejlesztéséhez kiválóan használható imperatív nyelv megalkotása volt. Mielőtt rátérnénk a részletekre, vizsgáljuk meg a nyelv lexikális elemeit.

Jelkészlet

A nyelv az ASCII karaktereket használja. Megkülönbözteti a kis- és nagybetűket. Saját azonosítóink szerkezete a következő kell legyen: [A-Za-z][A-Za-z0-9]*

Ezenkívűl azonosító nem lehet előre definiált szó és kulcsszó.(Ez utóbbiak az SRben ugyanazt jelentik, azaz csak kulcsszavaink vannak, és ezek nem definiálhatók felül.) Érdekesség, hogy az utasításokat nem kell speciális szimbólummal lezárni. Utasításokat a sorvége mindig elválasztja, az egy soron belüli utasításokat pedig vesszővel szeparáljuk egymástól.

Literálok

Számliterálok

Az SR nyelvben a legtöbb nyelvhez hasonlóan kétféle számliterál van: egész és valós.

Az egészlitárálokat 3 féleképp - oktális,decimális és hexadecimális formában - adhatunk meg:

Valós számok megadásának is két lehetséges formája van: (mind a kettő exponenciális és decimális alakot használ, az exponens megadása nem kötelező)

Karakterliterálok

A karakterliterálok egyszerű ASCII karakterek aposztrófok közé zárva, ill. esetleg speciális karakterek backslash-sel bevezetve.(Ahogy azt a C-ben megszoktuk.) Tehát pl.: 'a' vagy '\n'.

Speciális karakterek
KarakterJelentés
\núj sor
\ttabulátor
\bbackspace
\renter
\xhhhexadecimális számjegyek bitmintája
\'aposztróf
\\backslash
\aalert
\eescape
\cc karakter
\vvertikális tabulátor
\fform feed/lapdobás
\""macskaköröm"
\ooooktális számjegyek bitmintája

Stringliterálok

Egy string ASCII karakterek olyan sorozata, ami nulla vagy több karaktert tartalmaz. A sorozatot a " -jellel határoljuk.
Például: "Don't panic!" vagy "" stb.

Megjegyzések

Az SR nyelv támogatja mind a sor-, mind a blokkosított kommenteket. Sor kommentet a # szimbólummal vezetjük be, és az adott sor végéig tart. Kommentblokkokat a /* és a */ között helyezhetünk el.(akár több soron keresztül is)