Variabler
Variabler: en uppslagningsbar och sättningsbar storhet som har- 1. ett namn,
- 2. ett värde, som kan
- 2.a. adresseras (= slås upp),
- 2.b. sättas,
- 3. en räckvidd där den “finns” i olika bemärkelser:
- 3.b. en persistensräckvidd där den så att säga “finns”, d.v.s. den garanteras behålla sitt värde, och varefter det kan komma att inträffa en tidpunkt då den når en acccessräckvidd, exempelvis:
★ Algol-60 ‘own’ och C/C++ local ‘static’-variabler består under hela programmets körning men kan accessas bara i den funktion där de deklarerats, ★ ett objekts privata värdeattribut består så länge som objektet består, men kan endast accessas från objektets egna metoder (= procedurattribut).
Värden
värde: ett värde är en entitet som behandlas av ett dataprogram, kan lagras i variabler, kan kombineras ihop med andra värden till nya värden med hjälp av operationer så att:V1 OP V2 = V3
exempelvis
1 + 1 = 2, true and true = true, 34 < 12 = false,
addr#32AAD56 [ 4 ] = addr#32AAD5A
etc..Det finns följande värdetyper:
- a. entiteter, exempelvis objekt och arrayer, vilka skall betraktas som enskilda föremål med kodföränderliga tillstånd - det kan teoretiskt finnas två olika entiteter med exakt samma innehåll, de är varandras tvillingar, men eftersom de kan komma att tillståndsförändras till att bli olika skall man ändå inte behandla dem som identiska - [exempel insättes];
- b. kvantiteter, vilka skall betraktas som eviga, oföränderliga och unika som när man opererar på dem adresserar andra kvantiteter - om man finner att det finns två kvantiteter med exakt samma innehåll, så skall man betrakta dem som ett och samma kvantitet, så att exempelvis 3.141592654 = pi (i exakt 9 decimalers precision);
De i datasammanhang vanligaste värdetyperna är:
- objekt - entitetstyp, som “handikappade” objekt räknas structar (C/C++) records (Pascal/Ada), Schemes environment, m.fl..
- arrayer - vanligen entitetstyp; OBS: jag har hör "rader" för detta slags entitet, men det kolliderar med "tile", som även kan översättas med "rad", men som betyder något i stil med "konceptuellt lager",
- sträng - varierande, vanligen föreställda som arrayer av tecken och hela arrayen utgörande en entitet
- tecken (character) - kvantitetstyp
- heltal (integer) - kvantitetstyp
- flyttal (real/float) - kvantitetstyp uppräkningar (enum etc.) - kvantitetstyper som matematiskt är (cirkulära) undergrupper under heltal, med kvantitetsidentifierare som är kopplade till vardagliga begrepp, exempelvis:
måndag, tisdag, onsdag, torsdag, fredag, lördag, söndag,