kirancodes.me
To Proof Maintenance & Beyond!

An Argument for the Practicality of Entity Component Systems as the Primary Data Structure for an Interpreter or Compiler

Joshua Dahl, Frederick C. Harris

Abstract

In this paper, we examine how Entity Component Systems, a data structure that has been gaining popularity in game engines, can benefit compiler and interpreter design. ECS does not consistently provide the same performance benefits that games utilize it for; however, it does make writing optimization passes easier. Additionally, its dogmatic focus on simple Plain-Old-Data structures makes serialization much easier. These benefits do come at a memory cost, the severity of which we still need to compare against more mature language implementations.

Related papers