A Apple abriu o código-fonte do Swift System e também adicionou suporte para Linux. A ideia por trás do Swift System é apresentar uma solução completa para interfaces de sistema de baixo nível para todas as plataformas Swift suportadas.
A maioria dos sistemas operacionais que usamos hoje trabalha com suporte a algum tipo de interface de sistema escrita em C e tem permanecido a mesma por décadas. Essas APIs podem ser usadas diretamente do Swift, mas essas interfaces de sistema “weakly-typed” importados da C são propensas a erros e não gerenciáveis.
Por exemplo, em sistemas operacionais como o Linux, as funções “weakly-typed” têm vários contras e não conseguem utilizar a expressividade e tipo de segurança que se pode encontrar no Swift.
Swift System com suporte para Linux
O módulo Swift System apresenta vários recursos de linguagem para melhorar a expressividade e reduzir as chances de erro. Por exemplo: “System” define a chamada de sistema aberta como uma função estática com argumentos padrão no namespace “FileDescriptor”:
Ao comparar esta versão com a versão original em C, você pode detectar diferenças significativas, como:
- “System” usa estruturas representáveis brutas e conjuntos de opções. Esses “strong types” ajudam a identificar erros em tempo de compilação e são mais fáceis de converter de e para os “weaker C types”.
- Os erros são lançados usando o mecanismo de linguagem padrão e não podem ser perdidos.
- “FilePath” é um pacote de bytes gerenciado “null-terminated” que está em conformidade com “ExpressibleByStringLiteral” (muito mais seguro de se trabalhar do que um UnsafePointer<CChar>).
É importante observar que “System” não é uma plataforma cruzada, mas uma biblioteca multiplataforma. Ele fornece um conjunto separado de APIs e comportamentos em cada plataforma com suporte, que reflete de perto as interfaces subjacentes do sistema operacional.
Portanto, uma única “import” puxará as interfaces da plataforma nativa específicas para o sistema operacional que você escolher.
Fonte: Fossbytes
Apple melhora desempenho da linguagem de programação Swift 5.3
https://sempreupdate.com.br/como-programar-em-swift-no-ubuntu-linguagem-programacao-apple/
https://sempreupdate.com.br/desenvolver-ios-swift-opensource/