And my own answer is "no". Otherwise, dodgy would have value true, false, or bottom, rather than the value true-or-false-depending-on-the-machine.
Oh! I think there's a misunderstanding here. I'm not talking about MachineInfo as visible in the types. I'm talking about Int itself having a MachineInfo-dependent semantic model (something like MachineInfo -> Z, where MachineInfo, ->, and Z are *semantic* types, not Haskell types).
Making my question more specific: Can (>) on Int be given a compositional semantics, i.e. a semantics as [[Int]] -> [[Int]] -> [[Bool]], where [[Int]] = MachineInfo -> Z and [[Bool]] = {bottom,false,true} (with the usual ordering)?
- ConalOn Mon, Mar 23, 2009 at 9:34 AM, Jake McArthur <jake@pikewerks.com> wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Conal Elliott wrote:| The question I'm asking is this: Assuming compositional semantics, canAs I understand it, your question might be reworded like this: If we can
| [[Bool]] be this simple & customary three-value domain in the presence
| of an implementation-dependent [[Int]] (given that Int expressions can
| play a non-trivial role in Bool expressions)?
compose values of type (MachineInfo -> Int) to create a value of type
(MachineInfo -> Bool), does that mean Bool is dependent on MachineInfo?
To simplify the question, I would like to rephrase it further to ask
whether the ability to construct any value of type (MachineInfo -> Bool)
means that Bool is dependent on MachineInfo. My (uneducated) reaction is
that this does not mean that Bool is dependent on MachineInfo any more
than the ability to construct a value of type (forall a. a -> Bool)
means that Bool is dependent on everything.
- - JakeiEYEARECAAYFAknHufsACgkQye5hVyvIUKnahACgq6JZLcSePAJ4RLylPyz3X2DC
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
NwMAoLQilWKYfUf12BJhUle52bP/zM2J
=NN7V
-----END PGP SIGNATURE-----