Top all-time · #4064
Vanessa McHale
Personal blog · blog.vmchale.comprogrammingsystems
Vanessa McHale's personal blog at blog.vmchale.com covers programming and systems. Since 2017, 19 different Hacker News readers have linked it 27 times, most often “Type-Safe Pointers in ATS”. It is still writing: the last post was on 2026-03-14, and you can follow it by feed.
Too few sampled comments (9) to say how often HN recommends it.?
Why HN links it
HN readers link Vanessa McHale's blog for posts on ATS, Haskell, laziness and IO, JIT compilation and APL. One commenter calls her ATS posts a great set covering the type system and real-world performance.
Summarised by Claude from a sample of 9 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- Type-Safe Pointers in ATS3 people · 3 mentions · first linked 2020-03-28
- Why Haskell Is Good2 people · 2 mentions · first linked 2018-02-10
- Outperforming Rust with Functional Programming2 people · 2 mentions · first linked 2017-12-26
What Hacker News says?
I wrote a blog post about an example that came up for me: http://blog.vmchale.com/article/ats-templates
Comment linking /article/ats-templates
on “The Value in Go’s Simplicity”Submitted A Proper x86 Assembler in Haskell Using the Escardó-Oliva Functional as a story · 90 points
HN discussionThis comment misses the point of the article, which argues against a urban legend that Haskell is too difficult "unless you are this tall" (a Phd, an E.T., a superhuman). I also had a shot at explaining why people are already tall enough in a past short "comic strip" [0]. I think the article makes a good job re-assuring the urban legends are a myth. Now. there are many reasons why one would want to use Haskell. For…
Comment linking /article/functional-haskell
on “Learning Haskell is no harder than learning any other programming language”Submitted C is not suited to SIMD (2019) as a story · 89 points
HN discussionI wrote a blog post on writing a JIT that can handle FFI calls: http://blog.vmchale.com/article/jit If you want the full monty, I think you'll have to read the LLVM documentation on JIT linking: https://llvm.org/docs/JITLink.html I haven't found any academic papers or tutorials on JIT linking, unfortunately.
Comment linking /article/jit
on “Ask HN: Which books/resources to understand modern Assembler?”Submitted Type-Safe Pointers in ATS as a story · 79 points
HN discussionA bunch of those mentioned don't address laziness and how the IO monad deals with it: http://blog.vmchale.com/article/effects
Comment linking /article/effects
on “How side effects work in FP”Submitted Outperforming Rust with Functional Programming as a story · 16 points
HN discussionThe author doesn't mention laziness, which is pretty huge. Laziness is half of immutable data structures! I have a tidbit in the first paragraphs: http://blog.vmchale.com/article/effects
Comment linking /article/effects
on “How side effects work in FP”Submitted Outperforming Rust with Functional Programming as a story · 5 points
HN discussion> What kind of project would be a sweet spot to ATS? I'd say a large mission-critical C codebase that decides to grow and expand a formally-verified kernel of its most important functionality - it can be a real-time sytem, an OS kernel, a HFT algorithm etc. Nowadays people seem excited about gradual typing in widespread dynamic languages like JavaScript and Python, because it allows them to adopt the best parts of s…
Comment linking /article/ats-safe-pointers
on “Why the developers who use Rust love it so much”Submitted Logic Programming Doesn't Work in the Real World as a story · 4 points
HN discussionVanessa McHale has a great set of blog posts about ATS. They touch on technical aspects of the language and it’s type system as well as practical aspects and real-world performance of compiled programs. The list is here: http://blog.vmchale.com/category/ATS If you click the ‘next’ link a few times you can go through several pages to earlier posts that introduce the language.
Comment linking /category/ATS
on “The ATS Programming Language”Submitted Adequate J Matrix Performance as a story · 4 points
HN discussion> Does it actually succeed though? Not sure about J, but I feel APL certainly does, at least for me - the symbol set makes it very easy to sketch out a solution. Part of that ease is the generality of the various operators. That is the reductions and cumulative prefix can be done with any function. For example ⌊\ as cumulative min - useful as Vanessa McHale shows < http://blog.vmchale.com/article/numba-why > kspalai…
Comment linking /article/numba-why
on “Random walk in 2 lines of J”Submitted Why Haskell Is Good as a story · 4 points
HN discussion> it becomes easier to shoot yourself in the foot (which is mentioned in the alternative title, but doesn't seem to be expanded on much) -- say, by closing a Handle lazy I/O (such as file reads) is suspect and even bad, but laziness + IO (or something like it) is a great way to stream from an API: http://blog.vmchale.com/article/lazy-io Makes it possible to transcode for one. Basically makes streaming "compose" nice…
Comment linking /article/lazy-io
on “Ode to a Streaming ByteString”Submitted Practical ATS as a story · 4 points
HN discussionSubmitted Type-Safe Pointers in ATS as a story · 3 points
HN discussionSubmitted Calling System Functions in a JIT as a story · 2 points
HN discussionSubmitted ATS as a Systems Programming Language / Rust as a story · 2 points
HN discussionSubmitted Python Is Dynamically Typed as a story · 1 points
HN discussionSubmitted Testing Is Orthogonal to Correctness as a story · 1 points
HN discussionSubmitted J One-Liners as a story · 1 points
HN discussionSubmitted Polyglot Is the Fastest Code-Counting Tool Available as a story · 1 points
HN discussionSubmitted Computing Catalan Numbers Using Dynamorphisms as a story · 1 points
HN discussion