Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. AI-generated posters don’t have to be horrible(john.hartnup.uk ↗)
    224comments
  2. Laya the open source version of Jev(convaiinnovations.com ↗)
    13comments
  3. Human brain is two separate organs, Stanford Medicine-led research finds(stanford.edu ↗)
    125comments
  4. “The Secret Life of Circuits” is here(coredump.cx ↗)
    29comments
  5. If math is more than proof, we need to better celebrate the rest of it(terrytao.wordpress.com ↗)
    114comments
  6. GPT-6 Astra Solves a WWI German Radio Cipher(prinzai.com ↗)
    94comments
  7. Android 17 is the first since 3.x to add new APIs without releasing to the AOSP(grapheneos.social ↗)
    467comments
  8. San Francisco Onion Futures Company(onionfutures.com ↗)
    83comments
  9. Show HN: I wrote a custom assembler for CHIP-8 in C++(github.com/tackx ↗)
    discuss
  10. Communication by means of modulated Johnson noise(pnas.org ↗)
    5comments
  11. Cloudflare Quick Tunnels(cloudflare.com ↗)
    291comments
  12. How to Write with an LLM(sockpuppet.org ↗)
    344comments
  13. You can run Git on object storage if you re-make packfiles(tigrisdata.com ↗)
    19comments
  14. SDCC – Small Device C Compiler(sourceforge.net ↗)
    20comments
  15. From Stonemasons to Carpenters(thelastsoftwareengineer.substack.com ↗)
    2comments
  16. Science Is Open Software(jepedersen.dk ↗)
    41comments
  17. Saving another 100TB of RAM(cloudflare.com ↗)
    84comments
  18. Why building a Rust LSP is hard(rust-glancer.github.io ↗)
    37comments
  19. How OpenAI Used Its Own LLMs to Design Its Jalapeño Chip(ieee.org ↗)
    98comments
  20. Ctenophores: Wonders of Biology(quantamagazine.org ↗)
    6comments
  21. NASA-IBM Lunar Foundation open-Source Geospatial AI Model(usra.edu ↗)
    4comments
  22. The first new cat species discovered in 100 years(nationalgeographic.com ↗)
    108comments
  23. OpenJev(openjev.com ↗)
    273comments
  24. Goroutine Leak Profiles(go.dev ↗)
    5comments
  25. Show HN: Cactus Needle 3: 8-29MB automation models can match DeepSeek V4 Flash(cactuscompute.com ↗)
    89comments
  26. Photon-Emission-Guided Laser Fault Injection Enables RP2350 Secure Debug(ledger.com ↗)
    73comments
  27. Veronese's Dogs(publicdomainreview.org ↗)
    2comments
  28. Warez: The Infrastructure and Aesthetics of Piracy (2021)(archive.org ↗)
    87comments
  29. Cache-to-Cache: Direct Semantic Communication Between LLMs (2025)(arxiv.org ↗)
    14comments
  30. Inside ZCode: Silently uploading your Git history to the cloud(ferstar.org ↗)
    105comments

Turning vaguely reassuring finite-state machines into regular expressions

68 pointsby 5y agoqntm.org
6 comments
5y agoHN ↗

I’m just doing a module in formal languages & automata now but hadn’t yet made the connection that they were related to regular expressions. Neat!

Great read, very clearly explained & what a nice programming project too, writing a solver like that - would be great to stick a diagram-parsing front-end on it and then I could solve all my homework problems in double quick time.

5y agoHN ↗

Automata theory aficionado here. Regular languages are really neat! They have an air of being an "important" mathematical object, given how many different "natural" characterizations of them exist.

In a standard CS course you'll start out learning that regular expressions and finite state automata define the same class of languages. But they're also equivalent to:

- Languages generated by regular grammars (only rules of the form A -> a, A -> Ba, or A -> epsilon)

- Languages definable in monadic second-order (MSO) logic

- Languages "recognized" by a finite monoid (this algebraic appraoch to formal languages is super interesting and rich!)

- Language's whose Myhill-Nerode relation has finitely many equivalence classes

5y agoHN ↗

I recall doing a few of these conversions on paper in one of the written tests in my theoretical compsci exam.

5y agoHN ↗

Automata and languages are really neat. I find it beautiful that:

* { a^n | n in N } is regular;

* { a^n b^n | n in N } is not regular (exercise: use the pumping lemma to prove this) but is context-free, i.e. it can be recognised by a pushdown automaton (a finite state machine which can also use a single stack);

* { a^n b^n c^n | n in N } is not context-free (by a pumping lemma again), but it is context-sensitive, so can be recognised by a linear bounded automaton.

Oh, and "finite state machine with two stacks" is Turing-complete so any computable language has a recogniser of that form.

It's mad that you get such fundamentally interesting classes of machine just by generalising so simply in such natural ways!

5y agoHN ↗

I follow Vaguely Reassuring Finite-State Machines on Twitter and had not realized it had such depths. What a delightful article