9 ms·
Maybe if swift had something like rustup, people would consider it more when developing for Linux. Also other popular languages like Rust and Go work well even
by qalmakka 6y ago
Maybe if swift had something like rustup, people would consider it more when developing for Linux. Also other popular languages like Rust and Go work well even on weird architectures and little known operating systems, while Swift does not even properly support Windows or FreeBSD. It always felt to me that Apple doesn't really care that much about making the language popular outside of the Darwin family.
Swift is not even in the default repositories of most distributions, for instance.
- skohan 6y agoIt's worth noting that wider support (including official Windows support) is a stated goal of the next language version: https://swift.org/blog/5-3-release-process/ https://swift.org/blog/5-3-release-process/
- pjmlp 6y agoThat is just a tiny step, when the majority of available libraries only have the Apple eco-system in mind. Swift is a very nice language, but one is better served with it if their main market is Apple platforms. Just like .NET Core, regardless of how much commitment Microsoft is putting into it, remains a subset of the .NET community at large, the so called dark matter developers.
- turbinerneiter 6y agoThe nature of Open Source means that any interested party contributes to the project the features it is interested in. Apple is interested in running Swift on OSX and iOS. Goolge is interested in running Swift on Linux servers to do to Machine Learning. Windows support has to come from whomever is interested in it. Neither Apple nor Google have a big interest in that. Same with other stuff. I, for example, am interested in using Swift with GTK+. I don't expect Apple or Google to work on that.
- pjmlp 6y agoGoogle's interest on Swift isn't that much reflected outside when Tensorflow 2020 conference did not spend 1 second on Swift, not even to write a tiny status update blog post. Yet they had enough C++, Android, Python and JavaScript to talk about. C++, Python, Julia, R own Machine Learning. I don't miss Swift on Windows, the JVM and .NET stacks offer plenty of choice, including better GPGPU support across multiple OSes.
- AlphaSite 6y agoI think it died the moment Chris Latterner left.
- coldtea 6y ago>The nature of Open Source means that any interested party contributes to the project the features it is interested in Yes, but the reality of Open Source is that unless money are paid, it often goes nowhere for big projects (that need lots of work to port/create libs/etc).
- turbinerneiter 6y agoHow is that a _but_ to my comment? The interested party is the one who pays for the development of the feature they want, mostly by paying a developer to do it.
- Redoubts 6y agoThe "but" is that a million developers somewhat interested in the language but for the lack of platform support wouldn't sum to a relevant interest. I think that's a shame, but still truth.
- coldtea 6y ago>How is that a _but_ to my comment? You wrote: "The nature of Open Source means that any interested party contributes to the project the features it is interested in" And my comment essentially means: Yeah, BUT this "nature of Open Source" is just a mere potentiality. The fact that FOSS allows "any interested party can contribute" means nothing if there's no interested party with deep pockets (or time/skill to contribute).
- skohan 6y agoWhy is the relative size of the apple-oriented community relevant? I'm not saying it's the current status quo, but if the server-side Swift community reaches a critical mass where it's easy to get support, and there are plenty of libraries available, it doesn't matter one bit if the iPhone developer community is still 10x larger. This would be like saying coconut is unsuitable for use in pina colladas because it's much more prevalent as an ingredient in curry.
- pjmlp 6y agoBecause a language is not an island and the competition is tough. Anyone betting their money on Server side Swift better have a solid story to sell to upper management, why they did not went with Go, Java, .NET, C++20, Rust, OCaml, ..... Right now the only solid story is for Apple shops to share their client code with the server.
- skohan 6y agoROR made Ruby into a mainstream language from a single success story and a usable tool. Swift already has a much bigger developer base, there's no reason it couldn't succeed in other markets as well given the right catalyst.
- mantap 6y agoApple has a bigger developer base but they are captive users. I'm not saying swift isn't good, but nobody actually chooses to use it. They use because it is the language for making iDevice apps. The problem is that if people are only using a language because they have to, then they are not as incentivised to create the open source projects that swift needs. Ruby had a large number of very enthusiastic users, that's what made the difference.
- skohan 6y agoI think you're describing a chicken-and-egg problem, and you're overstating the extent to which a gap exists in terms of library support. Swift has a very capable standard library, a high-quality, officially supported networking library, and fantastic C and Python interop which can fill a lot of the gaps to the extent they exist. Even in its current state, I can imagine Swift being productive in something like server-less development, where it would offer a nice strongly typed alternative to scripting languages which currently dominate the space. Swift has a lot of intrinsic features which would make it nice to use for server-side development, and I'm sure it would find plenty of users if there were a strong success story to point to. Given the number of users, I'm not convinced the absolute number of Ruby users in 2009 was larger than the number of "swift enthusiasts" today.
- ceo_tim_crook 6y agoswift always feels years behind, I'm not convinced they will ever get the basics right outside of ever shrinking apple land
- saagarjha 6y ago> Also other popular languages like Rust and Go work well even on weird architectures and little known operating systems As someone working on porting “everything” to a decidedly not weird architecture and a very well known operating system, I chuckle a bit because neither language works right now. Not even their dependencies work. It’ll be a while before they will be supported. (Swift works perfectly, but it would be unfair to compare it because it had a strong investment made in it to work…)
- hellofunk 6y ago> decidedly not weird architecture and a very well known operating system Can you say which ones? It's hard to place your comment without details.
- tomstuart 6y agoThe context implies it’s macOS on Apple silicon.
- qalmakka 6y agoIn that case the comment makes no sense - the details of AArch64-based Macs have been made public just a few weeks ago. It takes a while to do port and test for a new platform, even if iOS was already supported.
- jpace121 6y agoIt’s implied the OP isn’t considered part of the “public” for this issue.
- saagarjha 6y agoNo, I learned of it the same time you did, although I had a fairly good idea about when this was coming for a few years ;) And while I have a bit of additional information now, it's nothing that would really be useful for porting.
- jfkebwjsbx 6y agoSwift, Rust nor Go provide support for exotic targets. If you want code to work in actually "weird architectures and little known operating systems", then your only option is C (or weird dialects of "C" in some cases). At least that was how things were around >10 years ago, not sure about the current state of things. Anyone can chime in? Do embedded vendors etc. provide proper forks of newish, modern compilers?
- pjmlp 6y agoC++, Oberon, Ada, Pascal, Basic Java, are also options, depending on what exotic hardware you mean. https://www.mikroe.com/compilers https://www.mikroe.com/compilers https://www.astrobe.com/default.htm https://www.astrobe.com/default.htm https://www.ptc.com/en/products/developer-tools/apexada https://www.ptc.com/en/products/developer-tools/apexada https://www.ghs.com/products/ada_optimizing_compilers.html https://www.ghs.com/products/ada_optimizing_compilers.html https://www.aicas.com/wp/ https://www.aicas.com/wp/ https://www.microej.com/product/vee/ https://www.microej.com/product/vee/
- qalmakka 6y agoEven excluding extremely exotic targets, the list of platforms supported by Rust and Go is vastly larger than Swift. For instance, there's no official support on FreeBSD, and FreeBSD 1. uses LLVM for everything 2. has a userland really similar to Darwin, so there are very few excuses to not allocate even a small amount of man power to port it. If you add third-party ports and implementations, the list of platforms supported by Go and Rust increases exponentially; see for instance Tiny Go and the ongoing port of Rust to the Xtensa-based ESP32. > Anyone can chime in? I work in embedded and as far as my experience goes nowadays unless you go on extremely limited environments, the embedded chips I mostly see or develop for are either ARM (v7, like stuff from Nordic or the STM), or ESP32 (Xtensa). Every once in a while I have to work on some older projects which were based on Atmel or PIC, or very very very rarely MIPS. It's certainly not like it was before; nowadays you can buy chips like the ESP32-WROVER which have relatively lots of RAM and storage for an absurdly cheap price. They run pretty well even if you opt for using C++17 and complex libraries.
- jamil7 6y agoI like Swift a lot but Apple seems to be focusing on cross-platform within their ecosystem only, the fact that it runs elsewhere almost feels like a side effect. If your goal is sharing some cross platform code then I feel like you're better served by Rust / Go / Kotlin Native / C++ as these languages are making / have made and effort in that space.