The Uniform Access Principle was put forth by Bertrand Meyer (originally in Object-Oriented Software Construction). It states "All services offered by a module should be available through a uniform notation, which does not betray whether they are implemented through storage or through computation". This principle applies generally to the syntax of object-orientedprogramming languages. In simpler form, it states that there should be no difference between working with an attribute, precomputed property, or method/query.