(toiminnot)

hwechtla-tl: Muutosalgebra: viime muutokset

(kesken)

!!! Milloin kahdella muutoksella on sama merkitys?

Alla on neljä muokkausta: A, B, C ja D. Mitkä niistä ovat keskenään merkitykseltään samoja? Kaikki lisäävät rivin "print(foo)" melko samanlaisiin konteksteihin.

Muokkaus A: {{{ alkuperäinen lopputulos

def hajota(foo): def hajota(foo): return foo.split() print(foo) return foo.split() }}}

Muokkaus B: {{{ alkuperäinen lopputulos

def uusi(x): def uusi(x): return x * x * 3 return x * x * 3

def hajota(foo): def hajota(foo): return foo.split() print(foo) return foo.split() }}}

Muokkaus C: {{{ alkuperäinen lopputulos

def hajota(foo): def hajota(foo): foo += '\n' foo += '\n' return foo.split() print(foo) return foo.split() }}}

Muokkaus D: {{{ alkuperäinen lopputulos

return foo.split() print(foo) return foo.split() }}}

Ehdotus: * kaksi muokkausta ovat ''syntaktisesti samanmerkityksiset'', mikäli ne muokkaavat samaa asiaa tai samoja asioita (esim. riviä, funktiota, sanaa, kappaletta tai hunkia) ja molemmat vievät sen samasta tilasta X samaan tilaan Y. * kaksi muokkausta ovat ''semanttisesti samanmerkityksiset'', mikäli niiden "havaittavissa olevat vaikutukset" ovat samat. (Eli suunnilleen: jos niillä olisi sama commit-viesti.)

Jälkemmäinen määritelmä toimii myös toisin päin: jos kaksi eri konteksteissa olevaa muutosta ovat sellaiset, että ihminen, jolla on tietty päämäärä, tekisi yhdessä kontekstissa toisen näistä muutoksista ja toisessa toisen näistä muutoksista, niin niillä on semanttisesti sama merkitys.

[kategoria: keskeneräiset] [kategoria: filosofia]


(viimeksi muutettu 08.01.2014 14:51)