Swift vs Go

In many respects Swift and Go both feel like they are motivated by the same desires of having a modern, succinct, simple, safe, and fast programming language for everyday use. So here is a superficial comparison (the differences are bolded):

Go
1 Inferred static structural typing
2 Structs and interfaces
3 Fast compilation
4 Native binary & scripting mode
5 Concurrency: channels
6 Garbage collection
7 Large standard library
8 Large corporate backer (Google)
9 Open source
10 OS level access
11 C interoperability

Swift
1 Inferred static nominal typing
2 Structs and protocols
3 Compilation speed TBD
4 Native binary & scripting mode
5 Concurrency TBD: native/green threads/async-await/channels/actors
6 Automatic refrence counting
7 Large standard library
8 Large corporate backer (Apple)
9 Open source
10 OS level access
11 C interoperability
12 Generics
13 Enums
14 OOP fallback
15 Optionals (and other FP concepts)

Go has really taken off among people who traditionally used languages like Ruby, Python, Node.js but are looking for more safety and speed. I hope they take a look at Swift as it matures in the next few years.

 
307
Kudos
 
307
Kudos

Now read this

Stripe iOS Integration with Swift & Apple Pay (Updated 10/03/2015)

A Swift supplement to Stripe’s iOS Integration tutorial, including ApplePay. Note: There are three ways to collect card information: Use Apple Pay framework to access stored payment information Use Stripe’s pre-built form components, to... Continue →