[slf4j-user] Fail Silently on NOP implementation

Phillip Lord phillip.lord at russet.org.uk
Fri Apr 29 11:03:41 UTC 2016


Ceki Gulcu <ceki at qos.ch> writes:

> My comments are inline.
>
> On 4/29/2016 0:58, Robert Elliot wrote:
>> >
>> > As I have said, this distinction is artificial.
>>
>> It isn’t, in my opinion. The distinction between a process and a
>> library is fundamental. A process must, of its nature, have resolved
>> all its dependencies to concrete implementations. A library should, of
>> its nature, couple as lightly as possible to implementations of APIs
>> it depends on in order to free the hands of the process depending on
>> that library.
>>
>> It is of course easy to create an artefact that can be both be run as
>> a process and depended on as a library, but that conflates two
>> separate concerns and doing so is inherently problematic.
>
> Robert, I agree with you. The distinction of library vs. application
> is essential to the problem at hand.


I think that things have got a little side-tracked by this discussion
really. The problem at hand is whether a library should *by default*
print to standard out/err even in the absence of an error condition.

I think it should not.

I do acknowledge the bootstrap difficulty this causes for SLF4J, but
there are solutions. The issue of library vs. application only comes
into question when we discuss the problem with your solution (i.e bind
to nop).

Phil


More information about the slf4j-user mailing list