huge wrench in my plans. python only supports building against openssl which is a much larger surface area than curl with gnutls
huge wrench in my plans. python only supports building against openssl which is a much larger surface area than curl with gnutls
however i'm realizing this is may also possibly be exactly what i want. because while python's pathlib is easy the best vfs interface, its networking protocols are outrageously unfit
this spans the range from parsing json, to url quoting, to its intentionally broken "email" parsing, to its disastrous reliance on implicit context like the User-Agent string sent to pypi upon every request, which after 5 years of working on pip came as a revelation to me
a revelation in the most literal sense that the word admits. i have spent many hours and finally succeeded at deriving the simplest version of a type system that mypy and corporate greed stole away from me all those years ago. it ends up looking like pydantic on the surface but with significantly more care for crafting the transitions between states such that an unambiguous unidirectional data flow is achieved and described
this is significant because it is precisely such transitions which the pants v2 engine fails to provide language to express. instead, it has synchronous and asynchronous (coroutine) paths in the graph. it has no conception of resource allocation or RAII. it has no conception of failure, and therefore not of trying again
this is not because we had failed to consider whether such affordances would enable safer faster more robust build tasks. Retry (a wrapper over a path in the task graph which could be separately tracked) was one of the several incredibly compact prototypes i developed (along with the composable --query syntax) which were poorly received
it remains shockingly clear that the model of pure functions alone cannot hold. the embarrassing parallelism for scala compiles that win wang and i developed the first successful model for was very specifically enabled by codifying two separate forms of persistent state, locally and remotely, allocating a local jvm jit to run eugene burmako's rsc and allocating remote scoot workers from drew gassaway's squadron within a compile context that enabled them to temporally and spatially share resources for the so-called "ephemeral" scalac workers
it's very important that the task graph is able to represent more than pure functions because in fact literally every single i/o operation involves negotiating shared access to a limited resource. this is what makes it an i/o operation.
when i read that the zstd project categorically refuses to consider any benchmark outside of purely in-memory operations (they say this on the github in PRs, they're very open about it and it is used to justify extremely precise modifications to the code) was when i realized that project is not worth forking
resource pooling is not really an optimization technique so much as it is the bare minimum prerequisite to having any idea of what the system you've built is running up against. "explicit vs implicit" is far too shallow of a distinction to do justice to the difference in behavior of e.g. a rust program doing i/o with tokio's threaded async executor, vs a rust program that directs each thread to perform its own hot loop and simply sleeps until there's more data https://github.com/zip-rs/zip2/pull/236
coroutines themselves are not the problem. in fact it's well understood that ring buffers from the os are not just mario pipes but indeed serve the purpose of flow control with "backpressure". through coffeescript and atom-shell (electron before it became evil) i found node.js to have developed a wonderfully rich appreciation across the community for how to write in essentially continuation-passing style. it's a big relay race! we're doing it together! no wonder rust did the big rewrite from libuv barely 10 years ago!
but there is another presence in this world. not another tarnished that the light of grace would touch as prophesied by the elden ring cutscene, whose adventure begins at level 5, who uses a mirror to change their gender on demand
james baldwin wrote this 64 years ago https://www.newyorker.com/magazine/1962/11/17/letter-from-a-region-in-my-mind and it will haunt me long after the unix epoch transgresses 64 bits in seconds dulling our collective memory of the nixon presidency
Every effort made by the child’s elders to prepare him for a fate from which they cannot protect him causes him secretly, in terror, to begin to await, without knowing that he is doing so, his mysterious and inexorable punishment. He must be “good” not only in order to please his parents and not only to avoid being punished by them; behind their authority stands another, nameless and impersonal, infinitely harder to please, and bottomlessly cruel.
this sentential clause is written into the folds of my cranium— not burned or etched, but cryptographically signed into the ROM sector, the inner workings of it exposed by a clever reverse engineer
He does not know what the boundary is, and he can get no explanation of it, which is frightening enough, but the fear he hears in the voices of his elders is more frightening still. The fear that I heard in my father’s voice, for example, when he realized that I really believed I could do anything a white boy could do, and had every intention of proving it, was not at all like the fear I heard when one of us was ill or had fallen down the stairs or strayed too far from the house. It was another fear, a fear that the child, in challenging the white world’s assumptions, was putting himself in the path of destruction.
A child cannot, thank Heaven, know how vast and how merciless is the nature of power, with what unbelievable cruelty people treat each other. He reacts to the fear in his parents’ voices because his parents hold up the world for him and he has no protection without them.