frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Playa Phone

https://playaphone.com/
111•cutoff•1h ago•40 comments

OpenShot 4.0: Record, Edit, and Color Like Never Before

https://www.openshot.org/blog/2026/08/30/openshot-40-record-edit-color-like-never-before/
389•metrofun•6h ago•90 comments

Apache Iggy, a message streaming platform in Rust, graduates to an Apache TLP

https://iggy.apache.org/blogs/2026/08/24/apache-iggy-top-level-project-tlp-graduation/
49•spetz•1h ago•10 comments

ChatGPT Work Tool and Skill Reference

https://codex-tool-reference.simonw.chatgpt.site/
77•ijidak•2h ago•39 comments

Launch HN: Almanac (YC S26) – AI that knows your company

https://usealmanac.com/
11•kushagrchitkar•41m ago•4 comments

C++26: Standard Library Hardening Experiments

https://www.cppstories.com/2026/hardening-experiments/
25•ibobev•1h ago•15 comments

Culture Clash

https://aeon.co/essays/at-the-heart-of-the-snow-leavis-two-cultures-clash
24•Hooke•1h ago•5 comments

Launch HN: Hebbian Robotics (YC S26) – Build scalable robotics data pipelines

https://github.com/Hebbian-Robotics/hflow
10•kstonekuan•1h ago•4 comments

Show HN: Linux server management over SSH – written in Rust and Tauri

https://serverbox.stupidlabs.lol/
32•freakynit•2h ago•22 comments

Agentic Trust Controls

https://trustcontrols.ai/
13•mooreds•1h ago•1 comments

Navigation App for People with Blindness and Low Vision

https://seas.harvard.edu/news/smartphone-navigation-app-people-blindness-and-low-vision
9•geox•4d ago•2 comments

Breaking Claude Code Opus 5 Auto Mode

https://embracethered.com/blog/posts/2026/breaking-claude-code-opus-5-and-automode/
270•Recursing•8h ago•85 comments

ReactOS 0.4.16

https://reactos.org/project-news/reactos-0416-released/
108•marttt•8h ago•28 comments

Doubling of Kobo's U.S. sales in both 2025 and 2026, 70% US female customer base

https://www.reddit.com/r/kobo/comments/1w20azv/the_doubling_of_kobos_us_sales_in_both_2025_and/
42•seam_carver•1h ago•23 comments

DNS Abuse and Criminal Infrastructure

https://labs.ripe.net/author/andrew_campling/dns-abuse-and-criminal-infrastructure-beyond-definit...
27•jruohonen•1d ago•13 comments

The Art of Chip-8

http://beyondloom.com/blog/artofchip8.html
29•surprisetalk•1w ago•2 comments

Malleable software = solid bases and custom code

https://www.mdubakov.me/malleable-software-solid-bases-custom-code/
61•tablet•5h ago•21 comments

uv: Deduplicate all files in the wheel cache

https://github.com/astral-sh/uv/pull/21327
159•tosh•10h ago•77 comments

My hobby of building miniatures and taking pretty pictures

https://sandyuraz.com/blogs/tiny-cafe/
307•thecsw•2d ago•50 comments

Study: Blue light impairs the eye's ability to distinguish fine detail most

https://research.uga.edu/news/blue-light-has-a-surprising-effect-on-your-eyes-study-finds/
63•giuliomagnifico•7h ago•38 comments

Agent Memory as a File Format

https://calpaterson.com/memoryfields.html
107•ingve•4h ago•53 comments

State of the Map 2026: OpenStreetMap conference

https://povesham.wordpress.com/2026/08/30/state-of-the-map-2026-openstreetmap-conference/
45•altilunium•7h ago•3 comments

“I just chose words carefully”

https://unsung.aresluna.org/i-just-chose-words-carefully/
1097•zdw•17h ago•304 comments

Hit anything. Discover how it rings

https://fraware.github.io/EVERYTHING-RINGS/
29•MADEinPARIS•3d ago•16 comments

P99 0 ms* autocomplete for 240M domain names

https://ruurtjan.com/articles/p99-0ms-autocomplete-for-240-million-domain-names
197•dbalatero•12h ago•73 comments

Transfer files over an Ethernet patch cable

https://maurycyz.com/misc/etherfiles/
119•jllyhill•12h ago•127 comments

Marx, Keynes, and A.I

https://www.unpopularfront.news/p/marx-keynes-and-ai
3•speckx•1h ago•0 comments

My Experience Has Nuance, Yours Is a Data Point

https://blog.jim-nielsen.com/2026/nuance-for-me-none-for-you/
32•Brajeshwar•1h ago•15 comments

Using floci to emulate Cloud platforms (GCP, AWS, Azure)

https://flowg.cloud/blog/using-floci-local-emulators
29•linkdd•3d ago•9 comments

Ask HN: What would happen if your company stopped using all AI tomorrow?

13•jc_811•2h ago•16 comments
Open in hackernews

C++26: Standard Library Hardening Experiments

https://www.cppstories.com/2026/hardening-experiments/
25•ibobev•1h ago

Comments

pama•54m ago
30 years late, but I will take it. Contracts look useful and less messy than exceptions.
cenamus•46m ago
They solve completely different problems though
tialaramex•30m ago
Suppose your function doodle_widget is supposed to take a Gonzo Widget, but you're worried somebody might call it with a Non-Gonzo Widget and that can't work.

Traditionally you write code which checks the Widget to see if it's Gonzo and if not you throw an exception. Callers can pick, for this function in particular, whether to handle the Exception, in which case they get that Exception to look at, or they can "bubble it up" to be handled in their caller, and so on all the way to the top of the program where if it bubbles up it's reported and then exits the program.

With Contracts you write a contract for the function with a pre-condition that the Widget is Gonzo. Your users (programmers who might call doodle_widget) can pick: If they fail a contract the program exits immediately reporting a violation ("quick enforce"), it reports the violation via a global contract handler and then exits ("enforce") or it just reports to the handler but doesn't exit ("observe") or finally, they ignore it entirely ("ignore")

These just aren't that different. The contract is maybe slightly better because of the enhanced semantic discovery - you could imagine tooling which gives you a yellow squiggly line because your code violates a contract requirement for example, it's definitely not practical to check exception raising that way.

Almondsetat•18m ago
>Suppose your function doodle_widget is supposed to take a Gonzo Widget, but you're worried somebody might call it with a Non-Gonzo Widget and that can't work.

Can't you just use concepts?

tialaramex•7m ago
No. Bjarne's C++ 20 Concepts are basically duck typing, you can express that you want a type where we can call the "is_gonzo" function but you can't say that you only want values of that type in which it's true.

Obviously you could re-design the software to follow a Rust-style type-state paradigm, have a NonGonzoWidget and GonzoWidget type which both inherit from Widget and now you can have your function take a GonzoWidget - but that's not what my comparison was about and this technique while possible is less common in C++

jayd16•18m ago
How do you handle I/O type exceptions with contracts?
tialaramex•11m ago
You would absolutely be entitled to write a contract which says there are never I/O problems. It could even make sense in some cases, though often not.
bluGill•4m ago
That is one use where either can be used.

However contracts cover a lot of other cases (and as the other replies point out contracts are probably the wrong answer here - a concept is your right answer allow someone else to write a new/different Gonzo complaint widget in the fiture). A contract can check cases where have the right type, but something is wrong anyway. If you need a sorted list a contract can check that....

Likewise exception is useful for a lot of things that should not be a contract. Running out of disk space is still a common problem - you do not want a contract that there is enough disk space, this is an error you need to ask how to handle (often the user would free up disk space external to your program and retry a save).

Cieric•26m ago
There is a small hint of it at the end, but I really hope compile time contract assertions become more common. I know some languages like spark, dafny and a few others do it and generate implicit contracts for things like divide by 0. I've been experimenting with my own custom language that do these things and going back to c++ every day at work is actually a slight let down because of it.
superxpro12•14m ago
i know in the embedded space this would be invaluable. compile time contracts, or compile time abstract base class would enable compile time resolution of virtuals. so then i can do compile-time polymorphism and c++ is suddenly really attractive in the sub 64k memory space. Maybe -flto does this idk. But all the pieces are there.
bluGill•8m ago
Contracts are written such that the compiler can diagnose a detected violation if it wants to. However most contracts realistically need whole program analysis to diagnose and no compiler can do that - you want a separate static analysis for that. (this doesn't exist, but there is hope people start writing those)
Cieric•4m ago
Yeah, I heard spark was used on a small component in the nvidia gpu firmware so others seemingly agree. I'm mainly in the user mode driver space so my ideas have been around having a kernel mode driver that (assuming a correctly functioning pc) can't crash and user mode drivers that can't be exploited (at least in the rop chain sense). I'm kind of picking ideas from other languages that I like zig's error handling, ada's contracts, rust's lifetimes (hopefully soon to be replaced with more contracts instead), and things like how you can use "gas" in lean to prove a loops will terminate. I'm mainly building it up with AI right now for experimentation, but I also can't really trust it to be correct either because of using AI. Once I settle on the syntax more and pump out a lot more tests, I'm probably going to rewrite the compiler by hand (hopefully in the custom language itself.)
steveklabnik•24m ago
One thing that I'm curious about regarding all of this: I thought all of this stuff landed in C++26, yet we are still getting papers like https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2026/p43...

> The C++26 draft has not yet had its final ballot

This is co-authored by Bjarne, and so I'm sure it's not trivially false, but maybe I am just missing some detail. I know Bjarne was threatening to cast a veto of C++26 over this, but I thought he did not?

Anyone who follows the process a bit more than me have some context here?

bluGill•10m ago
Everybody has their own ideas of what they want from Contracts. C++26 contracts are trying to get a minimal system that everybody can agree on. The current contracts are not good enough for anybody who wants them - but it is good enough that they can start figuring out the details of making all the different factions happy.

C++26 contracts are written by people with experience in ADA/SPARK. While we don't have experience in C++ contracts, there is plenty of experience elsewhere. I find it odd that the paper didn't mention Spark at all!

The criticism that it is experimental in all compilers is a fact that can never be anything else. Chicken and egg - nobody will make this non-experimental until it is in the standard. There have many small scale experienements with contracts - enough to agree we want to use this on a larger scale but we need it in the standard first.