Definering af sproget Svendsk

Svendsk er "case sensitive", hvilket betyder at der vil være forskel på, om man skriver fx ’Heltal’ eller ’heltal’. Endvidere er Svendsk et ’dansk’ programmeringssprog, hvilket gør det lettere for folk uden programmerings-erfaring i andre sprog hurtigt at sætte sig ind i det. Det vil forekomme dem mere naturligt at skrive danske sætninger i stedet for engelske.

Da Svendsk er et mere primitivt sprog end Java, er det ikke muligt at udnytte Java fuldt ud ved udelukkende brug af Svendsk. Ydermere vil Svendsk være tæt bundet på Javas definition af bl.a. en int og en boolean. Hvis Java-sproget ændrer denne definition, vil det umiddelbart også medføre, at Svendsks definition af disse typer vil ændre sig.

 

Simple datatyper

Svendsk har følgende simple datatyper. De er sat op mod Javas modstykker, så det er nemmere at se lighederne/forskellene mellem disse. Læg mærke til, at variablernes størrelse udelukkende er afhængig af Java. Hvis Java fx ændrer specifikationer for int, vil det medvirke at specifikationerne for det Svendske heltal også ændres.

 

Typer kendt fra Java Svendsk modstykke Størrelse
boolean boolsk ’sand’ eller ’falsk’
int heltal 32-bit 2-komplimentær (dvs +/-)
String streng -
 
Type Indeholder Init. værdi Størrelse Min. værdi Max. værdi
boolsk sandt/falsk falsk 1 bit - -
heltal et 2-komp. tal 0 32 bits -2147483648 2147483647
streng ASCII tegn "" - - -
 

Typebeskrivelse

Typen boolsk

Typen boolsk kan have to værdier: sand eller falsk. Når typen erklæres, får den automatisk tildelt værdien falsk.

 

Typen heltal

Denne type har en størrelse på 32 bits, dvs. den kan indeholde tal i intervallet -2147483648 til 2147483647. Man kan altså ikke tildele fx en tekststreng til denne type.

 

Typen streng

Typen streng kan indeholde et vilkårligt antal af karakterer, men de skal være omgivet af anførelses tegn.

Eksempel

  s.streng()
  s = "Svendsk"
  s = "C U L8R"
 

Escape-sekvenser

Svendsk Java Betydning
nylinie() \n indsætter ny linie
tabulator() \t indsætter tabulator (indrykning)


Regne-operatorer

Regne-operatorerne bruges på samme måde som de bruges i Java.

Nedenstående tabel viser Svendsks regne operatorer

Operator Brug Beskrivelse
+ op1 + op2 Lægger op1 og op2 sammen
- op1 - op2 Trækker op2 fra op1
* op1 * op2 Ganger op1 med op2
/ op1 / op2 Dividerer op1 med op2


Sammenlignings-operatorer

Sammenlignings operatorerne er næsten de samme som i Java, dog med en væsentlig forskel ved lig med og forskellig fra sammenligningen.

I Svendsk bruges lig med (=) både som sammenlignings- og tildelings-operator.

Nedenfor viser en tabel over Svendsk sammenlignings-operatorer

Operator Brug Beskrivelse
> op1 > op2 op1 er større end op2
>= op1 >= op2 op1 er større end eller lig med op2
< op1 < op2 op1 er mindre end op2
<= op1 <= op2 op1 er mindre end eller lig med op2
= op1 = op2 op1 og op2 er lig
-= op1 -= op2 op1 og op2 er forskellig


Tildelings-operatoren

Sproget Svendsk har kun én tildelings-operator (i modsætning til Javas > 10).

Operator Brug Beskrivelse
= op1 = op2 op1 bliver sat lig med op2


Eksempler på syntaks i Svendsk

I det følgende er der nogle eksempler på Svendsks syntaks. Ved hvert eksempel har vi skrevet den tilsvarende kode i Java, for at tydeliggøre ligheder og forskelle i sprogene.

Eksempel 5-1: Løkker
En væsentlig fordel ved dataordbogen er, den naturlige måde hvorpå man laver løkker. Dette gøres ved brug af ’{’ og ’}’ også kaldet tuborg-start og tuborg-slut.

"Udfør en del kode 10 gange", kunne fx skrives på følgende måde. Læg mærke til, at ITERATION er en variabel der oprettes automatisk når man går ind i en løkke. I nedenstående eksempel, vil ITERATION få en initialiseringsværdi = 0.

Svendsk
0{ skriv("Jeg er tal nummer: "[ITERATION]) }9

Java
for (int i=0; i<10; i++)
  System.out.print("Jeg er tal nummer ", Integer.toString(i));



Eksempel 5-2: Deklarering af variabler
Deklareringen af variabler i Svendsk sker på en noget objekt-orienteret form, fx. erklæringen af et heltal (en int i Java) ’i’ ser således ud:

Svendsk
i.heltal()

Java
int i;


Eksempel 5-3: Tildeling af tal til en variabel
Denne er lige ud af landevejen, da der som sagt kun findes én tildelings-operator i Svendsk:

Svendsk
i = 7

Java
i = 7;


Eksempel 5-4: hvis...ellers sætningen
For at kunne vælge mellem forskellige statements i Svendsk, kan man bruge hvis...ellers sætningen:

Svendsk
hvis (i < 7)
  skriv("i er ikke så stort")
ellers
  skriv("i er 7 eller derover")

Java
if (i < 7)
  System.out.println("i er ikke så stort");
else
  System.out.println("i er 7 eller derover);


Reserverede ord

Svendsk indeholder en række reserverede ord og det er derfor forbudt at bruge disse ord i fx en variabel-erklæring.
afbryd
boolsk
ellers
falsk
heltal
hvis
ITERATION
laes
loopX // X er et tal >= 0
nylinie
sand
skriv
streng
SVENDSK
tabulator
Det er vigtigt, at alle disse reserverede ord skrives som ovenstående da Svendsk som allerede nævnt tidligere kender forskel på store og små bogstaver. De reserverede ord vil senere blive beskrevet i detaljer.