Last updated: 16 days ago
Although Swift has taken much of the Apple developer community by storm, there have also been concerns about excessive and increasing complexity, both in the language and in the programs written in it.
Much of this excess complexity can be traced to the very static and restrictive basic design based on a very C++-like take on the basic call/return architectural style, with metaprogramming features bolted on later in an ad-hoc fashion. Alas, most systems we build today don't conform to the call/return style, a fundamental architectural mismatch that is difficult to overcome with the anemic meta-facilities povided.
Objective-Smalltalk heeds Alan Kay's advice to focus on connectors and the meta-system first, resulting in a simple language that can express common architectures such as the common and useful dataflow- or storage-oriented ones in a very straightforward fashion.
This talk will first briefly highlight a bit of the accidental complexity we currently encounter, and then explore how it can be reduced or eliminated using appropriate architectural styles and the corresponding linguistic tooling.