The IEC standard provides five different controller-programming languages, each with its own advantages and disadvantages. More details and diagrams are posted here, in the Online extra.
CNC technology follows mass-market computing trends, so advances in general-purpose computing engines make more capable controllers available for CNC systems.