View Poll Results: Should OOP be in every new language??

Voters
22. You may not vote on this poll
  • Yes, OOP is aboslutely important in developing any new language

    6 27.27%
  • No, new languages could be popular and live long-time without OOP

    16 72.73%

Thread: Should OOP be any new language priority??

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    "Why use dynamic memory?"
    Join Date
    Aug 2006
    Posts
    186

    Should OOP be any new language priority??

    Do you think OOP is a must in every new language??
    In other words, if you were developing a new language, would OOP be on your toplist??

    I think yes, OOP is important in every language, even if it is optional.
    I think new languages without OOP (if any available) won't live long
    Last edited by Hussain Hani; 06-09-2009 at 04:27 AM.
    "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows away your whole leg."-Bjarne Stroustrup
    Nearing the end of finishing my 2D card game! I have to work on its 'manifesto' though <_<

  2. #2
    Woof, woof! zacs7's Avatar
    Join Date
    Mar 2007
    Location
    Australia
    Posts
    3,459
    I think it depends on what the language is for. General purpose? Then probably yes. Although I'd probably try my luck with "aspect oriented programming".

    The end.

  3. #3
    "Why use dynamic memory?"
    Join Date
    Aug 2006
    Posts
    186
    yes, you could say general purpose language
    "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows away your whole leg."-Bjarne Stroustrup
    Nearing the end of finishing my 2D card game! I have to work on its 'manifesto' though <_<

  4. #4
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    ASM has been here for a long time and is not going away anytime soon. With every new architecture there's a new assembly language.

    must in every new language
    Those are strong words.

  5. #5
    Reverse Engineer maxorator's Avatar
    Join Date
    Aug 2005
    Location
    Estonia
    Posts
    2,318
    Who knows, maybe someday we have something totally new, not object-oriented, not procedural...
    "The Internet treats censorship as damage and routes around it." - John Gilmore

  6. #6
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    I didn't vote in this one because the answer has to be "that depends", but I do agree for any general purpose language OO should be available.

    I think the traditional discourse which would present a number of "programming paradigms" is not worth that much; it does provide an abstract perspective, and a means to distinguish one way of accomplishing something from another, parallel way of doing the same thing, but it also *obviously* ladden with too much historical baggage, perhaps, 1) the bones of arguments and discussions that don't merit continuing. 2) attempts to brown bag a set of observations and fit them into a lunch schedule.

    The various paradigms do not seem to equate with one another in many senses; sometimes it seems to reflect something about "different kinds of apples" while other times it seems an absurdist exercise about apples, oranges, and truck driving.

    For example, if there is an "Object Oriented Programming" style, why isn't there a "Struct Oriented Programming" style? Would the later just be procedural or imperative (or would in fact be OOP)? Either way, again, it seems to me these are some very sloppy categories, and the only reason they get respect is because that is the traditional discourse. If they didn't exist and I showed up here in the morning presenting my paper on various "Programming Paradigms" and I used the existent ones, how seriously would *you* take it? I would say the idea is useful, but not crucial, and much of the thinking lazy, hazy, or crazy. And -- worst of all -- that I was trying to include way, way, too much unrelated material and creating a set of false relationships in order to make the whole "paper" cohere.
    Last edited by MK27; 06-09-2009 at 06:34 AM.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  7. #7
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    Magic-oriented programming .

    C++ proof-of-concept code -
    Code:
    int main() {
    	std::string fragments[6] = { "int main() {", "return 0;", "std::cout << \"Hello world!\" << std::endl;", "}", "#include <iostream>" };
    
    	while (!compile(fragments)) {
    		std::next_permutation(&fragments[0], &fragments[5]);
    	}
    }

  8. #8
    Banned ಠ_ಠ's Avatar
    Join Date
    Mar 2009
    Posts
    687
    Quote Originally Posted by cyberfish View Post
    Magic-oriented programming .
    that's called Lisp
    ╔╗╔══╦╗
    ║║║╔╗║║
    ║╚╣╚╝║╚╗
    ╚═╩══╩═╝

  9. #9
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Quote Originally Posted by cyberfish View Post
    Magic-oriented programming .

    C++ proof-of-concept code -
    Code:
    int main() {
    	std::string fragments[6] = { "int main() {", "return 0;", "std::cout << \"Hello world!\" << std::endl;", "}", "#include <iostream>" };
    
    	while (!compile(fragments)) {
    		std::next_permutation(&fragments[0], &fragments[5]);
    	}
    }
    That (with a few more elements) resembles what some of the beginners do here, right?
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  10. #10
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Support for object-oriented constructs is a must for any new GP language, if not for practical usage reasons, then still for cultural reasons. ("Your language doesn't support OOP? It must be worthless.")
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  11. #11
    and the hat of sweating
    Join Date
    Aug 2007
    Location
    Toronto, ON
    Posts
    3,545
    The way the question is worded, I say no.
    For a simple scripting language, OOP is not required.
    For a language where you'd write a large application, OOP would definitely be useful.
    "I am probably the laziest programmer on the planet, a fact with which anyone who has ever seen my code will agree." - esbo, 11/15/2008

    "the internet is a scary place to be thats why i dont use it much." - billet, 03/17/2010

  12. #12
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by cpjust View Post
    The way the question is worded, I say no.
    For a simple scripting language, OOP is not required.
    For a language where you'd write a large application, OOP would definitely be useful.
    Yet you would not like to see OOP even if it is a simple language for simple tasks?
    Who are you to say what the people who uses it likes or what they want to use it for?
    With that into account and the fact that pretty much all modern languages have OOP in one way or another, I must say YES (thus my vote), it should be part of any new language.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  13. #13
    and the hat of sweating
    Join Date
    Aug 2007
    Location
    Toronto, ON
    Posts
    3,545
    Quote Originally Posted by Elysia View Post
    Yet you would not like to see OOP even if it is a simple language for simple tasks?
    No, if I want OOP I'd use a language that has it.
    You wouldn't want to try to write a client/server based application in MS Batch script would you? But for simple tasks like copying a few files around, it works perfectly without OOP.
    If someone comes out with a new simple scripting language that's fast to learn and easy to write, adding OOP would increase its complexity and time to learn... Plus it would be too slow for a large application. But for simple tasks, it's fine.
    "I am probably the laziest programmer on the planet, a fact with which anyone who has ever seen my code will agree." - esbo, 11/15/2008

    "the internet is a scary place to be thats why i dont use it much." - billet, 03/17/2010

  14. #14
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by cpjust View Post
    You wouldn't want to try to write a client/server based application in MS Batch script would you? But for simple tasks like copying a few files around, it works perfectly without OOP.
    Sure, but something I found interesting about ruby -- where everything is an object, including a "file" -- is that it does make copying a few things around *even more simple* and "perfect".

    It would be hard to say (as matsp's example of GIMP scripting implies) that not having formal class/object syntax is a feature. I'm sure if you went back far enough, people would say this about *functions*:

    Sure, functions are great for doing complex programming. But you don't *need* them.

    Yet most people would not use asm for "general purpose scripting" and functions are useful even in simple "file copying" scenarios. Objects even more so. So I'm gonna vote with Elysia on this one.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  15. #15
    Registered User
    Join Date
    Sep 2001
    Posts
    4,912
    not object-oriented, not procedural...
    functional.... I'm a big fan of Lisp's method of splitting things into lists, and lists of lists. It's not quite as flexible, but I'm having a hard time thinking of data that couldn't be modeled in that fashion. And it's extremely easy to implement - meaning that if I needed to create a new language - I might use that concept as a base.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. priority inversion due to pthread_mutex_lock(): how to avoid?
    By mynickmynick in forum C Programming
    Replies: 11
    Last Post: 04-07-2009, 10:34 AM
  2. Why C Matters
    By DavidP in forum A Brief History of Cprogramming.com
    Replies: 136
    Last Post: 01-16-2008, 09:09 AM
  3. Data Mapping and Moving Relationships
    By Mario F. in forum Tech Board
    Replies: 7
    Last Post: 12-14-2006, 10:32 AM
  4. recommendation for a good OOP book
    By Mario F. in forum C++ Programming
    Replies: 2
    Last Post: 06-15-2006, 04:28 PM
  5. Language of choice after C++
    By gandalf_bar in forum A Brief History of Cprogramming.com
    Replies: 47
    Last Post: 06-15-2004, 01:20 AM