vendor directories are no longer optional, which is nice. Go get now update submodules... I'm honestly not sure what the current hack is for package management, but I assume people are still doing wrappers around go get to pin to commits/versions, (or else building your own repos for funsies), and I'm wondering if that breaks anything.
To be clear, vendor directories are still optional to use, you just don't have to enable them by default. We use a unirepo for all of our Go work, and being forced to use the vendor directory would be a massive headache.
Go 1.7 is released
121–130 of 141 posts
Re: Go 1.7 is released
#122The semantics of Go is too ugly. It has no taste.
The semantics of Go are fine for the most part. My only problem with Go is manipulating slices. The rest is just awesome and it requires a lot of taste to simplify semantics without taking away the languages power.
Re: Go 1.7 is released
#123Earlier quoted context omitted.
I suggest giving Ruby a try too. I find it great for both web dev and local automation scripts. You can do pretty much anything you can do in bash but with clearer and shorter code. I've been writing all my non-trivial automation code in Ruby for years. Rails is just a popular web framework for Ruby, there's a lot more the language can do.
I'd second this. Rails is still probably the fastest way to get an MVP off the ground, and most of the time it's more than fast enough. You can get UX on par with a well done SPA almost entirely using server code with Turbolinks 5 + Action Cable, too.
I've spent way too much of my life trying to optimize Ruby performance and memory usage, switching from one web server to the next, then fixing threading issues in dependencies, and so on. It's not fun. All that upfront productivity is lost in the end.
Quite happy to spend more time upfront investing in a reliable end-product.
Re: Go 1.7 is released
#124Earlier quoted context omitted.
Not really, https://www.techempower.com/benchmarks/
I wasn't making a statement about performance. That has very little to do with most web development.
For one example, check this comparison: https://dockyard.com/blog/2016/08/09/phoenix-channels-vs-rai...
Re: Go 1.7 is released
#125Earlier quoted context omitted.
It was more expedient to start with the Plan 9 tool chain that we had at the time. Ken was already familiar with the code base, which was small and compiled quickly (a few seconds). Because of this we got a lot done quickly, knowing that we would eventually modernize the compiler.
How much is Ken involved in the language today?
https://www.reddit.com/r/golang/comments/46bd5h/ama_we_are_t...
Re: Go 1.7 is released
#126Earlier quoted context omitted.
To be clear, vendor directories are still optional to use, you just don't have to enable them by default. We use a unirepo for all of our Go work, and being forced to use the vendor directory would be a massive headache.
My understanding is that there is no longer an option to disable them as a feature as there was in 1.6, though of course you don't have to use them.
Re: Go 1.7 is released
#127Great work, I am looking forward to recompiling my code to see how things are. I have had my side project running on a set of Go micro services compiled against 1.4 since last year. What can we expect from Go 1.8?
https://groups.google.com/forum/#!topic/golang-dev/098vr4999...
Re: Go 1.7 is released
#128Re: Go 1.7 is released
#129Earlier quoted context omitted.
You can stay in SSA form even after register allocation. In libFirm the assigned registers are just attributes of the values in the SSA representation. There was some additional discussion regarding this in [1]. GCC uses a separate representation (RTL) for their backend that is not in SSA form [2]. LLVM stays in SSA form for some backend phases but lowers the SSA form before register allocation (as also mentioned in…
I think you didn't understand Chris' post. C2 is the HotSpot Server compiler. It definitely does not use LLVM anywhere.
Can you provide a link to the source code?
Re: Go 1.7 is released
#130Earlier quoted context omitted.
It's annoying to have to install the ruby interpreter onto everything. Go feels a lot like a scripting language, but produces binaries.
Then Python is a good alternative, it's basically already installed everywhere.
1: https://www.techempower.com/benchmarks/#section=data-r12&hw=...
2: https://benchmarksgame.alioth.debian.org/u64q/compare.php?la...