
Hi,
Now seems as fine a time as any. It is certainly better than a few days ago when it was broken ;-) As far as I know, it is now completely compatible with the C runtime.
Do you want to take on that job, or shall I? I guess we have no choice but to loose the history in your repo?
I was also thinking of moving the binary interface bits of Bytecode into either Yhc.Binary or Yhc.General (not sure yet), so that Yhc.Core can share the binary low level layer from Yhc.ByteCode - currently it uses something a bit hacky. What are your thoughts on this?
That seems fine to me. That stuff is tricky to get right, and it's better to have it in one place.
Indeed, for Float's I just use outString (show x) - so having something proper would be good!
One caveat, though. Right now, I'm doing a bunch of truly ugly hacks (such as assuming that Char is basically a Word8) because Yhc didn't have support for Data.Bits, Data.Int and Data.Word when I started the project (self-hosting concerns). If Yhc had those libraries, we could get rid of that crap and do it the right way.
Do you actually have Yhc.ByteCode compiling with Yhc? If its only a future self-hosting concern I'd just say use Data.Int now, and when we need to self-host we'll make sure we add it. If its an active issue, I'll talk to Tom and see what we can do. Thanks Neil