object-based language
An object-based language is a 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.{{cite book|last=Wegner|first=Peter|title=Conference proceedings on Object-oriented programming systems, languages and applications - OOPSLA '87 |chapter=Dimensions of object-based language design |date=December 1987|volume=22|issue=12|pages=168–182|doi=10.1145/38765.38823|isbn=0897912470|s2cid=819420|editor1-first=Norman|editor1-last=Meyrowitz|chapter-url=http://www.cse.msu.edu/~stire/cse891f04/wegner.pdf}} Even though object-oriented seems like a superset of object-based, they are used as mutually exclusive alternatives, rather than overlapping.{{refneeded|date=October 2024}} Examples of strictly object-based languages {{endash}} supporting an object feature but not inheritance or subtyping {{endash}} are early versions of Ada,{{cite journal |last1=Barbey |first1=S. |last2=Kempe |first2=M. |last3=Strohmeier |first3=A. |title=Object-Oriented Programming with Ada 9X |journal=Draft Technical Report |year=1993 |url=http://www.adahome.com/9X/OOP-Ada9X.html|access-date=15 December 2013 |publisher=Swiss Federal Institute of Technology in Lausanne Software Engineering Laboratory |quote=Ada 83 itself is generally not considered to be object-oriented; rather, according to the terminology of Wegner [Weg 87], it is said to be object-based, since it provides only a restricted form of inheritance and it lacks polymorphism.}} Visual Basic 6 (VB6), 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;
References
{{Reflist}}
{{Programming paradigms navbox}}
{{Types of programming languages}}
{{Authority control}}
Category:Programming paradigms
{{prog-lang-stub}}