From: dvldbg@cs.umu.se (Daniel Brahneborg)
Subject: Re: tvetydigheter
Organization: Dept. of Computing Science, Umea Univ., 901 87  UMEA  SWEDEN
Distribution: swnet
Date: Thu, 24 Dec 1992 11:57:57 GMT

In article <BzM27v.5o4@cs.umu.se> karhu@cs.umu.se (Erik Lindstroem) writes:
>Ett utdrag ur en fiktiv lrobok i datavetenskap:
>
>Man kan inte anv{nda sig av {, } eller | i Pascal-program, ej heller i
>C-program. Om vi anv{nder oss av C som exempelspr}k s} visar vi
>p}st}endet med att f|ljande program inte g}r igenom kompileringen:
>
>main(int argc, char *argv[])
>{
>	printf("Yellow world!\n");
>}

Programmet g}r visst igenom kompilatorn, MED DE TECKEN SOM ST]R D[R.
Om man {r ovanligt korkad i huvudet och f|rs|ker mappa tillbaka }, { och |
till de tre tecknen efter Z (som jag inte har n}gon som helst m|jlighet
att skriva) och skriver in det p} en ren 8-bitars terminal f}r man
naturligtvis problem, men det var inte det det g{llde.

>Vadd entydigt?

Jepp. Enda st{llet n}gon vettig m{nniska skulle f} f|r sig att stoppa
in tecken med 8:e biten satt {r i str{ngar, eftersom det annars skulle
bryta mot specifikationen av spr}ket. Den enda str{ng som finns h{r {r
"Yellow World!\n", som bara kan betyda en sak. Dels {r texten p}
engelska, s} att den mappning man g|r tempor{rt {r avst{ngd, plus
att "\n" {r en specialpryl i C, vilket tas om hand innan man b|rjar
leta svenska tecken. N}gra andra tecken med dubbel betydelse finns inte.

Det enda jag har p}st}tt, och som >1 av l{rarna h{r i Ume (och i princip
ingen annan) har lyckats missf|rst}, {r f|ljande:

   Normalt skrivs svensk text med ett alfabet med 29 bokst{ver.
   Om man inte har m|jlighet att anv{nda 3 av dessa, b|r de ers{ttas
   av 3 tecken som inte ing}r bland de 26 andra, f|rslagsvis }, {
   och | (av hysteriska sk{l).
   Alla andra versioner ger l{tt tvetydigheter, eftersom de 3 tecken
   man v{ljer helt pl|tsligt f}r tv} betydelser.
   Olika versioner av detta (a, a, o; e, d, v; aa, ae, oe) ger
   naturligtvis olika tvetydigheter, men de finns i alla fall d{r.

Om man nu ska b|rja skriva annan text, t.ex. matematiska formler
eller k{llkod, uppkommer ju problemet igen, eftersom dessa vanligen
uttrycks med ett alfabet som har mer {n 29 tecken, och de 3 tecken
som man har valt att ers{tta med l{tt hamnar bland dessa nya tecken.

Naturligtvis tar det sedan en liten stund innan man v{njer sig vid
de nya tecknen, men det ser jag inte som n}got st|rre problem.
Visserligen blir det en |kning med drygt 10% p} antalet bitmappar
man m}ste komma ih}g, men den m{nskliga hj{rnan har klarat av v{rre
saker.

Anv{nder man aa, ae och oe m}ste man ha dubbla bitmappar f|r
samtliga svenska ord med dessa tecken i, vilket {r avsev{rt mer.
[r man halvanalfabet och l{ser text en bokstav i taget slipper
man ju detta, men det stadiet har f|rhoppningsvis de flesta h{r
passerat.

Skriver man normal, svensk text f}r man allts} inga tvetydigheter,
eftersom detta bara kr{ver ett alfabet med 29 tecken. Skriver man
matteformler anv{nder man {nd} aldrig tecknen efter z, s} allting
har fortfarande bara en mappning. Skriver man C-kod och vill ha med
svenska kommentarer eller str{ngar blir det v{rre, men det kan 
l|sas p} flera s{tt:

1. L}ta l{saren f|rs|ka avg|ra vilken betydelse tecknen har.
2. Bara anv{nda svenska ord som h}ller sig till a-z (Lysator-versionen).
3. Anv{nda engelsk text, vilket {r b{st om man skulle f} f|r sig att
   skicka iv{g programmet n}gonstans.
4. Se till att man har en 8-bitars terminal. :-)

De flesta har b}de f|rdelar och nackdelar, s} det {r ganska valfritt
vilket man g|r. Sj{lv h}ller jag mig till (3), om nu n}gon bryr sig.

Hur som helst, Hjul p} Er.
Snart b|rjar Kalle Anka, och favoriten Ferdinand.
(JA! En ny sak att ha krig om! :-) )

/Basic

Newsgroups: swnet.svenska