Hello everyone!
For the past few weeks, I've been keeping busy trying to bring Go
language[1] to HelenOS.
Today I'm pleased to announce that I'm now able to run less-demanding
applications.
If you don't know the language, by all means have a look at the
website and maybe you'll find it as delightful as I do.
The compilation uses gccgo, which is part of GCC since 4.7.1 (I think).
Runtime library is the gcc's libgo modified to work on HelenOS.
If you want to try it out, I've set up three branches:
Additions to libposix that have made this initial hacking a little
more straightforward:
https://code.launchpad.net/~zarevucky-jiri/helenos/stdc
libgo runtime library + toolchain changes, without the libposix changes:
https://code.launchpad.net/~zarevucky-jiri/helenos/golang
Finally, I've set up a third branch that contains both the first two
and some demos.
https://code.launchpad.net/~zarevucky-jiri/helenos/goposix
The reason for this separation is that I intend to port libgo to
native HelenOS API, so that libposix is not necessary.
There are several issues, most of which will go away after a few more
complex changes I'm planning for the runtime library. Most visibly,
some of the demos crash, because the goroutines (Go's variety of
fibrils) do not work exactly as intended.
To try out the demos, build goposix branch (you will have to rebuild
the toolchain, to build Go frontend), and run program "godemo".
The demos that are present are (almost) verbatim copies from the box
"Try Go" you can find on the language's website.
If you encounter any problems, have any questions, or if I forgot to
say something important, ask away.
[1] http://golang.org
-- Jirka Z.
_______________________________________________
HelenOS-devel mailing list
[email protected]
http://lists.modry.cz/cgi-bin/listinfo/helenos-devel