frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Show HN: Claude has a compiler, I have SlopScript

https://slopscript.netlify.app/
1•hiten_sharma•2m ago•0 comments

Context Is Part of the Game

https://joy.pm/context-is-part-of-the-code/
1•rafadc•3m ago•0 comments

Dave Farber has passed away

https://lists.nanog.org/archives/list/nanog@lists.nanog.org/thread/TSNPJVFH4DKLINIKSMRIIVNHDG5XKJCM/
1•vitplister•3m ago•0 comments

Researchers find brain mechanism behind 'flashes of intuition'

https://medicalxpress.com/news/2026-02-brain-mechanism-intuition.html
1•pseudolus•6m ago•0 comments

Extracting Xcode's Claude Code Prompt

https://www.jackpearce.co.uk/posts/extracting-xcodes-claude-code-prompt
1•jkpe•6m ago•0 comments

AI is not another abstraction because god plays dice

https://rakhim.exotext.com/ai_is_not_another_abstraction_because_god_plays_dice
1•freetonik•7m ago•0 comments

Show HN: Tandem – An open-source, local-first AI workspace (Rust and React)

1•frumu•10m ago•0 comments

Show HN: AI Perks – A curated list of free AI credits and deals for developers

https://www.getaiperks.com/en
1•artluko•10m ago•0 comments

Why E cores make Apple Silicon fast

https://eclecticlight.co/2026/02/08/last-week-on-my-mac-why-e-cores-make-apple-silicon-fast/
1•ingve•11m ago•0 comments

Show HN: Google Maps but for your repo (Open Source)

https://github.com/zacharykapank/repomap
1•zacharykapank•12m ago•0 comments

Djevops: Host Django on Bare Metal

https://github.com/mherrmann/djevops
1•mherrmann•13m ago•0 comments

How to Destroy a Space Station

https://www.thequantumcat.space/p/how-to-destroy-a-space-station
1•verzali•14m ago•0 comments

Show HN: I built a framework to benchmark LLMs on System Design and Architecture

https://github.com/Ruhal-Doshi/hld-bench
1•ruhal•14m ago•0 comments

What do you expect from a Turkey-based hosting provider?

1•dpnet•15m ago•0 comments

Why Files Are Not Enough as Memory for AI Agents

https://medium.com/versanova/why-files-are-not-enough-as-memory-for-ai-agents-5a4aeca81154
2•gauravsc•15m ago•0 comments

Nabaztag: Embodiment of "IoT" that was before its time

https://nabaztag.com/archive/violet
1•simonjgreen•19m ago•0 comments

Show HN: Friends don't let friends do math after a few drinks

https://divvyai.app/
1•pieterdy•22m ago•0 comments

Show HN: A free, minimal CV builder I made as a side project

https://cv-today.com
1•PokeWorldJG•23m ago•1 comments

Show HN: Competitor Finder API – find real competitors from one hostname

https://champsignal.com/competitor-finder-api
1•maximedupre•26m ago•0 comments

Show HN: Textream: Dynamic Island-style teleprompter for macOS with voice track

https://blog.fka.dev/textream/
1•fka•30m ago•0 comments

How do you use AI coding tools at scale without losing architectural control?

https://contextfirst.dev/
1•seekerXtruth•36m ago•2 comments

What to do with the KDE Oxygen and Air themes?

https://filipfila.wordpress.com/2026/02/08/beating-an-old-but-not-dead-horse-what-to-do-with-the-...
3•jandeboevrie•38m ago•0 comments

Show HN: One app to command CLI agents across projects - RexIDE

https://rex.mindmeld360.com
1•tomerbd•40m ago•0 comments

Windows is leaving old printers behind without solution

https://www.tomshardware.com/peripherals/printers/microsoft-stops-distrubitng-legacy-v3-and-v4-pr...
2•storm1er•41m ago•1 comments

Eight More Months of Agents

https://crawshaw.io/blog/eight-more-months-of-agents
1•arrowsmith•42m ago•0 comments

Uber held liable, ordered to pay $8.5M in driver rape suit

https://www.cnbc.com/2026/02/06/uber-liable-pay-8-5-million-driver-rape-suit.html
1•gslin•48m ago•0 comments

DayTradingCentral – Free Trading Journal (Next.js, NestJS, Postgres)

https://www.daytradingcentral.com
1•MuZzZ•48m ago•1 comments

Creative problem-solving of unsolved puzzles during REM sleep

https://academic.oup.com/nc/article/2026/1/niaf067/8456489
3•tchalla•55m ago•0 comments

Show HN: Language learning through AI example sentences (onigiri.kr)

https://jpen.onigiri.kr/
1•jaehakl•56m ago•0 comments

Wi-Fi 7 marketing is lying about its biggest feature [video]

https://www.youtube.com/watch?v=-5o_Qu3XToQ
2•wateralien•56m ago•0 comments
Open in hackernews

Aliasing

https://xania.org/202512/15-aliasing-in-general
96•ibobev•1mo ago

Comments

Bootvis•1mo ago
The whole series is excellent and as a non regular user of assembly I learned a ton.
artemonster•1mo ago
I wonder how much potential optimisation there is if we entirely drop pointer nonsense.
aw1621107•1mo ago
Are you talking about dropping pointers as a programmer-facing programming language concept (in which case you might find Hylo and similar languages interesting), or dropping pointers from everything - programming languages, their implementations, compilers, etc. (in which case I'm not sure that's even possible)?
artemonster•1mo ago
Only the first one. Ofc under the hood they will stay, but I think its time to ditch random access model and pull fetching and concept of time closer to programmer
uecker•1mo ago
This is basically what many functional programming languages do. This always came with plausibly sounding claims that this allows so much better optimizations that this soon will surpass imperative programs in performance, but this never materialized (it still did not - even though Rust fans now adopted this claim, it still isn't quite true). Also control over explicit memory layout is still more important.
aw1621107•1mo ago
Gah, can't believe I forgot about functional programming languages here :(

> even though Rust fans now adopted this claim

Did they? Rust's references seem pretty pointer-like to me on the scale of "has pointers" to "pointers have been entirely removed from the language".

(Obviously Rust has actual pointers as well, but since usefully using them requires unsafe I assume they're out of scope here)

uecker•1mo ago
What I meant is that Rust has stricter aliasing rules which make some optimization possible without extra annotations, but this is balanced out by many other issues.
aw1621107•1mo ago
Sure, but I think the presence/absence of aliasing is different from what GP was wondering/asking about, which was the removal of pointers from the programmer-facing model.
newpavlov•1mo ago
For a system programming language the right solution is to properly track aliasing information in the type system as done in Rust.

Aliasing issues is just yet another instance of C/C++ inferiority holding the industry back. C could've learnt from Fortran, but we ended up with the language we have...

cv5005•1mo ago
For systems programming the correct way is to have explicit annotations so you can tell the compiler things like:

    void foo(void *a, void *b, int n) {
        assume_aligned(a, 16);
        assume_stride(a, 16);
        assume_distinct(a, b);
        ... go and vectorize!
    }
newpavlov•1mo ago
LOL, nope. Those annotations must be part of the type system (e.g. `&mut T` in Rust) and must be checked by the compiler (the borrow checker). The language can provide escape hatches like `unsafe`, but they should be rarely used. Without it you get a fragile footgunny mess.

Just look at the utter failure of `restrict`. It was so rarely used in C that it took several years of constant nagging from Rust developers to iron out various bugs in compilers caused by it.

aw1621107•1mo ago
Does make me wonder what restrict-related bugs will be (have been?) uncovered in GCC, if any. Or whether the GCC devs saw what LLVM went through and decided to try to address any issues preemptively.
gpderetta•1mo ago
gcc has had restrict for 25 years I think. I would hope most bugs have been squashed by now.
aw1621107•1mo ago
Possibly? LLVM had been around for a while as well but Rust still ended up running into aliasing-related optimizer bugs.

Now that I think about it some more, perhaps gfortran might be a differentiating factor? Not familiar enough with Fortran to guess as to how much it would exercise aliasing-related optimizations, though.

gpderetta•1mo ago
I think Fortran function arguments are assumed not to alias. I'm not sure if it matches C restrict semantics though.
aw1621107•1mo ago
Yeah, that's why I was wondering whether GCC might have shaken out its aliasing bugs. Sibling seems to recall otherwise, though.
newpavlov•1mo ago
IIRC at least one of the `restrict` bugs found by Rust was reproduced on both LLVM and GCC.
adev_•1mo ago
Aliasing is no joke and currently the only reason why some arithmetic intensive code-bases still prefer Fortran even nowadays.

While it is possible to remove most aliasing performance issues in a C or C++ codebase, it is a pain to do it properly.

bregma•1mo ago
Aliasing can be a problem in Fortran too.

Decades ago I was a Fortran developer and encountered a very odd bug in which the wrong values were being calculated. After a lot of investigation I tracked it down to a subroutine call in which a hard-coded zero was being passed as an argument. It turned out that in the body of that subroutine the value 4 was being assigned to that parameter for some reason. The side effect was that the value of zero because 4 for the rest of the program execution because Fortran aliases all parameters since it passes by descriptor (or at least DEC FORTRAN IV did so on RSX/11). As you can imagine, hilarity ensued.

pklausler•1mo ago
How does this bug concern aliasing?
Etheryte•1mo ago
It's literally in the description? Because of aliasing, a variable that should've been zero became four.
pklausler•1mo ago
It wasn't a variable.
Etheryte•1mo ago
It wasn't intended to be a variable, but it did become one. Its value varied, it's in the name.
pklausler•1mo ago
But this is just Fortran's call-by-reference in action. It's not aliasing.
mrspuratic•1mo ago
In old school FORTRAN (I only recall WATFOR/F77, my uni's computers were quite ancient) subroutine (aka "subprogram") parameters are call-by-reference. If you passed a literal constant it would be treated as a variable in order to be aliased/passed by reference. Due to "constant pooling", modifications to a variable that aliased a constant could then propagate throughout the rest of the program where that constant[sic] was used.

"Passing constants to a subprogram" https://www.ibiblio.org/pub/languages/fortran/ch1-8.html

kryptiskt•1mo ago
Support for arrays without having to mess with pointers is pretty attractive for number crunchers too.
uecker•1mo ago
Is it? You just add "restrict" where needed?

https://godbolt.org/z/jva4shbjs

adev_•1mo ago
> Is it? You just add "restrict" where needed?

Yes. That is the main solution and it is not a good one.

1- `restrict` need to be used carefully. Putting it everywhere in large codebase can lead to pretty tricky bugs if aliasing does occurs under the hood.

1- Restrict is not an official keyword in C++. C++ always has refused to standardize it because it plays terribly with almost any object model.

uecker•1mo ago
Regarding "restrict", I don't think one puts it everywhere, just for certain numerical loops which otherwise are not vectorized should be sufficient. FORTRAN seems even more dangerous to me. IMHO a better solution would be to have explicit notation for vectorized operations. Hopefully we will get this in C. Otherwise, I am very happy with C for numerics, especially with variably modified typs.

For C++, yes, I agree.

turol•1mo ago
For a real world example of how this can affect code check out this commit I made in mesa: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20...
Ono-Sendai•1mo ago
When you have done enough C++ you don't need to fire up compiler explorer, you just use local variables to avoid aliasing pessimisations.

I also wrote about this a while ago: https://forwardscattering.org/post/51

dataflow•1mo ago
I think this might not be a shortcoming of MSVC but rather a deliberate design decision. It seems likely that MSVC is failing to apply strict aliasing, but that it's deliberately avoiding it, probably for compatibility reasons with code that wasn't/isn't written to spec. And frankly it can be very onerous to write code that is 100% correct per the standard when dealing with e.g. memory-mapped files; I'm struggling to recall seeing a single case of this.
gpderetta•1mo ago
AFIK MSVC has never implemented TBAA by design.
gpvos•1mo ago
TBAA = type-based alias analysis
andrepd•1mo ago
Thank you Rust for having aliasing guarantees on references!