Object-based language
An object-based language is a imperative [programming language] that provides a construct to encapsulate state and behavior as an object. A language that also supports inheritance or subtyping is classified as object-oriented. Even though object-oriented programming is a superset of object-based programming, some authors distinguish them by name only when it is useful to point that a given programming language lacks inheritance. Examples of strictly object-based languages supporting an object feature but not inheritance or subtyping are early versions of Ada, Visual Basic 6, and Fortran 90.
Some classify prototype-based programming as object-based even though it supports inheritance and subtyping albeit not via a class concept. Instead an object inherits its state and behavior from a template object. A commonly used language with prototype-based programming support is JavaScript.