frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

A guide to local coding models

https://www.aiforswes.com/p/you-dont-need-to-spend-100mo-on-claude
160•mpweiher•3h ago•80 comments

Show HN: Books mentioned on Hacker News in 2025

https://hackernews-readings-613604506318.us-west1.run.app
316•seinvak•8h ago•120 comments

I'm just having fun

https://jyn.dev/i-m-just-having-fun/
96•lemper•5d ago•29 comments

Disney Imagineering Debuts Next-Generation Robotic Character, Olaf

https://disneyparksblog.com/disney-experiences/robotic-olaf-marks-new-era-of-disney-innovation/
46•ChrisArchitect•2h ago•15 comments

Evaluating chain-of-thought monitorability

https://openai.com/index/evaluating-chain-of-thought-monitorability/
19•mfiguiere•2d ago•1 comments

The Going Dark initiative or ProtectEU is a Chat Control 3.0 attempt

https://mastodon.online/@mullvadnet/115742530333573065
422•janandonly•5h ago•136 comments

Show HN: WalletWallet – create Apple passes from anything

https://walletwallet.alen.ro/
267•alentodorov•8h ago•81 comments

I program on the subway

https://www.scd31.com/posts/programming-on-the-subway
152•evankhoury•5d ago•99 comments

Show HN: Autograd.c – A tiny ML framework built from scratch

https://github.com/sueszli/autograd.c
38•sueszli•5d ago•4 comments

CO2 batteries that store grid energy take off globally

https://spectrum.ieee.org/co2-battery-energy-storage
122•rbanffy•9h ago•99 comments

You’re not burnt out, you’re existentially starving

https://neilthanedar.com/youre-not-burnt-out-youre-existentially-starving/
189•thanedar•6h ago•202 comments

E.W.Dijkstra Archive

https://www.cs.utexas.edu/~EWD/welcome.html
105•surprisetalk•9h ago•8 comments

I can't upgrade to Windows 11, now leave me alone

https://idiallo.com/byte-size/cant-update-to-windows-11-leave-me-alone
311•firefoxd•5h ago•290 comments

Autoland saves King Air, everyone reported safe

https://avbrief.com/autoland-saves-king-air-everyone-reported-safe/
81•bradleybuda•7h ago•33 comments

Structured outputs create false confidence

https://boundaryml.com/blog/structured-outputs-create-false-confidence
109•gmays•9h ago•55 comments

Rue: Higher level than Rust, lower level than Go

https://rue-lang.dev/
68•ingve•3h ago•44 comments

ARIN Public Incident Report – 4.10 Misissuance Error

https://www.arin.net/announcements/20251212/
130•immibis•9h ago•34 comments

Get an AI code review in 10 seconds

https://oldmanrahul.com/2025/12/19/ai-code-review-trick/
86•oldmanrahul•7h ago•45 comments

Coarse is better

https://borretti.me/article/coarse-is-better
176•_dain_•11h ago•94 comments

Ruby website redesigned

https://www.ruby-lang.org/en/
353•psxuaw•17h ago•137 comments

Indoor tanning makes youthful skin much older on a genetic level

https://www.ucsf.edu/news/2025/12/431206/indoor-tanning-makes-youthful-skin-much-older-genetic-level
213•SanjayMehta•19h ago•156 comments

More on whether useful quantum computing is “imminent”

https://scottaaronson.blog/?p=9425
55•A_D_E_P_T•3h ago•43 comments

The gift card accountability sink

https://www.bitsaboutmoney.com/archive/gift-card-accountability-sink/
77•walterbell•3h ago•48 comments

Waymo halts service during S.F. blackout after causing traffic jams

https://missionlocal.org/2025/12/sf-waymo-halts-service-blackout/
172•rwoll•19h ago•256 comments

Three ways to solve problems

https://andreasfragner.com/writing/three-ways-to-solve-problems
110•42point2•10h ago•20 comments

Why “negative vectors” can't delete data in FAISS – but weighted kernels can

https://github.com/nikitph/bloomin/tree/master/negative-vector-experiment
4•loaderchips•4d ago•1 comments

Show HN: Shittp – Volatile Dotfiles over SSH

https://github.com/FOBshippingpoint/shittp
114•sdovan1•12h ago•64 comments

Show HN: Jmail – Google Suite for Epstein files

https://www.jmail.world
1373•lukeigel•1d ago•324 comments

Measuring AI Ability to Complete Long Tasks

https://metr.org/blog/2025-03-19-measuring-ai-ability-to-complete-long-tasks/
222•spicypete•20h ago•175 comments

Show HN: RenderCV – Open-source CV/resume generator, YAML to PDF

https://github.com/rendercv/rendercv
67•sinaatalay•11h ago•38 comments
Open in hackernews

Rue: Higher level than Rust, lower level than Go

https://rue-lang.dev/
67•ingve•3h ago

Comments

andsoitis•3h ago
> Memory Safe

> No garbage collector, no manual memory management. A work in progress, though.

I couldn't find an explanation in the docs or elsewhere how Rue approaches this.

If not GC, is it via:

a) ARC

b) Ownership (ala Rust)

c) some other way?

steveklabnik•2h ago
I am playing around with this! I'm mostly interested in something in the space of linear types + mutable value semantics.
echelon•2h ago
Nice! I see you're one of (if not the primary) contributor!

Do you see this as a prototype language, or as something that might evolve into something production grade? What space do you see it fitting into, if so?

You've been such a huge presence in the Rust space. What lessons do you think Rue will take, and where will it depart?

I see compile times as a feature - that's certainly nice to see.

steveklabnik•2h ago
This is a project between me and Claude, so yeah :)

It's a fun project for me right now. I want to just explore compiler writing. I'm not 100% sure where it will lead, and if anyone will care or not where it ends up. But it's primarily for me.

I've described it as "higher than Rust, lower than Go" because I don't want this to be a GC'd language, but I want to focus on ergonomics and compile times. A lot of Rust's design is about being competitive with C and C++, I think by giving up that ultra-performance oriented space, I can make a language that's significantly simpler, but still plenty fast and nice to use.

We'll see.

echelon•22m ago
Love it! I think that's a nice target.

Have fun! :)

oulipo2•1h ago
So linear type + mutable value would be quite close to Rust, right?
steveklabnik•1h ago
Rust has affine types, not linear. It also doesn't have mutable value semantics, it uses references, lifetimes, and borrowing.
EnPissant•1h ago
I've never seen any significant difference in linear vs affine types.

To me it just seems like Rust has Linear types, and the compiler just inserts some code to destroy your values for you if you don't do it yourself.

I guess the only difference is that linear types can _force_ you to manually consume a value (not necessarily via drop)? Is that what you are going for?

steveklabnik•1h ago
Affine types are "may use" and linear types are "must use," yeah. That is, linear types are stronger.

See https://faultlore.com/blah/linear-rust/ for a (now pretty old but still pretty relevant, I think) exploration into what linear types would mean for Rust.

jasonwatkinspdx•22m ago
You might find one of my late brother's research interests relevant: https://www.cs.princeton.edu/~dpw/papers/space.pdf
steveklabnik•14m ago
Thank you for the link! I'll check it out for sure.

(And sorry to hear about your brother's passing.)

jameskilton•2h ago
Probably best to link to the repo itself, this is not meant to be used yet. https://github.com/rue-language/rue
killingtime74•2h ago
I always thought of Go as low level and Rust as high level. Go has a lot of verbosity as a "better C" with GC. Rust has low level control but many functional inspired abstractions. Just try writing iteration or error handling in either one to see.
steveklabnik•2h ago
Rue author here, yeah I'm not the hugest fan of "low level vs high level" framing myself, because there are multiple valid ways of interpreting it. As you yourself demonstrate!

As some of the larger design decisions come into place, I'll find a better way of describing it. Mostly, I am not really trying to compete with C/C++/Rust on speed, but I'm not going to add a GC either. So I'm somewhere in there.

written-beyond•1h ago
How very so humble of you to not mention being one of the primary authors behind TRPL book. Steve you're a gem to the world of computing. Always considered you the J. Kenji of the Rust world. Seems like a great project let's see where it goes!
steveklabnik•1h ago
That is a very kind thing to say, I admire him quite a bit. Thank you!
manaskarekar•1h ago
Since it's framed as 'in between' Rust and Go, is it trying to target an intersection of both languages' use-cases?
steveklabnik•1h ago
I don't think you'd want to write an operating system in Rue. I may not include an "unsafe" concept, and will probably require a runtime. So that's some areas where Rust will make more sense.

As for Go... I dunno. Go has a strong vision around concurrency, and I just don't have one yet. We'll see.

killingtime74•44m ago
Wow didn't realise it was you who was the author. I learnt a lot about Rust from your writings.
steveklabnik•3m ago
I'm glad to have helped you :)
batisteo•1h ago
C was designed as a high level language and stayed so for decades
gpm•1h ago
I wonder if it's useful to think of this as go is low type-system-complexity and rust is high type-system-complexity. Where type system complexity entails a tradeoff between the complexity of the language and how powerful the language is in allowing you to define abstractions.

As an independent axis from close to the underlying machine/far away from the underlying machine (whether virtual like wasm or real like a systemv x86_64 abi), which describes how closely the language lets you interact with the environment it runs in/how much it abstracts that environment away in order to provide abstractions.

Rust lives in high type system complexity and close to the underlying machine environment. Go is low type system complexity and (relative to rust) far from the underlying machine.

steveklabnik•13m ago
I think this is insightful! I'm going to ponder it, thank you. I think it may gesture towards what I'm trying to get at.
josephg•45m ago
Yep. This was the biggest thing that turned me off Go. I ported the same little program (some text based operational transform code) to a bunch of languages - JS (+ typescript), C, rust, Go, python, etc. Then compared the experience. How were they to use? How long did the programs end up being? How fast did they run?

I did C and typescript first. At the time, my C implementation ran about 20x faster than typescript. But the typescript code was only 2/3rds as many lines and much easier to code up. (JS & TS have gotten much faster since then thanks to improvements in V8).

Rust was the best of all worlds - the code was small, simple and easy to code up like typescript. And it ran just as fast as C. Go was the worst - it was annoying to program (due to a lack of enums). It was horribly verbose. And it still ran slower than rust and C at runtime.

I understand why Go exists. But I can't think of any reason I'd ever use it.

wswin•26m ago
Rust gets harder with codebase size, because of borrow checker. Not to mention most of the communication libraries decided to be async only, which adds another layer of complexity.
gpm•13m ago
I strongly disagree with this take. The borrow checker, and rust in general, keeps reasoning extremely local. It's one of the languages where I've found that difficulty grows the least with codebase size, not the most.

The borrow checker does make some tasks more complex, without a doubt, because it makes it difficult to express something that might be natural in C (things including self referential data structures, for instance). But the extra complexity is generally well scoped to one small component that runs into a constraint, not to the project at large. You work around the constraint locally, and you end up with a public (to the component) API which is as well defined and as clean (and often better defined and cleaner because rust forces you to do so).

norir•2h ago
I wince every time I see naive recursive fibonacci as a code example. It is a major turnoff because it hints at a lack of experience with tail call optimization, which I consider a must have for a serious language.
stouset•2h ago
Would someone please explain to me why TCO—seemingly alone amongst the gajillions of optimization passes performed by modern compilers—is so singularly important to some people?
aaronblohowiak•2h ago
functional programming background / SICP ?
Rusky•2h ago
TCO is less of an optimization (which are typically best-effort on the part of the compiler) and more of an actual semantic change that expands the set of valid programs. It's like a new control flow construct that lives alongside `while` loops.
oersted•2h ago
For people that like functional style and using recursion for everything, TCO is a must. Otherwise there’s no way around imperative loops if you want decent performance and not having to worry about the stack limit.

Perhaps calling it an “optimization” is misleading. Certainly it makes code faster, but more importantly it’s syntax sugar to translate recursion into loops.

steveklabnik•2h ago
I only have basic constant folding yet in terms of optimizations, but I'm very aware of TCO. I haven't decided if I want to require an annotation to guarantee it like Rust is going to.
airstrike•1h ago
"Well you can judge the whole world on the sparkle that you think it lacks.

Yes, you can stare into the abyss, but it's staring right back"

oulipo2•1h ago
Interesting, for me the "between Rust and Go" would be a nice fit for Swift or Zig. I've always quite liked the language design of Swift, it's bad that it didn't really take off that much
steveklabnik•1h ago
One thing working on this project has already done is give me more appreciation for a lot of Zig's design.

Zig really aims to be great at things I don't imagine Rue being useful for, though. But there's lots of good stuff there.

And lots of respect to Swift as well, it and Hylo are also major inspiration for me here.

vips7L•1m ago
Checkout Borgo: https://github.com/borgo-lang/borgo

I also find that D is good between language. You can do high level or low level whenever you need it.

coffeeaddict1•1h ago
How does this differ from Hylo [0]?

[0] https://hylo-lang.org

steveklabnik•1h ago
I am very interested in Hylo! I think they're playing in similar spaces. I'd like to explore mutable value semantics for Rue.

One huge difference is that Hylo is using LLVM, whereas I'm implementing my own backends. Another is that Hylo seems to know what they want to do with concurrency, whereas I really do not at all right now.

I think Hylo takes a lot of inspiration from Swift, whereas I take more inspiration from Rust. Swift and Rust are already very similar. So maybe Hylo and Rue will end up like this: sister languages. Or maybe they'll end up differently. I'm not sure! I'm just playing around right now.

frizlab•1h ago
How does this compare to Swift?
steveklabnik•59m ago
I don't plan on implementing ARC, I don't think. I do think Swift/Hylo mutable value semantics is a neat idea that I do want to play around with.
lifis•58m ago
All the Rue code in the manual seems to also be valid Rust code, except for the @-prefixed intrinsics
steveklabnik•54m ago
Yes, I started off with the idea that Rue's syntax would be a strict subset of Rust's.

I may eventually diverge from this, but I like Rust's syntax overall, and I don't want to bikeshed syntax right now, I want to work on semantics + compiler internals. The core syntax of Rust is good enough right now.

emerent•32m ago
How is it a subset then if it has the @-prefix? Wait, does Rust's grammar still have the @ and ~ sigils from the pre 1.0 times for pointers?
steveklabnik•16m ago
It started off that way, but didn't (and won't) remain that way.

I'm using @ for intrinsics because that's how Zig does it and I like it for similar reasons to how Rust uses ! for macros.