AI errno(2) values
netmeister.orgMissed one...
EHAL 231 /* I'm sorry Dave, I cannot do that */`errno` is a userland concept; the kernel returns negative error numbers that libc then turns into -1 and sets errno. Thus the correct manpage is errno(3).
Why does libc do this instead of simply returning that same negative number?
POSIX, basically. It was already a convention by the time linux/glibc implemented it.
OpenBSD up to 5.9 had errno(2) symlinked to intro(2), describing error codes:
https://man.freebsd.org/cgi/man.cgi?query=errno&apropos=0&se...
Also, your statements about the kernel and libc are OS specific.
#define ETERNITY 999 /* stuck in thinking loop */As a long time emacs user, I appreciated the inclusion of EMACS as an error code. When I moved from TECO to gnu emacs in to 80s, elisp was an advance. Now I have a perpetual todo item... "rewrite emacs in fennel or janet or even minimalisp."
"What was deluxe is now debris..."
> #define EAI 201 /* hallucination */
If only AI threw an error when it hallucinates.
Nah it would just hallucinate this error all the time
It would hallucinate error codes that don't exist.
#define EPROCRASTINATE 245 /* exhausted all output tokens with reasoning */#define EKNOWBETTER 231 # ignoring prompt
#define ESYCOPHANT 200 /* user asserted 2+2=5; model concurred */
I often ran into an error where multimodal models would refuse to operate in transcription mode due to some system prompt.
207 is a bald move
what about ETHOS : Error it's Mythos? lol!
ETHOS is generally reserved for a certain type of error involving slab memory and complex logic though.
Let's hope that reference is not too obscure...