Minimodul 6
Data & Typer 1
21/2-00
På CPU niveau er alt bits og bytes, men hvis vores programmerinssprog
kun tillod os at arbejde med data som bits og bytes, så ville vores
programmer stadig blive ret uforståelige. Det leder os til at se på
typer.
Typer spiller flere roller i programmeringssprog. For det første
bruger vi, som programmører, typer til at forstå hvad et program gør.
At en variabel er erklæret til at være en streng fortæller os at
indholdet (som på maskin niveau blot er en sekvens af bytes) betegner
en (tekst)streng. Det fortæller også compileren, at det nok ikke giver
god mening at sammenligne indholdet af variablen med en integer. Endeligt
fortæller typer også at assignment fra en strengvariabel til en anden skal
implementeres som kopiering af hele strengen - ikke kun det første
tegn.
Groft sagt tjener typer som i) beskrivelses værktøj for os,
ii) fanger fejl i programmer, iii) beskriver det interne layout af data
for compileren. I denne forlæsning skal vi se på punkt i og
iii.
Tid
Tirsdag den 22. februar, klokken 10.15-12.00.
Sted
B3-104.
Litteratur
Sethi kapitel 4 (dog ikke 4.9).
Opgaver
24/2-00
Hvilke typer (basale og brugerdefinerbare) findes der i jeres favorit
programmerinssprog?
De fleste sprog tillader ikke hetrogene arrays, dvs. arrays
der kan indeholde elementer af forskellig type. Hvilke egenskaber skal et
sprog have for at sådan en konstruktion er brugbar, og hvordan
skal den implementeres?
Sethi 4.5, 4.9.
Næste kursusgang: Torsdag den 24. februar.
Det sidste vi mangler at se på omkring typer er punkt ii. Næste
forelæsninger handler om hvordan vi implementerer typecheck for
imperative sprog.
Til SPO hjemmesiden |
Til Dat2/F6S hjemmesiden
Josva Kleist
<kleist@cs.auc.dk>
Last modified: Thu Feb 24 09:34:29 2000