[ANN] DBC for C 1.3.0 released

Discussion in 'Ruby' started by Charles Mills, Dec 2, 2004.

  1. Charles Mills, Dec 2, 2004
    #1
    1. Advertising

  2. Friedrich Dominicus wrote:

    > Charles Mills <> writes:
    >
    >
    >>This is a very high quality release thanks to Sebastian Hunt and Marc
    >>Verwerft. DBC for C now has exceptional GCC support (including GCC
    >>extensions) and is significantly quicker and more polished than the
    >>initial releases. (Also has Windows support as of 1.2.3.)

    >
    >
    > good idea but what's the difference to GEF?
    > http://home.rochester.rr.com/bigbyofrocny/GEF/GEF.html
    >


    As far as I understand it, DBC for C uses comments in the header file to
    genrarte contract checking code, whereas GEF hides the contracts
    specification in the implementation.

    regards,
    Henrik
    Henrik Horneber, Dec 3, 2004
    #2
    1. Advertising

  3. Charles Mills <> writes:

    > This is a very high quality release thanks to Sebastian Hunt and Marc
    > Verwerft. DBC for C now has exceptional GCC support (including GCC
    > extensions) and is significantly quicker and more polished than the
    > initial releases. (Also has Windows support as of 1.2.3.)


    good idea but what's the difference to GEF?
    http://home.rochester.rr.com/bigbyofrocny/GEF/GEF.html

    Regards
    Friedrich

    --
    Please remove just-for-news- to reply via e-mail.
    Friedrich Dominicus, Dec 3, 2004
    #3
  4. On Dec 3, 2004, at 9:29 AM, Henrik Horneber wrote:

    > Friedrich Dominicus wrote:
    >
    >> Charles Mills <> writes:
    >>> This is a very high quality release thanks to Sebastian Hunt and
    >>> Marc Verwerft. DBC for C now has exceptional GCC support (including
    >>> GCC extensions) and is significantly quicker and more polished than
    >>> the initial releases. (Also has Windows support as of 1.2.3.)

    >> good idea but what's the difference to GEF?
    >> http://home.rochester.rr.com/bigbyofrocny/GEF/GEF.html

    >

    GEF uses the C preprocessor. DBC for C is a preprocessor. I tried
    using GEF (before I began working on DBC for C) and found it too
    complicated to use. DBC for C is pretty simple - all you need to do is
    define a function/macro - dbc_error(const char *msg) - which gets
    called whenever a contract condition is not met. See this article:
    http://www.codegeneration.net/tiki-read_article.php?articleId=72
    or the wiki (dbc.rubyforge.org) for more info.

    One nice thing about DBC for C is it is easy to inject into existing
    project or remove if it doesn't meet your needs. You can compile the
    code normally or with contract checks in place... add invariants that
    will be checked in through out your project... if it sounds interesting
    I encourage you to check out the links above. Also there is a pretty
    active mailing list for DBC for C here:
    http://rubyforge.org/mail/?group_id=354

    > As far as I understand it, DBC for C uses comments in the header file
    > to genrarte contract checking code, whereas GEF hides the contracts
    > specification in the implementation.
    >

    That's right.... header files and .c files. Most of the DBC comment
    will be in .c files, especially if you use opaque types.
    With GEF contract specifications are part of your function and are
    manipulated using preprocessor macros.

    -Charlie
    Charles Mills, Dec 3, 2004
    #4
    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. christopher diggins
    Replies:
    7
    Views:
    562
    Thorsten Ottosen
    Apr 21, 2004
  2. Lie Ryan

    Re: Static typing, Python, D, DbC

    Lie Ryan, Sep 11, 2010, in forum: Python
    Replies:
    7
    Views:
    398
    Paul Rubin
    Sep 13, 2010
  3. Ed Keith

    Re: Static typing, Python, D, DbC

    Ed Keith, Sep 12, 2010, in forum: Python
    Replies:
    3
    Views:
    303
    John Nagle
    Sep 13, 2010
  4. Charles Mills

    [ANN] DBC for C 1.1.2

    Charles Mills, Nov 2, 2004, in forum: Ruby
    Replies:
    0
    Views:
    90
    Charles Mills
    Nov 2, 2004
  5. Charles Mills

    [ANN] DBC for C - 1.2.1

    Charles Mills, Nov 5, 2004, in forum: Ruby
    Replies:
    0
    Views:
    80
    Charles Mills
    Nov 5, 2004
Loading...

Share This Page