Is an Intel N100 or N150 a better value than a Raspberry Pi?
jeffgeerling.com
Why I Left My Tech Job to Work on Chronic Pain
sailhealth.substack.com
Writing a Game Boy Emulator in OCaml
linoscope.github.io
Show HN: BunkerWeb – the open-source and cloud-native WAF
docs.bunkerweb.io
Show HN: I AI coded a tower defense game and documented the whole process
github.com
Serving 200M requests per day with a CGI-bin
jacob.gold
Type safe web stack with Rust and TypeScript
github.com
Developing with GitHub Copilot Agent Mode and MCP
austen.info
Enhanced Radar (YC W25) is hiring a founding engineer
Lens: Lenses, Folds and Traversals
hackage.haskell.org
DRM Panic QR code generator
rust-for-linux.com
Is there a no-AI audience?
thatshubham.com
How often is the query plan optimal?
vondra.me
Killer whales groom each other with pieces of kelp
science.org
Can Large Language Models Play Text Games Well?
arxiv.org
Show HN: Fast Thermodynamic Calculations in Python
dlr-institute-of-future-fuels.github.io
Flounder Mode – Kevin Kelly on a different way to do great work
joincolossus.com
Launch HN: K-Scale Labs (YC W24) – Open-Source Humanoid Robots
Raphael discovery emerges from Vatican museum restoration
news.artnet.com
AV1@Scale: Film Grain Synthesis, The Awakening
netflixtechblog.com
(Slightly hijacking this thread to share about my comment for the same post on Reddit [1])
It's great to see you exploring some foundational patterns that closely align with the principles behind my work on Context-Generic Programming (CGP).
The structure of your `BlanketAdapter` and `Adapter` traits bears a strong resemblance to the concepts of provider traits and consumer traits in CGP. In particular, your use of the `Target` type is conceptually similar to how the `CgpProvider` associated type is used within a CGP context.
To illustrate the connection, I’ve put together a CGP-based reimplementation of your example. You can see the full code below or check it out as a gist at [3].
I hope this example helps to demonstrate how CGP builds on the same design ideas but generalizes them further. With CGP, the pattern becomes applicable to any trait, and the macros helps reduce a significant amount of boilerplate.
There’s definitely room to refine the example further — for instance, by extracting `load_state` into a separate trait so it can be reused across different implementations. I decided not to go too far down that path here, just to keep the example focused and easier to follow.
[1] https://www.reddit.com/r/rust/comments/1lovjej/comment/n0qh0...
[2] https://contextgeneric.dev/
[3] https://gist.github.com/soareschen/5b520eac0e818058cedfa2fbe...