This is a discussion on Re: [9fans] [9fans ] What's the best access method to Plan9 from Linux - Plan9 ; > That makes me think that if there was a C to dis compiler, a full > plan9 fs (with its /dis/bin, /dis/lib) could be used from inferno. > Probably, as usual, many people know the reasons of not having ...
> That makes me think that if there was a C to dis compiler, a full
> plan9 fs (with its /dis/bin, /dis/lib) could be used from inferno.
> Probably, as usual, many people know the reasons of not having such a
> compiler. I don't.
That's really two questions:
1) Why no C to dis? There are a lot of reasons why C is
not a good fit to dis or to Inferno, for that matter,
not the least of which is C's ability to take the address
of an arbitrary object (not in the OO sense, but saying
thing all the time gets old). Between that and the ability
to cast between integers and pointers, it's pretty much
impossible to do all your memory management with reference
counts and garbage collection, and Inferno doesn't have
a system call for arbitrary memory allocation. There is,
however, a C to Limbo translator. It doesn't do a complete
translation, but it takes care of a fair amount of the
tedious stuff and leaves you with some Limbo you can then
2) I'm not quite sure what you mean by a full plan9 fs.
Do you mean like kfs or fossil/venti? If so, then Inferno
does have its own version of kfs. It can exist in another
file or on a disk partition quite happily. It doesn't
do write buffering at the moment, so it can be a little
slow, especially during an install, but it does seem to
work pretty well. In fact, if you're sufficiently bored
and a danger seeker, you can try my ISO image for a native
install. It's a bootable CD image that will do an install
onto a disk and leave you with a system that will boot
straight into Inferno. Be forewarned, there are a number
of limitations to the installation scripts that I haven't
had time to work on. But if you want to give it a try,
check out http://umdrive.memphis.edu/blstuart/..._nat_inst.html