top | item 36841246

(no title)

slinkyavenger | 2 years ago

Both criticisms are pointless -

1. Borg precedes K8s and likely is tightly coupled with Google's backend infra - that's to say, Borg gets architected around Google's existing workflow and new backend development is written around Borg's workflow.

2. GoLang was never intended to be an OS-level programming language. It was created to enable more robust, efficient, and rapid development in a particular space. It would be just as silly to argue that Google's three OS projects all eschew Dart.

discuss

order

pjmlp|2 years ago

Flutter/Dart is Fuchsia's UI framework.

Go was created by three folks that got fed up waiting on C++ compile times, and from their point of view Go is designed for people unable to take feature rich languages, on Rob Pike's own words.

"The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt."

Or alternatively,

"It must be familiar, roughly C-like. Programmers working at Google are early in their careers and are most familiar with procedural languages, particularly from the C family. The need to get programmers productive quickly in a new language means that the language cannot be too radical."

seabrookmx|2 years ago

I'm not actually criticizing GoLang, just pointing out some facts.

1. is fair.

2. I'd argue is false, given Fuschia and Dart are tightly integrated (as another commenter noted) and that GoLang was originally designed as a C++ replacement born from the Plan9/Inferno tool chains (certainly "OS-level"). Also there's a ton of non-kernel code in an OS so this is a really blurry distinction. containerd does some pretty low level stuff with Linux and GoLang is perfectly capable of this.. if Fuschia wanted to use it they could.

pjmlp|2 years ago

In fact, Fuchsia's original TCP/IP stack and volume manager were written in Go.

They were however rewritten in Rust, after the author left Google and they wanted to clean Fuchsia from Go code.

vips7L|2 years ago

Isn’t Fuchsia designed to use Dart for the front end?