Thread: Class-C : new OOP C programming language

  1. #31
    misoturbutc Hodor's Avatar
    Join Date
    Nov 2013
    Posts
    1,787
    Quote Originally Posted by whiteflags View Post
    The thread is mostly valid criticism, which was solicited, unless you want to argue that.
    Yes, I'll argue it. Most of the replies are unnecessarily harsh and offer no valid critique at all. Half the comments (I haven't counted them) are along the lines of "waaaahhhhh this is not how C++ does it wahhhhhhhh why not use c++ wahhhhhh?" There, I've said it.

    Even if every single reply was "valid" and constructive (and I don't agree at all that they all are, or even the majority are), who cares? What happened to the "hacker spirit"?

    Edit: Here's an example (I'm not even going to go back a page)

    I don't like the idea of people trying to start a new language that they're going to use for development simply because they don't like how an existing language is formed.
    What? Why the hell not?

  2. #32
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    Yes, I'll argue it. Most of the replies are unnecessarily harsh and offer no valid critique at all. Half the comments (I haven't counted them) are along the lines of "waaaahhhhh this is not how C++ does it wahhhhhhhh why not use c++ wahhhhhh?" There, I've said it.
    Correct me if I'm wrong, but I think there are two people who took that line of reasoning: Elysia and John. Maybe that's two too many. But grumpy's opinion, my opinion, phantomotap's opinion obviously matters if he's really doing anything grandiose. He did set out to make a language simpler by comparison with others, so it is important whether he actually achieved that goal.

  3. #33
    misoturbutc Hodor's Avatar
    Join Date
    Nov 2013
    Posts
    1,787
    Quote Originally Posted by whiteflags View Post
    Correct me if I'm wrong, but I think there are two people who took that line of reasoning: Elysia and John. Maybe that's two too many. But grumpy's opinion, my opinion, phantomotap's opinion obviously matters if he's really doing anything grandiose. He did set out to make a language simpler by comparison with others, so it is important whether he actually achieved that goal.
    You see this:

    I would like to note that your specification is extremely unhelpful. You defer to the C standard, but not a specific standard
    ?

    Did you even read the specification? Because it specifically says which C standard. And before you say "Oh, but it didn't when I made that comment" I read the specification and documentation before you replied.

    I'm sorry but I stand by my conviction that (most of) the replies in this thread have done nothing at all except discourage the OP. Maybe my idea of "constructive" critique (yes, I use the word critique and not criticism) is very different to the majority and that's why my comments have taken the tone they have. I don't know.

    Edit: It wasn't so long ago that I was on the wrong end of the witch hunt. You adamantly stated without even checking the standard that I was wrong about the comma operator (which of course I was not). Even when this became clear you still didn't admit you were mistaken but dribbled on about something that made no sense at all. Maybe this forum isn't about learning, doing things for fun, trying different ideas, etc, after all. I rarely see encouragement.
    Last edited by Hodor; 12-11-2013 at 04:07 AM.

  4. #34
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    Did you even read the specification? Because it specifically says which C standard. And before you say "Oh, but it didn't when I made that comment" I read the specification and documentation before you replied.
    It doesn't. Are you referring to the preface? He links to a working document, not an actual, final standard.

  5. #35
    misoturbutc Hodor's Avatar
    Join Date
    Nov 2013
    Posts
    1,787
    Quote Originally Posted by whiteflags View Post
    It doesn't. Are you referring to the preface? He links to a working document, not an actual, final standard.
    I'm not sure what I'm referring to now. I think the specification, but it matters not

  6. #36
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    Even if every single reply was "valid" and constructive (and I don't agree at all that they all are, or even the majority are), who cares?
    O_o

    The people posting in response to the thread. You know, like milgra, whiteflags, and grumpy?

    You.

    By the way, why do you care? I'm only curious because you seem to have misunderstood the very nature of opinions.

    You should take a moment and read the post by cyberfish about the study of existing languages. You think milgra has enough experience with implementing programming languages to have thought of everything? Well, no, the illustrations by milgra show a level of desire not planning.

    We don't want milgra running off to write a lot of code in his language only to find out he went wrong after weeks of months. Sure, milgra could write a lot of code, and when, in the fullness of time, he discovers problems with his language he could fix the code by adapting his existing compiler to produce the corrected "Class-C".

    Why? Why let him take that path when the simpler path is a much better path? (You may not agree, but I don't care in the slightest.) Spending time writing in "Class-C" which will almost certainly always be unique to milgra is a waste of time. Note, I'm not saying that attempting to develop "Class-C" is a waste of time; I'm saying that milgra using "Class-C" is a waste of time.

    All the time milgra spends on "Class-C" might instead be used learning C++, C#, Java, Javascript, or some other commercial, and viable, language. The experience of mastering other languages, a point I can not stress enough, would necessarily improve "Class-C".

    No one cares about "Class-C"; it is unlikely that anyone will ever care about "Class-C". You may not care that no one will care, but I do care, and so do many of the others posting whether you understand or approve.

    You see Hodor, spending 6 months with "Class-C" and any classes, as in university classes, or jobs milgra may wish to apply will completely ignore "Class-C" experience if not outright find it a "bad thing". The six months spent spent on C++, C#, or whatever will increase his skills in a way that others, besides milgra, will find meaningful.

    What happened to the "hacker spirit"?
    Real hackers share knowledge and experience. So, the "spirit" is alive and well.

    Soma
    “Salem Was Wrong!” -- Pedant Necromancer
    “Four isn't random!” -- Gibbering Mouther

  7. #37
    Registered User milgra's Avatar
    Join Date
    Dec 2013
    Location
    Szeged, HUN
    Posts
    16
    whiteflags : I couldn't link the final specification in my documents, because it is not downloadable. I linked the final draft, because that was the latest available document on the net. But I'm sure the changes between the final and the draft don't create ruby out of C!

    phantomap : wow, very interesting thoughts!

    We don't want milgra running off to write a lot of code in his language only to find out he went wrong after weeks of months. Sure, milgra could write a lot of code, and when, in the fullness of time, he discovers problems with his language he could fix the code by adapting his existing compiler to produce the corrected "Class-C".
    If you say my language is faulty, then you say that C is faulty - my compiler just creates a longer C code from a shorter C code. It's still 100% standard C with structs and functions grouped together. What are the problems in my language? I converted all my projects to class-C, I've released a quite succesful game in the Mac/iOS store written in class C, the demo dynamics engine handles 40000 bouncing particles over 30fps, because they are in beautifully written C. Generated from Class-C code.

    All the time milgra spends on "Class-C" might instead be used learning C++, C#, Java, Javascript, or some other commercial, and viable, language. The experience of mastering other languages, a point I can not stress enough, would necessarily improve "Class-C".
    Altough I'm a quite experienced Java ( I reverse engineered Macromedia's RTMP protocol back in 2007, and written a Flash Media Server replacement in 64Kbytes ), Javascript, C, Objective-C programmer, I don't agree - to create a better C, you only have to know C. Learning other languages can also plant bad concepts in your head, and they can stuck in your mind. I always appreciated those people who tried to create new things without the influence of similar existing things - after a hundred try they usually succeed. People who think these kind of dreamers are stupid - are just lazy.
    Last edited by milgra; 12-11-2013 at 05:13 AM.

  8. #38
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    I couldn't link the final specification in my documents, because it is not downloadable. I linked the final draft, because that was the latest available document on the net. But I'm sure the changes between the final and the draft don't create ruby out of C!
    I don't know why that's the first thing that enters everyone's mind. I wouldn't base a language off a draft, because it is a draft. In many such documents, the paper itself will note its incompleteness and incorrectness, so that if a section is changed or removed, what then. Is your standard following the draft? What is correct in that situation?

    At any rate, what you did say was not nearly specific enough. personally, it would be nice if the document that I had to read was your specification only, because, with a well-prepared document, it is clear exactly how much C you support and where standards disagree. As it is right now, making sense of your specification would be a massive diff operation with the C11 draft. That's... well, if it were a school essay, it would be an essay that is mostly quoted material. But you didn't make actual quotations.

  9. #39
    misoturbutc Hodor's Avatar
    Join Date
    Nov 2013
    Posts
    1,787
    Quote Originally Posted by phantomotap View Post
    By the way, why do you care? I'm only curious because you seem to have misunderstood the very nature of opinions.
    O_o

    Believe me when I say that I'm quite aware of what opinions are and actively encourage them. Opinions are great (hey, I have strong ones), but they're not the same as constructive critique.

    Why do I care? It's because I've followed this thread since it was created and, to me (my opinion), it seems unnecessarily hostile.
    Last edited by Hodor; 12-11-2013 at 05:36 AM.

  10. #40
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    Altough I'm a quite experienced Java ( I reverse engineered Macromedia's RTMP protocol back in 2007, and written a Flash Media Server replacement in 64Kbytes ), Javascript, C, Objective-C programmer, I don't agree - to create a better C, you only have to know C.
    O_o

    If so, if you have experience with Objective-C and Javascript, what makes you think "mixin" classes which do not violate "OOP" principles are a design problem?

    In a case like this it's easier to put all methods in the Person class, and the headache is gone. The diamond problem is the same thing.
    Does this quote make it clearer?

    Simply "put all methods in the Person class" is itself a bad design decision.

    Throwing all globals and functions operating on those globals into a class isn't "Object Oriented Programming".

    Throwing all derived classes into a base class isn't "Object Oriented Programming".

    Your language, as is, would attempt to force users to make bad design decisions.

    *shrug*

    As you say though, it is surely your language; I'd just have you not repeat those mistakes.

    I've released a quite succesful game in the Mac/iOS store
    Congratulations. ^_^

    It's because I've followed this thread since it was created and, to me (my opinion), it seems unnecessarily hostile.
    Really now, alltogether compilers for C++, Java, Javascript and so on have several hundred, if not thousands, of years to work out some of the problems with implementing "OOP" facilities over C syntax so I'm not sure how you are seeing such posts as unnecessarily hostile.

    Soma
    “Salem Was Wrong!” -- Pedant Necromancer
    “Four isn't random!” -- Gibbering Mouther

  11. #41
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by Hodor View Post
    What? Why the hell not?
    MutantJohn pretty much echoed my concerns. For every language, there are tools and there is knowledge. Tools are necessary to produce good code. Knowledge is necessary to avoid quirks and write high quality code.
    By making a new language, you are throwing away all that works on the tools and the knowledge. And for what? Your quirky whim? There are times when you have to create a new language - when extending an existing one just won't work. But you know what? To know when to do so requires experience and resources. milgra has proven to not have these. I don't have that experience. I doubt many here on the board would qualify for that, even. That is why I object.

    Quote Originally Posted by milgra View Post
    If you say my language is faulty, then you say that C is faulty - my compiler just creates a longer C code from a shorter C code. It's still 100% standard C with structs and functions grouped together. What are the problems in my language? I converted all my projects to class-C, I've released a quite succesful game in the Mac/iOS store written in class C, the demo dynamics engine handles 40000 bouncing particles over 30fps, because they are in beautifully written C. Generated from Class-C code.
    Your language is an extension of C with new core features - and if those new features are faulty, how can the underlying language be faulty?

    Altough I'm a quite experienced Java ( I reverse engineered Macromedia's RTMP protocol back in 2007, and written a Flash Media Server replacement in 64Kbytes ), Javascript, C, Objective-C programmer, I don't agree - to create a better C, you only have to know C. Learning other languages can also plant bad concepts in your head, and they can stuck in your mind. I always appreciated those people who tried to create new things without the influence of similar existing things - after a hundred try they usually succeed. People who think these kind of dreamers are stupid - are just lazy.
    This is absolutely the worst thing I have heard - ever.
    If you only know C, then your view of the world is limited indeed and you are extremely disqualified for making a new language.
    I am quite disappointed in you.
    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.

  12. #42
    Registered User milgra's Avatar
    Join Date
    Dec 2013
    Location
    Szeged, HUN
    Posts
    16
    Quote Originally Posted by Elysia View Post
    I am quite disappointed in you.
    Cool, that's what gives me the willpower and the energy - for 33 years now.

  13. #43
    Registered User MutantJohn's Avatar
    Join Date
    Feb 2013
    Posts
    2,665
    Lol I only push C++ so hard because I was so diehard into C I would never give it the light of day. Needing objects and not using C++ but instead creating your own OOP version of C seems ludicrous to me. If you really need objects, just use the language that's there. Don't invent a horse and buggy when cars already exist, ya mean?

    And I think phantom's post brings up a lot of good points, learning a language that can benefit his career would mean a lot more than simply extending C which is technically what C++ did but back then, I think it was the first time, wasn't it?

    Nevertheless, C++ rules and all the other languages drool. Except for C, who sits dignified in the back.

  14. #44
    Registered User
    Join Date
    May 2009
    Posts
    4,183
    I am NOT sure why the OP just does NOT remove all the parts of C++ that he thinks is a waste.
    I know I would instead just ignore those parts; because, I have read about other people who just recommend using a sub-set of C++ in embedded programming.

    I have not read the two docs the OP has created; not worth my time to do that.
    I would really need a short description of what Class-C does better than C and C++ before I would waste time downloading a doc or pdf file.

    FYI: The main topic in languages seem to vary over the years from time to produce code versus effort needed to maintain the code.
    I suggest addressing these two points in comparing to C/C#/C++/object C.

    Tim S.
    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.." Bill Bryson

  15. #45
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    The main topic in languages seem to vary over the years from time to produce code versus effort needed to maintain the code.
    O_o

    I don't know about you, but I spend comparatively few minutes actually "producing code".

    The time consuming bits are deciding what code to produce and which of all those bits needs changed or eliminated.

    Soma
    “Salem Was Wrong!” -- Pedant Necromancer
    “Four isn't random!” -- Gibbering Mouther

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Which programming language?
    By Kranky in forum C++ Programming
    Replies: 6
    Last Post: 10-17-2012, 10:46 AM
  2. AI Programming language
    By knightjp in forum General AI Programming
    Replies: 37
    Last Post: 11-30-2008, 12:46 PM
  3. What's the Difference Between a Programming Language and a Scripting Language?
    By Krak in forum A Brief History of Cprogramming.com
    Replies: 23
    Last Post: 07-15-2005, 04:46 PM
  4. D programming language
    By silk.odyssey in forum A Brief History of Cprogramming.com
    Replies: 24
    Last Post: 01-07-2005, 08:58 AM
  5. which programming language should be used for socket programming?
    By albert_wong_bmw in forum Networking/Device Communication
    Replies: 8
    Last Post: 06-04-2004, 08:12 PM