Work in progress: 181,232 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #3296

N

non-O(n) musings

Personal blog · jamey.thesharps.usprogrammingsystems

non-O(n) musings is a personal blog at jamey.thesharps.us about programming and systems. Since 2016, 23 different Hacker News readers have linked it 34 times, most often “Per-Project Postgres”. The last post was in 2023, but the archive is still widely read.

Visit the blog
34mentions?
23HN people?
2016–2023first – last linked?
Links on Hacker News per year · peak 16 in 2016

Too few sampled comments (7) to say how often HN recommends it.?

Why HN links it

Jamey Sharp's blog covers Corrode, a C-to-Rust translator written in Haskell, and per-project Postgres setup. HN readers link it for the Corrode design and its documentation.

Summarised by Claude from a sample of 7 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

Sometimes linearity is overrated.

Most-linked posts?

  1. Per-Project Postgres
    4 people · 5 mentions · first linked 2019-06-15
  2. Corrode: Translating C to Rust (and how you can help)
    4 people · 5 mentions · first linked 2016-07-08
  3. Go to Statement Considered (Mostly) Harmless: Translating C's "goto" to Rust
    3 people · 3 mentions · first linked 2016-11-16
  4. How not to replace email: lessons from Google Wave
    2 people · 2 mentions · first linked 2018-02-17
  5. C2rust vs. Corrode
    2 people · 2 mentions · first linked 2018-07-01
  6. Corrode update: support from Mozilla, and new features
    2 people · 2 mentions · first linked 2016-11-01

What Hacker News says?

  1. Speaking of making Postgres easy to setup and use, here are instructions for setting up per-project Postgres ("So I worked out how to set up a Postgres database that’s almost as convenient as SQLite."): https://jamey.thesharps.us/2019/05/29/per-project-postgres/

    Comment linking /2019/05/29/per-project-postgres/

    on “Learn Postgres at the Playground – Postgres compiled to WASM running in browser”
  2. Submitted How not to replace email: lessons from Google Wave as a story · 336 points

    HN discussion
  3. In fact they have explicitly documented it: http://jamey.thesharps.us/2016/07/translating-c-to-rust-and-... > The only reason I wrote Corrode in Haskell is because I couldn't find a complete enough C parser for Rust, and I was already familiar with the language-c parser for Haskell.

    Comment linking /2016/07/translating-c-to-rust-and-how-you-can.html

    on “Corrode: C to Rust translator written in Haskell”
  4. Submitted C2rust vs. Corrode as a story · 200 points

    HN discussion
  5. > I do get that Haskell is useful to be taken as a tool for these kind of code transformations (at least I have seen quite a few of those) but I am always a bit surprised that people would start such a project in a language that has -per se- nothing to do with either the source or the target language. The author explained this in a blog post[0]: Haskell has a very complete C parser library with a nice API[1] which t…

    Comment linking /2016/07/translating-c-to-rust-and-how-you-can.html

    on “Corrode: C to Rust translator written in Haskell”
  6. Submitted How to translate a large C project to Rust as a story · 158 points

    HN discussion
  7. mgattozzi · 2016-07-08Recommends
    It's not that bad to read. The documentation alone makes it easy to work on. This was dropped in the /r/rust thread: http://jamey.thesharps.us/2016/07/translating-c-to-rust-and-... He lays it out fairly well for people to help out.

    Comment linking /2016/07/translating-c-to-rust-and-how-you-can.html

    on “Corrode: C to Rust translator written in Haskell”
  8. Submitted Search-based compiler code generation as a story · 69 points

    HN discussion
  9. Thea author wanted me to drop a link to his blog post on contributing: http://jamey.thesharps.us/2016/07/translating-c-to-rust-and-...

    Comment linking /2016/07/translating-c-to-rust-and-how-you-can.html

    on “Corrode: C to Rust translator written in Haskell”
  10. Submitted Authenticating Shared Web Caches as a story · 52 points

    HN discussion
  11. The short form is that Corrode is effectively deprecated in favor of c2rust. Indeed, Corrode hasn't been updated since 2017, while c2rust still gets active development—last commit as of my writing this was 2 days ago. It's worth noting that the developer of Corrode was consulted on the early design of c2rust, which means c2rust was able to benefit from hindsight on architectural decisions in Corrode. That ended up l…

    Comment linking /2018/06/30/c2rust-vs-corrode/

    on “C2Rust Transpiler”
  12. Submitted Which projects should convert to Rust? as a story · 35 points

    HN discussion
  13. > I had a quick look at Hackage and noticed that someone already has written a parser for Java in Haskell The author of "corrode"[1] wrote it in Haskell because there already was a C parser available. As always, the importance of libraries. [1]: http://jamey.thesharps.us/2016/10/corrode-update-support-fro...

    Comment linking /2016/10/corrode-update-support-from-mozilla-and.html

    on “Using Haskell to Find Unused Spring MVC Code”
  14. Submitted Translating C99 to Rust as a story · 4 points

    HN discussion
  15. I would agree, but I think it's worth checking out one of Siver's postgres repos where I thought he tested things pretty well[0]. Also things like Postgres are often run as a "server" on local dev or CI but could easily be run more ephemerally[1]. That should help with testing various states and behavior of the database. I still would actually follow what you said thought because often times places which rely on sto…

    Comment linking /2019/05/29/per-project-postgres/

    on “Use Databases Without Putting Domain Logic in Them”
  16. Submitted Search-based compiler code generation as a story · 3 points

    HN discussion
  17. Submitted Per-Project Postgres (2019) as a story · 3 points

    HN discussion
  18. Submitted Per-Project Postgres as a story · 3 points

    HN discussion
  19. Submitted Control Flow in Automatic C to Rust Conversion as a story · 3 points

    HN discussion
  20. Submitted Per-Project Postgres (2019) as a story · 2 points

    HN discussion
  21. Submitted How not to replace email as a story · 2 points

    HN discussion
  22. Submitted Go to Statement Considered (Mostly) Harmless: Translating C's "goto" to Rust as a story · 2 points

    HN discussion
  23. Submitted Go to Statement Considered (Mostly) Harmless as a story · 2 points

    HN discussion
  24. Submitted Go to Statement Considered (Mostly) Harmless – Translating C with Gotos to Rust as a story · 2 points

    HN discussion
  25. Submitted Corrode update: support from Mozilla, and new features as a story · 2 points

    HN discussion
  26. Submitted How to eliminate “goto” statements (and translate C to Rust) as a story · 2 points

    HN discussion
  27. Submitted The most general reverse proxy as a story · 1 points

    HN discussion
  28. Submitted Private and secure multiparty histograms as a story · 1 points

    HN discussion
  29. Submitted Corrode update: control flow translation correctness as a story · 1 points

    HN discussion
  30. Submitted Which projects should convert to Rust? as a story · 1 points

    HN discussion

Search all of HN for jamey.thesharps.us

Linked by the same people?