News for hackers. Stuff that matters.
Re:Go: What We Got Right, What We Got Wrong by galaxyLogic on Thursday January 04, 2024 @05:45PM (#38873337)
There are 2 conflicting goals: 1) Having a language in which it is easy to express and try out ideas and 2) Producing fast and safe programs.

A scripting language would seem to be good for the exploratory scientific research, because of that. Whereas when you need to create a performant library that can do heavy crunching with reproducible results on any platform you need the other. The questions is: Do you know what you want to implement, or is that still an open question?

Re:Go: What We Got Right, What We Got Wrong by randomdata on Thursday January 04, 2024 @06:48PM (#38873853)
No doubt it starts as an open question and slowly moves towards knowing.

Which isn't really much of a conflict. You can prove out your thoughts in a scripting language, and after the dust has settled you can move the workload to a systems language. Different jobs, different tools.

I guess if you're one of those weird religious types that insist there is only one true God (read: programming language) you might feel conflict, but nobody else cares.

Re:Go: What We Got Right, What We Got Wrong by galaxyLogic on Friday January 05, 2024 @05:55PM (#38886186)
> Different jobs, different tools

And possibly different programmers.

Say your a (non-computer-) scientist. It is not (typically) part of your job to learn Rust or Haskell.

You might want to learn Rust if you are so inclined but many scientists are not.

Re:Go: What We Got Right, What We Got Wrong by randomdata on Friday January 05, 2024 @11:22PM (#38888392)
I'm sure there are exceptions, but generally speaking, do scientists ever really end up working on systems?

Anecdotally, I work with a lot of scientists and they only write scripts. When systems are needed, they hand it off to the development team. Anyone can fumble through scripting, but there is a lot more to think about when building systems, and that's probably not something most scientists want to put effort into – for the same reasons they probably don't want to learn Rust.

Realistically, learning Rust is the easiest part of becoming a systems programmer. But there is little incentive to learn any system language if your workload is always scripting in nature. You are going to, rightfully, reach for a scripting language.

Re:Go: What We Got Right, What We Got Wrong by coldtea on Friday January 05, 2024 @04:11AM (#38877168)
>There are 2 conflicting goals: 1) Having a language in which it is easy to express and try out ideas and 2) Producing fast and safe programs.

Why are they "conflicting"?

Common Lisp could do both quite well.

Re:Go: What We Got Right, What We Got Wrong by galaxyLogic on Friday January 05, 2024 @05:52PM (#38886158)
Because different languages give different focus to different features. I'm not saying there can't be a language that supports multiple goals well, but it's a bit like" Jack of All Trades".