Well, for example, in one afternoon, I have a parsing engine to understand, which is 9 pages of code. I thought I knew OCaml, having written a few interpreters in it, but I didn't know the {foo| |foo} multiline string syntax, I didn't know about Printf.ksprintf, I didn't know about Buffer.create, I didn't know about String.escaped, I must have once known about List.exists and List.rev_append and forgotten, I'd never thought of pattern-matching Array.to_list Sys.argv as a way to parse a command line, I didn't know about Sys.file_exists, and now I also have to think about what the parse result should look like and how to use it. And Claude correctly pointed out that the way I had thought about handling things like heredocs (or {foo| |foo} strings) would violate the preconditions for using the Packrat parsing algorithm, and suggested that I use the alternative approach of parameterized productions as in OMeta, which I need to think over.
I think that was the same day I prototyped an approach to using Service Workers from localhost as a platform for persistent mobile apps that don't show up in the app list but also don't rely on the TLS CA system for their security. Which involved learning a lot of stuff about the Service Worker lifecycle and localStorage and IndexedDB that I didn't know before.
I think that was the same day I prototyped an approach to using Service Workers from localhost as a platform for persistent mobile apps that don't show up in the app list but also don't rely on the TLS CA system for their security. Which involved learning a lot of stuff about the Service Worker lifecycle and localStorage and IndexedDB that I didn't know before.
It's just a lot.