Earlier quoted context omitted.
The particular combination of things is, some library includes some method signatures that accept and return a specific struct (not a specific interface). Then, also, there is no exported way to make one of that struct, or to set its fields. Now you cannot write a library that wraps the original library and exposes the same API (unless you use unsafe and reflection). In the OO languages I have encountered there seems…
Is this a different problem from private constructors / setters in OO world?
Ask HN: Go programming language is over ten years old. What do you think of it?
81–90 of 310 posts
Re: Ask HN: Go programming language is over ten years old. What do you think of it?
#82- Package management is terrible. - Development on Mac is not a great experience (someone in the team purchased a paid IDE, everyone else just run everything through a docker image, are we missing something obvious?). - The language is not flexible enough (lack of generics?) and code is significantly longer. - Lots of quirks.
I'm sure you can learn the language and overcome these small annoyances (and that's exactly what we did, because we wanted to squeeze more performance out of our services), but personally I think nowadays we have better languages which perform just as well (eg. Rust).
Re: Ask HN: Go programming language is over ten years old. What do you think of it?
#83It's pretty crazy how used we are now to slow dynamic languages.
I also like how Hugo is available as a single binary file - much simpler compared to the complex build chain of a typical JavaScript app.
Re: Ask HN: Go programming language is over ten years old. What do you think of it?
#84Earlier quoted context omitted.
What limitations do you run into with the flask/python setup? (I’m not asking what ARE the limitations, I’m asking which ones specifically you run into)
For large data sets, it sometimes spends all day in GC while just loading the data into memory (this is actually more of a problem in Ruby than in Python, but it still exists here). It's also not very efficient about using memory, so it can be easier to get a dataset to fit in RAM in Go vs. Python. Python also makes it hard enough to make use of multiple cores that it becomes easier to just use Go. The same goes for…
Re: Ask HN: Go programming language is over ten years old. What do you think of it?
#85It's basically the only language in meaningful use that optimizes for the right things in this context: productivity at the team scale (rather than the individual scale) and making things easier for code readers (rather than code authors).
Re: Ask HN: Go programming language is over ten years old. What do you think of it?
#86Re: Ask HN: Go programming language is over ten years old. What do you think of it?
#87Re: Ask HN: Go programming language is over ten years old. What do you think of it?
#88It’s a boring language and I avoid it where I can help it. Its facilities for abstraction are too limited, everything is a loop, if err return, and so on. It’s just not a language I’d use by choice for anything.
Re: Ask HN: Go programming language is over ten years old. What do you think of it?
#89My fingers are getting real tired from typing if err != nil all the damn time. I do like it for small things - compiling to one (albeit huge) binary and its relative speediness is nice. I wouldn't use it for large systems though. The amount of code really balloons over time, relative to, say, python and that SLOC correlates to bugs and maintenance cost.
Re: Ask HN: Go programming language is over ten years old. What do you think of it?
#90Earlier quoted context omitted.
What is it that you find more convenient about Python/Flask?
Flask is better in the little mechanics of interacting with HTTP - parsing a parameter out of a URL (in Flask, it's a function argument; in Go, it's at least one extra line per arg), returning JSON (just return a dictionary in Flask), handling errors. Flask also is able to auto-reload the code when it changes (turn on development mode) which is really convenient. Plus all the ways that Python is more convenient than…