Core Data is Apple’s worst active framework, and I look forward to its inevitable Swift / Struct-based replacement. For those looking for inspiration, see the Ecto library written in Elixir.