[Cuis] Fwd: Re: DIRECT version number
Juan Vuletich
juan at jvuletich.org
Mon Aug 3 13:49:55 CDT 2015
Hi Doug,
On 8/2/2015 4:04 AM, Douglas Brebner wrote:
> On 19/07/2015 22:38, Phil (list) wrote:
>> Ready to go... we just need to agree on how to do it (pragma/method
>> call/method category/method name?) Also, this is most definitely
>> related to the 'Canonical test cases?' thread from a few months ago
>> as these types of test cases / docs are part of the backfill I was
>> referring to.
>
> I vaguely recall that many years ago there was a project called
> SmallInterfaces that let you define public interfaces to objects. (Or
> something like that). Would that be a good way to document the
> public/private api using code?
>
> (sorry for being so vague but I've been awake for 24+ hours now)
Thanks for the pointer. I took a look at it. It is quite like Java
interfaces. The tools are interesting. But I see several downsides:
- Each interface is a class. Each method in the protocol is an actual
method. If we use this to document all public protocols in Cuis, it
would mean a lot of new classes and methods.
- The source code of (for example) OrderedCollection>>at: would not
include the information of it belonging to interface "Indexable".
Without additional support from tools users can't tell whether a message
is public protocol or not. And the base image / package maintainer can't
easily see he's about to change a public api.
I think a method pragma, that includes the name of the protocol avoids
these issues and is a better choice.
Cheers,
Juan Vuletich
More information about the Cuis
mailing list