Differences From
Artifact [882c831cca]:
18 18 * scripts. so far so good.
19 19 *
20 20 * except unix has two distinctly different concepts of
21 21 * IO. there's POSIX IO, and then there's libc IO.
22 22 *
23 23 * POSIX IO uses the shit in <fcntl.h> and <unistd.h>;
24 24 * syscalls like read(2), write(2), and pipe(2) - the
25 - * good, simple shit God made unix for. this is really
26 - * bare-metal; these are basically C wrappers over kernel
27 - * syscalls. POSIX IO uses plain old ints as file
28 - * descriptors, and it doesn't fuck around. when you say
29 - * "write," god dammit, it WRITES.
25 + * good, simple shit the Gods gave us unix for. this is
26 + * really bare-metal; these are basically C wrappers over
27 + * kernel syscalls. POSIX IO uses plain old ints as
28 + * file descriptors, and it doesn't fuck around. when you
29 + * say "write," goddammit, it WRITES.
30 30 *
31 31 * libc is a very different beast. libc has opinions.
32 32 * libc has abstractions. libc has its own entire goddamn
33 33 * DSL by which to specify format strings, because
34 34 * apparently someone felt called to reinvent FORTRAN
35 35 * except worse. printf(), you know, the first function
36 36 * they ever teach you in C 101? (more like CS 403