Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    R

    Robert Atkey

    bentnib.org · Personal blog · on HN since 2013

    Robert Atkey, a computer science researcher, writes about type theory, programming language semantics, and links between logic and programming such as Make as proofs.

    Visit blogHN submissions
    Languages & CompilersMathProgramming
    What HN says

    HN commenters point to his quantitative type theory work, which Idris successor Blodwen builds on, and enjoy his posts on Make and conservation laws.

    Stats for nerds
    23HN people shared it
    15linked in comments
    136story points
    Jul 2024last shared
    2013people per year2024

    Top posts on HN

    1. 1
      Propositions as Filenames, Builds as Proofs: The Essence of Make
      4 people · 82 points · first shared 2015 · 19 comments on HN
    2. 2
      The Syntax and Semantics of Quantitative Type Theory
      3 people · 39 points · first shared 2017 · 1 comments on HN
    3. 3
      From Parametricity to Conservation Laws, via Noether's Theorem
      4 people · 5 points · first shared 2013 · Discussion on HN
    4. 4
      Parameterised Notions of Computation [pdf]
      1 person · 2 points · first shared 2018 · Discussion on HN
    5. 5
      From Parametricity to Conservation Laws, via Noether’s Theorem (2014) [pdf]
      1 person · 2 points · first shared 2018 · Discussion on HN
    6. 6
      Quantitative Type Theory [pdf]
      4 people · 1 points · first shared 2018 · Discussion on HN
    7. 7
      Data Types with Negation
      1 person · 1 points · first shared 2023 · Discussion on HN
    8. 8
      Compiling higher-order specifications to SMT solvers
      1 person · 1 points · first shared 2023 · Discussion on HN
    9. 9
      Resource Constrained Programming with Full Dependent Types
      1 person · 1 points · first shared 2020 · Discussion on HN
    10. 10
      A scope safe universe of syntaxes with binding, their semantics and proofs
      1 person · 1 points · first shared 2018 · Discussion on HN

    What HN people wrote when they linked it

    • lapinotJun 2021

      This kind of typing is quite cool, but i didn't found it so well explained.

      The general pattern is to type programs not only with a type, but also with some "quantity", that quantity putting constraints on what is inside. Using quantities like "zero", "one" and "lots", you can get linear or affine typing, using quantities "public" & "private" you can get the kind of data leakage typing as presented, but you could easily also do classification levels (secret, top secret etc). I'm bluffing but i believe that this can also model rust-like lifetimes. What you want is that your quantities are a partially ordered semiring (or something slightly weaker): sum of quantities (eg a + b) will be used to compute the quantity of conjunction, eg a tuple; multiplication of quantities will be used to compute composition, eg for functions, if it takes an argument of quantity one, to a result of quantity q, then for an argument of quantity a, it will return a result of quantity a * q. And obviously the ordering relation is used for subtyping, eg "private" <= "public".

      https://bentnib.org/linear-metatheory.html (a non-dependently-typed version of the thing below)

      https://bentnib.org/quantitative-type-theory.html

    • harveywiSep 2016

      Does anyone know if there has been any work in formalizing incremental compilation? It would be great to have some sort of theoretical framework to use as a guide when implementing various incremental compilation strategies.

      There is some (ongoing?) work on low-cost incremental computation by differentiating lambda calculi [1] [2] [3], and it seems like an incremental compiler could maybe be a good use case for it.

      [1] http://www.informatik.uni-marburg.de/~pgiarrusso/ILC/

      [2] http://bentnib.org/posts/2015-04-23-incremental-lambda-calculus-and-parametricity.html

      [3] http://ps.informatik.uni-tuebingen.de/research/ilc/

    • notthemessiahJun 2014

      Glad you posted this, had tried to do the same earlier this year. Also related, this POPL paper shows how Noether's Theorem (the idea that every symmetry yields a conservation law e.g. rotational symmetry => angular momentum conservation) can be derived from applying parametric polymorphism to Lagrangian mechanics:
      http://bentnib.org/conservation-laws.html

      This summary of the above paper is much more comprehensible: http://ezyang.tumblr.com/post/74405137526/robert-atkey-from-parametricity-to-conservation-laws#notes

    • dunhamJul 2024

      It's not a thesis, but one of my favorite acknowledgements is from Bob Atkey's paper on quantitative type theory (which assigns quantities of 0, 1, or ω to types):

      > This work is dedicated to Orwell the dog. Orwell was a good dog and knew well the difference between zero, one, and many.

      https://bentnib.org/quantitative-type-theory.pdf

    • iamrecursionApr 2019

      A good foundation for such a language would be one based on Quantitative Type Theory [0]. It’s a dependent type theory that records usage information in every typing judgement.

      The Idris successor, Blodwen [1] is being based on it.

      [0] https://bentnib.org/quantitative-type-theory.pdf
      [1] https://github.com/edwinb/Blodwen

    • GarlefJun 2015

      String diagrams are a way to describe morphisms (think functions) in monoidal categories.

      A construction using monoidal categories (or a slight generalisation) can be used to give a categorical model for arrows.

      http://bentnib.org/arrows.pdf

      This gives rise to these diagrams:

      https://www.haskell.org/arrows/

    Related

    Jon Sterlingjozefg.bitbucket.org19 people

    Leaving Go

    Jon Sterling
    Personal · last shared 2016
    Oleg Kiselyovokmij.org251 people

    How the OCaml type checker works (2022)

    Oleg Kiselyov
    Personal · last shared 2026
    Existential Typeexistentialtype.wordpress.com157 people

    Haskell Is Exceptionally Unsafe (2012)

    Existential Type
    Personal · last shared 2026
    John A. De Goesdegoes.net81 people

    Twitter's Fucked

    John A. De Goes
    Personal · last shared 2026
    Homotopy Type Theoryhomotopytypetheory.org56 people

    The HoTT Game

    Homotopy Type Theory
    Publication · last shared 2026
    Gödel's Lost Letterrjlipton.wordpress.com185 people

    Mihai Pătraşcu 1982–2012

    Gödel's Lost Letter
    Personal · last shared 2021
    John Regehrblog.regehr.org401 people

    Teaching C

    John Regehr
    Personal · last shared 2026
    Hillel Waynehillelwayne.com294 people

    1/0 = 0

    Hillel Wayne
    Personal · last shared 2026