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.
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.
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ő)
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'.
Karakter | Jelentés |
---|---|
\n | új sor |
\t | tabulátor |
\b | backspace |
\r | enter |
\xhh | hexadecimális számjegyek bitmintája |
\' | aposztróf |
\\ | backslash |
\a | alert |
\e | escape |
\c | c karakter |
\v | vertikális tabulátor |
\f | form feed/lapdobás |
\" | "macskaköröm" |
\ooo | oktális számjegyek bitmintája |
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.
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)