Jon Reades - j.reades@ucl.ac.uk
1st October 2025
Most people would call this a class hierarchy or diagram.
There is no natural order here: where do e-bikes, unicycles, and rickshaws go?
Functionally, a class and a package are indistinguishable, but a class produces objects that use methods and instance or class variables, whereas a package is a group of functions and constants that may, or may not, include classes.
Ugh, now try to keep this straight in your head.
Most things that computers do have both functional and object-oriented representations. It’s a choice set by the language and developer. In Python, for example, there has been a shift from
os.path
(functional) topathlib
(OO).