Personal tools

Talk:IO Semantics

From HaskellWiki

(Difference between revisions)
Jump to: navigation, search
 
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
I don't understand in what sense this IO definition is a "semantics". [[User:Conal|Conal]] 04:49, 12 December 2008 (UTC)
 
I don't understand in what sense this IO definition is a "semantics". [[User:Conal|Conal]] 04:49, 12 December 2008 (UTC)
  +
  +
It provides a concrete definition of IO that can be compared for equality to know if two IO programs are equivalent or not. --[[User:Roconnor|Roconnor]] 03:54, 3 December 2009 (UTC)
  +
  +
Maybe so. Thanks. For a semantics, I think I'd want a lot more equalities than the representation by itself provides, especially involving <hask>SysCallName</hask>.
  +
  +
Also (raising a new question), I don't see this semantic model at all addressing concurrency, which is a huge semantic complicator for imperative computation. [[User:Conal|Conal]] 08:13, 3 December 2009 (UTC)
  +
  +
You are correct that it doesn't. IOTree is essentailly a representation of (uniformly) continuous functions between streams of digits (aka 2^N --> 2^N) (see Peter Hancock's "eating"). I recall Bas Spitters suggesting that making this even more higher order in some way that I forget could be used to capture concurrency, but I never understood the details and haven't thought about it for a few years. I should look at my email archives.
  +
--[[User:Roconnor|Roconnor]] 04:18, 19 February 2010 (UTC)

Latest revision as of 04:22, 19 February 2010

I don't understand in what sense this IO definition is a "semantics". Conal 04:49, 12 December 2008 (UTC)

It provides a concrete definition of IO that can be compared for equality to know if two IO programs are equivalent or not. --Roconnor 03:54, 3 December 2009 (UTC)

Maybe so. Thanks. For a semantics, I think I'd want a lot more equalities than the representation by itself provides, especially involving
SysCallName
.

Also (raising a new question), I don't see this semantic model at all addressing concurrency, which is a huge semantic complicator for imperative computation. Conal 08:13, 3 December 2009 (UTC)

You are correct that it doesn't. IOTree is essentailly a representation of (uniformly) continuous functions between streams of digits (aka 2^N --> 2^N) (see Peter Hancock's "eating"). I recall Bas Spitters suggesting that making this even more higher order in some way that I forget could be used to capture concurrency, but I never understood the details and haven't thought about it for a few years. I should look at my email archives. --Roconnor 04:18, 19 February 2010 (UTC)