From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <11281d4ca3c8fa33d77e926c1dea5bc8@proxima.alt.za> To: 9fans@9fans.net From: Lucio De Re Date: Tue, 2 Aug 2011 15:39:24 +0200 In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Subject: Re: [9fans] Status of port of Go to Plan 9 Topicbox-Message-UUID: 0ad90abe-ead7-11e9-9d60-3106f5b1d025 >> goos.c is meant to be in src/lib9, I need to start up my laptop to >> check that in fact it is a module I added specially for Plan 9. > > Lucio, what is the difference between your purpose and the one > I installed (plan9fron?). By your attention, I found Russ's repository > of 'go for plan9', and the one I have installed is not shown there. > I started with the objective of porting the improved development toolchain (8a, 8c, 8l) to Plan 9 so that I could use Plan 9 as my development platform of choice. Consider that the Go toolchain includes 6a, 6c and 6l for the x64 as well as tools for the arm, all there for the picking. Also, the target platforms are interesting and increasingly so: various Posix-like OSes, including Darwin, Windows and Native Client (NaCl). That was my original attraction, not least ELF output format, which I have shoehorned into an odish version of the Plan 9 kernel but was unable to test (who knows what good that might do!). I discovered that the Go release is quite a moving target and chose to feed back to the Go Authors as many of the changes to the Go release sources as they were willing to accept. We have made considerable progress as a result and both sides have hopefully benefitted from my efforts, which are continuing as we speak. The difference from the plan9front release of Go is that the latter is, as far as I understand, a one-off effort which will become more and more difficult to maintain over time. I have been there myself, although I have not been as successful; worse, it was hard for me to go forward after a pause of a few months, I do not envy the next person to follow that path. Please treat the above as opinion, I have not had the opportunity to investigate the plan9front port of Go and I am basing my opinions on what I have heard from others. > According to your mail, you are going to submit your efforts to > golang community, where Russ is one of the big members. > Russ also has been contributed Plan 9 community for a long time. > Then, I suppose anyone will send their patch to Russ... > Many don't know his repository on google? > Russ has been an extremely helpful reviewer of the stuff I have submitted to the Go Authors, he and I have successfully negotiated a number of differences of opinion and my efforts in future ought to be easier because of his assistance. Any stumbles at this stage are entirely of my own making. > I'm not a suitable person to develope language, I'll be a user of it. > However, the sceen I'm now experiencing looks like strange to me. > > Any considerations? > > Kenji The end product I envisage is a convergence of the Go release with its Plan 9 port, ideally by including all necessary elements in the Go distribution. But we're a long way from there, the current Go distribution is heavily oriented towards compiling using GCC which means that providing a parallel build using tools that are very closely related to the very tools that are being generated, is an ambitious objective. At this point this is also to some extent in conflict with the present approach. Nevermind that bash is also used extensively in the build, which creates another significant barrier between the two environments. So you'll need to forgive me if my approach is slow and seemingly unfruitful, the distant objectives are more important to me than immediate gratification. In my defence, progress is being made and there is room for contribution. The use of Code Review as set up specifically for purposes such as this is the key to my approach and others are welcome to participate. Note that I'm not a language developer either. Programming languages are a facet of my interest in Computer Science, but in this case my efforts are almost mechanical, a port to Plan 9 without much effort towards enhancing the code under consideration. This is one of the agreed compromises between me and Russ, he convinced me that changes to the code base at this point ought to be kept to a minimum. Eventually, I intend to break out of that jail, but right now I believe that Russ' approach is best for both parties. In passing, will you please post the URL for "his repository on google" you mention above? I may be one of those many who do not know about it (unless of course you're speaking of the official Mercurial repository). Feel free to ask for any additional explanations. ++L