Top all-time · #6828
SemanticDiff Blog
Company blog · semanticdiff.com/blogprogrammingproductivity
SemanticDiff Blog is the company blog at semanticdiff.com, writing about programming and productivity. Since 2022, 11 different Hacker News readers have linked it 20 times, most often “SemanticDiff – Language Aware Diff for VS Code”. It is still writing: the last post was on 2025-02-04, and you can follow it by feed.
Too few sampled comments (5) to say how often HN recommends it.?
Why HN links it
Linked in HN threads as a tool for structural, syntax-aware diffs in VS Code and GitHub, with the site describing the product rather than any written posts discussed in the comments.
Summarised by Claude from a sample of 5 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
SemanticDiff helps you review code diffs in VS Code and GitHub faster. It hides irrelevant changes, detects moved code, and understands refactorings.
Most-linked posts?
- SemanticDiff – Language Aware Diff for VS Code5 people · 6 mentions · first linked 2023-03-13
- SemanticDiff – Language Aware Diff for VS Code3 people · 4 mentions · first linked 2022-11-30
- SemanticDiff: Language Aware Diffs In-Browser2 people · 2 mentions · first linked 2023-07-06
- How far should a programming language aware diff go?2 people · 2 mentions · first linked 2024-07-17
What Hacker News says?
SemanticDiff is probably the closest for now, although I don't think it uses tree-sitter. https://semanticdiff.com/ Found via https://github.com/Wilfred/difftastic/issues/194 .
Comment linking /
on “Difftastic, a structural diff tool that understands syntax”Submitted How far should a programming language aware diff go? as a story · 79 points
HN discussion> I am curious if there's been any work on _semantic_ diff tools as well (for when eg the syntax changes but the meaning is the same) We are working on https://semanticdiff.com/ which detects basic semantic changes like converting a literal from decimal to hex or reordering keys within JSON objects. It is not a command line utility but a VS Code extension and GitHub App. You can check out https://semanticdiff.com/bl…
Comment linking /blog/semanticdiff-vs-difftastic/
on “Difftastic, a structural diff tool that understands syntax”Submitted Unicode tricks in pull requests: Do review tools warn us? as a story · 3 points
HN discussion> What we should have instead is syntax-aware diffs that can ignore meaningless changes like curly braces moving into another line or lines getting wrapped for reasons. These diffs already exist (at least for some languages) but aren't yet integrated into the standard tools. For example, if you want a command line tool, you can use https://github.com/Wilfred/difftastic or if you are interested in a VS Code extension…
Comment linking /
on “Software development topics I've changed my mind on”Submitted How far should a programming language aware diff go? as a story · 2 points
HN discussionLooking at the architecture, they will probably run into some issues. We are doing something similar with SemanticDiff [1] and also started out using tree-sitter grammars for parsing and GumTree for matching. Both choices turned out to be problematic. Tree sitter grammars are primarily written to support syntax highlighting and often use a best effort approach to parsing. This is perfectly fine for syntax highlighti…
Comment linking /
on “Mergiraf: a syntax-aware merge driver for Git”Submitted SemanticDiff 0.9.0: Support for HTML, Vue, Swift and More as a story · 2 points
HN discussionText surely is a hill, but I believe it's a local one, we got stuck on due to our short-sighted inability to go into a valley for a few miles until we find the (projectional) mountain. All of your examples work better for code with structural knowledge: - grep: symbol search (I use it about 100x as often as a text grep) or https://github.com/ast-grep/ast-grep - diff: https://semanticdiff.com (and others), i.e.: hide…
Comment linking /
on “Formatting code should be unnecessary”Submitted SemanticDiff: Language Aware Diffs In-Browser as a story · 2 points
HN discussionHave you seen https://semanticdiff.com/ ?
Comment linking /
on “Diff Algorithms”Submitted Predictions About the Future of Code Reviews as a story · 1 points
HN discussionIf you're looking for a VS Code extension or a GitHub app, check out https://semanticdiff.com/ . I'm a co-founder of this project. If you prefer a CLI tool, check out https://github.com/Wilfred/difftastic . It supports more languages, but doesn't recognize when code has been replaced by an equivalent version ("invariances"). So it will show some changes (e.g. replacing a character in a string with an escape sequence…
Comment linking /
on “Prettier $20k Bounty was Claimed”Submitted SemanticDiff Now Available for GitHub as a story · 1 points
HN discussionYou can find a comparison of the two tools here: https://semanticdiff.com/blog/semanticdiff-vs-difftastic/ As author of SemanticDiff, I am obviously a bit biased. But Wilfred, the author of difftastic, found the analysis to be "pretty even-handed" [1], so I think it should be somewhat fair. [1]: https://x.com/_wilfredh/status/1764424652611318146
Comment linking /blog/semanticdiff-vs-difftastic/
on “How far should a programming language aware diff go?”Submitted SemanticDiff – Language Aware Diff for VS Code as a story · 1 points
HN discussionThere are some tools that can separate actual code changes from reformatting changes. I am working on https://semanticdiff.com , a VS Code Extension / GitHub App that can help you with this. There is also difftastic if you prefer a CLI based solution. It supports more languages but can detect fewer types of reformatting changes.
Comment linking /
on “Large pull requests slow down development”Submitted SemanticDiff – Language Aware Diff for VS Code as a story · 1 points
HN discussionI'm not familiar with Pijul, and haven't finished watching this presentation, but IME the problems with modern version control tools is that they still rely on comparing lines of plain text, something we've been doing for decades. Merge conflicts are an issue because our tools are agnostic about the actual content they're tracking. Instead, the tools should be smarter and work on the level of functions, classes, pac…
Comment linking /
on “Pijul: Version-Control Post-Git • Goto 2023”