Peer-to-peer file transfers in the browser
github.com
First Ammonia-Fueled Ship Hits a Snag
spectrum.ieee.org
Open-UI: Maintain an open standard for UI and promote its adherence and adoption
github.com
Gemini Robotics brings AI into the physical world
deepmind.google
Show HN: AudioNimbus – Steam Audio's immersive spatial audio, now in Rust
github.com
Definite clause grammars and symbolic differentiation
bitsandtheorems.com
Gemma 3 Technical Report [pdf]
storage.googleapis.com
The Insecurity of Telecom Stacks in the Wake of Salt Typhoon
soatok.blog
'It was chaos': The history of San Francisco's most unforgettable ad
sfgate.com
Pivot Robotics (YC W24) Is Hiring
ycombinator.com
The Startup CTO's Handbook
github.com
A Perplexing JavaScript Parsing Puzzle
hillelwayne.com
Beyond Diffusion: Inductive Moment Matching
lumalabs.ai
FDA issues early alert for Baxter's Spectrum infusion pump
medicaldevice-network.com
Show HN: XPipe, a shell connection hub for SSH, Docker, K8s, VMs, and more
xpipe.io
A more robust raw OpenBSD syscall demo
nullprogram.com
Happy 20th Birthday, Y Combinator
twitter.com
Azure's Weakest Link? How API Connections Spill Secrets
binarysecurity.no
How far neuroscience is from understanding brains (2023)
pmc.ncbi.nlm.nih.gov
A look at the creative process behind Bluey and Cocomelon (2024)
readtrung.com
Internationalization-puzzles: Daily programming puzzles just like Advent of Code
i18n-puzzles.com
Shameless plug: I am working on a solution in Rust that solves the coherence problems discussed in this post. I call it Context-Generic Programming (CGP), which makes it possible to write modular code that is generic over a context (Self) type without the coherence restrictions.
The basic idea of CGP is pretty simple: we introduce a companion provider trait that has an additional generic parameter that is placed at the "Self" position of the trait, and define a unique provider type that identifies each of the generic implementation. CGP then makes use of blanket implementations and macros to enable wiring of generic providers to a concrete context to implement the original trait, which we now call a consumer trait.
You can read about the full details of CGP at https://contextgeneric.dev/. I am also writing a book for CGP at https://patterns.contextgeneric.dev/, which goes more into details on how it works behind the scene.
Currently, I am preparing for a new v0.4.0 release of CGP, which includes a lot of quality of life improvements, including significantly improved error messages. I will also write a follow up blog post to specifically address how CGP can be used to solve the coherence problems stated in this post. So do stay tuned for more updates on CGP!