frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Async I/O on Linux in databases

https://blog.canoozie.net/async-i-o-on-linux-and-durability/
27•jtregunna•2h ago•4 comments

The Big LLM Architecture Comparison

https://magazine.sebastianraschka.com/p/the-big-llm-architecture-comparison
13•mdp2021•1h ago•0 comments

Hungary's oldest library is fighting to save books from a beetle infestation

https://www.npr.org/2025/07/14/nx-s1-5467062/hungary-library-books-beetles
106•smollett•3d ago•5 comments

Make Your Own Backup System – Part 1: Strategy Before Scripts

https://it-notes.dragas.net/2025/07/18/make-your-own-backup-system-part-1-strategy-before-scripts/
248•Bogdanp•12h ago•82 comments

I tried vibe coding in BASIC and it didn't go well

https://www.goto10retro.com/p/vibe-coding-in-basic
84•ibobev•3d ago•73 comments

Nobody knows how to build with AI yet

https://worksonmymachine.substack.com/p/nobody-knows-how-to-build-with-ai
354•Stwerner•16h ago•277 comments

Local LLMs versus offline Wikipedia

https://evanhahn.com/local-llms-versus-offline-wikipedia/
242•EvanHahn•15h ago•130 comments

Death by AI

https://davebarry.substack.com/p/death-by-ai
308•ano-ther•17h ago•121 comments

How to Run an Arduino for Years on a Battery (2021)

https://makecademy.com/arduino-battery
47•thunderbong•3d ago•13 comments

Mushroom learns to crawl after being given robot body (2024)

https://www.the-independent.com/tech/robot-mushroom-biohybrid-robotics-cornell-b2610411.html
112•Anon84•2d ago•30 comments

Beyond Meat fights for survival

https://foodinstitute.com/focus/beyond-meat-fights-for-survival/
68•airstrike•8h ago•132 comments

Borg – Deduplicating archiver with compression and encryption

https://www.borgbackup.org/
39•rubyn00bie•5h ago•6 comments

Matterport walkthrough of the original Microsoft Building 3

https://my.matterport.com/show/?m=SZSV6vjcf4L
35•uticus•3d ago•21 comments

Ring introducing new feature to allow police to live-stream access to cameras

https://www.eff.org/deeplinks/2025/07/amazon-ring-cashes-techno-authoritarianism-and-mass-surveillance
254•xoa•9h ago•120 comments

What were the earliest laws like?

https://worldhistory.substack.com/p/what-were-the-earliest-laws-really
70•crescit_eundo•4d ago•20 comments

Show HN: MCP server for Blender that builds 3D scenes via natural language

https://blender-mcp-psi.vercel.app/
3•prono•2h ago•0 comments

Rethinking CLI interfaces for AI

https://www.notcheckmark.com/2025/07/rethinking-cli-interfaces-for-ai/
158•Bogdanp•15h ago•74 comments

“Bypassing” specialization in Rust

https://oakchris1955.eu/posts/bypassing_specialization/
24•todsacerdoti•3d ago•11 comments

The AGI Final Frontier: The CLJ-AGI Benchmark

https://raspasov.posthaven.com/the-agi-final-frontier-the-clj-agi-benchmark
9•raspasov•6h ago•2 comments

A Treatise for One Network – Anonymous National Deliberation [pdf]

https://simurgh-beau.github.io/
3•simurgh_beau•3d ago•0 comments

The curious case of the Unix workstation layout

https://thejpster.org.uk/blog/blog-2025-07-19/
87•ingve•16h ago•36 comments

Airbnb allowed rampant price gouging following L.A. fires, city attorney alleges

https://www.latimes.com/california/story/2025-07-19/airbnb-allowed-price-gouging-following-l-a-fires-city-attorney-alleges-in-lawsuit
43•miguelazo•5h ago•50 comments

Open-Source BCI Platform with Mobile SDK for Rapid Neurotech Prototyping

https://www.preprints.org/manuscript/202507.1198/v1
5•GaredFagsss•3d ago•0 comments

Piano Keys

https://www.mathpages.com/home/kmath043.htm
51•gametorch•4d ago•50 comments

The borrowchecker is what I like the least about Rust

https://viralinstruction.com/posts/borrowchecker/
199•jakobnissen•12h ago•276 comments

New York’s bill banning One-Person Train Operation

https://www.etany.org/statements/impeding-progress-costing-riders-opto
92•Ericson2314•6h ago•122 comments

I Used Arch, BTW: macOS, Day 1

https://yberreby.com/posts/i-used-arch-btw-macos-day-1/
64•yberreby•8h ago•66 comments

How we tracked down a Go 1.24 memory regression

https://www.datadoghq.com/blog/engineering/go-memory-regression/
157•gandem•2d ago•8 comments

Erythritol linked to brain cell damage and stroke risk

https://www.sciencedaily.com/releases/2025/07/250718035156.htm
61•OutOfHere•6h ago•36 comments

The future of ultra-fast passenger travel

https://spaceambition.substack.com/p/beyond-the-sound-barrier
31•simonebrunozzi•11h ago•72 comments
Open in hackernews

“Bypassing” specialization in Rust

https://oakchris1955.eu/posts/bypassing_specialization/
23•todsacerdoti•3d ago

Comments

hackyhacky•4h ago
In Haskell, we call this problem "overlapping instances," and can be allowed with an optional compiler flag. Nevertheless, I try to avoid using it, because of the potential for unforeseen consequences and reduced clarity in which code is actually being run.

In this use case, my instinct tells me that trait specialization is the wrong tool for the job. The author is trying to dispatch different functions based on a flag set in the caller. I can think of two more elegant ways to do this:

* Make the file system itself a trait, with implementations for read-only and read/write. Pass the concrete implementation as a parameter to the function using it.

* Store the capabilities as a variable in the file system object and query it at runtime. This can be done with an if.

Sometimes the simpler approach is better.

nesarkvechnep•3h ago
Your proposal might work but then the user won’t have the compile-time guarantee that they can’t try to write to a read-only filesystem, since the capability will be queried at run-time.
dwattttt•2h ago
I may be misunderstanding, but

> Make the file system itself a trait, with implementations for read-only and read/write

Those are separate concrete implementations between read-only and read-write; a write operation can be implemented on the read-write implementation only.

nesarkvechnep•1h ago
If the filesystem is a trait which has a read and write method. Your concrete implementations have to implement both.
dwattttt•1h ago
So... Don't give the trait methods that don't apply to every member of the trait. Only implement write methods on the concrete Write implementation.
konstantinua00•3h ago
can't it be solved by negative traits?

isn't the problem that rw is still r, so passes checks for both?

can't you make one rw and the other r(-w)?

SkiFire13•2h ago
Note that negative traits are not for "this trait is not implemented" (i.e. a missing `impl Trait for Type`) but instead for "this trait is guaranteed to not be implemented" (i.e. `impl !Trait for Type`)
maybevoid•3h ago
With Context-Generic Programming (CGP), there is a way to get around the coherence restriction through a provider trait, and have overlapping implementations in safe, stable Rust. I have a proof of concept implementation of example in the article here: https://gist.github.com/soareschen/d37d74b26ecd0709517a80a3f...
maybevoid•3h ago
For those who are new to the concept, in a nutshell, CGP allows you to bypass the coherence restrictions in traits/typeclasses, and define multiple overlapping and generic implementations for each CGP trait. As a consequence, when you define a new type, you need to specifically choose an implementation to be used with that type. This is called a wiring step, where you choose the provider implementations for your context.

On the surface, this addition doesn't seem significant. However, it opens up a world of possibilities for enabling powerful design patterns that are based on trait implementations that are named, generic, and overlappable. One of the greatest strengths of CGP is to enable safe, zero-cost, compile-time dispatching through the trait system to accomplish the things that in OOP would typically require dynamic dispatch with runtime errors.

ta8645•2h ago
For anyone interested in reading about CGP in Rust, here is the website:

https://contextgeneric.dev/

Just a FYI from their main page:

As of 2025, CGP remains in its early stages of development. While promising, it still has several rough edges, particularly in areas such as documentation, tooling, debugging techniques, community support, and ecosystem maturity.

...

At this stage, CGP is best suited for early adopters and potential contributors who are willing to experiment and help shape its future.

SkiFire13•2h ago
> Lastly, the unstable specialization feature also deals with lifetimes, which as I mentioned is the feature's biggest obstacle on the way to stabilization.

The issue is really that `specialization` *has* to deal with lifetimes, even when there is apparently none. The example core with `Read` and `Read + Seek` also suffers from lifetime issues: some type could implement `Seek` depending on some lifetime and this would make your specialization unsound. For this reason `min_specialization` does not accept your specialization.