Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #24225

Re: The C Containers Library

From Ike Naar <ike@faeroes.freeshell.org>
Newsgroups comp.lang.c
Subject Re: The C Containers Library
Date 2012-08-04 23:13 +0000
Organization A noiseless patient Spider
Message-ID <slrn3vfsk1rb47.5vi.ike@faeroes.freeshell.org> (permalink)
References <4FF9E523.6000006@spamsink.net> <b230eaf2-b8da-4f8f-a32d-dfc6539a931d@googlegroups.com> <jvjjee$9pg$1@speranza.aioe.org> <slrn3vfsk1qtag.pae.ike@faeroes.freeshell.org> <jvk6up$sqp$1@speranza.aioe.org>

Show all headers | View raw


On 2012-08-04, jacob navia <jacob@spamsink.net> wrote:
> Le 04/08/12 21:17, Ike Naar a ?crit :
>> If the type of the header structure were known to the program,
>> there would be a simpler solution:
>
> Yes, but that would break the complete separation between the 
> implementation and the specifications. As it is now, a complete change 
> in the inner structure of the containers doesn't need even a 
> recompilation in user code since all the data types are completely 
> hidden. This is a very strong requirement of the libray and I have done 
> everything to ensure that all containers data types are compeletly 
> opaque to user code.

The data types are not *completely* hidden. For instance, the trick
with the pointer-to-void exposes the knowledge that the alignment of the
header structure is not stricter that the alignment of a pointer to void.

"Hidden" assumption like these make the code fragile. The user may
think it is safe not to recompile, when it may in fact be dangerous.

If there are any compile-time dependencies between user code and
the library, it is safer to make them explicit than to pretend
they're not there. Doing unnecessary compilations may be bad, but
not doing necessary compilations is far worse.

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-08 21:53 +0200
  Re: The C Containers Library aftnix <aftnix@gmail.com> - 2012-07-26 13:13 -0700
    Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-26 22:31 +0200
      Re: The C Containers Library lawrence.jones@siemens.com - 2012-07-28 17:46 -0400
        Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-29 02:05 +0200
          Re: The C Containers Library lawrence.jones@siemens.com - 2012-07-30 14:48 -0400
          Re: The C Containers Library Phil Bradby <nospam@nospam.com> - 2012-08-01 21:00 +0000
            Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-08-01 23:18 +0200
            Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-08-02 00:48 -0700
              Re: The C Containers Library James Kuyper <jameskuyper@verizon.net> - 2012-08-02 07:00 -0400
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-08-02 13:27 +0200
                Re: The C Containers Library Quentin Pope <qp19433@hotmail.NOSPAM.com> - 2012-08-02 20:27 +0000
                Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-08-02 05:13 -0700
                Re: The C Containers Library Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-08-02 14:26 -0700
                Re: The C Containers Library Kenneth Brody <kenbrody@spamcop.net> - 2012-08-03 10:47 -0400
        Re: The C Containers Library Noob <root@localhost> - 2012-07-29 09:58 +0200
          Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-07-30 00:31 -0600
            Re: The C Containers Library Noob <root@localhost> - 2012-07-30 09:45 +0200
              Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-07-30 02:10 -0700
          Re: The C Containers Library lawrence.jones@siemens.com - 2012-07-30 14:54 -0400
    Re: The C Containers Library James Kuyper <jameskuyper@verizon.net> - 2012-07-26 16:52 -0400
      Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-26 22:56 +0200
        Re: The C Containers Library pacman@kosh.dhis.org (Alan Curry) - 2012-07-26 22:29 +0000
          Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-27 01:50 +0200
            Re: The C Containers Library pacman@kosh.dhis.org (Alan Curry) - 2012-07-27 22:28 +0000
          Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-07-29 06:31 -0700
            Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-07-30 00:26 -0600
              Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-07-30 02:21 -0700
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-08-02 02:27 -0600
                Re: The C Containers Library Rui Maciel <rui.maciel@gmail.com> - 2012-08-02 16:43 +0100
                Re: The C Containers Library Ansel <lateknightdev@gmail.com> - 2012-08-02 17:07 -0700
                Re: The C Containers Library Rui Maciel <rui.maciel@gmail.com> - 2012-08-03 22:21 +0100
                Re: The C Containers Library Ansel <lateknightdev@gmail.com> - 2012-08-03 15:43 -0700
                Re: The C Containers Library Anders Wegge Keller <wegge@wegge.dk> - 2012-08-04 06:32 +0200
                Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-08-04 01:52 -0700
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-08-04 22:36 -0600
                Re: The C Containers Library Anders Wegge Keller <wegge@wegge.dk> - 2012-08-05 08:36 +0200
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-08-05 01:28 -0600
                Re: The C Containers Library Anders Wegge Keller <wegge@wegge.dk> - 2012-08-05 11:31 +0200
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-08-05 03:48 -0600
            Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-08-04 03:41 -0700
        Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-27 01:55 +0200
  Re: The C Containers Library wkaras@yahoo.com - 2012-07-26 13:45 -0700
    Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-26 22:53 +0200
      Re: The C Containers Library wkaras@yahoo.com - 2012-07-26 18:46 -0700
        Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-27 10:59 +0200
          Re: The C Containers Library gwowen <gwowen@gmail.com> - 2012-07-27 03:39 -0700
          Re: The C Containers Library wkaras@yahoo.com - 2012-07-27 11:34 -0700
        Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-27 11:04 +0200
          Re: The C Containers Library W Karas <wkaras@yahoo.com> - 2012-07-27 13:10 -0700
  Re: The C Containers Library wkaras@yahoo.com - 2012-07-26 18:54 -0700
    Re: The C Containers Library James Kuyper <jameskuyper@verizon.net> - 2012-07-27 10:25 -0400
      Re: The C Containers Library wkaras@yahoo.com - 2012-07-27 11:28 -0700
        Re: The C Containers Library James Kuyper <jameskuyper@verizon.net> - 2012-07-27 15:17 -0400
          Re: The C Containers Library wkaras@yahoo.com - 2012-07-27 13:00 -0700
          Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-29 02:02 +0200
            Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-07-28 22:08 -0600
              Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-29 08:46 +0200
                Re: The C Containers Library pacman@kosh.dhis.org (Alan Curry) - 2012-07-29 07:43 +0000
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-29 09:59 +0200
                Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-07-29 06:43 -0700
                Re: The C Containers Library pacman@kosh.dhis.org (Alan Curry) - 2012-07-29 17:27 +0000
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-29 20:56 +0200
                Re: The C Containers Library pacman@kosh.dhis.org (Alan Curry) - 2012-07-30 00:07 +0000
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-07-30 00:07 -0600
                Re: The C Containers Library Keith Thompson <kst-u@mib.org> - 2012-07-29 11:58 -0700
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-29 22:06 +0200
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-29 22:23 +0200
                Re: The C Containers Library Melzzzzz <mel@zzzzz.invalid> - 2012-07-30 00:13 +0200
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-07-30 00:13 -0600
                Re: The C Containers Library Keith Thompson <kst-u@mib.org> - 2012-07-30 01:10 -0700
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-07-30 02:57 -0600
                Re: The C Containers Library Jorgen Grahn <grahn+nntp@snipabacken.se> - 2012-07-30 15:47 +0000
                Re: The C Containers Library Keith Thompson <kst-u@mib.org> - 2012-07-30 13:01 -0700
                Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-07-30 04:53 -0700
                Re: The C Containers Library Keith Thompson <kst-u@mib.org> - 2012-07-30 13:04 -0700
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-08-02 02:11 -0600
                Re: The C Containers Library James Kuyper <jameskuyper@verizon.net> - 2012-08-02 06:52 -0400
                Re: The C Containers Library James Kuyper <jameskuyper@verizon.net> - 2012-08-02 06:46 -0400
                Re: The C Containers Library Rui Maciel <rui.maciel@gmail.com> - 2012-07-30 00:41 +0100
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-30 09:45 +0200
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-07-29 23:05 -0600
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-07-29 22:52 -0600
                Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-07-30 04:56 -0700
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-08-02 02:07 -0600
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-30 17:49 +0200
        Re: The C Containers Library Rui Maciel <rui.maciel@gmail.com> - 2012-07-28 09:17 +0100
          Re: The C Containers Library W Karas <wkaras@yahoo.com> - 2012-07-28 15:17 -0700
            Re: The C Containers Library Rui Maciel <rui.maciel@gmail.com> - 2012-07-29 11:10 +0100
        Re: The C Containers Library Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-07-28 06:51 -0700
          Re: The C Containers Library Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-07-28 17:23 +0100
            Re: The C Containers Library Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-07-30 13:40 -0700
              Re: The C Containers Library Melzzzzz <mel@zzzzz.invalid> - 2012-07-31 00:24 +0200
          Re: The C Containers Library Melzzzzz <mel@zzzzz.invalid> - 2012-07-31 00:05 +0200
          Re: The C Containers Library Rui Maciel <rui.maciel@gmail.com> - 2012-07-31 00:53 +0100
            Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-07-31 09:24 +0200
            Re: The C Containers Library Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-08-02 14:45 -0700
              Re: The C Containers Library Rui Maciel <rui.maciel@gmail.com> - 2012-08-03 22:31 +0100
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-08-04 00:01 +0200
                Re: The C Containers Library Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-08-03 23:45 +0100
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-08-04 22:47 -0600
                Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-08-04 22:41 -0600
                Re: The C Containers Library Rui Maciel <rui.maciel@gmail.com> - 2012-08-07 10:24 +0100
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-08-07 15:30 +0200
                Re: The C Containers Library Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-08-07 15:35 +0100
                Re: The C Containers Library Tim Rentsch <txr@alumni.caltech.edu> - 2012-09-07 12:40 -0700
                Re: The C Containers Library Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-09-08 00:07 +0100
                Re: The C Containers Library Tim Rentsch <txr@alumni.caltech.edu> - 2012-09-07 17:31 -0700
                Re: The C Containers Library Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-09-08 03:14 +0100
                Re: The C Containers Library Tim Rentsch <txr@alumni.caltech.edu> - 2012-09-08 05:22 -0700
                Re: The C Containers Library Tim Rentsch <txr@alumni.caltech.edu> - 2012-09-07 12:36 -0700
                Re: The C Containers Library Nick Keighley <nick_keighley_nospam@hotmail.com> - 2012-08-08 02:26 -0700
                Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-08-08 17:25 +0200
            Re: The C Containers Library 88888 Dihedral <dihedral88888@googlemail.com> - 2012-08-03 16:04 -0700
  Re: The C Containers Library SG <s.gesemann@gmail.com> - 2012-08-04 04:52 -0700
    Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-08-04 18:42 +0200
      Re: The C Containers Library Ike Naar <ike@faeroes.freeshell.org> - 2012-08-04 19:17 +0000
        Re: The C Containers Library Ike Naar <ike@faeroes.freeshell.org> - 2012-08-04 19:22 +0000
        Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-08-04 22:14 +0200
        Re: The C Containers Library jacob navia <jacob@spamsink.net> - 2012-08-05 00:15 +0200
          Re: The C Containers Library Ike Naar <ike@faeroes.freeshell.org> - 2012-08-04 23:13 +0000
            Re: The C Containers Library "Ansel" <tinker454@trytospammenowloser.com> - 2012-08-04 22:53 -0600

csiph-web