Go Programming & LLVM/Clang

I am learning to program with the Go language.

I have been following things and I am banking on FreeBSD being a more common OS around the world by V10.0 even on ARM!

Most everything I have on my slate is geared towards future FreeBSD. They are gearing to run LLVM/Clang as soon as possible.

I am interested in what one of you who know what’s up, would suggest to a guy learning programming with intentions of using llvm over their standard gcc in Go. Is this nuts? Or should I learn it orthodox style and hack it later?

I want to build a clock of my own invention, as my first project. Its the way I am going to do “time” itself will kinda throw me away from “normal” anyway; so I am kinda hoping a thumbs up for starting off unorthodox is the reply.

Thank you for your time.

Hi Georg,

I am learning to program with the Go language.

...

I am interested in what one of you who know what's up, would suggest to a guy
learning programming with intentions of using llvm over their standard gcc in
Go. Is this nuts? Or should I learn it orthodox style and hack it later?

The usual LLVM front-end, clang, doesn't support Go. The dragonegg plugin will
let you produce LLVM IR from Go, but only because it modifies gcc to use LLVM
for optimization and code generation: it is still the gcc Go front-end. Also,
dragonegg is not that stable when used with Go (though it mostly works). If I
were you I would stick with gcc for now.

Ciao, Duncan.

You can try to use DragonEgg (LLVM plugin for GCC).

Unless you're in one of the situations where gcc performs better and you actually really care about performance, I'd recommend using 6g instead of gcc for Go. It's easier to set up and use, smaller, and is the reference implementation. It's in FreeBSD ports as lang/go.

David