← Back to context

Comment by kazinator

1 day ago

Is the Foo kernel 75% of the code base, 5% or 0.01%?

I’m not getting dragged into a strawman argument about meaningless hypothetical percentages of a vague and arbitrary illustration. And particularly not when the point being made was pretty clear:

> “Portable”, in the context of how it was used, generally refers to software using platform agnostic idioms.

  • Portable has two meanings: a construct is portable if we can rely on it to work everywhere. A portable codebase is one that supports moving to a new platform, with some nonzero effort which is not large compared to rewriting the code. It is able to be ported. E.g, "Johnson's Portable C Compiler (PCC)".

    If only the Foo kernel must be rewritten in order to port Foo, but that kernel is 75% of Foo, then I would say Foo is not portable. If the kernel is 0.1% of Foo, then I would say that it is: 99.9% of the code base depends on the abstractions in the Foo kernel rather than platform features.

    • > “Portable”, in the context of how it was used, generally refers to software using platform agnostic idioms.

      “in the context of how it was used,”

      This isn’t some meta conversation about how to write portable software. This is a conversation specific to what the author had written about their project.

      1 reply →