It's literally standard practice. You import assert.h unless the end user has defined mylib_assert in which case you don't import and use that instead. Failing to do this can result in all kinds of dumb problems thanks to the namespace being global.
You sound as if "my asserts will all always be run via NDEBUG" makes perfect sense and not the exact opposite of what you've expanded it to
> Its common practice
not really, no
post ++11 cpp has been moving away from preprocessor (pedagogically and culturally), so "let's force-undefine NDEBUG" trick isn't at the top of most people's minds
You use the status of NDEBUG to control whether or not your asserts are run. I don't understand how this is complex
If you want to use asserts, you need to control the definition of NDEBUG. You either do this with your build system (common), or manually (slightly less common). This is literally 101
The preprocessor is widely used for a variety of things when its necessary, including #includes and #defines, because there's literally no other mechanism for this. Its bizarre to say that nobody controls the definition status of NDEBUG because people don't use the preprocessor
This may not be helpful or strictly accurate, but when I see deontology or variants of that word, I substitute "SHOULD". It is like a duty or obligation.
NOTE: This would suggest a surface reading of Brandom's "deontic scorekeeping" might be keeping score of who has what obligations, who is following or breaking rules, etc.
Then the argument against LLMs being party to that is that we don't really assign roles and responsibilities to LLMs, they don't really have "duties" or "obligations" in the way a member of society will have. We don't negotiate with them over who should do what, they don't contribute to the rules that are set for them.
I'm literally just guessing based on the context here though, since the few times I've tried to watch podcasts with Brandom I generally bounce after 15-20 minutes feeling I haven't really understood anything he is saying.
Mathematicians always define their terms exactly, in order to begin their discussion. Philosophers never define their terms exactly, because then they would have nothing to discuss.
I don't know enough about Somalia (or what time period you're talking about) to necessarily refute this argument, but I'd examine the definition of "operate" here before accepting this as a proven system.
reply