Mitigating the attribute proliferation - attribute inference for functions

Steven Schveighoffer via Digitalmars-d digitalmars-d at puremagic.com
Mon Jul 20 08:00:10 PDT 2015


On 7/17/15 8:45 AM, Martin Nowak wrote:
> On 04/13/2015 04:09 PM, Steven Schveighoffer wrote:
>>
>> Now, I understand you only want to apply this inference to internal
>> functions. The problem is, there aren't very many of those.
>
> What? Phobos is a special case, not the norm.
> A typical library consists of an API and an implementation.
> Think of OpenSSL, zip, curl, freetype, a rasterizer, a web framework, a
> database client.
>

Sorry, I'm trying to recollect my thoughts here, this was 3 months ago.

Looking at your request, it seems reasonable, maybe I didn't read it 
with the right mindset.

But I'm not 100% sure what it is you are asking. Are you asking for 
function attribute inference on all functions, or just on private ones? 
I can see that private functions probably can have attribute inference 
since they are only accessible from within the module, obviously the 
source is always available to other functions being compiled in the 
module, and it's not part of the public API.

If you are asking to be able to infer attributes on public functions, I 
don't think we should do that. My point may have been that the bulk of 
functions written are public, especially for aggregate types like 
classes or structs. I don't think that's atypical.

-Steve


More information about the Digitalmars-d mailing list