Data-Oriented Programming

I’ve recently bought the following book by just looking at the table of contents:

Then the publisher (Manning) gave me one additional free copy via the “Get One, Give One” promotion in December. So if someone is interested, please let me know (via PM etc) so that I can send the link. Also, please note that the expiration date is 1/15 (!!) so you need to download very quickly…) Also note that I haven’t read it yet, so not sure if it is interesting or not XD

Edit: The free copy is now “sold out”. Thanks for your application!

Apart from it, I am wondering whether this “data-oriented programming” is discussed before in relation to Fortran? I’ve searched the net about this, and Google shows a lot of blogs related to video game development (which seems to boil down to AoS (Array of structures) vs SoA (Structure of arrays), but not very sure…). In terms of numerical computing, I guess it might be related to “object-based programming” that was mentioned before in some other thread (in comparison to “object-oriented programming”).

Don’t know much about this topic, but I’ve been wondering about this myself. My impression (I may be wrong) is that data oriented programming often is used with (or interchangably with?) Entity Component Systems. As you say, these techniques seem to have a lot of traction in game development.

There should be a lot of similarities between game development and physics simulations that we often make using Fortran so it would be interesting to know if anyone has some experience or insights!


I read a keynote presentation for a Rust conference about the subject - My RustConf 2018 Closing Keynote. That was indeed in the context of games design, but reading it I got the distinct impression that the philosophy might be useful in a wider context.