frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Kobo can run apps now

https://bandarlabs.github.io/Cobalt/
426•thepoet•8h ago•143 comments

Felony Bench

https://www.felonybench.com/
511•colinprince•10h ago•225 comments

Three important steps in my maturation process

https://thomasdullien.github.io/posts/2026-08-21-three-important-steps-in-my-maturation-process/
40•tdullien•2h ago•8 comments

Scientists release biggest 2D map of the universe

https://newscenter.lbl.gov/2026/08/10/scientists-release-biggest-2d-map-of-the-universe/
146•NKosmatos•6h ago•46 comments

Kagi added a setting for removing paywalled links from search results

https://kagi.com/changelog#11296
1008•speckx•11h ago•338 comments

Rust Glancer: Rust LSP using 100x less RAM

https://rust-glancer.github.io/blog/hello-world/
12•matklad•5h ago•9 comments

I accidentally logged hundreds of thousands of phone calls to military bases

https://lina.sh/blog/hijacking-e164-arpa
442•gavide•12h ago•50 comments

Show HN: OzBrain, a shared brain for knowledge between agents and your team

https://ozbrain.com
31•dariusmonsef•2h ago•10 comments

Felony charges for citizen deleting phone data at US Border

https://www.nytimes.com/2026/08/21/us/politics/samuel-tunick-deleted-phone-felony.html
549•floathub•13h ago•722 comments

People of ACM – Russ Cox

https://www.acm.org/articles/people-of-acm/2026/russ-cox
90•signa11•4d ago•11 comments

DeepSeek-v4-flash-vision-exp

https://api-docs.deepseek.com/guides/vision/
460•dares2573•14h ago•143 comments

AI boosted homework scores, then exam scores dropped: study

https://www.economist.com/graphic-detail/2026/08/18/does-ai-stop-children-from-learning
230•dash2•2d ago•288 comments

How we made a text-to-speech model respond in sub-50 ms

https://nari-labs.com/blog/qwen3-tts-speed-cost-frontier/
102•toebee•9h ago•28 comments

I ran Photoshop on a £0.60 computer chip

https://pointinthecloud.com/2026-08-19-144600.html
120•colinprince•10h ago•29 comments

SalesPatriot (YC W25) Is Hiring Forward Deployed Engineers

https://www.ycombinator.com/companies/salespatriot/jobs/M46X6YX-forward-deployed-engineer
1•maciejSz•4h ago

Autolith: A programming agent with a live runtime

https://www.lambda-symbolics.com/autolith
23•vismit2000•1d ago•0 comments

OTel isn't going well (and I made a spreadsheet about it)

https://matduggan.com/otel-isnt-going-well-and-i-made-a-spreadsheet-about-it/
15•hn_acker•7h ago•3 comments

GitHub, autoscaling, and the component substitution fallacy

https://surfingcomplexity.blog/2026/08/19/github-autoscaling-and-the-component-substitution-fallacy/
24•jonemi•1d ago•0 comments

Everyone says assembly is untyped—everyone is wrong

https://www.gingerbill.org/article/2026/08/20/designing-odins-inline-asm/
37•adamrezich•1d ago•12 comments

Claudette: Make Claude stop talking like a BuzzFeed article

https://github.com/adnanakil/nobuzz/blob/main/README.md
199•aakil•10h ago•136 comments

Tumble Forth – from assembly to OS with C compiler (2023)

https://tumbleforth.hardcoded.net/
55•vicek22•6h ago•7 comments

A look under our trunk: what's in our compute

https://waymo.com/blog/2026/08/look-under-our-trunk/
93•ra7•1d ago•49 comments

New Worlds: We are living in the future of J.G. Ballard or William Gibson

https://precastreinforced.co.uk/2026/08/16/new-worlds/
204•speckx•12h ago•145 comments

Show HN: Rex, a parallel functional language for scientific workflows

https://github.com/peterkelly/rex
7•peterkelly•4d ago•0 comments

HN: The Good Parts (2016)

https://danluu.com/hn-comments/
11•adletbalzhanov•1h ago•6 comments

I'm becoming AI-blind

https://cymerys.com/w/im-becoming-ai-blind
262•rcymerys•13h ago•273 comments

The coolest anti-surveillance tools at Defcon [video]

https://www.youtube.com/watch?v=-2uAsJ5EPAw
154•neom•3d ago•9 comments

Remotely unlocking electric scooters

https://henriemategui.com/post/remotely-unlocking-electric-scooters
22•henriemategui•3h ago•3 comments

Kodak's "pre-invented" lunar orbiter camera; or, the fate of SAMOS readout

https://invertingvision.com/2026/08/10/kodaks-pre-invented-lunar-orbiter-camera-or-the-fate-of-sa...
55•cainxinth•11h ago•3 comments

What happens when a GPU reads memory

https://blog.doubleword.ai/what-happens-when-a-gpu-reads-memory
98•ibobev•9h ago•18 comments
Open in hackernews

Everyone says assembly is untyped—everyone is wrong

https://www.gingerbill.org/article/2026/08/20/designing-odins-inline-asm/
37•adamrezich•1d ago

Comments

Krssst•1d ago
Sorry, somewhat of a tangent but regarding:

> The %0 and %1 are positional references into a list you have to count by hand.

You can name your operands in gcc inline assembly.

https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html#Output-...

Look for "asmSymbolicName".

On a phone so not checking if it builds, but something like `asm("add %[my_out], %[my_in], #3":[my_out]"=r"(outvar):[my_in]"r"(invar):);`.

gingerBill•1d ago
The equivalent Odin syntax looks like this:

add_three :: asm(my_in: u64) -> (my_out: u64) { add my_out, my_in, 3 }

out_var = add_three(in_var)

Which is already infinitely more readable and requires no parochial sigils nor the arcane clobbering syntax.

genxy•1d ago
An avenuge of research worth being sniped on is Typed Assembly Language

https://en.wikipedia.org/wiki/Typed_assembly_language

https://www.cs.cornell.edu/talc/overview.html

gingerBill•1d ago
TALs are not what I am referring to here. I am arguing that assembly is already typed and does not need extra annotation to be typed.

TALs are also solving an entirely different problem.

genxy•1d ago
The technique is good, and compilers that interact with assembly should do this, but as you outline, they basically just shove blobs of text around and hope for the best.

I didn't say you were referring to TALs. Yours is a syntax level check, not type checking of the program in the normative sense. It might be more accurate refer to your technique as an "instruction signature", rather than a type.

I would argue that that are complementary and not entirely different.

I thought it would be interesting for folks.

questionableans•1d ago
But a language being “typed” doesn’t tell us anything useful. Untyped languages are typed too: they’re uni-typed (every expression is an expression).

I think you do your analysis a disservice by focusing on “is assembly language typed?” as the top line question. The more interesting question you examine is what do the type constraints in inline asm offer, and how do they interact with the host language’s type system?

gingerBill•1d ago
I know that "untyped" means a single-type, but assembly operands have multiple different kinds of types (as I state in the article). What makes it really interesting is what you can know about each instruction and what it does (what operands it excepts, what it clobbers, what side-effects its has, etc).

And from that huge table of type information, this can be used to give good error messages and suggestions to the user because the compiler actually knows all of this. The type constraints here allow for a lot more than information that normal assemblers just don't give.

magicalhippo•1d ago
> But because of its time period, the built-in assembler only ever understood up to 80286 instructions, so the day you wanted a 386 and its 32-bit registers you were sent off to an external assembler anyway.

Or you just prefixed the instructions with "db $66", et voila your instructions were 32bit. I wrote a lot of inline 32bit assembly that way in TP 6.0 and 7.0.

amluto•22h ago
I have very mixed opinions about the custom syntax. IMO the correct asm syntax, with very few exceptions, is the one in the manual. This is why Intel syntax is right and AT&T syntax is wrong: the ISA comes from Intel, the docs are from Intel and AMD, and those docs use Intel syntax.

So I was kind of hoping that the custom syntax would at least result in a very, very strong checker, at least as good as Fil-C’s. Maybe with an escape hatch to say something like “I know it looks like I clobbered xyz, but I promise I really didn’t.

Sadly, the CPUID example in the article apparently compiles, but IMO it shouldn’t have: CPUID takes two inputs, in EAX and ECX, and the example forgot to bind ECX as an input. One might argue that CPUID takes even more inputs if you’re on a VM and doing something special, but ECX is really quite unambiguous.

childintime•18h ago
I don't care much about the typed part, I care much more that this is a good take on what an assembler should be, far ahead of the GCC monstrosity, that serves just one purpose well: it screams "don't use me". This feature could make Odin the language of choice for some types of projects, for it seems to remove so much friction.
fithisux•16h ago
True. It takes some time to grasp but gingerbill is right.
questionableans•1d ago
Yes, and your second paragraph above is the interesting part that I would want the reader to focus on, starting from the title.