Successor to C, not C++?

Discussion in 'C Programming' started by heepa9@yahoo.com, Dec 20, 2005.

  1. Guest

    Is anyone working on a successor to C that
    will be object oriented but will not be C++?
    I want to avoid the problems that come with
    templates (which seem to tempt some people)
    and which would be acceptable for use on
    embedded platforms. Ideally, it would have
    exception handling. I ask this because I think,
    and almost everyone I speak with about it
    agrees, that C++ has gone down the wrong
    path in a number of ways. Notice, I'm not
    crossposting this to the C++ NG, because
    I really am seeking a thoughtful, knowledgeable
    response and not a religious flamewar.

    Thanks.
    PS: Please don't say objective C.
     
    , Dec 20, 2005
    #1
    1. Advertising

  2. P.J. Plauger Guest

    <> wrote in message
    news:...

    > Is anyone working on a successor to C that
    > will be object oriented but will not be C++?
    > I want to avoid the problems that come with
    > templates (which seem to tempt some people)
    > and which would be acceptable for use on
    > embedded platforms.


    Then you probably want EC++. It's already
    widely available on embedded C/C++ compilers.
    (Practically all of them use our library,
    also available at our web site.)

    > Ideally, it would have
    > exception handling.


    EC++ was speced without exception handling, but
    you can turn it on in our library.

    > I ask this because I think,
    > and almost everyone I speak with about it
    > agrees, that C++ has gone down the wrong
    > path in a number of ways. Notice, I'm not
    > crossposting this to the C++ NG, because
    > I really am seeking a thoughtful, knowledgeable
    > response and not a religious flamewar.


    That's kinda hard to avoid on this topic. FYI,
    the C committee did consider such a creature
    in the early 1990s. In the end, however, they
    backed off from it, mostly due to a lack of
    prior art (IMO).

    > Thanks.
    > PS: Please don't say objective C.


    I won't if you won't.

    P.J. Plauger
    Dinkumware, Ltd.
    http://www.dinkumware.com
     
    P.J. Plauger, Dec 20, 2005
    #2
    1. Advertising

  3. In article <>,
    <> wrote:
    >Is anyone working on a successor to C that
    >will be object oriented but will not be C++?


    "Successor" is too strong a word, but yes, someone is working on
    an alternative to C. Look at:

    http://www.digitalmars.com/d/

    --
    Rouben Rostamian
     
    Rouben Rostamian, Dec 20, 2005
    #3
  4. Guest

    It appears that the rationale with D is
    "more is better". In the comparison given
    between D and other languages, D always
    has more features. I am not sure this is a
    good idea, for one thing it can lead
    to bloat certainly in the compiler but
    possibly code too, but secondly it increases
    the risk of bugs compiler and code,
    especially if the number of people
    writing the compiler is small.
     
    , Dec 20, 2005
    #4
  5. Malcolm Guest

    <> wrote
    > Is anyone working on a successor to C that
    > will be object oriented but will not be C++?
    > I want to avoid the problems that come with
    > templates (which seem to tempt some people)
    > and which would be acceptable for use on
    > embedded platforms. Ideally, it would have
    > exception handling. I ask this because I think,
    > and almost everyone I speak with about it
    > agrees, that C++ has gone down the wrong
    > path in a number of ways. Notice, I'm not
    > crossposting this to the C++ NG, because
    > I really am seeking a thoughtful, knowledgeable
    > response and not a religious flamewar.
    >

    New languages are constantly being invented, and C is a popular base.

    Java seems to have most of the characteristics that you are asking for - it
    is basically an attempt to produce a cleaner C++. It also has the advantage
    of having achieved wide acceptance.
     
    Malcolm, Dec 20, 2005
    #5
  6. Randy Howard Guest

    wrote
    (in article
    <>):

    > Is anyone working on a successor to C that
    > will be object oriented but will not be C++?


    There is also a "D" language, which has a set of newsgroups
    hosted by Digital Mars, but probably not carried by your normal
    news feed. I'm not too familiar with it, and don't know whether
    or not it is really OOP or not. I spent about 30 minutes
    looking at it once, so the newsgroups over there would be a
    better place to find out.

    > PS: Please don't say objective C.


    Oops. That's what I was thinking, although it is a far cry from
    a perfect language, it has been used for a lot of GUI apps on
    the Mac platform successfully.

    How close to C do you want this language to be in syntax? Does
    it even need to be close, or just have the features you want?
    At any rate, since this isn't about C per se, but a hoped-for
    alternative, comp.programming might be a better place.



    --
    Randy Howard (2reply remove FOOBAR)
    "The power of accurate observation is called cynicism by those
    who have not got it." - George Bernard Shaw
     
    Randy Howard, Dec 20, 2005
    #6
  7. Randy Howard <> writes:
    > wrote
    > (in article
    > <>):
    >
    >> Is anyone working on a successor to C that
    >> will be object oriented but will not be C++?

    >
    > There is also a "D" language, which has a set of newsgroups
    > hosted by Digital Mars, but probably not carried by your normal
    > news feed. I'm not too familiar with it, and don't know whether
    > or not it is really OOP or not. I spent about 30 minutes
    > looking at it once, so the newsgroups over there would be a
    > better place to find out.


    There have been several languages called "D" (it's an obvious name for
    something intended to be a successor to C, which is an obvious thing
    to want to create). The one from Digital Mars is probably the best
    known at this point.

    [snip]

    > How close to C do you want this language to be in syntax? Does
    > it even need to be close, or just have the features you want?
    > At any rate, since this isn't about C per se, but a hoped-for
    > alternative, comp.programming might be a better place.


    Or comp.lang.misc.

    --
    Keith Thompson (The_Other_Keith) <http://www.ghoti.net/~kst>
    San Diego Supercomputer Center <*> <http://users.sdsc.edu/~kst>
    We must do something. This is something. Therefore, we must do this.
     
    Keith Thompson, Dec 20, 2005
    #7
  8. Chuck F. Guest

    wrote:
    >
    > Is anyone working on a successor to C that will be object
    > oriented but will not be C++? I want to avoid the problems that
    > come with templates (which seem to tempt some people) and which
    > would be acceptable for use on embedded platforms. Ideally, it
    > would have exception handling. I ask this because I think, and
    > almost everyone I speak with about it agrees, that C++ has gone
    > down the wrong path in a number of ways. Notice, I'm not
    > crossposting this to the C++ NG, because I really am seeking a
    > thoughtful, knowledgeable response and not a religious flamewar.


    There are and have been several, including Modula and Ada. Ada is
    probably the most successful.

    --
    Some useful references about C:
    <http://www.ungerhu.com/jxh/clc.welcome.txt>
    <http://www.eskimo.com/~scs/C-faq/top.html>
    <http://benpfaff.org/writings/clc/off-topic.html>
    <http://anubis.dkuug.dk/jtc1/sc22/wg14/www/docs/n869/> (C99)
    <http://www.dinkumware.com/refxc.html> (C-library}
    <http://gcc.gnu.org/onlinedocs/> (GNU docs)
     
    Chuck F., Dec 20, 2005
    #8
  9. Richard Bos Guest

    "Chuck F. " <> wrote:

    > wrote:
    > >
    > > Is anyone working on a successor to C that will be object
    > > oriented but will not be C++?

    >
    > There are and have been several, including Modula and Ada. Ada is
    > probably the most successful.


    Those are successors to Pascal, not to C, though.

    Richard
     
    Richard Bos, Dec 21, 2005
    #9
  10. Chuck F. Guest

    Richard Bos wrote:
    > "Chuck F. " <> wrote:
    >> wrote:
    >>>
    >>> Is anyone working on a successor to C that will be object
    >>> oriented but will not be C++?

    >>
    >> There are and have been several, including Modula and Ada.
    >> Ada is probably the most successful.

    >
    > Those are successors to Pascal, not to C, though.


    They are all procedural languages, and actually bear a closer
    resemblance to C than does C++, if you except the use of weird
    syntax. Ada has managed to graft on object oriented extensions in
    a clean manner.

    --
    Some useful references about C:
    <http://www.ungerhu.com/jxh/clc.welcome.txt>
    <http://www.eskimo.com/~scs/C-faq/top.html>
    <http://benpfaff.org/writings/clc/off-topic.html>
    <http://anubis.dkuug.dk/jtc1/sc22/wg14/www/docs/n869/> (C99)
    <http://www.dinkumware.com/refxc.html> (C-library}
    <http://gcc.gnu.org/onlinedocs/> (GNU docs)
     
    Chuck F., Dec 21, 2005
    #10
  11. wrote:
    > Is anyone working on a successor to C that
    > will be object oriented but will not be C++?
    > I want to avoid the problems that come with
    > templates (which seem to tempt some people)
    > and which would be acceptable for use on
    > embedded platforms. Ideally, it would have
    > exception handling. I ask this because I think,
    > and almost everyone I speak with about it
    > agrees, that C++ has gone down the wrong
    > path in a number of ways. Notice, I'm not
    > crossposting this to the C++ NG, because
    > I really am seeking a thoughtful, knowledgeable
    > response and not a religious flamewar.
    >
    > Thanks.
    > PS: Please don't say objective C.


    Over the past two year, I have been developping OOC which I plan to make
    public at the beginning of 2006 (January or February). OOC is pure C89
    code (C99 is a must) including some macros and lib and provides the
    following features:

    - Objects, Classes, Metaclasses and Protocols (everything is object)
    - Inheritance and polymorphism (including covariant types)
    - Strong code insulation (including ADT for class instances)
    - Dynamic late-binding (methods, reassignable)
    - Dynamic binding (protocols + methods)
    - Type delegation (multiple inheritance, dynamic inheritance)
    - Generic classes (genericity)
    - Exceptions (non local errors)
    - Simplified memory management (exception protection, efficiency)
    - Closure and Composition (high order functions)
    - Reflection (automatic metadata generation, requires ffi for non-obj)
    - UnitTests (use reflection)
    - Class dynamic loading (requires posix dynamic library)
    - Threads (requires posix thread)

    This is not a "new langage", neither another preprocessor. It is just
    some C tricks that make possible to do OOP nearly as in Java.

    a+, ld.
     
    Laurent Deniau, Dec 21, 2005
    #11
  12. Guest

    I whole heartedly agree. I had a co-worker who was interested in D
    because he saw that chart showing the features that D has in comparison
    to C++. It looks really silly, that chart, like little more than a
    marketing gimmick. Some of the things that they listed as C++ not
    having is clever lying. C++ does have some of those things, they are
    just available through the standard libraries instead of native
    features which really makes you stop to wonder how bogged down D must
    be with features that you'll probably not need for any given
    application. Sure would be nice if they included that little tidbit,
    or maybe just a row for speed as well where they explain how much
    slower D is than C++.
     
    , Dec 22, 2005
    #12
  13. Laurent Deniau wrote:
    > wrote:
    >
    >> Is anyone working on a successor to C that
    >> will be object oriented but will not be C++?
    >> I want to avoid the problems that come with
    >> templates (which seem to tempt some people)
    >> and which would be acceptable for use on
    >> embedded platforms. Ideally, it would have
    >> exception handling. I ask this because I think,
    >> and almost everyone I speak with about it
    >> agrees, that C++ has gone down the wrong
    >> path in a number of ways. Notice, I'm not
    >> crossposting this to the C++ NG, because
    >> I really am seeking a thoughtful, knowledgeable
    >> response and not a religious flamewar.
    >>
    >> Thanks.
    >> PS: Please don't say objective C.

    >
    >
    > Over the past two year, I have been developping OOC which I plan to make
    > public at the beginning of 2006 (January or February). OOC is pure C89
    > code (C99 is a must) including some macros and lib and provides the
    > following features:
    >
    > - Objects, Classes, Metaclasses and Protocols (everything is object)
    > - Inheritance and polymorphism (including covariant types)
    > - Strong code insulation (including ADT for class instances)
    > - Dynamic late-binding (methods, reassignable)
    > - Dynamic binding (protocols + methods)
    > - Type delegation (multiple inheritance, dynamic inheritance)
    > - Generic classes (genericity)
    > - Exceptions (non local errors)
    > - Simplified memory management (exception protection, efficiency)
    > - Closure and Composition (high order functions)
    > - Reflection (automatic metadata generation, requires ffi for non-obj)
    > - UnitTests (use reflection)
    > - Class dynamic loading (requires posix dynamic library)
    > - Threads (requires posix thread)
    >
    > This is not a "new langage", neither another preprocessor. It is just
    > some C tricks that make possible to do OOP nearly as in Java.


    You might want to know that OOC is also the name of an Oberon-2 compiler
    (http://sourceforge.net/projects/ooc). By the way, Oberon-2 is a
    language that supports object oriented programming and it resembles C in
    terms of size (smaller than C) and efficiency.


    August

    --
    I am the "ILOVEGNU" signature virus. Just copy me to your
    signature. This email was infected under the terms of the GNU
    General Public License.
     
    August Karlstrom, Dec 23, 2005
    #13
  14. Guest

    Please share the slides when they are available. It sounds very
    interesting.
     
    , Dec 23, 2005
    #14
  15. Chuck F. Guest

    wrote:
    >
    > Please share the slides when they are available. It sounds very
    > interesting.


    What slides? What is interesting? Without context your message is
    completely meaningless. See below.

    --
    "If you want to post a followup via groups.google.com, don't use
    the broken "Reply" link at the bottom of the article. Click on
    "show options" at the top of the article, then click on the
    "Reply" at the bottom of the article headers." - Keith Thompson
    More details at: <http://cfaj.freeshell.org/google/>
     
    Chuck F., Dec 23, 2005
    #15
  16. a écrit :
    > Is anyone working on a successor to C that
    > will be object oriented but will not be C++?


    Digital Mars D-language ?

    <...>
    > PS: Please don't say objective C.


    Why not ?

    --
    A+

    Emmanuel Delahaye
     
    Emmanuel Delahaye, Dec 23, 2005
    #16
  17. Marco Guest

    "This is not a "new langage", neither another preprocessor. It is just
    some C tricks that make possible to do OOP nearly as in Java."

    There have been quite a few "OOC" implementations using macros over
    the years. I hope you spent some time looking at those.
    If you need some references let me know.

    Keep us posted.
     
    Marco, Dec 26, 2005
    #17
  18. Marco wrote:
    > "This is not a "new langage", neither another preprocessor. It is just
    > some C tricks that make possible to do OOP nearly as in Java."
    >
    > There have been quite a few "OOC" implementations using macros over
    > the years. I hope you spent some time looking at those.


    Yes, I have read about 20 papers and 2 books on this topic from the 90's
    to now. The only serious proposals were the other OOC:

    http://www.planetpdf.com/codecuts/pdfs/ooc.pdf

    and my early not complete and too heavy approach (where you will find
    some of the references):

    http://www.cern.ch/ldeniau/html/oopc/oopc.html

    The others publications were more oriented to syntactic OO features than
    OO concepts.

    > If you need some references let me know.


    If you can send me your list of reference, I will check if I did not
    miss one ;-)

    a+, ld.
     
    Laurent Deniau, Dec 27, 2005
    #18
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. George W. Cherry

    Successor to Java?

    George W. Cherry, Sep 13, 2004, in forum: Java
    Replies:
    13
    Views:
    2,727
    George W. Cherry
    Sep 14, 2004
  2. Christian Christmann

    successor function for STL lists

    Christian Christmann, May 12, 2005, in forum: C++
    Replies:
    4
    Views:
    392
    Kai-Uwe Bux
    May 13, 2005
  3. Paul Hsieh

    Re: Designing a successor to C

    Paul Hsieh, Jun 24, 2003, in forum: C Programming
    Replies:
    67
    Views:
    2,375
    Edward G. Nilges
    Jul 31, 2003
  4. Dan Pop

    Re: Designing a successor to C

    Dan Pop, Jun 24, 2003, in forum: C Programming
    Replies:
    0
    Views:
    1,129
    Dan Pop
    Jun 24, 2003
  5. Chris

    Re: Designing a successor to C

    Chris, Jun 24, 2003, in forum: C Programming
    Replies:
    0
    Views:
    1,260
    Chris
    Jun 24, 2003
Loading...

Share This Page