Forskjell mellom versjoner av «Sjå»

Fra viktigperia, der sannhet møter veggen
Hopp til navigering Hopp til søk
(Ny side: <onlyinclude> Du trudde kanskje at '''å sjå''' var eit vanleg nynorsk verb? I så fall trur eg du skal sjå deg om etter eit par nye lesebrillar. '''Sjå''' er nemleg ein nynorsk varia...)
 
 
(8 mellomliggende revisjoner av 2 brukere er ikke vist)
Linje 1: Linje 1:
<onlyinclude> Du trudde kanskje at '''å sjå''' var eit vanleg nynorsk verb? I så fall trur eg du skal sjå deg om etter eit par nye lesebrillar. '''Sjå''' er nemleg ein nynorsk variant av det velkjente programmeringsspråket '''C'''. </onlyinclude>
+
<onlyinclude>Du trudde kanskje at '''å sjå''' var eit vanleg nynorsk verb? I så fall trur eg du skal sjå deg om etter eit par nye lesebrillar. '''Sjå''' er nemleg ein nynorsk variant av det velkjente programmeringsspråket '''C'''. '''Sjå''' vart utvikla under '''.nyno'''-bølgjen. Språket har mange fellestrekk med '''C''', men inneheld også element som er karakteristisk for [[nynorsk programmering]].</onlyinclude>
 +
 
 +
== Variablar i Sjå ==
 +
 
 +
''Sjå'' inneheld ikkje nøyakteg dei same variablane som ''C''. Dei mest brukte variablane i ''Sjå'' er:
 +
 
 +
* ''Heiltal'' er ''Sjå''-ekvivalenten av ''integer''
 +
* ''Flyttal'' heiter ''fosse'' (etter Jon Fosse) i ''Sjå''. (Opprinneleg kunne ikkje ''flyttal'' definerast i ''Sjå'', og ein måtte derimot bruke ''brudden brøk'')
 +
* Ekvivalenten av ''string'' heiter ''tarjei'' (kortform for Tarjei Vesaas-novelle).
  
'''Sjå''' vart utvikla under '''.nyno'''-bølgjen på 80-talet. Språket har mange fellestrekk med '''C''', men inneheld også element som er karakteristisk for nynorsk programmering.
 
  
 
== Kontrollstrukturar i Sjå ==
 
== Kontrollstrukturar i Sjå ==
  
'''Sjå''' er eit Turing-komplett språk, og inneheld kontrollstrukturar som liknar '''C''':
+
''Sjå'' er eit Turing-komplett språk, og inneheld kontrollstrukturar som liknar ''C'':
 
* Ei ''while''-løkkje definerast med å skrive ''medan''
 
* Ei ''while''-løkkje definerast med å skrive ''medan''
 
* Eit ''if''-utsegn kan gjerast med å skrive ''viss''
 
* Eit ''if''-utsegn kan gjerast med å skrive ''viss''
Linje 11: Linje 18:
 
* Ein kan introdusere ein ''break'' ved å skrive ''kaffipause''
 
* Ein kan introdusere ein ''break'' ved å skrive ''kaffipause''
  
== Variablar i Sjå ==
+
== Døme på syntaks ==
 +
 
 +
<pre>
 +
 
 +
heiltal a = 0
 +
heiltal b = 3
 +
heiltal i = 0
 +
 
 +
medan a<=b {
 +
  i = i + 1
 +
  viss a==b {
 +
    skriv('a er lik b')
 +
  }
 +
  elles {
 +
  }
  
'''Sjå''' inneheld ikkje nøyakteg dei same variabla som '''C'''. Ein kan definere variablar på følgjande måte i '''Sjå''':
+
  viss i>10 {
 +
    kaffipause
 +
  }
  
* ''Heiltal'' er '''Sjå'''-ekvivalenten av ''integer''
+
}
* ''Flyttal'' kan ikkje definerast i '''Sjå'''. Ein må derimot bruke ''brudden brøk''
+
 
* Ekvivalenten av ''string'' heiter ''tarjei'' (kortform for Tarjei Vesaas-novelle).
 
  
 +
</pre>
  
 
== Spesielle element i Sjå ==
 
== Spesielle element i Sjå ==
  
'''Sjå''' er tilrettelagt for parallellprosessering. For C-kompilatorar som er tilpassa parallellprosessering ville ein gjere følgjande mfor å parallellprosessere ei ''for-løkkje'':
+
''Sjå'' er tilrettelagt for parallellprosessering. For C-kompilatorar som er tilpassa parallellprosessering ville ein gjere følgjande for å parallellprosessere ei ''for-løkkje'':
  
 
<pre>
 
<pre>
parfor
+
parfor ... {
 
   # Do parallell processing of operation
 
   # Do parallell processing of operation
end
+
}
 
</pre>
 
</pre>
  
I '''Sjå''' gjerast dette slik:
+
I ''Sjå'' gjerast dette slik:
  
 
<pre>
 
<pre>
samstundes
+
samstundes ... {
 
   # Gjer fleire operasjonar samstundes.
 
   # Gjer fleire operasjonar samstundes.
slutt samstundes
+
}
 
</pre>
 
</pre>
  
 
== Variantar av Sjå ==
 
== Variantar av Sjå ==
  
'''Sjå Skarpt''' er ei objektorientert vidareutvikling av '''Sjå'''. Ein klasse er kalt ei ''bås'' i '''Sjå Skarpt''', og kan enten vere ''offentleg'' (public) eller ''hemmeleg'' (private):
+
''Sjå Skarpt'' er ei objektorientert vidareutvikling av ''Sjå''. Ein klasse er kalt ei ''bås'' i ''Sjå Skarpt'', og kan enten vere ''offentleg'' (public) eller ''hemmeleg'' (private):
  
 
<pre>
 
<pre>
Linje 49: Linje 72:
 
}
 
}
 
</pre>
 
</pre>
 +
 +
[[Kategori:Skript]]
 +
[[Kategori:Språk]]

Nåværende revisjon fra 26. apr. 2020 kl. 19:02

Du trudde kanskje at å sjå var eit vanleg nynorsk verb? I så fall trur eg du skal sjå deg om etter eit par nye lesebrillar. Sjå er nemleg ein nynorsk variant av det velkjente programmeringsspråket C. Sjå vart utvikla under .nyno-bølgjen. Språket har mange fellestrekk med C, men inneheld også element som er karakteristisk for nynorsk programmering.

Variablar i Sjå

Sjå inneheld ikkje nøyakteg dei same variablane som C. Dei mest brukte variablane i Sjå er:

  • Heiltal er Sjå-ekvivalenten av integer
  • Flyttal heiter fosse (etter Jon Fosse) i Sjå. (Opprinneleg kunne ikkje flyttal definerast i Sjå, og ein måtte derimot bruke brudden brøk)
  • Ekvivalenten av string heiter tarjei (kortform for Tarjei Vesaas-novelle).


Kontrollstrukturar i Sjå

Sjå er eit Turing-komplett språk, og inneheld kontrollstrukturar som liknar C:

  • Ei while-løkkje definerast med å skrive medan
  • Eit if-utsegn kan gjerast med å skrive viss
  • case kallast med å skrive døme
  • Ein kan introdusere ein break ved å skrive kaffipause

Døme på syntaks


heiltal a = 0
heiltal b = 3
heiltal i = 0

medan a<=b {
  i = i + 1
   viss a==b {
     skriv('a er lik b')
   }
   elles {
   }

   viss i>10 {
     kaffipause
   }

}
  

Spesielle element i Sjå

Sjå er tilrettelagt for parallellprosessering. For C-kompilatorar som er tilpassa parallellprosessering ville ein gjere følgjande for å parallellprosessere ei for-løkkje:

parfor ... {
  # Do parallell processing of operation
}

I Sjå gjerast dette slik:

samstundes ... {
   # Gjer fleire operasjonar samstundes.
}

Variantar av Sjå

Sjå Skarpt er ei objektorientert vidareutvikling av Sjå. Ein klasse er kalt ei bås i Sjå Skarpt, og kan enten vere offentleg (public) eller hemmeleg (private):

bås BåsNamn {
       heiltal variabelEin, variabelTo
    offentleg
       ...
}