Idiocket: A Self-Aware Junk Drawer
Idiocket is a horrible portmanteau of "Idiosyncratic" and "Racket" that acts as my junk drawer. Junk drawers start as modules with infuriating names like utils.py and grow up to be packages that proport to be the "missing standard library" like lodash or Boost.
This isn’t a bad thing. Junk drawers are full of neat stuff that often should be made official parts of their host language. Subjective elements in those packages unfortunately make it hard to cherry pick bits to package as contributions.
For that reason, I set up Idiocket to follow a few rules.
(require idiocket/whatever) provides all bindings from racket/whatever, with my own additions.
Other modules from standard collections are prefixed by idiocket/, e.g. idiocket/ffi/unsafe.
(require idiocket) imports the same idiocket/* module group as (require racket) would for racket/*.
Other modules will be in idiocket/private/* or a different package.
Doing it this way means that I can replace racket/ with idiocket/ in all require specs.
While I happily share this code for you to use, this package will undergo breaking changes. Why? It’s a junk drawer. I’ll be back every now and then to shuffle things around. I do not have any current plans to mark this package stable, but I do leave it here for my other packages to find.