Things stopping pure Haskell code from having a cross-platform single semantics?

Conal Elliott conal at conal.net
Tue Nov 12 00:35:48 UTC 2013


For a few more such leaks, see
http://hackage.haskell.org/package/base-4.6.0.1/docs/System-Info.html , as
mentioned in http://conal.net/blog/posts/notions-of-purity-in-haskell .  --
Conal


On Mon, Nov 11, 2013 at 7:01 AM, Ryan Newton <rrnewton at gmail.com> wrote:

> Haskell isn't like Java byte code in having a single semantics for a
> program irrespective of where it is run.  In particular, "Int" has a
> platform-defined width -- so the same (pure) code can yield different
> answers on different machines.
>
> numCapabilities was also a "leak" of platform information, which did not
> require IO. But, happily, now it does not appear in the [Trustworthy]
> module, Control.Concurrent.
>
> Ok, what else?  What other holes are there that allow my pure functions to
> change their answer on different machines?  I'm making a list of these in a
> paper and I want to make sure I give a full account.
>
> Thanks,
>   -Ryan
>
>
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://www.haskell.org/mailman/listinfo/ghc-devs
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20131111/c3ab51c9/attachment.html>


More information about the ghc-devs mailing list