TIES542 Tapaaminen 4

Strachey (lukuun 3.3 asti)

Keskeiset käsitteet (minun suomennokseni sulkeissa, pääsääntöisesti ei ole vakiintuneita suomennoksia):

  • lvalue, rvalue (vasen/oikea arvo)
  • idealized/abstract store (pelkistetty/abstrakti muisti)
  • expression, command (vakiintuneesti lauseke ja käsky)
    • jälkimmäisen asemesta nykyään yleensä statement (vakiintuneesti lause)
  • referential transparency (viittausten läpinäkyvyys)
  • environment (ympäristö)
  • bound/free variable (vakiintuneesti sidottu/vapaa muuttuja)
  • applicative structure (kutsurakenne)
  • evaluate vs apply (laske vs kutsu)
  • "device originated by Schönfinkel" (s. 21)
    • yleisemmin kutsutaan termillä currying (ei suomennosta)
  • "commands can be considered as functions wchich transform \(\sigma\)" (s. 24)

Ryhmätehtävä:

  • ymmärrätkö nämä kaikki käsitteet?
  • mitkä asiat Stracheyn jutusta vaativat tarkempaa käsittelyä yhdessä?
  • onko Stracheyn jutussa jotain, josta olet eri vahvasti mieltä?
  • onko Stracheyn ajatuksilla relevanssia nykyaikana?

Tennent (lukuun 3 asti) ja "Denotational semantics of for the calculator language"

Ryhmätehtävä:

  • Mikä on Tennentin käsitys applicative ja imperative -kielijaottelusta?
  • Miten LOOPin to ... do-lause toimii?
  • Osaatteko laskea Tennentin luvussa 2 esittämien määritelmien avulla LOOP-ohjelman read x; x := succ x; write succc x; merkityksen?
  • Osaatteko laskea Kaijanahon monisteen määritelmien avulla lausekkeen let x = 2 in x * x arvon?

Strachey epäselvät

  • "commands can be considered as functions wchich transform \(\sigma\)"
    • lvalue maps rvalue?
  • idealized/abstract store (pelkistetty/abstrakti muisti)
  • evaluate vs apply (laske vs kutsu)

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.