Google will contribute changes to Apple's Swift programming language, and will support the language in the Fuchsia OS, a presumed replacement for Android, ChromeOS, etc. that is designed to work on all devices:
Fuchsia is Google's not-at-all-but-kind-of-secret operating system that's being developed in the open, but with almost zero official messaging about what it's for, or what it's built to replace. (Android? Chrome OS? Both? Neither?) The operating system's core is written in mostly C and C++, with Dart for the default "Flutter" UI, but other languages like Go, Rust, Python, and now Swift have also found a home in the project.
Of course, just because you'll be able to compile Swift to run on Fuchsia doesn't mean you'll be able to instantly port any iOS app to Google's new OS when or if it ships. While Apple has open sourced the Swift language itself, much of the iOS platform (like the UI stuff, for instance) is closed source, so code that relies on those closed Apple libraries won't be portable.
One possible future in a world where Fuchsia is an important and relevant platform for apps is that you write the "core logic" of your app in your language of choice — Swift, Go, Rust, JavaScript, etc. — and then you build a custom UI for each platform — Android, iOS, Fuchsia, Linux, Windows, the web — using the appropriate tools for each.
Also at Android Police.
Previously: Google's New Non-Linux OS: Fuchsia
Google's Not-So-Secret New OS
Google Fuchsia UI Previewed
(Score: 2) by RamiK on Saturday December 02 2017, @02:55AM (2 children)
C++ abstractions might not cost you run-time directly (compared to C), but they take longer to develop, optimize and debug which ends up costing you run-time indirectly. Now, if you're a big corporation that can pour money the problem endlessly, you might be able to hire enough smart programmers until you're in the "we're faster then the competition" zone. But the resulting code-base ends-up so hairy that the next feature will take longer to develop and the following will be even harder... Until one day you're stuck like Microsoft with a code-base you can't even afford maintaining.
Btw, personally if I wanted to go low-level with an opt-in GC and modern language facilities and could satisfy my personal flavor-of-the-month, I'd look at one of the concatenative languages. Kitten [kittenlang.org] for instance, while still young, is looking like everything you'd want from a modernized Forth.
compiling...
(Score: 0) by Anonymous Coward on Saturday December 02 2017, @11:08AM (1 child)
"There is an interpreter written in Haskell, and a work-in-progress native code compiler." http://kittenlang.org/faq/ [kittenlang.org]
If there is a more definite way to spell "stillborn", I've yet to see it.
(Score: 2) by RamiK on Saturday December 02 2017, @01:25PM
Looks lively enough to me: https://github.com/evincarofautumn/kitten [github.com]
Don't forget stacks language like Forth don't have a lot of code in the compiler and std-lib. But if you're looking for something more wide-spread then Kitten and more modern than Forth, you can check out Factor: https://github.com/factor/factor [github.com] In fact, there's a whole wiki with a list of languages that fit the bill: https://concatenative.org/wiki/view/Front%20Page [concatenative.org]
compiling...