Discussion:
[9fans] all you yacc experts
(too old to reply)
erik quanstrom
2011-11-11 16:09:47 UTC
Permalink
Go is pretty solid on 386 and I'm slowly puzzling my way through NIX support.
One thing that stands in the way of full native build is the bison issue.
If somebody wants to look at enhancing yacc so that the extra bison
bits can be supported, that would probably do the trick. I have no
idea of the level of effort, I have not looked.
We could run bison under linuxemu; I don't think this approach is as
good because it still leaves us a bit dependent on some outside force
for bison binaries. But that might be a good stopgap.
I'm looking forward to Go 1 because I'm pretty sure that most of what
we've had to do for this version of Go will go away :-)
I'm still amused that the best way to write portable C is to just ship
a reasonable C compiler with Go and use gcc to build that C compiler,
and then compile your portable C with it :-)
at one time the go .y wasn't bison dependent. is the new dependency
a choice or requirement?

- erik
Lucio De Re
2011-11-11 17:27:53 UTC
Permalink
Post by erik quanstrom
at one time the go .y wasn't bison dependent. is the new dependency
a choice or requirement?
It makes it possible to produce clever error messages, but it depends
on a bison extension. I agree with Russ that it is worth it, but it
does throw a massive spanner in the works.

++L
ron minnich
2011-11-11 17:25:47 UTC
Permalink
i'm well aware we can tweak go and remove better error messages. that
doesn't count IMHO. We're working to get to the point where we don't
tweak the go source at all and it just builds. I don't see the point
in making a go for Plan 9 that is in some way compromised. So, getting
back to my original comment, if somebody wants to dig into this it
would be helpful.

ron
Lucio De Re
2011-11-11 18:00:49 UTC
Permalink
Post by ron minnich
i'm well aware we can tweak go and remove better error messages. that
doesn't count IMHO. We're working to get to the point where we don't
tweak the go source at all and it just builds. I don't see the point
in making a go for Plan 9 that is in some way compromised. So, getting
back to my original comment, if somebody wants to dig into this it
would be helpful.
Ron, I'm with you on that.

I'll be looking at bison before long. Right now, I'm still trying to
catch up with your efforts, unfortunately on a parallel track rather
than in the same lane as you.

There are a few changes I want to submit to the Go Authors in the next
couple of days, then I'm going to compare my efforts with what you and
Andrey have been doing, try to find the middle ground that will save
everybody unnecessary pain. Bison/yacc is just not urgent enough and
I have a suspicion that there are better qualified programmers out
there. But if no one beats me to it, I'm prepared to get the work
done.

++L

PS: I'm a libmach build away from posting a mkfs archive to sources.
Probably sometime in the morning.

Continue reading on narkive:
Loading...