Re: Marshalling functions was: Transmitting Haskell values

2003-10-29 Thread C.Reinke
> >> Is [marshaling functions] something absolutely impossible in > >> Haskell and by what reason? Just because of strong typing (forgive > >> my stupidity ;)? Or are there some deeper theoretical limitations? If you're interested in some recent work here, have a look at Clean (similar enough to

Re: Marshalling functions was: Transmitting Haskell values

2003-10-29 Thread Joachim Durchholz
Alastair Reid wrote: Is [marshaling functions] something absolutely impossible in Haskell and by what reason? Just because of strong typing (forgive my stupidity ;)? Or are there some deeper theoretical limitations? The big theoretical issue is whether it would provide an Eq or Show instance for

Re: Marshalling functions was: Transmitting Haskell values

2003-10-29 Thread Alastair Reid
> Is [marshaling functions] something absolutely impossible in > Haskell and by what reason? Just because of strong typing (forgive my > stupidity ;)? Or are there some deeper theoretical limitations? The big theoretical issue is whether it would provide an Eq or Show instance for -> by the backd

Re: Marshalling functions was: Transmitting Haskell values

2003-10-28 Thread Joachim Durchholz
Dimitry Golubovsky wrote: Well, marshalling functions (or storing-restoring some internal forms of them) might be especially nice... This would mean I can declare and compile a function on my side of a network connection (for example), and then send it to the other end for evaluation, and then get

Re: Marshalling functions was: Transmitting Haskell values

2003-10-28 Thread Hal Daume III
No, it's possible -- it's done under the hood in GPH (parallel Haskell); it just doesn't exist in normal GHC... On Tue, 28 Oct 2003, Dimitry Golubovsky wrote: > Hi, > > Hal Daume III wrote: > >>Hmm... I can write out functions using the "Show (a -> b)" instance, but > >>there's no matching "Rea

Marshalling functions was: Transmitting Haskell values

2003-10-28 Thread Dimitry Golubovsky
Hi, Hal Daume III wrote: Hmm... I can write out functions using the "Show (a -> b)" instance, but there's no matching "Read (a -> b)". Show (a -> b) is a bogus instances -- you won't actually be able to use it for marshalling functions. Well, marshalling functions (or storing-restoring some int