5 ms·
> the type system of Go is so complex; For someone coming from a Scala background, I feel this statement is absurd. One thing we are all forgetting here is th
by neya 13y ago
> the type system of Go is so complex;
For someone coming from a Scala background, I feel this statement is absurd.
One thing we are all forgetting here is that anyone can prove language X is better than Y. But it's always wise to choose the best tool for the job (X is better than Z in doing what exactly?).
Languages and frameworks are a personal preference. You choose them based on their philosophises and if their philosophies resonate with yours.
After a certain point, language choices will no longer matter. Your end goal, should be to get to this point, instead of fighting over them. Just my 2 cents.
- klrr 13y agoEven though I partly agree with your, is language really just "tools"? I think there's more to it, it's a notation, it's a way to think about problems, etc.
- 616c 13y agoI would content that for such a person (not that I am a stellar programmer or savvy on type theory) Typed Racket will make this man/woman/smizmar lose sanity. That said, I think Racket is so-so cool.
- Scriptor 13y agoI think you may have taken that statement out of context. The OP was talking about the complexity of the type implementation, not the theory behind it. The specific example he used was how a programmer needs to know exactly how some different types are passed as arguments to know what the most efficient way is, since it's not entirely consistent. EDIT: I agree with the rest of your comment, though. Languages are just tools. The whole, "Why are you using X? Y is better," thing is getting old.
- Touche 13y ago> But it's always wise to choose the best tool for the job. I'm so tired of this meme. Yes, in some situations there is a "right tool". If you are working on embedded devices you probably should just use C. But in the wider world of programming there isn't a "right tool". In web development especially, there are many tools that can get you to the same place. And because of that it's perfectly reasonable to debate that one is better/worse than another.
- mwcampbell 13y agoAs long as we treat languages as personal preferences, the programming community will remain deplorably divided. In order to join forces to work on demanding projects, I think we need to agree on a relatively small number of good-enough languages. To do this, we need objective criteria for choosing one language that is good for a particular class of software.
- dragonwriter 13y ago> As long as we treat languages as personal preferences, the programming community will remain deplorably divided. Languages are personal preferences; they certainly have objective differences which have some effect on utility, but a substantial part of what makes a language the best for a particular programmer for a particular purpose is how well the the language matches the programmer's experience and patterns of thought for addressing the problem domain. These are inherently subjective factors. > In order to join forces to work on demanding projects, I think we need to agree on a relatively small number of good-enough languages. We may need to agree, for large projects that need to be integrated in such a way that you can't use a mix of languages for different components, on as few as one language for a particular project, but that doesn't constrain the number of languages we can have in the whole programming ecosystem (and, indeed, restricting the domain of available languages would restrict the development of new techniques and languages and the development of better languages for new use case.) > To do this, we need objective criteria for choosing one language that is good for a particular class of software. This requires, obviously, the ability to objectively categorize software into "classes" to apply the criteria. Since I think you are going to fall down hard on that, I'm not really holding my breath to seeing your vision realized, even if I thought it was a good thing.