Re: Call for volunteers for C/C++ API liaison manager

Thomas Nadeau <tnadeau@lucidvision.com> Thu, 01 May 2014 17:40 UTC

Return-Path: <tnadeau@lucidvision.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7589A1A6F78; Thu, 1 May 2014 10:40:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.553
X-Spam-Level:
X-Spam-Status: No, score=-2.553 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.651, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eAiThrxB_MKB; Thu, 1 May 2014 10:40:49 -0700 (PDT)
Received: from lucidvision.com (lucidvision.com [72.71.250.34]) by ietfa.amsl.com (Postfix) with ESMTP id D9D4A1A073F; Thu, 1 May 2014 10:40:48 -0700 (PDT)
Received: from [192.168.1.112] (static-72-71-250-38.cncdnh.fast04.myfairpoint.net [72.71.250.38]) by lucidvision.com (Postfix) with ESMTP id C73D7278BE31; Thu, 1 May 2014 13:40:46 -0400 (EDT)
Content-Type: multipart/signed; boundary="Apple-Mail=_3AEF0A5F-22AD-4007-8432-36B1C3B82681"; protocol="application/pgp-signature"; micalg=pgp-sha512
Mime-Version: 1.0 (Mac OS X Mail 7.2 \(1874\))
Subject: Re: Call for volunteers for C/C++ API liaison manager
From: Thomas Nadeau <tnadeau@lucidvision.com>
In-Reply-To: <5362867E.4090407@isi.edu>
Date: Thu, 1 May 2014 13:40:44 -0400
Message-Id: <29BD1026-2CFC-49B2-8325-6088EF2FC1A8@lucidvision.com>
References: <EB423B81-41F2-480D-B1EE-80E1753E1CDB@iab.org> <53618BDD.1080900@isi.edu> <368E668C-E60A-4D65-B3C6-F3CFCB66EBA7@lucidvision.com> <536261F0.1070004@isi.edu> <F12396FD-1035-4530-948C-FBD02DF741D6@lucidvision.com> <53627B10.1080906@isi.edu> <C1014F9B-B387-4251-8E65-99DDB560BB16@lucidvision.com> <5362867E.4090407@isi.edu>
To: Joe Touch <touch@isi.edu>
X-Mailer: Apple Mail (2.1874)
Archived-At: http://mailarchive.ietf.org/arch/msg/ietf/R7khwIu3NViYIJX9d1G-rtq5JQo
Cc: IAB <iab@iab.org>, IETF <ietf@ietf.org>, IETF Announce <ietf-announce@ietf.org>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 01 May 2014 17:40:50 -0000

On May 1, 2014:1:38 PM, at 1:38 PM, Joe Touch <touch@isi.edu> wrote:

> 
> 
> On 5/1/2014 10:33 AM, Thomas Nadeau wrote:
>> 
>> On May 1, 2014:12:49 PM, at 12:49 PM, Joe Touch <touch@isi.edu> wrote:
>> 
>>> 
>>> 
>>> On 5/1/2014 8:26 AM, Thomas Nadeau wrote:
>>>> 
>>>> On May 1, 2014:11:02 AM, at 11:02 AM, Joe Touch <touch@isi.edu> wrote:
>>>> 
>>>>> 
>>>>> On 5/1/2014 5:12 AM, Thomas Nadeau wrote:
>>>>>> 
>>>>>> 	APIs are not that useful unless there is code behind them.
>>>>> 
>>>>> Ultimately, yes. But the code represents an instance of the API.
>>>> 
>>>> That depends on your perspective. These days the code IS the API, in
>>>> particular open source code. Standards bodies do not need to define the
>>>> APIs; implementation communities do that already. The IETF should
>>>> probably stick to on-the-wire protocols.
>>> 
>>> A protocol is defined by:
>>> 
>>> 	- internal state
>>> 	- message "on the wire" formats
>>> 	- upper layer events
>>> 	- lower layer events (message arrivals/departures)
>>> 	- time events
>>> 
>>> Leave any of the 6 above out and you have an incomplete spec.
>>> 
>>> The "on the wire" part is only a fraction of what's needed. If you don't believe that, then write a TCP implementation from the header format alone, and let's see how well it works.
>> 
>> 	Why do any of those things need a standards-based API to program to?
> 
> The API is the upper-layer events. Without that, you can't define the semantics of the interaction with the upper layer.
> 
> FWIW, I'm talking about IETF standard API, not Unix-standard or C-standard. The latter are required to ensure implementation compatibility, but can't be defined without the former.

	I guess we will have to agree to disagree.  I just don't see why that is going to be useful to anyone.  If you were talking about open source and/or reference implementations that the source was available for, then that makes far more sense to me.

	--Tom