Ark 1 av 18. programmeringsspråkenes. Velkommen til IN 211. verden. IN 211 Programmeringsspråk

Save this PDF as:
 WORD  PNG  TXT  JPG

Størrelse: px
Begynne med side:

Download "Ark 1 av 18. programmeringsspråkenes. Velkommen til IN 211. verden. IN 211 Programmeringsspråk"

Transkript

1 Ark 1 av 18 IN 211 Programmeringsspråk Velkommen til programmeringsspråkenes verden IN 211 Forelesning

2 Foreleser Ragnhild Kobro Runde E-post: Kontor: 3345 Treffetid: torsdager Dagens tema Introduksjon til IN 211 Pensum og andre praktiske opplysninger Hva handler kurset om? Hvorfor er det lurt å ta kurset? Generelt om språk Binding (2.2.3) Variables skop, type, levetid og annet (2.3) Forelesning Ark 2 av 18

3 Praktiske opplysninger Undervisning Forelesninger: Mandag Gruppeundervisning: 1 dobbeltime I tillegg: Selvstudium! (3 vekttall 12 timer i uken?) Obligatorisk oppmøte Oppdatert informasjon Husk nyhetsgruppen: ifi.in211 Forutsetninger IN115 (rekursjon, lister, trær,... ) Lese C-programmer Programmere Java Forelesning Ark 3 av 18

4 Pensum Ghezzi & Jazayeri: Programming language concepts (tredje utgave), John Wiley & sons, Krogdahl & Ore: Om syntaks og syntaksanalyse, kompendium 47. Kan kjøpes i bokhandelen. Kristoffersen: Funksjonell programmering i standard ML, kompendium 61. Kan leses og skrives ut fra kursets hjemmeside. I tillegg: Forelesninger, obligatoriske oppgaver og ukeoppgaver. Forelesning Ark 4 av 18

5 Hvorfor så mange språk? Hvorfor lager man ikke ett godt språk og er ferdig med saken? IBM prøvde seg i 1964 med PL/I som er kjent for at den tillot IF THEN = ELSE THEN ELSE = THEN+1 ELSE THEN = ELSE; Det er gode grunner til at det er mange språk: Oppgavene er ulike i størrelse, kompleksitet samt hva slags problem som skal løses. Det er forskjellige krav til hastighet, plass, sikkerhet,... Programmerere er ulike! Informatikken er ennå en ung vitenskap. Forelesning Ark 5 av 18

6 I IN 211 vil vi ta for oss hvordan man beskriver et språk hva som skjer bak kulissene eksempler på ulike typer språk: Perl skript- og søkespråk Logla prosedyrespråk ML funksjonelt språk Prolog logisk språk og litt om diverse andre språk. Dessuten vil dere få trening i å programmere Java. Forelesning Ark 6 av 18

7 Binding Programmer består av entiteter med tilhørende attributter (egenskaper). Eksempler: En variabel haretnavnogentype. En rutine har et navn og formelle parametre (med typer). En setning har assosierte aksjoner. Det å sette verdien til en slik attributt kalles binding. Dette kan skje på fire stadier: Forelesning Ark 7 av 18

8 I språkdefinisjonen: Betydningen angis i språkets definisjon. Eksempel: I Java representerer int et heltall som er et kjent matematisk begrep. Dermed vet vi hvordan +, * etc. skal oppføre seg. I implementasjonen: Implementatøren foretar et valg. Eksempel: I C er det ikke angitt hvor mange byte som trengs til en int. Under kompileringen: Betydningen kan endre seg fra program til program, men vil være konstant hele tiden programmet kjøres. Eksempel: I Pascal er typen Integer predefinert, men kan redefineres i et program. Under kjøring: Definisjonen kan endre seg mange ganger under kjøringen. Eksempel: En variabels verdi vil endre seg. De tre første bindingene kalles statiske bindinger, den siste kalles dynamisk binding. Forelesning Ark 8 av 18

9 Hva er en variabel? Sett fra en programmerers synspunkt, har en variabel følgende egenskaper: navn skop levetid type adresse i lageret verdi Navn En variabel får navnet i en deklarasjon. Noen språk (som Perl) krever ingen eksplisitt deklarasjon; de har en implisitt deklarasjon. Forelesning Ark 9 av 18

10 Skop Enhver deklarasjon har sitt skop, dvs. den delen av programmet hvor den er synlig. Enhver forekomst er kun i skopet til én deklarasjon med samme navn. Skrives det ut 1 eller 2? #include <stdio.h> int x = 1; void f() { printf("x = %d\n", x); } int main() { int x = 2; f(); } Forelesning Ark 10 av 18

11 Språkets skopregler forteller hva skopet er. De vanligste er: C Skopet starter ved deklarasjonsstedet. Simula Skopet starter ved begin i blokken. Java Som C for lokale variable og som Simula for metoder og klasser. Perl Som C for variable og som Simula for funksjoner. Alle disse språkene (unntatt Perl) har statisk skop. Alle disse skopene varer til blokkens avslutning (med end eller }). For alle språkene gjelder at lokale redeklarasjoner kan gi «hull» i skopet. Forelesning Ark 11 av 18

12 Skop fra deklarasjonsstedet #! /local/bin/perl -w $x = 1; if ($x > 0) { print "x = $x\n"; my $x = 2; print "x = $x\n"; } print "x = $x\n"; exit 0; En kjøring gir følgende utskrift: x= x= x= Forelesning Ark 12 av 18

13 Skop i hele blokken begin integer x = 1; begin procedure P1; begin OutText("x = "); OutInt(x, 0); OutImage; end P1; integer x = 2; P1; end; OutText("x = "); OutInt(x, 0); OutImage; end Resultatet av kjøringen: x= x= Forelesning Ark 13 av 18

14 Problem med skop à la C Hvordan kan to funksjoner kalle hverandre når de først er kjent etter deklarasjonen? Løsningen er å tillate separat deklarasjon av signaturen. float f2(int a, int b); int f1(float x) {... f2(...,...)... } float f2(int a, int b) {... f1(...)... } Forelesning Ark 14 av 18

15 Dynamisk skop Noen språk har dynamisk skop, med regelen: En forekomst binder til den sist evaluerte deklarasjon som ikke er avsluttet (med end eller }). Eksempel: Perl har både statisk skop (med my) og dynamisk skop (med local). #! /local/bin/perl -w sub skriv_x { print "x = $x\n"; } sub p_statisk { my $x = 2; skriv_x(); } sub p_dynamisk { local $x = 3; skriv_x(); } $x = 1; skriv_x(); p_statisk(); p_dynamisk(); exit 0; Resultatet blir: x= x= x= Forelesning Ark 15 av 18

16 Levetid En variabels levetid er den tiden den opptar plass i lageret. Dette er normalt den tiden programmet er i variabelens skop, men det er unntak: En variabel lever selv om den midlertid er skjult av en annen variabel. Noen språk har nøkkelord som gir utvidet levetid (som static i Java og C). Ved å bruke dynamisk allokering (new ijava,malloc i C) får brukeren full kontroll over levetiden. Type En variabels type angir et sett av verdier og mulige operasjoner på disse. Mer om typer neste uke! Forelesning Ark 16 av 18

17 Adresse i lageret («l-value») Hvor en variabel plasseres i lageret er oftest dynamisk bestemt. (Mer om dette senere i kurset.) Verdien («r-value») En variabels verdi er det mest dynamiske vi har, men selv der finnes unntak: I noen språk kan man definere konstanter som er kjent under kompileringen (som #define i C). Noen språk kan «fryse» en variabel slik at verdien siden ikke endres (som final ijava). Forelesning Ark 17 av 18

18 Initialverdi Hvilken verdi har en variabel når den opprettes? Noen muligheter: en tilfeldig verdi (gitt av hva som lå der før) en fast verdi (0 i Simula) en initialverdi må alltid oppgis (Modula-3) det er umulig å bruke en variabel før den har fått en verdi (Java) Forelesning Ark 18 av 18

INF3110 Programmeringsspråk. Velkommen til kurset INF 3110/4110. Programmeringsspråk 1/24

INF3110 Programmeringsspråk. Velkommen til kurset INF 3110/4110. Programmeringsspråk 1/24 Velkommen til kurset INF 3110/4110 Programmeringsspråk 1/24 Forelesning 1 20.8.2003 Først det praktiske Foreleser: Roger Antonsen E-post: rantonse@ifi.uio.no Kontor: rom 3403 Treffetid: etter avtale Undervisning

Detaljer

INF 3110/4110. Velkommen til kurset. Programmeringsspråk. Først det praktiske

INF 3110/4110. Velkommen til kurset. Programmeringsspråk. Først det praktiske Velkommen til kurset INF 3110/4110 Programmeringsspråk 1/24 Først det praktiske Foreleser: Roger Antonsen E-post: rantonse@ifi.uio.no Kontor: rom 3403 Treffetid: etter avtale Undervisning Forelesninger:

Detaljer

Forelesere. Velkommen til programmeringsspråkenes verden IN211. Praktiske opplysninger. Faglige forutsetninger. Ragnhild Kobro Runde

Forelesere. Velkommen til programmeringsspråkenes verden IN211. Praktiske opplysninger. Faglige forutsetninger. Ragnhild Kobro Runde Forelesere Velkommen til programmeringsspråkenes verden IN211 Ragnhild Kobro Runde e-post: ragnhilk@ifi.uio.no Kontor: 3345 Gerhard Skagestein e-post: gerhard@ifi.uio.no Kontor: 3402 IN211-Innledning-1

Detaljer

IN 211 programmeringsspråk H 99

IN 211 programmeringsspråk H 99 IN 211 programmeringsspråk H 99 Forelesere: Dag Langmyhr (epost: dag@ifi.uio.no) Olaf Owe (epost: olaf@ifi.uio.no) Gruppelærere: Ragnhild Kobro (epost: ragnhilk) Igor Rafienko (epost: igorr) Sigurd Weisteen

Detaljer

Programmeringsspråket C

Programmeringsspråket C Programmeringsspråket C Bakgrunn Implementasjon av Unix ved AT&Ts laboratorium i Palo Alto 1960 75. Navnet kommer fra BCPL B C. Opphavsmannnen heter Dennis Ritchie. ANSI standard i 1988; omtrent alle følger

Detaljer

Dagens tema Kjøresystemer (Ghezzi&Jazayeri 2.6, 2.7)

Dagens tema Kjøresystemer (Ghezzi&Jazayeri 2.6, 2.7) Dagens tema Kjøresystemer (Ghezzi&Jazayeri 2.6, 2.7) Repetisjon Språk med rekursjon (C3) og blokker (C4) Statisk link Dynamisk allokering (C5) Parameteroverføring 1/25 Forelesning 11 5.11.2003 Repetisjon:

Detaljer

Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) IN 211 Programmeringsspråk

Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) IN 211 Programmeringsspråk Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) Funksjonelle språk (Ghezzi&Jazayeri kap.7 frem til 7.4) Neste uke: ML Ark 1 av 16 Forelesning 16.10.2000 Parameteroverføring

Detaljer

IN 147 Program og maskinvare. Velkommen til IN 147. Program- og maskinvare

IN 147 Program og maskinvare. Velkommen til IN 147. Program- og maskinvare Velkommen til IN 147 Program- og maskinvare Dagens tema: Presentasjon av kurset Litt om programmeringsspråket C Registrering av oppmøte Ark 1 av 22 Forelesning 22.1.2001 Foreleserne Sigbjørn Næss Digitaltekniker

Detaljer

INF 1000 høsten 2011 Uke september

INF 1000 høsten 2011 Uke september INF 1000 høsten 2011 Uke 2 30. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus 1 INF1000 undervisningen Forelesningene: Første

Detaljer

INF1000 undervisningen INF 1000 høsten 2011 Uke september

INF1000 undervisningen INF 1000 høsten 2011 Uke september INF1000 undervisningen INF 1000 høsten 2011 Uke 2 30. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Forelesningene: Første

Detaljer

INF3110 Programmeringsspråk. Dagens tema. Typer (Kapittel 3 frem til ) Innføring i ML (Kapittel & ML-kompendiet.) 1/19

INF3110 Programmeringsspråk. Dagens tema. Typer (Kapittel 3 frem til ) Innføring i ML (Kapittel & ML-kompendiet.) 1/19 Dagens tema Typer (Kapittel 3 frem til 3.3.1.) Innføring i ML (Kapittel 7.4.3 & ML-kompendiet.) 1/19 Forelesning 2 27.8.2003 Typer En (data-)type består av: en mengde verdier en mengde operasjoner man

Detaljer

Typer. 1 Type: boolean. 2 Verdimengde: {true, false} 3 Operatorer: NOT, AND, OR... 1/19. Forelesning Forelesning

Typer. 1 Type: boolean. 2 Verdimengde: {true, false} 3 Operatorer: NOT, AND, OR... 1/19. Forelesning Forelesning Dagens tema Typer (Kapittel 3 frem til 331) Innføring i ML (Kapittel 743 & ML-kompendiet) Typer En (data-)type består av: en mengde verdier en mengde operasjoner man kan anvende på disse verdiene Eksempel:

Detaljer

public static navn_til_prosedyre() { // implementasjon av prosedyren

public static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren Prosedyrer Hensikten med en prosedyre Hensikten med en prosedyre er, logisk sett, å representere en jobb eller en funksjonalitet i et eller flere programmer. Bruk av entall er viktig: vi har generelt en

Detaljer

Velkommen til INF Introduksjon til operativsystemer og datakommunikasjon

Velkommen til INF Introduksjon til operativsystemer og datakommunikasjon Velkommen til INF-1060 Introduksjon til operativsystemer og datakommunikasjon 22.08.12 INF1060 1 Forelesere: Pål Halvorsen (paalh@ifi.uio.no) Nettverk og Distribuerte systemer (ND) (ved Simula) Tor Skeie

Detaljer

Dagens tema: Kjøresystemer II

Dagens tema: Kjøresystemer II Dagens tema Kjøresystemer II En kort repetisjon (Ghezzi&Jazayeri 2.7.3) Språk med blokker (Ghezzi&Jazayeri 2.7.4) Dynamisk allokering (Ghezzi&Jazayeri 2.7.5) Parametre (Ghezzi&Jazayeri 2.7.7) Ark 1 av

Detaljer

Anbefalt litteratur: Pensum-bøker: Forelesere: Velkommen til INF Introduksjon til operativsystemer og datakommunikasjon

Anbefalt litteratur: Pensum-bøker: Forelesere: Velkommen til INF Introduksjon til operativsystemer og datakommunikasjon Forelesere: Velkommen til INF-1060 Introduksjon til operativsystemer og datakommunikasjon Pål Halvorsen (paalh@ifi.uio.no) Nettverk og Distribuerte systemer (ND) (ved Simula) Kjell Åge Bringsrud (kjellb@ifi.uio.no)

Detaljer

Velkommen til INF Introduksjon til operativsystemer og datakommunikasjon

Velkommen til INF Introduksjon til operativsystemer og datakommunikasjon Velkommen til INF-1060 Introduksjon til operativsystemer og datakommunikasjon 21.08.2007 INF1060 1 Forelesere: Pål Halvorsen (paalh@ifi.uio.no) Nettverk og Distribuerte systemer (ND) (ved Simula) Kjell

Detaljer

Programmeringsspråket C

Programmeringsspråket C Programmeringsspråket C Programmeringsspråket C Implementasjon av Unix ved AT&Ts laboratorium i Palo Alto 1960 75. Navnet kommer fra BCPL B C. Opphavsmannnen heter Dennis Ritchie. ANSI-standard i 1988;

Detaljer

OPPGAVE 1 OBLIGATORISKE OPPGAVER (OBLIG 1) (1) Uten å selv implementere og kjøre koden under, hva skriver koden ut til konsollen?

OPPGAVE 1 OBLIGATORISKE OPPGAVER (OBLIG 1) (1) Uten å selv implementere og kjøre koden under, hva skriver koden ut til konsollen? OPPGAVESETT 4 PROSEDYRER Oppgavesett 4 i Programmering: prosedyrer. I dette oppgavesettet blir du introdusert til programmering av prosedyrer i Java. Prosedyrer er også kjent som funksjoner eller subrutiner.

Detaljer

IN 147 Program og maskinvare

IN 147 Program og maskinvare Dagens tema Mer om C Cs preprosessor Allokering av variable Separat kompilering Programmet make Pekere i C Operasjoner på pekere Pekere og vektorer Referanseparametre Pekere til «alt» og «ingenting» Dynamisk

Detaljer

public static navn_til_prosedyre() { // implementasjon av prosedyren

public static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren Prosedyrer Hensikten med en prosedyre Hensikten med en prosedyre er, logisk sett, å representere en jobb eller en funksjonalitet i et eller flere programmer. Bruk av entall er viktig: vi har generelt en

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

2 Om statiske variable/konstanter og statiske metoder. Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo 1 Innledning Dette notatet beskriver noe av det som foregår i primærlageret når et Javaprogram utføres.

Detaljer

Programmeringsspråket C

Programmeringsspråket C Programmeringsspråket C Programmeringsspråket C Laget til implementasjon av Unix ved AT&Ts Bell labs i Palo Alto 1969 73. Navnet kommer fra BCPL B C. Opphavsmannnen heter Dennis Ritchie. ANSI-standard

Detaljer

Velkommen til. INF våren 2016

Velkommen til. INF våren 2016 Velkommen til INF1010 - våren 2016 Denne uken (onsdag og torsdag): Om INF1010 Java datastrukturer Klasser med parametre i Java Stein Gjessing Institutt for informatikk Universitetet i Oslo 1 1 INF1010

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

2 Om statiske variable/konstanter og statiske metoder. Gaustadbekkdalen, januar 22 Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Innledning Dette notatet beskriver noe av det som foregår i primærlageret når

Detaljer

Semantisk Analyse del III

Semantisk Analyse del III Semantisk Analyse del III Typesjekking Kapittel 6.4 08.03.2013 1 Datatyper og typesjekking Om typer generelt Hva er typer? Statisk og dynamisk typing Hvordan beskrive typer syntaktisk? Hvordan lagre dem

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i IN 211 Programmeringsspråk Eksamensdag: 4. desember 2002 Tid for eksamen: 9.00 15.00 Oppgavesettet er på 10 sider. Vedlegg: Tillatte

Detaljer

Kort om meg. INF1000 Uke 2. Oversikt. Repetisjon - Introduksjon

Kort om meg. INF1000 Uke 2. Oversikt. Repetisjon - Introduksjon Kort om meg INF1000 Uke 2 Variable, enkle datatyper og tilordning Fredrik Sørensen Kontor: Rom 4311-NR, Informatikkbygget Brukernavn/e-post: fredrso@ifi.uio.no Utdanning: Dataingeniør, 2000 Cand.Scient,

Detaljer

Kapittel 1 En oversikt over C-språket

Kapittel 1 En oversikt over C-språket Kapittel 1 En oversikt over C-språket RR 2015 1 Skal se på hvordan man En innføring i C Skriver data til skjermen Lese data fra tastaturet Benytter de grunnleggende datatypene Foretar enkle matematiske

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF3110/4110 Programmeringsspråk Eksamensdag: 3. desember 2004 Tid for eksamen: 9.00 12.00 Oppgavesettet er på 8 sider. Vedlegg:

Detaljer

INF2220: Forelesning 1. Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel )

INF2220: Forelesning 1. Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel ) INF2220: Forelesning 1 Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel 4.1-4.3 + 4.6) PRAKTISK INFORMASJON 2 Praktisk informasjon Kursansvarlige Ragnhild Kobro Runde (ragnhilk@ifi.uio.no)

Detaljer

Oversikt. INF1000 Uke 1 time 2. Repetisjon - Introduksjon. Repetisjon - Program

Oversikt. INF1000 Uke 1 time 2. Repetisjon - Introduksjon. Repetisjon - Program Oversikt INF1000 Uke 1 time 2 Variable, enkle datatyper og tilordning Litt repetisjon Datamaskinen Programmeringsspråk Kompilering og kjøring av programmer Variabler, deklarasjoner og typer Tilordning

Detaljer

Dagens tema. C-programmering. Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes.

Dagens tema. C-programmering. Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes. Dagens tema Dagens tema C-programmering Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes. Adresser og pekere Parametre Vektorer (array-er) Tekster (string-er) Hvordan ser minnet

Detaljer

Del 1 En oversikt over C-programmering

Del 1 En oversikt over C-programmering Del 1 En oversikt over C-programmering 1 RR 2016 Starten C ble utviklet mellom 1969 og 1973 for å re-implementere Unix operativsystemet. Er et strukturert programmeringsspråk, hvor program bygges opp av

Detaljer

Semantikk. Dagens tema Kjøresystemer (Ghezzi&Jazayeri 2.6, 2.7) Semantikk. Semantikk. En måte å svare på: gi semantikken til språket!

Semantikk. Dagens tema Kjøresystemer (Ghezzi&Jazayeri 2.6, 2.7) Semantikk. Semantikk. En måte å svare på: gi semantikken til språket! agens tema Kjøresystemer (Ghezzi&Jazayeri.,.) Innledende om semantikk Operasjonell semantikk / SIMPLESEM Bokholderi og minneorganisering Forskjellige språkklasser... en beskrivelse av hva som skjer når

Detaljer

IN 147 Program og maskinvare

IN 147 Program og maskinvare Dagens tema Mer om C Et eksempel til (med diverse forklaringer) Representasjon av tegn og logiske verdier Vektorer Statusverdi Innhenting av definisjoner Inkrementering og dekrementering av variable for-setningen

Detaljer

Dagens tema. Mer om C Enkle datatyper Sammensatte datatyper: Vektorer og matriser Tekster Mengder Strukturer Unioner Ringbuffere

Dagens tema. Mer om C Enkle datatyper Sammensatte datatyper: Vektorer og matriser Tekster Mengder Strukturer Unioner Ringbuffere Dagens tema Mer om C Enkle datatyper Sammensatte datatyper: Vektorer og matriser Tekster Mengder Strukturer Unioner Ringbuffere Formål: Nyttige å bruke under programmeringen Trening i programmering i C

Detaljer

Forelesning inf Java 1

Forelesning inf Java 1 Forelesning inf1000 - Java 1 Tema: Javas historie Bestanddelene i et Java-program Programvariabler Ole Christian Lingjærde, 22. august 2012 Litt Java-historikk The Green Team I 1991 opprettet Sun Microsystems

Detaljer

Kap 6.4: Typesjekking Foiler ved Birger Møller-Pedersen Forelest av Stein Krogdahl 19. og 23. mars Dagens tema: Typer og typesjekking

Kap 6.4: Typesjekking Foiler ved Birger Møller-Pedersen Forelest av Stein Krogdahl 19. og 23. mars Dagens tema: Typer og typesjekking Kap 6.4: Typesjekking Foiler ved Birger Møller-Pedersen Forelest av Stein Krogdahl 19. og 23. mars 2015 Dagens tema: Typer og typesjekking Hva er nå egentlig en «type» i et programmeringsspråk? Hvordan

Detaljer

Plan: Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) Funksjonelle språk. Innføring i ML. typer enkle funksjoner (Fortsetter med ML i to uker til)

Plan: Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) Funksjonelle språk. Innføring i ML. typer enkle funksjoner (Fortsetter med ML i to uker til) Plan: Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) Funksjonelle språk (Ghezzi&Jazayeri kap.7 frem til 7.4) Innføring i ML (Ghezzi&Jazayeri kap. 7.4.3 + ML-komp.) typer enkle funksjoner (Fortsetter med

Detaljer

Generiske mekanismer i statisk typede programmeringsspråk

Generiske mekanismer i statisk typede programmeringsspråk Generiske mekanismer i statisk typede programmeringsspråk Dette stoffet er Pensum, og det er bare beskrevet her Mye her er nok kjent stoff for mange INF5110 7. mai 2013 Stein Krogdahl 1 Hvordan kunne skrive

Detaljer

INF1000 Eksamensforberedelser og -tips. Høst 2014 Siri Moe Jensen

INF1000 Eksamensforberedelser og -tips. Høst 2014 Siri Moe Jensen INF1000 Eksamensforberedelser og -tips Høst 2014 Siri Moe Jensen Hva skal evalueres? Fra kurssidene Etter å ha tatt INF1000 Overordnet pensum kan du skrive små til middels store programmer oppdelt i klasser.

Detaljer

Beskrivelse av programmeringsspråket Compila15 INF Kompilatorteknikk Våren 2015

Beskrivelse av programmeringsspråket Compila15 INF Kompilatorteknikk Våren 2015 Beskrivelse av programmeringsspråket Compila15 INF5110 - Kompilatorteknikk Våren 2015 Her beskrives syntaksen og den statiske semantikken (hva som skal sjekkes av kompilatoren) til språket Compila15. Den

Detaljer

Dagens tema: Datastrukturer

Dagens tema: Datastrukturer Dagens tema: Datastrukturer Matriser Dynamiske matriser Ringbuffere Mengder Lister Enkle listeoperasjoner Programmering av en listepakke Lister med hode og hale Toveislister Onsdag 24.3 Avslutning av IN147A

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Eksamen i INF3110/INF4110, 1. desember 2005 Side 1 UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF3110/4110 - Programmeringsspråk Eksamensdag: 1. desember 2005 Tid for eksamen:

Detaljer

Dagens tema INF2270. Cs preprosessor. Separat kompilering av C funksjoner. C og minnet. Dag Langmyhr,Ifi,UiO: Forelesning 5. februar 2007 Ark 1 av 15

Dagens tema INF2270. Cs preprosessor. Separat kompilering av C funksjoner. C og minnet. Dag Langmyhr,Ifi,UiO: Forelesning 5. februar 2007 Ark 1 av 15 Dagens tema Cs preprosessor Separat kompilering av C funksjoner C og minnet Dag Langmyhr,Ifi,UiO: Forelesning 5. februar 2007 Ark 1 av 15 Cs preprosessor Før selve kompileringen går C kompilatoren gjennom

Detaljer

156C. Algoritmer og maskinspråk. IT1101 Informatikk basisfag. Maskinspråk: det maskinen forstår. Assembler / assemblerspråk

156C. Algoritmer og maskinspråk. IT1101 Informatikk basisfag. Maskinspråk: det maskinen forstår. Assembler / assemblerspråk IT1101 Informatikk basisfag I dag Programmeringsspråk Problemer med maskinspråk I dag: 5.1-5.3 Fra lavnivå til høynivå programmeringsspråk - utvikling Kompilator / tolker Programmeringsparadigmer Tradisjonelle

Detaljer

Kap 6.3: Symboltabellen Foiler ved Birger Møller-Pedersen Forelest av Stein Krogdahl 17. mars Dagens tema:

Kap 6.3: Symboltabellen Foiler ved Birger Møller-Pedersen Forelest av Stein Krogdahl 17. mars Dagens tema: Kap 6.3: Symboltabellen Foiler ved Birger Møller-Pedersen Forelest av Stein Krogdahl 17. mars 2015 Hvordan holde greie på: Dagens tema: Hvilke navn har en deklarasjon på «dette» sted i programmet? Hva

Detaljer

Dagens tema C, adresser og pekere

Dagens tema C, adresser og pekere Dagens tema C, adresser og pekere (Kapittel 17 i Patt&Patel-boken) Variable og adresser Pekervariable Parametre Dynamisk allokering Stakker og ringbuffere Ark 1 av 26 Adresser Som nevnt tidligere ligger

Detaljer

Dagens tema. Oppsummering om assemblerspråk. Programmering i C. Bakgrunn. Et minimalt eksempel med forklaring. Datatyper i C.

Dagens tema. Oppsummering om assemblerspråk. Programmering i C. Bakgrunn. Et minimalt eksempel med forklaring. Datatyper i C. Dagens tema Oppsummering om assemblerspråk Programmering i C (kapittel 11 og 12 i Patt&Patel-boken) Bakgrunn Et minimalt eksempel med forklaring Datatyper i C Operatorer i C Et eksempel til med forklaring

Detaljer

Løsningsforslag til eksamen i IN 211 høsten 2002

Løsningsforslag til eksamen i IN 211 høsten 2002 Løsningsforslag til eksamen i IN 211 høsten 2002 Ragnhild Kobro Runde og Gerhard Skagestein 4. desember 2002 Oppgave 1: Kjøresystemer 1a: Statisk skop Print-setningen vil skrive ut 2, da det i C er main

Detaljer

Velkommen til INF2100 Jeg er Dag Langmyhr

Velkommen til INF2100 Jeg er Dag Langmyhr Velkommen til Jeg er Dag Langmyhr (dag@ifi.uio.no). Bakgrunn for I INF1000 20 har dere lært å rammere, men bare små rammer (< 1000 linjer). Hensikten med er å gi mer rammeringstrening Dagens tema: Hva

Detaljer

Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo

Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Gaustadbekkdalen, januar 27 Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Innledning Dette notatet beskriver noe av det som foregår inne i primærlageret

Detaljer

Velkommen til INF1060. Introduksjon til operativsystemer og datakommunikasjon

Velkommen til INF1060. Introduksjon til operativsystemer og datakommunikasjon Velkommen til INF1060 Introduksjon til operativsystemer og datakommunikasjon 1 Forelesere Pål Halvorsen (paalh@ifi.uio.no) Nettverk og Distribuerte systemer (ND) (ved Simula) Tor Skeie (tskeie@ifi.uio.no)

Detaljer

Dagens tema INF1070. Signaturer. Typekonvertering. Pekere og vektorer. struct-er. Definisjon av nye typenavn. Lister

Dagens tema INF1070. Signaturer. Typekonvertering. Pekere og vektorer. struct-er. Definisjon av nye typenavn. Lister Dagens tema Signaturer Typekonvertering Pekere og vektorer struct-er Definisjon av nye typenavn Lister Dag Langmyhr,Ifi,UiO: Forelesning 24. januar 2005 Ark 1 av 20 Signaturer I C gjelder alle deklarasjoner

Detaljer

Fra Python til Java. En introduksjon til programmeringsspråkenes verden. Dag Langmyhr

Fra Python til Java. En introduksjon til programmeringsspråkenes verden. Dag Langmyhr Fra Python til Java En introduksjon til programmeringsspråkenes verden dag@ifi.uio.no Oversikt Introduksjon Python Java Noe er likt Noe bare ser anderledes ut Noe er helt forskjellig Et eksempel Klasser

Detaljer

Dagens tema INF1070. Vektorer (array er) Tekster (string er) Adresser og pekere. Dynamisk allokering

Dagens tema INF1070. Vektorer (array er) Tekster (string er) Adresser og pekere. Dynamisk allokering Dagens tema Vektorer (array er) Tekster (string er) Adresser og pekere Dynamisk allokering Dag Langmyhr,Ifi,UiO: Forelesning 23. januar 2006 Ark 1 av 23 Vektorer Alle programmeringsspråk har mulighet til

Detaljer

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert.

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert. Grunnkurs i objektorientert programmering Introduksjon til objektorientert programmering INF1000 Høst 2015 Siri Moe Jensen INF1000 - Høst 2015 uke 5 1 Siri Moe Jensen INF1000 - Høst 2015 uke 5 2 Kristen

Detaljer

IN 147 Program og maskinvare

IN 147 Program og maskinvare Dagens tema Basistyper i C Typekonvertering Formater i printf Pekere i C En kort repetisjon om pekere Hva er egentlig en peker? Pekere til alt og ingenting Pekere som parametre Pekere og vektorer Ark 1

Detaljer

IN 211 Programmeringsspråk. Java. på 20 enkle ark. spesielt for de som kan. Simula. (og gjerne litt C) Ark 1 av 20

IN 211 Programmeringsspråk. Java. på 20 enkle ark. spesielt for de som kan. Simula. (og gjerne litt C) Ark 1 av 20 Java på 20 enkle ark spesielt for de som kan Simula (og gjerne litt C) Ark 1 av 20 Forelesning 28.9.1998 Et minimalt eksempel Filen Hallo.java ser slik ut: class Hallo { public static void main(string

Detaljer

Forkurs INF1010. Dag 1. Andreas Færøvig Olsen Tuva Kristine Thoresen

Forkurs INF1010. Dag 1. Andreas Færøvig Olsen Tuva Kristine Thoresen Forkurs INF1010 Dag 1 Andreas Færøvig Olsen (andrefol@ifi.uio.no) Tuva Kristine Thoresen (tuvakt@ifi.uio.no) Institutt for Informatikk, 6. januar 2014 Forkurs INF1010 - dag 1 Hello, World! Typer Input/output

Detaljer

Velkommen til INF5110 Kompilatorteknikk

Velkommen til INF5110 Kompilatorteknikk Velkommen til INF5110 Kompilatorteknikk 15. januar 2013 Kursansvarlige: Stein Krogdahl [steink@ifi.uio.no] Ragnhild Kobro Runde [ragnhilk@ifi.uio.no] Henning Berg (oblig-ansvarlig) [hennb@ifi.uio.no] Kursområdet:

Detaljer

Variable Man kan bruke variable i ML. ML (kap 5 og 6) Nye datatyper INF3110/4110 INF3110/4110 INF3110/4110 INF3110/4110. Variable i ML.

Variable Man kan bruke variable i ML. ML (kap 5 og 6) Nye datatyper INF3110/4110 INF3110/4110 INF3110/4110 INF3110/4110. Variable i ML. ML (kap 5 og 6) Variable i ML Nye datatyper Currying Avanserte listeoperatorer Typeanalyse Variable Man kan bruke variable i ML - val = ref 1; val = ref 1 : int ref - := 3*(!)+5; val it = () : unit -!;

Detaljer

Diverse eksamensgaver

Diverse eksamensgaver Diverse eksamensgaver Noen har fått den idé å lage et språk hvor klasser kan ha noe tilsvarende byvalue-result -parametere. Klasser har ingen konstruktører, og by-value-result parametere spesifiseres som

Detaljer

Velkommen til INF2100

Velkommen til INF2100 Kursopplegg Velkommen til INF2100 Jeg er Dag Langmyhr (dag@ifi.uio.no). Dagens tema: Hva går kurset ut på? Bakgrunn for kurset Hvordan gjennomføres kurset? Hvordan får man det godkjent? Pause (med registrering

Detaljer

Programmeringsspråket C Del 3

Programmeringsspråket C Del 3 Programmeringsspråket C Del 3 Michael Welzl E-mail: michawe@ifi.uio.no 29.08.13 inf1060 1 Dynamisk allokering Ofte trenger man å opprette objekter under kjøringen i tillegg til variablene. Standardfunksjonen

Detaljer

INF Repetisjon: Hvordan bygge treet og analysere? 8. september Typisk situasjon. De problematiske syntaks-diagrammene

INF Repetisjon: Hvordan bygge treet og analysere? 8. september Typisk situasjon. De problematiske syntaks-diagrammene Dagens tema: INF 2100 8. september 2004 Mer om strukturen i treet og hvordan bygge det Testing av at navn er deklarert og brukt riktig Arbeid i gruppene neste uke: Oppgaver relevant for dette stadiet i

Detaljer

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme INF2810: Funksjonell Programmering En Scheme-evaluator i Scheme Erik Velldal Universitetet i Oslo 19. april 2016 Tema 2 Forrige uke Strømmer og utsatt evaluering Kort om makroer I dag Kap. 4 Metasirkulær

Detaljer

Forelesning inf Java 1

Forelesning inf Java 1 Forelesning inf1000 - Java 1 Tema: Javas historie Bestanddelene i et Java-program Programvariabler Ole Christian Lingjærde, 22. august 2013 Ole Chr. Lingjærde Institutt for informatikk 22. august 2013

Detaljer

Programmeringsspråket C Del 3

Programmeringsspråket C Del 3 Programmeringsspråket C Del 3 Kjell Åge Bringsrud E-mail: kjellb@ifi.uio.no Dynamisk allokering Ofte trenger man å opprette objekter under kjøringen i tillegg til variablene. Standardfunksjonen malloc

Detaljer

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java INF høsten 2 Uke 4: 3. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Mål for uke 4: Innhold uke 4 Repetisjon m/ utvidelser:

Detaljer

Programmeringsspråket C Del 2

Programmeringsspråket C Del 2 Programmeringsspråket C Del 2 Kjell Åge Bringsrud E-mail: kjellb@ifi.uio.no 30.08.2005 inf1060 H05 1 Et eksempel Dette er lite eksempel som ber om et tall, leser det og så teller fra det ned til 0. 30.08.2005

Detaljer

TDT Øvingsforelesning 1. Tuesday, August 28, 12

TDT Øvingsforelesning 1. Tuesday, August 28, 12 TDT 4165 Øvingsforelesning 1 Øvingsforelesningene Eksempelbaserte Sikter på å være på et snillere nivå enn øvingene og forelesningene Interaktive - spørsmål og dialog oppfordres Matnyttige- vil ta for

Detaljer

Om oppgaveteksten på noe punkt er uklar eller upresis, kan du gjøre egne presiseringer. Formulér i så fall disse tydelig i oppgavebesvarelsen din.

Om oppgaveteksten på noe punkt er uklar eller upresis, kan du gjøre egne presiseringer. Formulér i så fall disse tydelig i oppgavebesvarelsen din. UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i IN 211 Programmeringsspråk Eksamensdag: 6. desember 2001 Tid for eksamen: 9.00 15.00 Oppgavesettet er på 9 sider. Vedlegg: Ingen

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF2810 Eksamensdag: Fredag 5. juni 2015 Tid for eksamen: 14:30 (4 timer) Oppgavesettet er på 4 sider (ikke medregnet denne siden)

Detaljer

INF1000 : Forelesning 4

INF1000 : Forelesning 4 INF1000 : Forelesning 4 Kort repetisjon av doble (nestede) løkker Mer om 1D-arrayer Introduksjon til 2D-arrayer Metoder Ole Christian Lingjærde Biomedisinsk forskningsgruppe Institutt for informatikk Universitetet

Detaljer

Del 4 Noen spesielle C-elementer

Del 4 Noen spesielle C-elementer Del 4 Noen spesielle C-elementer 1 RR 2016 Header-filer inneholder Prototypene til funksjonene i standard biblioteket Verdier og definisjoner som disse funksjonene bruker #include #include

Detaljer

Dagens tema: Regulære språk og uttrykk

Dagens tema: Regulære språk og uttrykk IN 2 Programmeringsspråk Dagens tema: Regulære språk og uttrykk Ulike typer språk (Kompendium 47: 23) Hvorfor er regulære uttrykk så interessante? Ulike representasjoner av regulære språk (Kompendium 47:

Detaljer

Velkommen. Velkommen til INF2270. Datamaskinarkitektur. Motto: Datamaskinen på tvers

Velkommen. Velkommen til INF2270. Datamaskinarkitektur. Motto: Datamaskinen på tvers Velkommen Velkommen til INF2270 Datamaskinarkitektur Motto: Datamaskinen på tvers Forelesere Forelesere Omid Mirmotahari (omidmi@ifi.uio.no) fra Studielaben, men opprinnelig fra Nanoelektronikk. Dag Langmyhr

Detaljer

Obligatorisk Innlevering 2

Obligatorisk Innlevering 2 Obligatorisk Innlevering 2 INF5110 - Kompilatorteknikk Våren 2017 Frist 07.05.2017 23:59 Dette er den andre av to oppgaver våren 2017. Den bygger videre på det som er gjort i den første innleveringen.

Detaljer

i=0 i=1 Repetisjon: nesting av løkker INF1000 : Forelesning 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker j=0 j=1 j=2 j=3 j=4

i=0 i=1 Repetisjon: nesting av løkker INF1000 : Forelesning 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker j=0 j=1 j=2 j=3 j=4 Repetisjon: nesting av løkker Kort repetisjon av doble (nestede) løkker Mer om D-arrayer Introduksjon til D-arrayer Metoder Ole Christian Lingjærde Biomedisinsk forskningsgruppe Institutt for informatikk

Detaljer

Bakgrunnen for INF2100. Velkommen til INF2100. Prosjektet. Hva gjør en kompilator?

Bakgrunnen for INF2100. Velkommen til INF2100. Prosjektet. Hva gjør en kompilator? Kursopplegg Velkommen til INF2100 Bakgrunnen Bakgrunnen for INF2100 Jeg er Dag Langmyhr (dag@ifi.uio.no). Dagens tema: Hva går kurset ut på? Bakgrunn for kurset Hvordan gjennomføres kurset? Hvordan får

Detaljer

Dagens tema: INF2100. Syntaksanalyse. Hva annet gjør en kompilator? Sjekking av navnebruk. Testutskrifter

Dagens tema: INF2100. Syntaksanalyse. Hva annet gjør en kompilator? Sjekking av navnebruk. Testutskrifter Dagens tema: Syntaksanalyse Hva annet gjør en kompilator? Sjekking av navnebruk Testutskrifter Dag Langmyhr,Ifi,UiO: Forelesning 4. oktober 2005 Ark 1 av 20 Syntaksanalyse På skolen hadde vi grammatikkanalyse:

Detaljer

Datatyper og typesjekking

Datatyper og typesjekking Datatyper og typesjekking Om typer generelt Hva er typer? Statisk og dynamisk typing Hvordan beskrive typer syntaktisk? Hvordan lagre dem i kompilatoren? Gjennomgang av noen typer Grunntyper Type-konstruktører

Detaljer

Hva er syntaks? En overskrift i en norsk avis: Dagens tema Grundig repetisjon og utdyping:

Hva er syntaks? En overskrift i en norsk avis: Dagens tema Grundig repetisjon og utdyping: Hva er syntaks? En overskrift i en norsk avis: Fanger krabber så lenge de orker Dagens tema Grundig repetisjon og utdyping: Er det i C lov å skrive for (;;) { while () { Syntaks kontra semantikk for å

Detaljer

2012 2a. C rc; void main() { rc = new C (); rc.m2(); } } INF 3110/ INF /28/13 1

2012 2a. C rc; void main() { rc = new C (); rc.m2(); } } INF 3110/ INF /28/13 1 2012 2a Vi tenker oss i denne oppgaven at vi har et Java-lignende språk hvor metoder kan ha lokalt definerte metoder. Dessuten kan man deklarere variable og metoder også på ytterste programnivå. Dette

Detaljer

Datatyper og typesjekking

Datatyper og typesjekking Datatyper og typesjekking Om typer generelt Hva er typer? Statisk og dynamisk typing Hvordan beskrive typer syntaktisk? Hvordan lagre dem i kompilatoren? Gjennomgang av noen typer Grunntyper Type-konstruktører

Detaljer

IN 147 Program og maskinvare. Dagens tema

IN 147 Program og maskinvare. Dagens tema Dagens tema Kort repetisjon Unioner Cs preprosessor Allokering av variable Separat kompilering Programmet make Datastrukturer Matriser Dynamiske matriser Ringbuffere Oblig2 Obligatorisk oppgave nr. 2 slippes

Detaljer

Hva er kompilering? Dagens tema. En kompilator En kompilator leser Minila koden og lager Flok koden.

Hva er kompilering? Dagens tema. En kompilator En kompilator leser Minila koden og lager Flok koden. Dagens tema Dagens tema Kildekode Hva er kompilering? Anta at vi lager dette lille programmet (kalt kildekoden): Hva er kompilering? Hvordan analysere et program? Hvordan programmere dette i Java? Hvordan

Detaljer

Signaturer. Dagens tema. En vanlig feil int-funksjon. Dette kan noen ganger gi rare feilmeldinger: INF1070 INF1070 INF1070 INF1070

Signaturer. Dagens tema. En vanlig feil int-funksjon. Dette kan noen ganger gi rare feilmeldinger: INF1070 INF1070 INF1070 INF1070 Dagens tema Signaturer Tyekonvertering Pekere og vektorer struct-er Definisjon av nye tyenavn Lister Dag Langmyhr,Ifi,UiO: Forelesning 24. januar 25 Ark 1 av 2 Dag Langmyhr,Ifi,UiO: Forelesning 24. januar

Detaljer

Anatomien til en kompilator - I

Anatomien til en kompilator - I Anatomien til en kompilator - I program Symboltabell tekst tokens syntaks-tre beriket syntaks-tre Finne struktur i programmet OK i henhold til grammatikk? Preprocessor Makroer Betinget kompilering Filer

Detaljer

Velkommen til MAT1030!

Velkommen til MAT1030! MAT1030 Diskret Matematikk Forelesning 1: Algoritmer, pseudokoder, kontrollstrukturer Roger Antonsen Institutt for informatikk, Universitetet i Oslo Velkommen til MAT1030! 13. januar 2009 (Sist oppdatert:

Detaljer

MAT1030 Diskret Matematikk

MAT1030 Diskret Matematikk MAT1030 Diskret Matematikk Forelesning 1: Algoritmer, pseudokoder, kontrollstrukturer Roger Antonsen Institutt for informatikk, Universitetet i Oslo 13. januar 2009 (Sist oppdatert: 2009-01-14 16:44) Velkommen

Detaljer

Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2)

Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2) Dagens tema Syntaks (kapittel 2.1 + Komp. 47, kap. 1 og 2) 1/19 Forelesning 6 1.10.2003 Litt om kompilering og interpretering En kompilator oversetter et program til et annet språk, for eksempel maskinspråk.

Detaljer

Dagens tema Grundig repetisjon og utdyping: Syntaks kontra semantikk

Dagens tema Grundig repetisjon og utdyping: Syntaks kontra semantikk Dagens tema Grundig repetisjon og utdyping: Syntaks kontra semantikk Regulære uttrykk og automataer Ulike typer språk Ulike representasjoner av regulære språk Endelige tilstandsmaskiner (FSM-er) Deterministiske

Detaljer

Velkommen til INF Kompilatorteknikk

Velkommen til INF Kompilatorteknikk Velkommen til INF5110 - Kompilatorteknikk Kursansvarlige: Stein Krogdahl [steink@ifi.uio.no] Birger Møller-Pedersen [birger@ifi.uio.no] Eivind Gard Lund (hjelpelærer) [eivindgl@student.matnat.uio.no] Kursområdet:

Detaljer

Litt om kompilering og interpretering. Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2) Syntaks og semantikk

Litt om kompilering og interpretering. Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2) Syntaks og semantikk Litt om kompilering og interpretering Dagens tema Syntaks (kapittel 2. + Komp. 47, kap. og 2) En kompilator oversetter et program til et annet språk, for eksempel maskinspråk. Et program interpreteres

Detaljer

MAT-INF 1100: Obligatorisk oppgave 1

MAT-INF 1100: Obligatorisk oppgave 1 8. september, 2005 MAT-INF 1100: Obligatorisk oppgave 1 Innleveringsfrist: 23/9-2005, kl. 14:30 Informasjon Den skriftlige besvarelsen skal leveres på ekspedisjonskontoret i 7. etg. i Niels Henrik Abels

Detaljer

Feilmeldinger, brukerinput og kontrollflyt

Feilmeldinger, brukerinput og kontrollflyt Feilmeldinger, brukerinput og kontrollflyt Skjønne hvordan et program presist utføres og forberede seg på håndtering av feil INF1000, uke2 Ragnhild Kobro Runde Programmeringskrøll Programmet vil ikke kjøre

Detaljer

Kjøresystemer. Hva er et kjøresystem? Den abstrakte maskinen SIMPLESEM (2.6) Klassifisering av språk: Parametre (2.7.7) Statiske språk (

Kjøresystemer. Hva er et kjøresystem? Den abstrakte maskinen SIMPLESEM (2.6) Klassifisering av språk: Parametre (2.7.7) Statiske språk ( Kjøresystemer Hva er et kjøresystem? Den abstrakte maskinen SIMPLESEM (2.6) Klassifisering av språk: Statiske språk (2.7.1-2.7.2) FORTRAN, COBOL Stakk-baserte språk (2.7.3-2.7.4) ALGOL 60 Dynamiske språk

Detaljer