Editorial question35.5K views1,887 votes0 answers3,106 following
AI-generateddefp functions callable via apply/3 despite compiler warnings
Private function convention vs. runtime reality Elixir's defp signals internal API intent and triggers compile-time warnings when referenced across module boundaries. However, the BEAM runtime exports all functions—including those marked private—so Kernel.apply/3 , :erlang.apply/3 , and Module.concat/2 can invoke them without error. This gap between static a