Find sources: Google (books · news · scholar · free images · WP refs· FENS · JSTOR · TWL

Common Lisp

edit

Common Lisp is NOT a object oriented language.You can do object oriented programming in Common Lisp (it even has its own set of operators for that: the Common Lisp Object System. Or you can write your own), but you don't have to, and most of the time, you won't need the extra garbage. 77.171.29.82 (talk) 23:59, 15 February 2024 (UTC)Reply

I'm a bit confused. The argument I see here is that because one can avoid doing object oriented programming in Common Lisp, Common Lisp is not object oriented. But that applies to many languages, e.g. C++ can be used procedurally (in its C subset). There is a term in the article "pure OO languages" which is defined as languages where everything is treated consistently as an object, which clearly Common Lisp and C++ do not satisfy. But the general concepts of OO seem present in CLOS. Mathnerd314159 (talk) 01:18, 16 February 2024 (UTC)Reply
But all values in Common Lisp are objects and instances of some class. See for example the integer class. You do not have to write your own classes, still, and you can use normal functions instead of generic functions. But all classes (including structure classes made by defstruct) can be dispatched on by generic functions. I find using classes and generic functions in Common Lisp is useful and not garbage, and certainly people do use those features of CLOS, but "the extra garbage" would not be starting that discussion on the right foot. 150.203.65.55 (talk) 11:16, 19 March 2024 (UTC)Reply

We could write this more simply

edit

I'm taking an entry-level computer class and I can't make heads or tails of this article. Procedural programming seems simple but I don't know what the teacher means by "objects". 136.223.34.54 (talk) 15:19, 15 April 2024 (UTC)Reply

OOP is complex and vague - it is hard to discuss it concisely. I think the article structure is about as good as it gets. But you are right that the "objects" section does not define objects, I have added a definition. Mathnerd314159 (talk) 21:43, 15 April 2024 (UTC)Reply
انا اول مره 185.133.180.19 (talk) 12:43, 17 April 2024 (UTC)Reply
@136.223.34.54 i agree. this article is written poorly. OOP Is not a complex and vague topic as other says. people make it more complicated than it is. Stevebroshar (talk) 01:07, 25 October 2024 (UTC)Reply
That is a problem with WP. Perhaps articles are written by subject experts who are used to talking with other subject experts and put things in terms that others can't understand.
Or maybe it is that so many make amendments it becomes an unintelligible mess, like C++.
Or maybe it is because of things like C++ and UML that OO itself has become this mess that it should not be. Ian.joyner (talk) 07:27, 25 October 2024 (UTC)Reply
OOP helps organise projects, but in a disciplined and mathematical way. You should read Object-Oriented Software Construction. This is true and clean OO, but not one that simplifies the most sophisticated aspects of OO or programming.
An object, in itself is a self-contained computer that handles one kind of data. Objects interact via messages.
Don't get misled by horrors such as C++ or UML. Ian.joyner (talk) 07:21, 25 October 2024 (UTC)Reply

Criticism section no longer present?

edit

In the 'Real-world modeling and relationships' section, a 'criticism' section is referenced. This seems to be no longer present. BartYgor (talk) 07:19, 3 May 2024 (UTC)Reply

Good catch, indeed the criticism was added to the section (the Yegge quotes). Mathnerd314159 (talk) 14:26, 3 May 2024 (UTC)Reply

"Criticism of object-oriented programming" listed at Redirects for discussion

edit

  The redirect Criticism of object-oriented programming has been listed at redirects for discussion to determine whether its use and function meets the redirect guidelines. Readers of this page are welcome to comment on this redirect at Wikipedia:Redirects for discussion/Log/2024 November 11 § Criticism of object-oriented programming until a consensus is reached. Tea2min (talk) 09:55, 11 November 2024 (UTC)Reply